TransWikia.com

What are premultiplied energy spectra?

Physics Asked by user1906398 on June 24, 2021

When speaking about turbulence in fluid mechanics many times authors speak about “premultiplied energy spectra” but they never explain what really it is. I have searched for a definition but I did not manage to find it. I guess that is something related about the real energy contained in a region of scales when using a logarithm scale representation but I am not sure.

So, what are these “premultiplied energy spectra”?

3 Answers

A quick google research (link) gives some references. As far as I can understand, to premultiply allows to filter the spectrum and identify a result on a specific wave number range.

For instance, by defining the energy spectra by $E(k,t)$, the kinetic energy dissipation $varepsilon$ and the wave number $k$, you can try to find scalings in the inertial range by plotting directly $$ E^*(k,t) = E(k,t) times k^{5/3} times varepsilon^{-2/3}(t) $$

Doint this at high Reynolds number, you may find a plateau in the inertial zone giving you the value of the Kolmogorov constance for instance.

An other possibility is to look at the quantity $ktimes T(k,t)$ with $T(k,t)$ the kinetic energy transfer. It shows the exact contribution of the transfer to each scale.

You can find this kind of study in Lesieur $textit{et al.}$ (2000) for inertial range spectra and infrared spectra. Or, from the google search, Hutchins (page 17) who speaks about a $k^{-1}$ plateau when looking at the quantity $k_x Phi_{uu}$.

Correct answer by Lalylulelo on June 24, 2021

One of the reason for using premultiplied spectra is meant for the $k_{-1}$ plateau as former author mentioned.

The other important reason is to show exactly the contribution to an entire spectrum of each wave number in a log-coordinate. Because the spectra are plotted mostly in log-coordinates, if we would like the area that the curve encloses to represent the turbulent kinetic energy, we need to multiply the spectra by the wave number.

Take the one-dimension streamwise spectrum for example, the integral of the 1D spectrum is equal to the streamwise component of TKE:

$$int_0^{+infty}Phi_{uu}(k_x) dk_x = overline{u^2}$$

But in the log-coordinates the area element is $d(ln(k_x))$ instead of $dk_x$ so we multiply the $Phi_{uu}$ by $k_x$ to obtain that :

$$int_0^{+infty} k_xPhi_{uu}(k_x) d(ln(k_x)) = int_0^{+infty} k_xPhi_{uu}(k_x) frac{1}{k_x} dk_x = overline{u^2}$$

So that you can find the area beneath the curve $k_xPhi_{uu}$ is meant for the turbulent kinetic energy contributed by the wave number $k_x$, in a log-coordinate.

Answered by Jinyuan Liu on June 24, 2021

As the previous answers point out, there's the log-log scale justification and there is also the Kolmogorov plateau. But I wanted to add that you REALLY need to be careful when using pre-multiplication to analyze your own data. Let's go through a simple example so you can see how much of a trap it can be:

Take an infinite bandwidth white noise signal. It has a flat spectrum (black line below). If you pre-multiply it and plot it in a linear-linear scale, it will have a ramp shape - as expected (blue line below).

Infinite bandwidth white noise spectrum (black) and its premultiplied counterpart (blue), plotted in a linear-linear scale

Ok. Now let's low-pass this signal with a 2nd order butterworth filter with a cut-off frequency of 3 (arbitrary) and plot both the regular spectrum of this noise signal (black) and pre-multiplied spectrum (blue) in a linear-linear scale:

Low-passed white noise spectrum (black) and its premultiplied counterpart (blue), plotted in a linear-linear scale

We know this noise signal is pretty uninteresting, and in fluid mechanics, this would simply indicate a regular turbulent cascade. However, a peak is produced in the pre-multiplied plot. That peak has little relevance, but it is approximately where the cutoff frequency is. For the sake of completeness, let's plot the same low-passed white noise signal in a semilog-x scale, which would be the reason why you would pre-multiply the spectrum to begin with (see Jinyan's answer for the mathematical discussion).

Infinite bandwidth white noise spectrum (black) and its premultiplied counterpart (blue), plotted in a log-linear scale

As you can see, there's a peak that is not at the cut-off frequency (fc=3), but is approximately where the cutoff is. The peak will appear at different frequencies depending on the order of the filter used (i.e., how fast it's rolling off).

With this in mind, we can safely say that pre-multiplied spectra will naturally produce a peak from a low-passed white noise signal. But signals found in fluid mechanics are naturally low-passed, white-noise-like. Therefore, the peaks are not meaningful. I agree with the original poster. There's a significant amount of papers out there identifying these peaks and analyzing them, looking for relevant "flow physics" (I work with shock-boundary layer interactions). It's, in my opinion, a huge fallacy. But it makes a boring story into an interesting one. That's probably why some academics fall for it.

See Matlab code below used to generate the plots in this discussion.

clear; clc; close all;

%Generates noise
g=randn(1e7,1);
n=10000; %Number of windows for PSD averaging
fs=20; %artificial sampling frequency for plotting

%%
[b,a]=butter(2,0.3); %Filters the noise
gf=filter(b,a,g);

%%
%Takes the power spectrum
[pw,w]=pwelch(gf,hann(length(g)/n),0,length(g)/n); %
[pwG,w]=pwelch(g,hann(length(g)/n),0,length(g)/n);
f=w*fs/(2*pi); %Converts from radian frequency to "physical frequency"

%%
%Plots
figure('COLOR','W','POSITION',[363 558 877 305]);
subplot(1,2,1)
plot(f,pw,'k-', 'linewidth',2);hold on;
plot(f,f.*pw,'b-', 'linewidth',2);
xlabel('f');
legend('P_{xx}', 'f*P_{xx}');
subplot(1,2,2)
semilogx(f,pw,'k-', 'linewidth',2);hold on;
semilogx(f,f.*pw,'b-', 'linewidth',2);
xlabel('f');
legend('P_{xx}', 'f*P_{xx}');

%%
figure('COLOR','W','POSITION',[363 558 877 305]);
subplot(1,2,1)
plot(f(2:end-1),pwG(2:end-1),'k-', 'linewidth',2);hold on;
plot(f(2:end-1),f(2:end-1).*pwG(2:end-1),'b-', 'linewidth',2);
xlabel('f');
legend('P_{xx}', 'f*P_{xx}');
subplot(1,2,2)
semilogx(f(2:end-1),pwG(2:end-1),'k-', 'linewidth',2);hold on;
semilogx(f(2:end-1),f(2:end-1).*pwG(2:end-1),'b-', 'linewidth',2);
xlabel('f');
legend('P_{xx}', 'f*P_{xx}');

Answered by Fernando Zigunov on June 24, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP