reads common to 2D and 3D 1-D variables normal (i.e. full 3D) grid ordering, or a 2D grid with 1 element naturally in the second dimension
3D variables corner case: for 2d sims, Incall has degenerate dimension and HDF5 file may be a 1-D vector, which can cause glibc error "corrupted size vs. prev_size" and hard crash. Since it's just one variable, easier to check and handle 2D with swapped axes
for a 3D grid this is x2, but now considered x3(all) formerly x3, now x2
NOTE: workaround for Intel 2020, may not really be a bug notice this is the only one with negative indices end workaround
this would be h3, but with the input structure shape permute the dimensions of the array 3 --> 2, 2 --> 3 this would be h3, but with the input structure shape htmp includes degenerate dimension input 2 vs. 3 dimensions swapped from this program htmp includes degenerate dimension Note also that the x2 interface from teh input file is x3i in this simulation htmp includes degenerate dimension htmp includes degenerate dimension htmp includes degenerate dimension swap the x2/x3 unit vectors htmp includes degenerate dimension
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 |