Hi Bastian,


>
> The Doppler Frequency per sinusoid is distributed according to that
> U-shaped thing you see everywhere.
> Now, instead of rolling the dice once during initialisation and sticking
> to that Doppler frequency forever, this implementation is doing something
> like a random walk through the Doppler Spectrum.
>
> alpha_n is going back and forth between -pi and pi (plus some initial
> phase offset), so fDTs * cos(alpha_n), the normalised Doppler Frequency,
> follows this U-distribution.
>

Exactly. The dynamic channel in GNURadio models the Doppler spectrum
accurately.

What I don’t get (and what I asked in the other thread) is why this is
> multiplied with d_m. I think that, per sample, the current Doppler
> Frequency should be used to calculate an incremental angle to the previous
> value.
>
> To answer this, I would consider of the correspondence (via a Fourier
Transform) of a Doppler shift in the time domain; A shift in frequency
corresponds to a "time" dependant phase shift in the time domain. Thus a
Doppler shift of Fd in the time domain corresponds to exp(j*2*pi*Fd*t). And
since Dynamic channel model(flat_fader to be precise) in GNURadio models
the Doppler in the time domain, the d_m could be a way to model the time.

I would also ask a supplementing question that I am having problems
understanding. I would expect the Doppler shift to be modelled by a complex
exponential(cos[2*pi*Fd*t*cos(alpha)] + i sin [2*pi*Fd*t*cos(alpha)]) which
corroborates what we know from the Fourier correspondence of a Doppler
shift. Why then, in the Dynamic channel model in GNURadio (flat_fader to be
precise), the Doppler is modelled by (cos[2*pi*Fd*t*cos(alpha)] + i cos
[2*pi*Fd*t*sin(alpha)]) ?? I.e why is the imaginary part a cos ? Any hints?


>
>
> On 22 Feb 2016, at 06:41, Nasi <nesaz...@mail.ru> wrote:
>
> Hello,
>
> The question is about how does the given Doppler shift progress, or how is
> the Doppler induced phase shift implemented.
>
> I select a simple frequency selective fading block and feed in it some
> gr_complex(1, 0) values. For simplicity I run one fader (num of sinusoids).
> in file:
>
> https://github.com/osh/gnuradio.old/blob/master/gr-channels/lib/flat_fader_impl.cc
>
> in the code below,
> #elif FASTSINCOS == 2
>   float s_i = scale_sin*d_table.cos(2*M_PI*d_fDTs*d_m*d_table.cos
> (alpha_n)+d_psi[n+1]);
>   float s_q = scale_sin*d_table.cos(2*M_PI*d_fDTs*d_m*d_table.sin
> (alpha_n)+d_phi[n+1]);
>
>   #else d_m shows that the Doppler shift must progress sequencially.
> However, the value of "2*M_PI*d_fDTs*d_m*d_table.cos(alpha_n)" as a
> whole, produces floating point numbers which results in kind of random
> values out of d_table.cos() function in file
>
> https://github.com/osh/gnuradio.old/blob/master/gr-channels/lib/sincostable.h
>
> Some more explanation:
> the value: 2*M_PI*d_fDTs*d_m*d_table.cos(alpha_n) gets in as x below (in
> file .../lib/sincostable.h)
> (((int)(x*d_scale)) + d_sz) % d_sz; - this is a random integer value (may
> be not, can you please help me with that?)
> therefore it returns a random cos value as: return d_cos[idx];
>
> The issue arises when that floating point values inside cos() function is
> converted to integers as given above.
>
> Now, my question is, did you do that random phase shift/Doppler shift on
> purpose? If yes, what is the reasoning behind that.
> As far as I know, the Doppler shift should be somehow linear progressive.
>
> --
> NE
> _______________________________________________
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>
>
> _______________________________________________
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>


-- 
Ph.D. scholar: Kelvin Chelli
OFDM based wireless systems
Telecommunications Lab, Uni Saarland
Campus C6 3, Room  10.07
66123 Saarbrücken, Germany. <kelvin.che...@gmail.com>
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to