SOCA
|
Holds all data and metadata related to a single field variable. More...
Public Member Functions | |
procedure | copy => soca_field_copy |
Copy a field from rhs to self . More... | |
procedure | delete => soca_field_delete |
Delete the soca_field object. More... | |
procedure | check_congruent => soca_field_check_congruent |
Make sure the two fields are the same in terms of name, size, shape. More... | |
procedure | update_halo => soca_field_update_halo |
Update the data in the halo region of the field. More... | |
procedure | stencil_interp => soca_field_stencil_interp |
Perform spatial interpolation between two grids. More... | |
Public Attributes | |
character(len=:), allocatable | name |
The internally used name of the field. More... | |
integer | nz |
The number of vertical levels. More... | |
real(kind=kind_real), dimension(:,:,:), allocatable | val |
The actual field data. More... | |
real(kind=kind_real), dimension(:,:), pointer | mask => null() |
Pointer to the relevant mask in soca_geom_mod::soca_geom. More... | |
real(kind=kind_real), dimension(:,:), pointer | lon => null() |
Pointer to the relevant longitudes in soca_geom_mod::soca_geom. More... | |
real(kind=kind_real), dimension(:,:), pointer | lat => null() |
Pointer to the relevant latitudes in soca_geom_mod::soca_geom. More... | |
type(soca_field_metadata) | metadata |
Parameters for the field as determined by the configuration yaml. More... | |
Related Functions | |
(Note that these are not member functions.) | |
subroutine | soca_field_copy (self, rhs) |
Copy a field from rhs to self . More... | |
subroutine | soca_field_update_halo (self, geom) |
Update the data in the halo region of the field. More... | |
subroutine | soca_field_stencil_interp (self, geom, interp2d) |
Perform spatial interpolation between two grids. More... | |
subroutine | soca_field_check_congruent (self, rhs) |
Make sure the two fields are the same in terms of name, size, shape. More... | |
subroutine | soca_field_delete (self) |
Delete the soca_field object. More... | |
Holds all data and metadata related to a single field variable.
Instances of these types are to be held by soca_fields. The members soca_field::mask can remain null
, in which it is assumed that no mask is used.
Definition at line 54 of file soca_fields_mod.F90.
procedure soca_fields_mod::soca_field::check_congruent |
Make sure the two fields are the same in terms of name, size, shape.
Definition at line 94 of file soca_fields_mod.F90.
procedure soca_fields_mod::soca_field::copy |
Copy a field from rhs
to self
.
Definition at line 88 of file soca_fields_mod.F90.
procedure soca_fields_mod::soca_field::delete |
Delete the soca_field object.
Definition at line 91 of file soca_fields_mod.F90.
procedure soca_fields_mod::soca_field::stencil_interp |
Perform spatial interpolation between two grids.
Definition at line 100 of file soca_fields_mod.F90.
procedure soca_fields_mod::soca_field::update_halo |
Update the data in the halo region of the field.
Definition at line 97 of file soca_fields_mod.F90.
|
related |
Make sure the two fields are the same in terms of name, size, shape.
abor1_ftn | Halts program if fields are not congruent |
[in] | rhs | other field to check for congruency |
Definition at line 298 of file soca_fields_mod.F90.
|
related |
Copy a field from rhs
to self
.
If the fields are not congruent, this subroutine will throw an error. self
must be allocated first.
[in,out] | self | The field to copy to |
[in] | rhs | The field to copy from |
Definition at line 237 of file soca_fields_mod.F90.
|
related |
Delete the soca_field object.
Definition at line 318 of file soca_fields_mod.F90.
|
related |
Perform spatial interpolation between two grids.
Interpolation used is inverse distance weidghted, taking into consideration the mask.
[in] | geom | The geometry to interpolate to |
[in] | interp2d | interpolation object created by calling horiz_interp_spherical_new() in FMS |
Definition at line 274 of file soca_fields_mod.F90.
|
related |
Update the data in the halo region of the field.
[in] | geom | soca_geom from soca_fields |
Definition at line 256 of file soca_fields_mod.F90.
real(kind=kind_real), dimension(:,:), pointer soca_fields_mod::soca_field::lat => null() |
Pointer to the relevant latitudes in soca_geom_mod::soca_geom.
null()
after initialization of the class. Definition at line 78 of file soca_fields_mod.F90.
real(kind=kind_real), dimension(:,:), pointer soca_fields_mod::soca_field::lon => null() |
Pointer to the relevant longitudes in soca_geom_mod::soca_geom.
null()
after initialization of the class. Definition at line 73 of file soca_fields_mod.F90.
real(kind=kind_real), dimension(:,:), pointer soca_fields_mod::soca_field::mask => null() |
Pointer to the relevant mask in soca_geom_mod::soca_geom.
If null
, it is assumed that no mask is present
Definition at line 68 of file soca_fields_mod.F90.
type(soca_field_metadata) soca_fields_mod::soca_field::metadata |
Parameters for the field as determined by the configuration yaml.
see soca_fields_metadata_mod::soca_field_metadata
Definition at line 83 of file soca_fields_mod.F90.
character(len=:), allocatable soca_fields_mod::soca_field::name |
The internally used name of the field.
Definition at line 57 of file soca_fields_mod.F90.
integer soca_fields_mod::soca_field::nz |
The number of vertical levels.
Definition at line 60 of file soca_fields_mod.F90.
real(kind=kind_real), dimension(:,:,:), allocatable soca_fields_mod::soca_field::val |
The actual field data.
Definition at line 63 of file soca_fields_mod.F90.