From 8ecf0678ebd1274930fbd1ded57f6eb7ce5662bb Mon Sep 17 00:00:00 2001 From: Antoine Hoffmann <antoine.hoffmann@epfl.ch> Date: Sat, 1 Apr 2023 13:43:30 +0200 Subject: [PATCH] cleaning and organizing --- src/memory.F90 | 68 ++++++++++++++++++++++++++++++-------------------- 1 file changed, 41 insertions(+), 27 deletions(-) diff --git a/src/memory.F90 b/src/memory.F90 index 0fccaf0f..d32069b6 100644 --- a/src/memory.F90 +++ b/src/memory.F90 @@ -10,53 +10,64 @@ SUBROUTINE memory USE prec_const USE model, ONLY: na IMPLICIT NONE - - ! Electrostatic potential - CALL allocate_array( phi, 1,local_nky, 1,local_nkx, 1,local_nz+ngz) - CALL allocate_array( psi, 1,local_nky, 1,local_nkx, 1,local_nz+ngz) - CALL allocate_array(inv_poisson_op, 1,local_nky, 1,local_nkx, 1,local_nz) - CALL allocate_array( inv_ampere_op, 1,local_nky, 1,local_nkx, 1,local_nz) - CALL allocate_array( inv_pol_ion, 1,local_nky, 1,local_nkx, 1,local_nz) - ! CALL allocate_array(HF_phi_correction_operator, 1,local_nky, 1,local_nkx, 1,local_nz) - - !Moments related arrays - CALL allocate_array( dens, 1,local_na, 1,local_nky, 1,local_nkx, 1,local_nz) - CALL allocate_array( upar, 1,local_na, 1,local_nky, 1,local_nkx, 1,local_nz) - CALL allocate_array( uper, 1,local_na, 1,local_nky, 1,local_nkx, 1,local_nz) - CALL allocate_array( Tpar, 1,local_na, 1,local_nky, 1,local_nkx, 1,local_nz) - CALL allocate_array( Tper, 1,local_na, 1,local_nky, 1,local_nkx, 1,local_nz) - CALL allocate_array( temp, 1,local_na, 1,local_nky, 1,local_nkx, 1,local_nz) - CALL allocate_array( Kernel, 1,local_na, 1,local_nj+ngj, 1,local_nky, 1,local_nkx, 1,local_nz+ngz, 1,nzgrid) + !==================== Ghosted arrays ==================== + ! 5D+ arrays CALL allocate_array( moments, 1,local_na, 1,local_np+ngp, 1,local_nj+ngj, 1,local_nky, 1,local_nkx, 1,local_nz+ngz, 1,ntimelevel ) - CALL allocate_array( napjz, 1,local_na, 1,local_np, 1,local_nj, 1,local_nz) - CALL allocate_array( moments_rhs, 1,local_na, 1,local_np, 1,local_nj, 1,local_nky, 1,local_nkx, 1,local_nz, 1,ntimelevel ) CALL allocate_array( nadiab_moments, 1,local_na, 1,local_np+ngp, 1,local_nj+ngj, 1,local_nky, 1,local_nkx, 1,local_nz+ngz) CALL allocate_array( ddz_napj, 1,local_na, 1,local_np+ngp, 1,local_nj+ngj, 1,local_nky, 1,local_nkx, 1,local_nz) CALL allocate_array( ddzND_napj, 1,local_na, 1,local_np+ngp, 1,local_nj+ngj, 1,local_nky, 1,local_nkx, 1,local_nz) CALL allocate_array( interp_napj, 1,local_na, 1,local_np+ngp, 1,local_nj+ngj, 1,local_nky, 1,local_nkx, 1,local_nz) - CALL allocate_array( Capj, 1,local_na, 1,local_np, 1,local_nj, 1,local_nky, 1,local_nkx, 1,local_nz) - CALL allocate_array( Sapj, 1,local_na, 1,local_np, 1,local_nj, 1,local_nky, 1,local_nkx, 1,local_nz) + + ! 4D+ arrays + CALL allocate_array( Kernel, 1,local_na, 1,local_nj+ngj, 1,local_nky, 1,local_nkx, 1,local_nz+ngz, 1,nzgrid) + + ! 3D arrays + CALL allocate_array( phi, 1,local_nky, 1,local_nkx, 1,local_nz+ngz) + CALL allocate_array( psi, 1,local_nky, 1,local_nkx, 1,local_nz+ngz) + + ! smaller arrays + + + !==================== Not ghosted arrays ==================== + ! 5D+ arrays + CALL allocate_array( moments_rhs, 1,local_na, 1,local_np, 1,local_nj, 1,local_nky, 1,local_nkx, 1,local_nz, 1,ntimelevel ) + CALL allocate_array( Capj, 1,local_na, 1,local_np, 1,local_nj, 1,local_nky, 1,local_nkx, 1,local_nz) + CALL allocate_array( Sapj, 1,local_na, 1,local_np, 1,local_nj, 1,local_nky, 1,local_nkx, 1,local_nz) + + ! 4D+ arrays + CALL allocate_array( napjz, 1,local_na, 1,local_np, 1,local_nj, 1,local_nz) + CALL allocate_array( dens, 1,local_na, 1,local_nky, 1,local_nkx, 1,local_nz) + CALL allocate_array( upar, 1,local_na, 1,local_nky, 1,local_nkx, 1,local_nz) + CALL allocate_array( uper, 1,local_na, 1,local_nky, 1,local_nkx, 1,local_nz) + CALL allocate_array( Tpar, 1,local_na, 1,local_nky, 1,local_nkx, 1,local_nz) + CALL allocate_array( Tper, 1,local_na, 1,local_nky, 1,local_nkx, 1,local_nz) + CALL allocate_array( temp, 1,local_na, 1,local_nky, 1,local_nkx, 1,local_nz) + + ! 3D arrays + CALL allocate_array(inv_poisson_op, 1,local_nky, 1,local_nkx, 1,local_nz) + CALL allocate_array( inv_ampere_op, 1,local_nky, 1,local_nkx, 1,local_nz) + CALL allocate_array( inv_pol_ion, 1,local_nky, 1,local_nkx, 1,local_nz) + + ! smaller arrays CALL allocate_array( xnapj, 1,local_na, 1,local_np, 1,local_nj) + CALL allocate_array( xnapp2j, 1,local_na, 1,local_np) CALL allocate_array( xnapp1j, 1,local_na, 1,local_np) CALL allocate_array( xnapm1j, 1,local_na, 1,local_np) CALL allocate_array( xnapm2j, 1,local_na, 1,local_np) + CALL allocate_array( xnapjp1, 1,local_na, 1,local_nj) CALL allocate_array( xnapjm1, 1,local_na, 1,local_nj) + CALL allocate_array( ynapp1j, 1,local_na, 1,local_np, 1,local_nj) CALL allocate_array( ynapm1j, 1,local_na, 1,local_np, 1,local_nj) CALL allocate_array( ynapp1jm1, 1,local_na, 1,local_np, 1,local_nj) CALL allocate_array( ynapm1jm1, 1,local_na, 1,local_np, 1,local_nj) + CALL allocate_array( znapm1j, 1,local_na, 1,local_np, 1,local_nj) CALL allocate_array( znapm1jp1, 1,local_na, 1,local_np, 1,local_nj) CALL allocate_array( znapm1jm1, 1,local_na, 1,local_np, 1,local_nj) - ! Non linear terms and dnjs table - CALL allocate_array( dnjs, 1,jmax+1, 1,jmax+1, 1,jmax+1) - - ! Hermite fourth derivative coeff table 4*sqrt(p!/(p-4)!) - CALL allocate_array( dv4_Hp_coeff, -2, pmax) - CALL allocate_array( xphij, 1,local_na, 1,local_np, 1,local_nj) CALL allocate_array( xphijp1, 1,local_na, 1,local_np, 1,local_nj) CALL allocate_array( xphijm1, 1,local_na, 1,local_np, 1,local_nj) @@ -64,6 +75,9 @@ SUBROUTINE memory CALL allocate_array( xpsijp1, 1,local_na, 1,local_np, 1,local_nj) CALL allocate_array( xpsijm1, 1,local_na, 1,local_np, 1,local_nj) + CALL allocate_array( dnjs, 1,jmax+1, 1,jmax+1, 1,jmax+1) + CALL allocate_array( dv4_Hp_coeff, -2, pmax) + !___________________ 2x5D ARRAYS __________________________ !! Collision matrices IF (GK_CO) THEN !GK collision matrices (one for each kperp) -- GitLab