Remove term that sums up to 0 from alpha
This commit is contained in:
parent
5d0a1bcc6f
commit
cbcb39ff19
@ -129,7 +129,7 @@ int eea(
|
|||||||
ns_step(u, K1, K2, N1, N2, nu, delta, L, g, fft1, fft2, ifft, tmp1, tmp2, tmp3, irreversible);
|
ns_step(u, K1, K2, N1, N2, nu, delta, L, g, fft1, fft2, ifft, tmp1, tmp2, tmp3, irreversible);
|
||||||
|
|
||||||
energy=compute_energy(u, K1, K2);
|
energy=compute_energy(u, K1, K2);
|
||||||
alpha=compute_alpha_fast(u, K1, K2, g, L);
|
alpha=compute_alpha(u, K1, K2, g, L);
|
||||||
enstrophy=compute_enstrophy(u, K1, K2, L);
|
enstrophy=compute_enstrophy(u, K1, K2, L);
|
||||||
|
|
||||||
// running average
|
// running average
|
||||||
@ -429,7 +429,7 @@ int ns_rhs(
|
|||||||
if (irreversible) {
|
if (irreversible) {
|
||||||
alpha=nu;
|
alpha=nu;
|
||||||
} else {
|
} else {
|
||||||
alpha=compute_alpha(u,K1,K2,N1,N2,g,L,ifft.fft);
|
alpha=compute_alpha(u,K1,K2,g,L);
|
||||||
}
|
}
|
||||||
|
|
||||||
for(i=0; i<(K1+1)*(2*K2+1); i++){
|
for(i=0; i<(K1+1)*(2*K2+1); i++){
|
||||||
@ -557,35 +557,6 @@ int ns_T_nofft(
|
|||||||
|
|
||||||
// compute alpha
|
// compute alpha
|
||||||
double compute_alpha(
|
double compute_alpha(
|
||||||
_Complex double* u,
|
|
||||||
int K1,
|
|
||||||
int K2,
|
|
||||||
int N1,
|
|
||||||
int N2,
|
|
||||||
_Complex double* g,
|
|
||||||
double L,
|
|
||||||
_Complex double* T
|
|
||||||
){
|
|
||||||
_Complex double num=0;
|
|
||||||
double denom=0;
|
|
||||||
int kx,ky;
|
|
||||||
|
|
||||||
num=0.;
|
|
||||||
denom=0.;
|
|
||||||
|
|
||||||
for(kx=-K1;kx<=K1;kx++){
|
|
||||||
for(ky=-K2;ky<=K2;ky++){
|
|
||||||
num+=(L*L/4/M_PI/M_PI*(kx*kx+ky*ky)*getval_sym(g, kx,ky,K2)+sqrt(kx*kx+ky*ky)*T[klookup(kx,ky,N1,N2)])*conj(getval_sym(u, kx,ky,K2));
|
|
||||||
denom+=__real__ (kx*kx+ky*ky)*(kx*kx+ky*ky)*getval_sym(u, kx,ky,K2)*conj(getval_sym(u, kx,ky,K2));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return __real__ num/denom;
|
|
||||||
}
|
|
||||||
|
|
||||||
// compute alpha
|
|
||||||
// do not include the term involving T, which, in the limit K->infty, vanishes
|
|
||||||
double compute_alpha_fast(
|
|
||||||
_Complex double* u,
|
_Complex double* u,
|
||||||
int K1,
|
int K1,
|
||||||
int K2,
|
int K2,
|
||||||
|
@ -48,9 +48,7 @@ int ns_T( _Complex double* u, int K1, int K2, int N1, int N2, fft_vect fft1, fft
|
|||||||
int ns_T_nofft( _Complex double* out, _Complex double* u, int K1, int K2, int N1, int N2);
|
int ns_T_nofft( _Complex double* out, _Complex double* u, int K1, int K2, int N1, int N2);
|
||||||
|
|
||||||
// compute alpha
|
// compute alpha
|
||||||
double compute_alpha( _Complex double* u, int K1, int K2, int N1, int N2, _Complex double* g, double L, _Complex double* T);
|
double compute_alpha( _Complex double* u, int K1, int K2, _Complex double* g, double L);
|
||||||
// do not include the term involving T, which, in the limit K->infty, vanishes
|
|
||||||
double compute_alpha_fast( _Complex double* u, int K1, int K2, _Complex double* g, double L);
|
|
||||||
// compute energy
|
// compute energy
|
||||||
double compute_energy( _Complex double* u, int K1, int K2);
|
double compute_energy( _Complex double* u, int K1, int K2);
|
||||||
// compute enstrophy
|
// compute enstrophy
|
||||||
|
Loading…
Reference in New Issue
Block a user