Generating random numbers from Alpha-stable pdf which expends in time (in a loop)

I asked first on another site, decided to ask here because I go no answers.
The following line of Matlab code generates 100000 random numbers from an Alpha-stable pdf (here Alpha=0.5):
Rand = random('Stable',0.5,0,1,0,[1,100000]);
The distribution of Rand exactly matches the the 'theoretical' curve generated by
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-.');
(to check, use, e.g.:)
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]);
My question is:
How do I generate these Rands in a loop over 't', such that their distribution will expand in time, namely P(Rand) = t^(-1/Alpha) W(Rand/ t^(1/Alpha))?

4 Kommentare

It isn't clear what you are trying to do. Is the idea to use a different value of alpha for each t, and then generate one random value with that alpha, something like this?
for t=1:1000
alpha = f(t); % not sure what function you have in mind
Rand(t) = random('Stable',alpha,0,1,0,[1,1]);
end
@Jeff Miller Not at all, I want to change the scaling of the PDF, so that tit expend in time. I think that I got it - should I make 'gamma' in random('stable',alpha,beta,gamma,delta,[1,1]) be 1/sqrt(Alpha)? Based on the example of the Gaussian here: https://www.mathworks.com/help/stats/stable-distribution.html , where gamma=1/sqrt(2) ?
Or maybe nother scaling? The sqrt(2) is becase x~t^(1/2). In a Levy process x~t^(1/Alpha). Am I correct about the interpretation of how to do it in Matlab?
@ Jeff Miller I still don't see how ths could would make my PDF change with time. I want that different iterations of the loop over t will yields a broader PDF, corresponding to the sum of IID random numbers of where the number of summands is growing, and the Levy-generalized central limit theorem.
Of course, I could actually just sum random numbers, to get the PDF. But I am looking for a more direct way to obtain them, using the Matlab function above.
Thanks!
Sorry, I don't really understand this distribution, so I don't have anything useful to contribute. It just seems that if you want a random number from the stable distribution at each t, then your only option is to adjust the stable's parameter values to be whatever you want for each t.

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu Random Number Generation finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 13 Apr. 2020

Kommentiert:

am 16 Apr. 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by