Open darianboggs opened 1 week ago
Here are the notes of the Microsoft Teams meeting discussion for this issue:
N | X | Y |
---|---|---|
0 | X(i,j,k) | Y(ij,k,1) |
1 | X(i,j,k,a,b) | Y(ij,k,ab) |
2 | X(i,k,a,b) | Y(i,k,ab) |
3 | X(k) | Y(1,k,1) |
4 | X(i,j,a,b) | Y(ij,1,ab) |
I. shp = GetFieldCondensedShape(F, rc)
FieldGetCondensedArray_r4(F, x, rc) FieldGetCondensedArray_r8(F, x, rc) FieldGetCondensedArray_i4(F, x, rc) FieldGetCondensedArray_i8(F, x, rc)
real(R4), pointer :: x(:,:,:) real(R8), pointer :: x(:,:,:) integer(I4), pointer :: x(:,:,:) integer(I8), pointer :: x(:,:,:)
shp = FieldGetCondenedShape(F, _RC) call FieldGetCptr(x, ...)
MAPL3 requires procedures to extract a rank-3 array pointer from an
ESMF_Field
. The rank-3 array provides a common array representation ofESMF_Field
objects. It should support these typekinds:ESMF_KIND_R8
ESMF_KIND_R4
ESMF_KIND_I4
ESMF_KIND_I8
The dimensions of the array are:
If there are no horizontal dimensions, the first dimension has size 1. Similarly, if there are no ungridded dimensions, the third dimension has size 1. Finally, if there is no vertical dimension, the second dimension has size 1.
The steps are:
ESMF_Field
geometry, including the rank and size for horizontal, vertical, and ungridded dimensions.ESMF_Field
.