Dalam analisis ini, kita akan membahas distribusi polar angle dan cara mengambil sampel secara random dari distribusi tersebut. Kita akan menggunakan bahasa MATLAB untuk menjelaskan konsep-konsep ini.
Distribusi Radius (r)
Distribusi radius (r) dapat dihitung dengan menggunakan fungsi probability density function (PDF). PDF adalah fungsi yang memberikan probabilitas suatu event terjadi pada nilai tertentu. Dalam kasus ini, kita ingin mendapatkan distribusi radius dari sebuah annulus (lingkaran dengan jari-jari yang berbeda) dan menghitungnya menggunakan PDF.
Distribusi radius dapat dihitung dengan menggunakan PDF berikut:
PDF = π * d * r
dimana d adalah packing density dan r akan berubah dari a ke b. Kita perlu mengnormalisasi PDF sehingga memiliki luas yang sama pada domain tersebut. Maka, kita dapat mencari fungsi normalisasi sebagai berikut:
PDF = PDF / int(PDF, r, [a, b])
Distribusi Cumulative (CDF)
Sekarang, kita sudah memiliki distribusi radius, maka kita dapat menghitung distribusi cumulative (CDF) sebagai integral dari PDF.
CDF = ∫(PDF, r, [a, R])
dimana R adalah jari-jari yang tidak ditentukan. Kita menggunakan integral definite untuk mencari CDF, karena jika kita hanya menggunakan integral indefinite, konstanta integrasi akan hilang.
Sampel dari Distribusi
Untuk mengambil sampel dari distribusi, kita dapat menggunakan fungsi invers CDF (CDFinv). Fungsi ini digunakan untuk menemukan nilai R yang sesuai dengan probabilitas tertentu. Kita dapat membuat fungsi CDFinv sebagai berikut:
CDFinv = @(u, a, b) sqrt((b^2 – a^2) * u + a^2)
Maka, kita dapat mengambil sampel secara random dari distribusi radius menggunakan fungsi CDFinv.
Contoh
Kita akan membuat contoh dengan a = 1 dan b = 10. Kita akan mencari PDF dan CDF, serta mengambil sampel secara random dari distribusi tersebut.
PDF = fplot(subs(PDF, [a, b], [1, 10]), [1, 10])
CDF = fplot(subs(CDF, [a, b], [1, 10]), [1, 10])
Kita dapat melihat bahwa PDF adalah fungsi linear dan CDF adalah fungsi kuadrat sederhana.
Maka, kita dapat mengambil sampel secara random dari distribusi radius menggunakan fungsi CDFinv.
Rsample = CDFinvfun(Usample, 1, 10)
histogram(Rsample, 100, 'norm', 'pdf')
Kita dapat melihat bahwa sampel yang dihasilkan adalah linear dan sesuai dengan distribusi radius.
Penutup
Dalam analisis ini, kita membahas distribusi polar angle dan cara mengambil sampel secara random dari distribusi tersebut. Kita menggunakan fungsi PDF dan CDF untuk mencari distribusi radius, serta membuat fungsi invers CDF untuk mengambil sampel. Contoh yang diberikan menunjukkan bahwa hasilnya sesuai dengan distribusi radius.
Referensi
- MATLAB Central: Tentang Distribusi Polar Angle
- Crossword Clue: Randomly scatter