From 6fbcb8665824b0c1edbbe8cb18d509ca7e006e49 Mon Sep 17 00:00:00 2001 From: Ian Jauslin Date: Thu, 19 May 2022 18:35:33 +0200 Subject: Compute energy --- src/navier-stokes.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) (limited to 'src/navier-stokes.c') diff --git a/src/navier-stokes.c b/src/navier-stokes.c index 18c2fc5..0a2842c 100644 --- a/src/navier-stokes.c +++ b/src/navier-stokes.c @@ -68,6 +68,55 @@ int uk( return(0); } +// compute the energy as a function of time +int energy( + int K1, + int K2, + int N1, + int N2, + unsigned int nsteps, + double nu, + double delta, + _Complex double (*g)(int,int), + unsigned int print_freq, + unsigned int nthreads +){ + _Complex double* u; + _Complex double* tmp1; + _Complex double* tmp2; + _Complex double* tmp3; + unsigned int t; + fft_vect fft1; + fft_vect fft2; + fft_vect ifft; + int kx,ky; + double energy; + + ns_init_tmps(&u, &tmp1, &tmp2, &tmp3, &fft1, &fft2, &ifft, K1, K2, N1, N2, nthreads); + ns_init_u(u, K1, K2); + + // iterate + for(t=0;t