Hi Stephan,

thanks for your reply. I’m very happy that this is going forward.


> On 08 Mar 2016, at 05:16, Ludwig Stephan (CR/AEH4) 
> <stephan.ludw...@de.bosch.com> wrote:
> Just to make it clear (to myself):
> alpha_n changes randomly.
> BUT: alpha_n depends on theta, which in turn does a random walk in the code

Yes, theta does a random walk back and forth between [-pi; pi]. Since alpha_n 
is calculated as

float alpha_n = (2*M_PI*n - M_PI + d_theta)/4*d_N;

it is oscillating in a segment/part of the spectrum not the complete [-pi; pi] 
interval. But, that leads to the same amplified effect described earlier.
I don’t know when you checked my IPython notebook. I added another plot, to 
show how (i think that) the variables behave

https://www.bastibl.net/rayleigh-autocorrelation/#Values-over-time 
<https://www.bastibl.net/rayleigh-autocorrelation/#Values-over-time>


>  
> > "Efficient Simulation of Rayleigh Fading with Enhanced De-Correlation 
> > Properties” by  Alenka G. Zajic  and Gordon L. Stüber
> > http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1673098 
> > <http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1673098>
> > the authors refer to the paper, stating that:
>  
> Ahh, that is a very good reference. Actually I was searching for that in my 
> literature database but did not find it again.
>  
> > "To improve on previously reported models, Zheng and Xiao proposed several 
> > new statistical models [14]-[16]. By allowing all
> > three parameter sets (amplitudes, phases, and Doppler frequencies) to be 
> > random variables, Zheng and Xiao’s models obtain
> > statistical properties similar to ones required by the reference model. 
> > However, the models are no longer ergodic."
> > 
> > To me it looks like the model was _fixed_ by introducing this random walk 
> > that is supposed to make the model great ergodic 
> > again. I guess this follows some paper or book since the code mentions a 
> > table
> > d_step( powf(0.00125*fDTs, 1.1) ),  // max step size approximated from 
> > Table 2
>  
> No, the model of Zajic/Stüber is ergodic. But yes, they fixed the previous 
> model by choosing the parameters randomly – but constant over time and not 
> updating for every sample. And Table II does definitely not refer to the one 
> in their paper


That was maybe a bit confusing. I cited how Zajic/Stüber are talking about the 
GNU Radio model, to highlight that it is by default non-ergodic. I was not 
talking about the Zajic/Stüber model.


>  
> I try to summarize all the efforts
> ·         Use sin and cos in the factors for getting (almost) uncorrelated I 
> and Q shares of the complex random variable
> ·         Introduce a random phase (but constant) argument into every 
> cos(f_D*t) term in order to make the system WSS
> ·         In order to make the signals ergodic (ever draw of parameters has 
> the equal statistics, which also yield uncorrelated processes) let sin(f_D*t) 
> and cos(f_D*t) have different random (but constant) phases, but thake the 
> cos/sin factors from identical angles of arrival
> ·         MEDS method produces WSS process of intended auto-correlation 
> function, but introduces correlation between different random process.
> ·         The Zheng/Xiao model combines all previous advantages: still 
> constant but different phases
> ·         The Zajic/Stüber model combines all previosu advantages, especially 
> it has a random but constant phase (-> WSS), is ergodic, has uncorrelated I/Q 
> and uncorrelated processes, while converging faster (requires smaller N).

As far as I understand it’s either ergodic, but has suboptimal autocorrelation; 
or it’s non-ergodic. 

>  
> => In conclusion and because nobody remembers why this code was written like 
> that, I vote for adapting the model to Zajic/Stüber by removing the 
> update_theta function and their call (and then unused variables like d_step). 
> Their implementation is one of the best-known ones.
>  

Sounds reasonable to me, but I’m not an expert.

I think that when creating a TDL channel with multiple independent faders, one 
would have to set the parameters of all sinusoids in a special way, i.e., one 
would have to adapt the interface to the flat fader block, too.
…or in other words, the implementation would, at least, not be trivial :-) 
Would you be interested to work on that?

AFAIS, another option would be to remove theta and change the docs to state 
that the model should not be used with one long simulation run, but with 
multiple repetitions.

In general, I think that the current random walk is a pretty cool idea. In the 
best case we would find a paper that describes this method. Maybe, we wait some 
more time to see if someone knows about that.

Anyhow, I think that we should, at least, wait for an opinion of one of the 
developers, otherwise you might waste time implementing a new model and nobody 
cares.

Best,
Bastian









_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to