1

我知道随机变量 r 的概率密度函数 (PDF) 表达式为 2r/R^2,其中 0<=r<=R。那么,它的 CDF 为 r^2/R^2。

有人可以帮助我按照上述分布在 MATLAB 中生成随机变量 r 吗?

4

1 回答 1

1

https://blogs.sas.com/content/iml/2013/07/22/the-inverse-cdf-method.html

我使用与他们相同的变量

f(x) = 2x/R^2

F(x) = x^2/R^2

求解方程 F(x) = u 中的 x

u*R^2 = x^2

x = sqrt(u * R^2) v -sqrt(u * R^2)

在 Matlab 中:

N=1E5;
R=1;
u = rand(1,N);
x = sqrt(u*R^2); 

histogram(x)
于 2018-06-04T08:40:21.690 回答