在MATLAB中使用已知的PDF表达式生成随机变量

时间:2018-06-04 06:23:07

标签: matlab random probability-density inverse-transform

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

有人可以帮助我在上面的发布后在MATLAB中生成随机变量r吗?

1 个答案:

答案 0 :(得分:0)

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)