Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
character(len=*), | intent(in), | optional | :: | grid_name | ||
integer, | intent(in), | optional | :: | im_world | ||
integer, | intent(in), | optional | :: | jm_world | ||
integer, | intent(in), | optional | :: | lm | ||
integer, | intent(in), | optional | :: | nx | ||
integer, | intent(in), | optional | :: | ny | ||
integer, | intent(in), | optional | :: | ims(:) | ||
integer, | intent(in), | optional | :: | jms(:) | ||
integer, | intent(out), | optional | :: | rc |
call ESMF_VMGet(vm, mpiCommunicator=mpic, localPet=mypet, petCount=petCount, rc=status);if(MAPL_Verify(status,”/home/runner/work/MAPL/MAPL/base/MAPL_SwathGridFactory.F90”,246 ,rc)) return
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(in) | :: | this | |||
type(ESMF_Grid), | intent(inout) | :: | grid | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
type(FileMetadata), | intent(inout) | :: | metadata |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
type(Variable), | intent(inout) | :: | var |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL32), | intent(in) | :: | xyz(:,:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | u(:,:) | |||
real(kind=REAL32), | intent(out) | :: | v(:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL64), | intent(in) | :: | xyz(:,:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | u(:,:) | |||
real(kind=REAL64), | intent(out) | :: | v(:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL32), | intent(in) | :: | xyz(:,:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | u(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | v(:,:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL64), | intent(in) | :: | xyz(:,:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | u(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | v(:,:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL32), | intent(in) | :: | xyz(:,:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | u(:,:) | |||
real(kind=REAL32), | intent(out) | :: | v(:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL64), | intent(in) | :: | xyz(:,:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | u(:,:) | |||
real(kind=REAL64), | intent(out) | :: | v(:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL32), | intent(in) | :: | xyz(:,:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | u(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | v(:,:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL64), | intent(in) | :: | xyz(:,:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | u(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | v(:,:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout), | target | :: | this | ||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(in) | :: | this | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(in) | :: | this | |||
class(AbstractGridFactory), | intent(in) | :: | a |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(in) | :: | a | |||
class(AbstractGridFactory), | intent(in) | :: | b |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
type(ESMF_Grid), | intent(inout) | :: | grid | |||
integer, | intent(out), | allocatable | :: | local_start(:) | ||
integer, | intent(out), | allocatable | :: | global_start(:) | ||
integer, | intent(out), | allocatable | :: | global_count(:) | ||
type(FileMetadata), | intent(in), | optional | :: | metaData | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
type(ESMF_Grid), | intent(inout) | :: | grid | |||
integer, | intent(out), | allocatable | :: | local_start(:) | ||
integer, | intent(out), | allocatable | :: | global_start(:) | ||
integer, | intent(out), | allocatable | :: | global_count(:) | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
real, | intent(in), | pointer | :: | fpointer(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
real, | intent(in), | pointer | :: | fpointer(:,:,:) | ||
type(FileMetadata), | intent(in), | optional | :: | metaData |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout), | target | :: | this | ||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | target | :: | this | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
key_lon=trim(this%var_name_lon) key_lat=trim(this%var_name_lat)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
type(ESMF_Grid), | intent(in) | :: | grid | |||
real(kind=ESMF_KIND_R4), | intent(out) | :: | obs_time(:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout) | :: | this | |||
type(ESMF_Time), | intent(in) | :: | interval(2) | |||
integer, | intent(out), | allocatable | :: | xy_mask(:,:) | ||
integer, | intent(out), | optional | :: | rc |
complex version ! (x1, x2] design in bisect if (index1==jlo-1) then je = index1 + 1 else je = index1 end if xy_subset(1, 2) = je if (index2==jlo-1) then je = index2 + 1 else je = index2 end if xy_subset(2, 2) = je
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(in) | :: | this | |||
type(ESMF_Time), | intent(in) | :: | interval(2) | |||
integer, | intent(out) | :: | xy_subset(2,2) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
real(kind=REAL32), | intent(inout) | :: | array(:,:) | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(in), | optional | :: | halo_width | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout), | target | :: | this | ||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout) | :: | this | |||
type(ESMF_Config), | intent(inout) | :: | config | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(XYGridFactory), | intent(inout) | :: | this | |||
type(FileMetadata), | intent(in), | target | :: | file_metadata | ||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
logical, | intent(in), | optional | :: | force_file_coordinates | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(XYGridFactory), | intent(inout) | :: | this | |||
type(ESMF_Config), | intent(inout) | :: | config | |||
character(len=*), | intent(in) | :: | prefix | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(XYGridFactory), | intent(inout) | :: | this | |||
type(ESMF_DistGrid), | intent(in) | :: | dist_grid | |||
type(ESMF_LocalArray), | intent(in) | :: | lon_array | |||
type(ESMF_LocalArray), | intent(in) | :: | lat_array | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout) | :: | this | |||
type(ESMF_Config), | intent(inout) | :: | config | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
write(6,’(a)’) ‘this%t_alongtrack(::50)=’ write(6,’(5f20.2)’) this%t_alongtrack(::50)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
type(ESMF_Config), | intent(inout) | :: | config | |||
character(len=*), | intent(in) | :: | prefix | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
type(ESMF_DistGrid), | intent(in) | :: | dist_grid | |||
type(ESMF_LocalArray), | intent(in) | :: | lon_array | |||
type(ESMF_LocalArray), | intent(in) | :: | lat_array | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(inout) | :: | this | |||
type(FileMetadata), | intent(in), | target | :: | file_metadata | ||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
logical, | intent(in), | optional | :: | force_file_coordinates | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(out) | :: | nx | |||
integer, | intent(out) | :: | ny | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(in), | optional | :: | reduceFactor | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout) | :: | this | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(in) | :: | this | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(XYGridFactory), | intent(in) | :: | a | |||
class(AbstractGridFactory), | intent(in) | :: | b |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(in) | :: | this | |||
class(AbstractGridFactory), | intent(in) | :: | a |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL32), | intent(in) | :: | u(:,:) | |||
real(kind=REAL32), | intent(in) | :: | v(:,:) | |||
real(kind=REAL32), | intent(out) | :: | xyz(:,:,:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL64), | intent(in) | :: | u(:,:) | |||
real(kind=REAL64), | intent(in) | :: | v(:,:) | |||
real(kind=REAL64), | intent(out) | :: | xyz(:,:,:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL32), | intent(in) | :: | u(:,:,:) | |||
real(kind=REAL32), | intent(in) | :: | v(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | xyz(:,:,:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL64), | intent(in) | :: | u(:,:,:) | |||
real(kind=REAL64), | intent(in) | :: | v(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | xyz(:,:,:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL32), | intent(in) | :: | u(:,:) | |||
real(kind=REAL32), | intent(in) | :: | v(:,:) | |||
real(kind=REAL32), | intent(out) | :: | xyz(:,:,:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL64), | intent(in) | :: | u(:,:) | |||
real(kind=REAL64), | intent(in) | :: | v(:,:) | |||
real(kind=REAL64), | intent(out) | :: | xyz(:,:,:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL32), | intent(in) | :: | u(:,:,:) | |||
real(kind=REAL32), | intent(in) | :: | v(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | xyz(:,:,:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractGridFactory), | intent(inout), | target | :: | this | ||
real(kind=REAL64), | intent(in) | :: | u(:,:,:) | |||
real(kind=REAL64), | intent(in) | :: | v(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | xyz(:,:,:,:) | |||
character(len=*), | intent(in) | :: | basis | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(SwathGridFactory), | intent(in) | :: | this |
type, extends(AbstractGridFactory) :: SwathGridFactory private character(len=:), allocatable :: grid_name character(len=:), allocatable :: grid_file_name character(len=ESMF_MAXSTR) :: filenames(mx_file) integer :: M_file integer :: cell_across_swath integer :: cell_along_swath integer :: im_world = MAPL_UNDEFINED_INTEGER integer :: jm_world = MAPL_UNDEFINED_INTEGER integer :: lm = MAPL_UNDEFINED_INTEGER logical :: force_decomposition = .false. integer :: epoch ! unit: second integer(ESMF_KIND_I8) :: epoch_index(4) ! is,ie,js,je real(ESMF_KIND_R8), allocatable:: t_alongtrack(:) ! note: this var is not deallocated in swathfactory, use caution character(len=ESMF_MAXSTR) :: tunit character(len=ESMF_MAXSTR) :: index_name_lon character(len=ESMF_MAXSTR) :: index_name_lat character(len=ESMF_MAXSTR) :: var_name_lon character(len=ESMF_MAXSTR) :: var_name_lat character(len=ESMF_MAXSTR) :: var_name_time character(len=ESMF_MAXSTR) :: input_template logical :: found_group type(ESMF_Time) :: obsfile_start_time ! user specify type(ESMF_Time) :: obsfile_end_time type(ESMF_TimeInterval) :: obsfile_interval type(ESMF_TimeInterval) :: EPOCH_FREQUENCY integer :: obsfile_Ts_index ! for epoch integer :: obsfile_Te_index logical :: is_valid ! Domain decomposition: integer :: nx = MAPL_UNDEFINED_INTEGER integer :: ny = MAPL_UNDEFINED_INTEGER integer, allocatable :: ims(:) integer, allocatable :: jms(:) ! Used for halo type (ESMF_DELayout) :: layout logical :: initialized_from_metadata = .false. contains procedure :: make_new_grid procedure :: create_basic_grid procedure :: add_horz_coordinates_from_file procedure :: init_halo procedure :: halo procedure :: initialize_from_file_metadata procedure :: initialize_from_config_with_prefix procedure :: initialize_from_esmf_distGrid procedure :: equals procedure :: check_and_fill_consistency procedure :: generate_grid_name procedure :: to_string procedure :: append_metadata procedure :: get_grid_vars procedure :: get_file_format_vars procedure :: append_variable_metadata procedure :: check_decomposition procedure :: generate_newnxy procedure :: generate_file_bounds procedure :: generate_file_corner_bounds procedure :: generate_file_reference2D procedure :: generate_file_reference3D procedure :: decomps_are_equal procedure :: physical_params_are_equal procedure :: get_xy_subset procedure :: destroy procedure :: get_obs_time end type SwathGridFactory