在Matlab中:从阿尔法稳定的pdf生成随机数,该pdf在时间上消耗(在循环中)
在Matlab中,以下代码行从Alpha稳定的pdf(此处Alpha=0.5)生成100000个随机数: Rand的分布与以下公式生成的“理论”曲线完全匹配:在Matlab中:从阿尔法稳定的pdf生成随机数,该pdf在时间上消耗(在循环中),matlab,random,Matlab,Random,在Matlab中,以下代码行从Alpha稳定的pdf(此处Alpha=0.5)生成100000个随机数: Rand的分布与以下公式生成的“理论”曲线完全匹配: PDF = makedist('Stable','alpha',0.5,'beta',0,'gam',1,'delta',0); x = -5:.1:5; PDF = pdf(PDF,x); figure plot(x,PDF,'r-.'); (检查、使用,例如:) 我的问题是: 如何在“t”上的循环中生成这些随机数,以便它们
PDF = makedist('Stable','alpha',0.5,'beta',0,'gam',1,'delta',0);
x = -5:.1:5;
PDF = pdf(PDF,x);
figure
plot(x,PDF,'r-.');
(检查、使用,例如:)
我的问题是:
如何在“t”上的循环中生成这些随机数,以便它们的分布在时间上扩展,即p(Rand)=t^(-1/Alpha)W(Rand/t^(1/Alpha)) 你必须提供你的t轴,即p(t)-这些随机变量是如何在t上均匀地生成的,还是存在一个时间相关的分布?如果是一致的,您只需从具有相等间距的离散t生成上述样本,并混合结果。@FangQ感谢您的评论。我的数字目前是从固定的PDF中选择的,如上面的示例所示。我希望修改它,以便得到一个与时间相关的PDF(以自相似的方式扩展,模拟异常扩散)。我不是说我理解你的答案。。。你能解释一下吗?@Fang P(Rand,t)有时是Rand的函数,例如t=100:100:1000。每次我想生成一个不同的P(Rand,t),并看到它像我写的标度定律一样展开。你必须提供你的t轴,即P(t)-这些随机变量是如何在t上均匀生成的,还是存在一个时间相关的分布?如果是一致的,您只需从具有相等间距的离散t生成上述样本,并混合结果。@FangQ感谢您的评论。我的数字目前是从固定的PDF中选择的,如上面的示例所示。我希望修改它,以便得到一个与时间相关的PDF(以自相似的方式扩展,模拟异常扩散)。我不是说我理解你的答案。。。你能解释一下吗?@Fang P(Rand,t)有时是Rand的函数,例如t=100:100:1000。每次我想生成一个不同的P(Rand,t),看到它像我写的缩放定律一样扩展。
PDF = makedist('Stable','alpha',0.5,'beta',0,'gam',1,'delta',0);
x = -5:.1:5;
PDF = pdf(PDF,x);
figure
plot(x,PDF,'r-.');
Data=Rand;
Middle=0.01;
PosBinsUP=10.^(log10(Middle):0.05:log10(max(abs(Data))));
PosBinsDown=10.^(log10(Middle):0.05:log10(abs(min(Data))));
xbins=[-flip(PosBinsDown) -Middle:0.2:Middle PosBinsUP];
[xpdf ypdf]= plotpdfc(Data, xbins);
plot(xpdf(1:end-1),ypdf(1:end-1),'Or');
xlim([-5,5]);