Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(inout) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(inout) | :: | this | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(inout) | :: | this | |||
type(ESMF_TypeKind_Flag), | intent(in) | :: | kind | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(inout) | :: | this | |||
type(RegridderSpec), | intent(in) | :: | spec | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(TilingRegridder), | intent(inout) | :: | this | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(inout) | :: | this | |||
type(RegridderSpec), | intent(in) | :: | spec | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(inout) | :: | this | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
type(ESMF_Field), | intent(in) | :: | f_in | |||
type(ESMF_Field), | intent(in) | :: | f_out | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
type(ESMF_Field), | intent(in) | :: | f_in(NUM_DIM) | |||
type(ESMF_Field), | intent(in) | :: | f_out(NUM_DIM) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(TilingRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | q_in(:,:) | |||
real(kind=REAL32), | intent(out) | :: | q_out(:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | q_in(:,:) | |||
real(kind=REAL64), | intent(out) | :: | q_out(:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | q_in(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | q_out(:,:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | q_in(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | q_out(:,:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | u_in(:,:) | |||
real(kind=REAL32), | intent(in) | :: | v_in(:,:) | |||
real(kind=REAL32), | intent(out) | :: | u_out(:,:) | |||
real(kind=REAL32), | intent(out) | :: | v_out(:,:) | |||
logical, | intent(in), | optional | :: | rotate | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | u_in(:,:) | |||
real(kind=REAL64), | intent(in) | :: | v_in(:,:) | |||
real(kind=REAL64), | intent(out) | :: | u_out(:,:) | |||
real(kind=REAL64), | intent(out) | :: | v_out(:,:) | |||
logical, | intent(in), | optional | :: | rotate | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | u_in(:,:,:) | |||
real(kind=REAL32), | intent(in) | :: | v_in(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | u_out(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | v_out(:,:,:) | |||
logical, | intent(in), | optional | :: | rotate | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | u_in(:,:,:) | |||
real(kind=REAL64), | intent(in) | :: | v_in(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | u_out(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | v_out(:,:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
type(ESMF_Field), | intent(in) | :: | f_in | |||
type(ESMF_Field), | intent(in) | :: | f_out | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
type(ESMF_Field), | intent(in) | :: | f_in(NUM_DIM) | |||
type(ESMF_Field), | intent(in) | :: | f_out(NUM_DIM) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | q_in(:,:) | |||
real(kind=REAL32), | intent(out) | :: | q_out(:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | q_in(:,:) | |||
real(kind=REAL64), | intent(out) | :: | q_out(:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | q_in(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | q_out(:,:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | q_in(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | q_out(:,:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | u_in(:,:) | |||
real(kind=REAL32), | intent(in) | :: | v_in(:,:) | |||
real(kind=REAL32), | intent(out) | :: | u_out(:,:) | |||
real(kind=REAL32), | intent(out) | :: | v_out(:,:) | |||
logical, | intent(in), | optional | :: | rotate | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | u_in(:,:) | |||
real(kind=REAL64), | intent(in) | :: | v_in(:,:) | |||
real(kind=REAL64), | intent(out) | :: | u_out(:,:) | |||
real(kind=REAL64), | intent(out) | :: | v_out(:,:) | |||
logical, | intent(in), | optional | :: | rotate | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | u_in(:,:,:) | |||
real(kind=REAL32), | intent(in) | :: | v_in(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | u_out(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | v_out(:,:,:) | |||
logical, | intent(in), | optional | :: | rotate | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | u_in(:,:,:) | |||
real(kind=REAL64), | intent(in) | :: | v_in(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | u_out(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | v_out(:,:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(inout) | :: | this | |||
type(RegridderSpec), | intent(in) | :: | spec |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(inout) | :: | this | |||
real | :: | undef_value |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(RegridderSpec), | intent(in) | :: | spec | |||
class(KeywordEnforcer), | intent(in), | optional | :: | unusable | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
type(ESMF_Field), | intent(in) | :: | f_in | |||
type(ESMF_Field), | intent(in) | :: | f_out | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
type(ESMF_Field), | intent(in) | :: | f_in(NUM_DIM) | |||
type(ESMF_Field), | intent(in) | :: | f_out(NUM_DIM) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | q_in(:,:) | |||
real(kind=REAL32), | intent(out) | :: | q_out(:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | q_in(:,:) | |||
real(kind=REAL64), | intent(out) | :: | q_out(:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | q_in(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | q_out(:,:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | q_in(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | q_out(:,:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | u_in(:,:) | |||
real(kind=REAL32), | intent(in) | :: | v_in(:,:) | |||
real(kind=REAL32), | intent(out) | :: | u_out(:,:) | |||
real(kind=REAL32), | intent(out) | :: | v_out(:,:) | |||
logical, | intent(in), | optional | :: | rotate | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | u_in(:,:) | |||
real(kind=REAL64), | intent(in) | :: | v_in(:,:) | |||
real(kind=REAL64), | intent(out) | :: | u_out(:,:) | |||
real(kind=REAL64), | intent(out) | :: | v_out(:,:) | |||
logical, | intent(in), | optional | :: | rotate | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | u_in(:,:,:) | |||
real(kind=REAL32), | intent(in) | :: | v_in(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | u_out(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | v_out(:,:,:) | |||
logical, | intent(in), | optional | :: | rotate | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | u_in(:,:,:) | |||
real(kind=REAL64), | intent(in) | :: | v_in(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | u_out(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | v_out(:,:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
type(ESMF_Field), | intent(in) | :: | f_in | |||
type(ESMF_Field), | intent(in) | :: | f_out | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
type(ESMF_Field), | intent(in) | :: | f_in(NUM_DIM) | |||
type(ESMF_Field), | intent(in) | :: | f_out(NUM_DIM) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | q_in(:,:) | |||
real(kind=REAL32), | intent(out) | :: | q_out(:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | q_in(:,:) | |||
real(kind=REAL64), | intent(out) | :: | q_out(:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | q_in(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | q_out(:,:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | q_in(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | q_out(:,:,:) | |||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | u_in(:,:) | |||
real(kind=REAL32), | intent(in) | :: | v_in(:,:) | |||
real(kind=REAL32), | intent(out) | :: | u_out(:,:) | |||
real(kind=REAL32), | intent(out) | :: | v_out(:,:) | |||
logical, | intent(in), | optional | :: | rotate | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | u_in(:,:) | |||
real(kind=REAL64), | intent(in) | :: | v_in(:,:) | |||
real(kind=REAL64), | intent(out) | :: | u_out(:,:) | |||
real(kind=REAL64), | intent(out) | :: | v_out(:,:) | |||
logical, | intent(in), | optional | :: | rotate | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL32), | intent(in) | :: | u_in(:,:,:) | |||
real(kind=REAL32), | intent(in) | :: | v_in(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | u_out(:,:,:) | |||
real(kind=REAL32), | intent(out) | :: | v_out(:,:,:) | |||
logical, | intent(in), | optional | :: | rotate | ||
integer, | intent(out), | optional | :: | rc |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(AbstractRegridder), | intent(in) | :: | this | |||
real(kind=REAL64), | intent(in) | :: | u_in(:,:,:) | |||
real(kind=REAL64), | intent(in) | :: | v_in(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | u_out(:,:,:) | |||
real(kind=REAL64), | intent(out) | :: | v_out(:,:,:) | |||
integer, | intent(out), | optional | :: | rc |
type, abstract :: AbstractRegridder private type (RegridderSpec) :: spec real :: undef_value = MAPL_UNDEF logical :: has_undef_value_ = .false. contains procedure :: clone procedure, nopass :: supports procedure :: initialize_base procedure(initialize_subclass), deferred :: initialize_subclass generic :: initialize => initialize_base, initialize_subclass procedure :: get_spec procedure :: set_spec procedure :: isTranspose procedure :: regrid_scalar_2d_real32 procedure :: regrid_scalar_2d_real64 procedure :: regrid_scalar_3d_real32 procedure :: regrid_scalar_3d_real64 procedure :: regrid_vector_2d_real32 procedure :: regrid_vector_2d_real64 procedure :: regrid_vector_3d_real32 procedure :: regrid_vector_3d_real64 ! ESMF interface is full generic and simply unpacks into the other ! interfaces. procedure :: regrid_esmf_fields_scalar procedure :: regrid_esmf_fields_vector ! Generic overload generic :: regrid => regrid_esmf_fields_scalar generic :: regrid => regrid_esmf_fields_vector generic :: regrid => regrid_scalar_2d_real32 generic :: regrid => regrid_scalar_2d_real64 generic :: regrid => regrid_scalar_3d_real32 generic :: regrid => regrid_scalar_3d_real64 generic :: regrid => regrid_vector_2d_real32 generic :: regrid => regrid_vector_2d_real64 generic :: regrid => regrid_vector_3d_real32 generic :: regrid => regrid_vector_3d_real64 ! Transpose methods procedure :: transpose_regrid_scalar_2d_real32 procedure :: transpose_regrid_scalar_2d_real64 procedure :: transpose_regrid_scalar_3d_real32 procedure :: transpose_regrid_scalar_3d_real64 procedure :: transpose_regrid_vector_2d_real32 procedure :: transpose_regrid_vector_2d_real64 procedure :: transpose_regrid_vector_3d_real32 procedure :: transpose_regrid_vector_3d_real64 procedure :: transpose_regrid_esmf_fields_scalar procedure :: transpose_regrid_esmf_fields_vector ! Generic overload generic :: transpose_regrid => transpose_regrid_esmf_fields_scalar generic :: transpose_regrid => transpose_regrid_esmf_fields_vector generic :: transpose_regrid => transpose_regrid_scalar_2d_real32 generic :: transpose_regrid => transpose_regrid_scalar_2d_real64 generic :: transpose_regrid => transpose_regrid_scalar_3d_real32 generic :: transpose_regrid => transpose_regrid_scalar_3d_real64 generic :: transpose_regrid => transpose_regrid_vector_2d_real32 generic :: transpose_regrid => transpose_regrid_vector_2d_real64 generic :: transpose_regrid => transpose_regrid_vector_3d_real32 generic :: transpose_regrid => transpose_regrid_vector_3d_real64 ! Setters/getters procedure :: set_undef_value procedure :: get_undef_value procedure :: clear_undef_value procedure :: has_undef_value procedure :: get_regrid_method procedure :: destroy procedure :: destroy_route_handle end type AbstractRegridder