Skip to content

diag_f0.61_03

Choose a tag to compare

@smaeyama smaeyama released this 30 Mar 03:10
· 2 commits to main since this release
971ece4

To allow changing resolution and MPI decomposition when restarting your run, diag_chgres module (diag_chgres_cnt.f90 and diag_chgres_util.f90, developed by Fujitsu, extended by S. Maeyama) is added.

Example to use (in diag_main.f90):

import diag_chgres_cnt, only : chgres_cnt_netcdf, chgres_cnt_fortran
stpn = 1  ! Run number of existing cnt file, of which you want to change resolution
nnx = 48  ! New resolution of nx in gkvp_header.f90
ngy = 19  ! New resolution of global_ny in gkvp_header.f90
ngz = 32  ! New resolution of global_nz in gkvp_header.f90
ngv = 48  ! New resolution of global_nv in gkvp_header.f90
ngm = 47  ! New resolution of global_nm in gkvp_header.f90
nnpw = 2  ! New MPI decomposition of nprocw in gkvp_header.f90
nnpz = 4  ! New MPI decomposition of nprocz in gkvp_header.f90
nnpv = 4  ! New MPI decomposition of nprocv in gkvp_header.f90
nnpm = 4  ! New MPI decomposition of nprocm in gkvp_header.f90
nnps = 3  ! New MPI decomposition of nprocs in gkvp_header.f90
!### For Fortran binary output, cnt/gkvp.******.cnt.***
call chgres_cnt_fortran(stpn=stpn,nnx=nnx, ngy=ngy, ngz=ngz, ngv=ngv, ngm=ngm, &
                        nnpw=nnpw, nnpz=nnpz, nnpv=nnpv, nnpm=nnpm, nnps=nnps)
!### For NetCDF4 output, cnt/gkvp.cnt.***.nc
!call chgres_cnt_netcdf(stpn=stpn,nnx=nnx, ngy=ngy, ngz=ngz, ngv=ngv, ngm=ngm, &
!                       nnpw=nnpw, nnpz=nnpz, nnpv=nnpv, nnpm=nnpm, nnps=nnps)

Increments of mode number In kx and ky => zero padding.
Decrease of mode number in kx and ky => truncated.
Resolution change in z,v,m directions => linear interpolations.
Increments of plasma species s => zero padding.
Decrease of plasma species s => truncated.