# Compute turbulent spectrum with Welch periodogram

Hi all,

I am computing turbulence density spectrum with Welch periodogram. The results seem good but I do not manage to find the fluctuation of streamwise velocity that I am supposed to find when computing the integral of the spectrum.

Here is my code:

``````sr = 833.3               # Sampling rate i.e. samples per second (1/dt with dt=0.0012)
Nysquid = sr/2

# Perform Welch's periodogram with hann window and 50% overlap
seg_len=4
segment = int( seg_len*sr )
myhann = signal.get_window('hann', segment)

# obtain Power density with Hann window and 50% overlap
myparams2 = dict(fs = sr, nperseg = segment, window = myhann,
noverlap = segment/2, scaling = 'density', return_onesided=True)

freqn, xn = signal.welch(x = xdat, **myparams2) #xdat is an array composed of the streamwise velocity at a given location and for every saved times.
``````

I compute the velocity fluctuation from the measured data as:

``````   U=xdat
U_std= np.std(U)
uu=0.5*U_std**2
``````

I compute the velocity fluctuation from the spectrum as:

``````    Euu=sum(xn)/seg_len
``````

The ratio between the two results (`uu/Euu`) is close to 1 (which is the expected value) but not exactly (lying between 0.5 and 1.5 depending on the location in the flow). Why I cannot found `Euu=uu`?

Thanks a lot!

This sounds like it’s really a question about the underlying mathematics or other domain knowledge, rather than a question about programming.