Simpler expression for fft term

This commit is contained in:
Ian Jauslin
2018-01-12 19:20:59 +00:00
parent 7ee5507b93
commit cff1d2ee3c
3 changed files with 57 additions and 68 deletions

View File

@@ -77,10 +77,10 @@ int read_args(int argc, const char* argv[], ns_params* params, unsigned int* nst
*nsteps=16777216;
params->nu=4.9632717887631524e-05;
*/
params->h=1e-5;
params->K=16;
params->h=1e-3/(2*params->K+1);
*nsteps=10000000;
params->nu=1e-4;
params->nu=1./1024/(2*params->K+1);
// loop over arguments
for(i=1;i<argc;i++){
@@ -221,7 +221,7 @@ int enstrophy(ns_params params, unsigned int Nsteps){
for(ky=-params.K;ky<=params.K;ky++){
//params.g[KLOOKUP(kx,ky,params.S)]=sqrt(kx*kx*ky*ky)*exp(-(kx*kx+ky*ky));
if((kx==2 && ky==-1) || (kx==-2 && ky==1)){
params.g[KLOOKUP(kx,ky,params.S)]=1;
params.g[KLOOKUP(kx,ky,params.S)]=1.0*params.K;
}
else{
params.g[KLOOKUP(kx,ky,params.S)]=0;
@@ -246,19 +246,21 @@ int enstrophy(ns_params params, unsigned int Nsteps){
ins_step(u, params, fft_vects, tmp1, tmp2, tmp3);
alpha=compute_alpha(u, params);
/*
// to avoid errors building up in imaginary part
for(kx=-params.K;kx<=params.K;kx++){
for(ky=-params.K;ky<=params.K;ky++){
u[KLOOKUP(kx,ky,params.S)]=__real__ u[KLOOKUP(kx,ky,params.S)];
}
}
*/
// running average
if(t>0){
avg=avg-(avg-alpha)/t;
}
if(t>0 && t%1000==0){
if(t>0 && t%1==0){
fprintf(stderr,"%8d % .8e % .8e % .8e % .8e\n",t, __real__ avg, __imag__ avg, __real__ alpha, __imag__ alpha);
printf("%8d % .8e % .8e % .8e % .8e\n",t, __real__ avg, __imag__ avg, __real__ alpha, __imag__ alpha);
}