Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | path | |||
integer, | intent(in) | :: | flagswap | |||
type(curvmesh), | intent(inout) | :: | x | |||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | g1all | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | g2all | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | g3all | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | altall | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | glatall | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | glonall | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | Bmagall | ||
real(kind=wp), | intent(out), | dimension(:,:) | :: | Incall | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | nullptsall | ||
real(kind=wp), | intent(out), | dimension(:,:,:,:) | :: | e1all | ||
real(kind=wp), | intent(out), | dimension(:,:,:,:) | :: | e2all | ||
real(kind=wp), | intent(out), | dimension(:,:,:,:) | :: | e3all | ||
real(kind=wp), | intent(out), | dimension(:,:,:,:) | :: | erall | ||
real(kind=wp), | intent(out), | dimension(:,:,:,:) | :: | ethetaall | ||
real(kind=wp), | intent(out), | dimension(:,:,:,:) | :: | ephiall | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | rall | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | thetaall | ||
real(kind=wp), | intent(out), | dimension(:,:,:) | :: | phiall |
ADJUST THE SIZES OF THE VARIABLES IF LX3ALL==1, SO THAT THE ALLOCATIONS ARE THE CORRECT SIZE use total number of processes since we only divide in one direction here... should divide evenly if generated from mpigrid COMMUNICATE THE GRID SIZE TO THE WORKERS SO THAT THEY CAN ALLOCATE SPACE if this is a root-only simulation we don't want to error out need to also pass the lx2all size to all workers to they know
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | indatsize | |||
character(len=*), | intent(in) | :: | indatgrid | |||
type(curvmesh), | intent(inout) | :: | x |
COMPUTE DIFFERENTIAL DISTANCES ALONG EACH DIRECTION
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(curvmesh), | intent(inout) | :: | x |
READS GRID INFORMATION FROM A BBINARY FILE AND ALLOCATES GRID STRUCTURE. NOTE THAT THE INPUT FILE DOES NOT, BY DEFAULT INCLUDE THE GHOST CELLS. THIS FUNCTION IS A WRAPPER WHICH PASSES WORK OFF TO APPROPRIATE SUBROUTINE DEPENDING ON WHETHER IT IS CALLED BY ROOT OR NOT. THIS SUBRoutINE ALSO CLASSIFIES THE GRID.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | indatsize | |||
character(len=*), | intent(in) | :: | indatgrid | |||
integer, | intent(in) | :: | flagperiodic | |||
type(curvmesh), | intent(inout) | :: | x |