Multi-Scale Simulation

Non conservative field

In the previous exercise we play with the different step to construct a multifracta continuous field using a Lévy generator. These constructions are not valid for a non conservative quantities such as the velocity field or passive scalar. In this exercise we will see how to construct a non conservative field using the Fractional Integrated Field technique presented in this lecture.

Question

  • Starting with the given programs (previous exercise) generated a continuous field.

  • Plot the power spectra density of the generated field.

  • We have seen in the previous lecture that the slope of PDS is related to the Hurst exponent (non-conservativeness parameter) by the following relation:

H = \frac{\beta -1 + K(2)}{2}

Assuming the intermittency correction is null calculate the parameter using the PDS slope.

  • Generate a non conservative field with , by using the following program with previous programs.

1
// Fractional Integration 
2
function [Field]=FracIntegration(flux, lambda, a, H)
3
    flux = flux.^a;
4
    F = fft(flux);
5
    N = lambda/2 +1;
6
    n = 1:N;
7
    F(1:N) = F(1:N).*(n.^(-H));
8
    F(N+1:lambda) = real(F(lambda/2:-1:2)) -%i*imag(F(lambda/2:-1:2));
9
    
10
    Field = ifft(F);
11
    Field = real(Field(1,1:lambda));
12
    
13
endfunction
14
  • Plot and compared the PDS of the obtained field with previous generated field.

  • Calculate the slope spectra of non conservative field using the value of according to the previous relation.

Hint

Power spectra intermittency correction : .

Solution
1
// Fractional Integration 
2
function [Field]=FracIntegration(flux, lambda, a, H)
3
    flux = flux.^a;
4
    F = fft(flux);
5
    N = lambda/2 +1;
6
    n = 1:N;
7
    F(1:N) = F(1:N).*(n.^(-H));
8
    F(N+1:lambda) = real(F(lambda/2:-1:2)) -%i*imag(F(lambda/2:-1:2));
9
    
10
    Field = ifft(F);
11
    Field = real(Field(1,1:lambda));
12
    
13
endfunction
14
1
clear;
2
clc;
3
4
exec("Levy.sce");
5
exec("FracIntegration.sce");
6
exec("ColorFunc.sce");
7
exec("Continuous.sce");
8
exec("Slope.sce");
9
10
// Universal multifractal parameters
11
alpha = 1.7;
12
C1 = 0.5;
13
lambda = 2^12;
14
15
// Continuous simulation
16
Sim = Continuous(alpha,C1,lambda);
17
18
// Calculate the spectrum
19
tamp1 = abs(fft(Sim));
20
E1 = tamp1.*tamp1;
21
E1 = E1(1:length(E1)*0.5)
22
23
// Fractional integration
24
a = 1/3;
25
H =1/3;
26
Field = FracIntegration(Sim, lambda, a, H);
27
28
// Calculate the spectrum
29
tamp = abs(fft(Field));
30
E = tamp.*tamp;
31
x = (1:length(E)*0.5)/length(E);
32
E = E(1:length(E)*0.5)
33
34
// Spectra slope estimation
35
break_frequence =[0.5 0.001];
36
Scalingrange=[1 length(E)*break_frequence(2);length(E)*break_frequence(2) length(E)*break_frequence(1)]
37
38
s = Slope(E,Scalingrange);
39
s1 = Slope(E1,Scalingrange); 
40
    
41
//Plots
42
plot2d(log10(x), log10(E1),5)
43
plot2d(log10(x), log10(E))
Power spectra density for conservative and non-conservative field field
PreviousPreviousNextNext
HomepageHomepagePrintPrintCreated with Scenari (new window)