mom_io_file module reference¶
This module contains the MOM file handler types.
Data Types¶
Handle for axis in MOM file. |
|
Linked list of framework axes. |
|
Framework axis linked list node. |
|
Linked list of framework axes. |
|
Framework axis linked list node. |
|
Handle for field in MOM file. |
|
Linked list of framework fields. |
|
Framework field linked list node. |
|
Linked list of framework fields. |
|
Framework field linked list node. |
|
Generic MOM file abstraction for common operations. |
|
MOM file from the supporting framework (“infra”) layer. |
|
MOM file using netCDF backend. |
Functions/Subroutines¶
Initialize the linked list of framework axes. |
|
Append a new axis to the list. |
|
Get axis based on label. |
|
Deallocate axes of list. |
|
Initialize the linked list of framework axes. |
|
Append a new axis to the list. |
|
Get axis based on label. |
|
Deallocate axes of list. |
|
Initialize the linked list of framework axes. |
|
Append a new field to the list. |
|
Get axis based on label. |
|
Deallocate fields of list. |
|
Initialize the linked list of framework axes. |
|
Append a new field to the list. |
|
Get axis based on label. |
|
Deallocate fields of list. |
|
Open a MOM framework file. |
|
Close a MOM framework file. |
|
Flush the buffer of a MOM framework file. |
|
Register an axis to the MOM framework file. |
|
Register a field to the MOM framework file. |
|
Write a 4D field to the MOM framework file. |
|
Write a 3D field to the MOM framework file. |
|
Write a 2D field to the MOM framework file. |
|
Write a 1D field to the MOM framework file. |
|
Write a 0D field to the MOM framework file. |
|
Write an axis field to the MOM framework file. |
|
Write global metadata to the MOM framework file. |
|
True if the framework file has been opened. |
|
Return number of dimensions, variables, or time levels in a MOM infra file. |
|
Return the field metadata associated with a MOM framework file. |
|
Get time levels of a MOM framework file. |
|
Get attributes from a field. |
|
Interface to read_field_chksum. |
|
Get the native (fieldtype) fields of a MOM framework file. |
|
Open a MOM netCDF file. |
|
Close a MOM netCDF file. |
|
Flush the buffer of a MOM netCDF file. |
|
Register an axis to the MOM netcdf file. |
|
Register a field to the MOM netcdf file. |
|
Write global metadata to the MOM netcdf file. |
|
Write a 4D field to the MOM netcdf file. |
|
Write a 3D field to the MOM netcdf file. |
|
Write a 2D field to the MOM netcdf file. |
|
Write a 1D field to the MOM netcdf file. |
|
Write a 0D field to the MOM netcdf file. |
|
Write an axis field to the MOM netcdf file. |
|
True if the framework file has been opened. |
|
Return number of dimensions, variables, or time levels in a MOM netcdf file. |
|
Update the axes and fields descriptors of a MOM netCDF file. |
|
Return the field descriptors of a MOM netCDF file. |
|
Get attributes from a netCDF field. |
|
Interface to read_field_chksum. |
|
Read the values of a netCDF field into an array that might have halos. |
Detailed Description¶
This module contains the MOM file handler types.
Type Documentation¶
-
type
mom_io_file/
mom_axis
¶ Handle for axis in MOM file.
- Type fields:
%
label
[character (len=:),allocatable, private] :: Identifier for the axis in handle’s list.
-
type
mom_io_file/
axis_list_infra
¶ Linked list of framework axes.
- Type fields:
%
head
[type( axis_node_infra ),pointer, private] :: Head of axis linked list.%
tail
[type( axis_node_infra ),pointer, private] :: Tail of axis linked list.%
init
[procedure,private] :: Initialize the framework axis list.%
append
[procedure,private] :: Append a new axis to the framework axis list.%
get
[procedure,private] :: Get an axis from the framework axis list.%
finalize
[procedure,private] :: Deallocate the framework axis list.
-
type
mom_io_file/
axis_node_infra
¶ Framework axis linked list node.
- Type fields:
%
label
[character (len=:),allocatable, private] :: Axis identifier.%
next
[type( axis_node_infra ),pointer, private] :: Pointer to next axis node.%
axis
[type(axistype),private] :: Axis node contents.
-
type
mom_io_file/
axis_list_nc
¶ Linked list of framework axes.
- Type fields:
%
head
[type( axis_node_nc ),pointer, private] :: Head of axis linked list.%
tail
[type( axis_node_nc ),pointer, private] :: Tail of axis linked list.%
init
[procedure,private] :: Initialize the netCDF axis list.%
append
[procedure,private] :: Append a new axis to the netCDF axis list.%
get
[procedure,private] :: Get an axis from the netCDF axis list.%
finalize
[procedure,private] :: Deallocate the netCDF axis list.
-
type
mom_io_file/
axis_node_nc
¶ Framework axis linked list node.
- Type fields:
%
label
[character (len=:),allocatable, private] :: Axis identifier.%
next
[type( axis_node_nc ),pointer, private] :: Pointer to next axis node.%
axis
[type( netcdf_axis ),private] :: Axis node contents.
-
type
mom_io_file/
mom_field
¶ Handle for field in MOM file.
- Type fields:
%
label
[character (len=:),allocatable, private] :: Identifier for the field in the handle’s list.
-
type
mom_io_file/
field_list_infra
¶ Linked list of framework fields.
- Type fields:
%
head
[type( field_node_infra ),pointer, private] :: Head of field linked list.%
tail
[type( field_node_infra ),pointer, private] :: Tail of field linked list.%
init
[procedure,private] :: Initialize the framework field list.%
append
[procedure,private] :: Append a new axis to the framework field list.%
get
[procedure,private] :: Get an axis from the framework field list.%
finalize
[procedure,private] :: Deallocate the framework field list.
-
type
mom_io_file/
field_node_infra
¶ Framework field linked list node.
- Type fields:
%
label
[character (len=:),allocatable, private] :: Field identifier.%
field
[type(fieldtype),private] :: Field node contents.%
next
[type( field_node_infra ),pointer, private] :: Pointer to next field node.
-
type
mom_io_file/
field_list_nc
¶ Linked list of framework fields.
- Type fields:
%
head
[type( field_node_nc ),pointer, private] :: Head of field linked list.%
tail
[type( field_node_nc ),pointer, private] :: Tail of field linked list.%
init
[procedure,private] :: Initialize the netCDF field list.%
append
[procedure,private] :: Append a new axis to the netCDF field list.%
get
[procedure,private] :: Get an axis from the netCDF field list.%
finalize
[procedure,private] :: Deallocate the netCDF field list.
-
type
mom_io_file/
field_node_nc
¶ Framework field linked list node.
- Type fields:
%
label
[character (len=:),allocatable, private] :: Field identifier.%
field
[type( netcdf_field ),private] :: Field node contents.%
next
[type( field_node_nc ),pointer, private] :: Pointer to next field node.
-
type
mom_io_file/
mom_file
¶ Generic MOM file abstraction for common operations.
- Type fields:
%
open
[procedure( i_open_file ),deferred, private] :: Open a file and connect to the MOM_file object.%
close
[procedure( i_close_file ),deferred, private] :: Close the MOM file.%
flush
[procedure( i_flush_file ),deferred, private] :: Flush buffered output to the MOM file.%
register_axis
[procedure( i_register_axis ),deferred, private] :: Register an axis to the MOM file.%
register_field
[procedure( i_register_field ),deferred, private] :: Register a field to the MOM file.%
write_attribute
[procedure( i_write_attribute ),deferred, private] :: Write metadata to the MOM file.%
write_field
[generic,private] :: Write field to a MOM file.%
write_field_4d
[procedure( i_write_field_4d ),deferred, private] :: Write a 4D field to the MOM file.%
write_field_3d
[procedure( i_write_field_3d ),deferred, private] :: Write a 3D field to the MOM file.%
write_field_2d
[procedure( i_write_field_2d ),deferred, private] :: Write a 2D field to the MOM file.%
write_field_1d
[procedure( i_write_field_1d ),deferred, private] :: Write a 1D field to the MOM file.%
write_field_0d
[procedure( i_write_field_0d ),deferred, private] :: Write a 0D field to the MOM file.%
write_field_axis
[procedure( i_write_field_axis ),deferred, private] :: Write an axis field to the MOM file.%
file_is_open
[procedure( i_file_is_open ),deferred, private] :: Return true if MOM file has been opened.%
get_file_info
[procedure( i_get_file_info ),deferred, private] :: Return number of dimensions, variables, or time levels in a MOM file.%
get_file_fields
[procedure( i_get_file_fields ),deferred, private] :: Get field objects from a MOM file.%
get_field_atts
[procedure( i_get_field_atts ),deferred, private] :: Get attributes from a field.%
read_field_chksum
[procedure( i_read_field_chksum ),deferred, private] :: Get checksum from a field.
-
type
mom_io_file/
mom_infra_file
¶ MOM file from the supporting framework (“infra”) layer.
- Type fields:
%
domain
[type(mom_domain_type),pointer, public] :: Internal domain used for single-file IO.%
handle_infra
[type(file_type),public] :: Framework-specific file handler content.%
axes
[type( axis_list_infra ),private] :: List of axes in file.%
fields
[type( field_list_infra ),private] :: List of fields in file.%
open
[procedure,private] :: Open a framework file and connect to the MOM_file object.%
close
[procedure,private] :: Close the MOM framework file.%
flush
[procedure,private] :: Flush buffered output to the MOM framework file.%
register_axis
[procedure,private] :: Register an axis to the MOM framework file.%
register_field
[procedure,private] :: Register a field to the MOM framework file.%
write_attribute
[procedure,private] :: Write global metadata to the MOM framework file.%
write_field_4d
[procedure,private] :: Write a 4D field to the MOM framework file.%
write_field_3d
[procedure,private] :: Write a 3D field to the MOM framework file.%
write_field_2d
[procedure,private] :: Write a 2D field to the MOM framework file.%
write_field_1d
[procedure,private] :: Write a 1D field to the MOM framework file.%
write_field_0d
[procedure,private] :: Write a 0D field to the MOM framework file.%
write_field_axis
[procedure,private] :: Write an axis field to the MOM framework file.%
file_is_open
[procedure,private] :: Return true if MOM infra file has been opened.%
get_file_info
[procedure,private] :: Return number of dimensions, variables, or time levels in a MOM infra file.%
get_file_fields
[procedure,private] :: Get field metadata from a MOM infra file.%
get_field_atts
[procedure,private] :: Get attributes from a field.%
read_field_chksum
[procedure,private] :: Get checksum from a field.%
get_file_times
[procedure,private] :: Get time levels of a MOM framework file.%
get_file_fieldtypes
[procedure,private] :: Get the fields as fieldtypes from a file.
-
type
mom_io_file/
mom_netcdf_file
¶ MOM file using netCDF backend.
- Type fields:
%
handle_nc
[type( netcdf_file_type ),private] :: Framework-specific file handler content.%
axes
[type( axis_list_nc ),private] :: List of netCDF axes.%
fields
[type( field_list_nc ),private] :: List of netCDF fields.%
is_open
[logical,private] :: True if the file has been opened.%
domain_decomposed
[logical,private] :: True if I/O content is domain-decomposed.%
hi
[type( hor_index_type ),private] :: True if I/O content is domain-decomposed.%
open
[procedure,private] :: Open a framework file and connect to the MOM_netcdf_file object.%
close
[procedure,private] :: Close the MOM netcdf file.%
flush
[procedure,private] :: Flush buffered output to the MOM netcdf file.%
register_axis
[procedure,private] :: Register an axis to the MOM netcdf file.%
register_field
[procedure,private] :: Register a field to the MOM netcdf file.%
write_attribute
[procedure,private] :: Write global metadata to the MOM netcdf file.%
write_field_4d
[procedure,private] :: Write a 4D field to the MOM netcdf file.%
write_field_3d
[procedure,private] :: Write a 3D field to the MOM netcdf file.%
write_field_2d
[procedure,private] :: Write a 2D field to the MOM netcdf file.%
write_field_1d
[procedure,private] :: Write a 1D field to the MOM netcdf file.%
write_field_0d
[procedure,private] :: Write a 0D field to the MOM netcdf file.%
write_field_axis
[procedure,private] :: Write an axis field to the MOM netcdf file.%
file_is_open
[procedure,private] :: Return true if MOM netcdf file has been opened.%
get_file_info
[procedure,private] :: Return number of dimensions, variables, or time levels in a MOM netcdf file.%
get_file_fields
[procedure,private] :: Get field metadata from a MOM netcdf file.%
get_field_atts
[procedure,private] :: Get attributes from a netCDF field.%
read_field_chksum
[procedure,private] :: Get checksum from a netCDF field.%
read
[procedure,private] :: Read the values of a netCDF field.%
update
[procedure,private] :: Update the axes and fields descriptors of a MOM netCDF file.
Function/Subroutine Documentation¶
-
subroutine
mom_io_file/
initialize_axis_list_infra
(list)¶ Initialize the linked list of framework axes.
-
subroutine
mom_io_file/
append_axis_list_infra
(list, axis, label)¶ Append a new axis to the list.
-
function
mom_io_file/
get_axis_list_infra
(list, label) [type(axistype)]¶ Get axis based on label.
-
subroutine
mom_io_file/
finalize_axis_list_infra
(list)¶ Deallocate axes of list.
-
subroutine
mom_io_file/
initialize_axis_list_nc
(list)¶ Initialize the linked list of framework axes.
-
subroutine
mom_io_file/
append_axis_list_nc
(list, axis, label)¶ Append a new axis to the list.
-
function
mom_io_file/
get_axis_list_nc
(list, label) [type(netcdf_axis)]¶ Get axis based on label.
-
subroutine
mom_io_file/
finalize_axis_list_nc
(list)¶ Deallocate axes of list.
-
subroutine
mom_io_file/
initialize_field_list_infra
(list)¶ Initialize the linked list of framework axes.
-
subroutine
mom_io_file/
append_field_list_infra
(list, field, label)¶ Append a new field to the list.
-
function
mom_io_file/
get_field_list_infra
(list, label) [type(fieldtype)]¶ Get axis based on label.
-
subroutine
mom_io_file/
finalize_field_list_infra
(list)¶ Deallocate fields of list.
-
subroutine
mom_io_file/
initialize_field_list_nc
(list)¶ Initialize the linked list of framework axes.
-
subroutine
mom_io_file/
append_field_list_nc
(list, field, label)¶ Append a new field to the list.
-
function
mom_io_file/
get_field_list_nc
(list, label) [type(netcdf_field)]¶ Get axis based on label.
-
subroutine
mom_io_file/
finalize_field_list_nc
(list)¶ Deallocate fields of list.
-
subroutine
mom_io_file/
open_file_infra
(handle, filename, action, MOM_domain, threading, fileset)¶ Open a MOM framework file.
-
subroutine
mom_io_file/
close_file_infra
(handle)¶ Close a MOM framework file.
-
subroutine
mom_io_file/
flush_file_infra
(handle)¶ Flush the buffer of a MOM framework file.
-
function
mom_io_file/
register_axis_infra
(handle, label, units, longname, cartesian, sense, domain, data, edge_axis, calendar) [type(mom_axis)]¶ Register an axis to the MOM framework file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
label :: [in] The name in the file of this axis
units :: [in] The units of this axis
longname :: [in] The long description of this axis
cartesian :: [in] A variable indicating which direction this axis corresponds with. Valid values include ‘X’, ‘Y’, ‘Z’, ‘T’, and ‘N’ for none.
sense :: [in] This is 1 for axes whose values increase upward, or -1 if they increase downward.
domain :: [in] The domain decomposion for this axis
data :: [in] The coordinate values of the points on this axis
edge_axis :: [in] If true, this axis marks an edge of the tracer cells
calendar :: [in] The name of the calendar used with a time axis
- Return:
undefined :: The axis type where this information is stored
-
function
mom_io_file/
register_field_infra
(handle, axes, label, units, longname, pack, standard_name, checksum) [type(mom_field)]¶ Register a field to the MOM framework file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
axes :: [in] Handles for the axis used for this variable
label :: [in] The name in the file of this variable
units :: [in] The units of this variable
longname :: [in] The long description of this variable
pack :: [in] A precision reduction factor with which the variable. The default, 1, has no reduction, but 2 is not uncommon.
standard_name :: [in] The standard (e.g., CMOR) name for this variable
checksum :: [in] Checksum values that can be used to verify reads.
- Return:
undefined :: The field type where this information is stored
-
subroutine
mom_io_file/
write_field_4d_infra
(handle, field_md, MOM_domain, field, tstamp, tile_count, fill_value)¶ Write a 4D field to the MOM framework file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
field_md :: [in] Field type with metadata
mom_domain :: [in] The MOM_Domain that describes the decomposition
field :: [inout] Field to write
tstamp :: [in] Model time of this field
tile_count :: [in] PEs per tile (default: 1)
fill_value :: [in] Missing data fill value
-
subroutine
mom_io_file/
write_field_3d_infra
(handle, field_md, MOM_domain, field, tstamp, tile_count, fill_value)¶ Write a 3D field to the MOM framework file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
field_md :: [in] Field type with metadata
mom_domain :: [in] The MOM_Domain that describes the decomposition
field :: [inout] Field to write
tstamp :: [in] Model time of this field
tile_count :: [in] PEs per tile (default: 1)
fill_value :: [in] Missing data fill value
-
subroutine
mom_io_file/
write_field_2d_infra
(handle, field_md, MOM_domain, field, tstamp, tile_count, fill_value)¶ Write a 2D field to the MOM framework file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
field_md :: [in] Field type with metadata
mom_domain :: [in] The MOM_Domain that describes the decomposition
field :: [inout] Field to write
tstamp :: [in] Model time of this field
tile_count :: [in] PEs per tile (default: 1)
fill_value :: [in] Missing data fill value
-
subroutine
mom_io_file/
write_field_1d_infra
(handle, field_md, field, tstamp)¶ Write a 1D field to the MOM framework file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
field_md :: [in] Field type with metadata
field :: [in] Field to write
tstamp :: [in] Model time of this field
-
subroutine
mom_io_file/
write_field_0d_infra
(handle, field_md, field, tstamp)¶ Write a 0D field to the MOM framework file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
field_md :: [in] Field type with metadata
field :: [in] Field to write
tstamp :: [in] Model time of this field
-
subroutine
mom_io_file/
write_field_axis_infra
(handle, axis)¶ Write an axis field to the MOM framework file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
axis :: [in] An axis type variable with information to write
-
subroutine
mom_io_file/
write_attribute_infra
(handle, name, attribute)¶ Write global metadata to the MOM framework file.
- Parameters:
handle :: [in] Handle for a file that is open for writing
name :: [in] The name in the file of this global attribute
attribute :: [in] The value of this attribute
-
function
mom_io_file/
file_is_open_infra
(handle) [logical]¶ True if the framework file has been opened.
- Parameters:
handle :: [in] Handle to a file to inquire about
-
subroutine
mom_io_file/
get_file_info_infra
(handle, ndim, nvar, ntime)¶ Return number of dimensions, variables, or time levels in a MOM infra file.
- Parameters:
handle :: [in] Handle for a file that is open for I/O
ndim :: [out] The number of dimensions in the file
nvar :: [out] The number of variables in the file
ntime :: [out] The number of time levels in the file
-
subroutine
mom_io_file/
get_file_fields_infra
(handle, fields)¶ Return the field metadata associated with a MOM framework file.
- Parameters:
handle :: [inout] Handle for a file that is open for I/O
fields :: [inout] Field-type descriptions of all of the variables in a file.
-
subroutine
mom_io_file/
get_file_times_infra
(handle, time_values, ntime)¶ Get time levels of a MOM framework file.
- Parameters:
handle :: [in] Handle for a file that is open for I/O
time_values :: [inout] The real times for the records in file.
ntime :: [out] The number of time levels in the file
-
subroutine
mom_io_file/
get_field_atts_infra
(handle, field, name, units, longname, checksum)¶ Get attributes from a field.
- Parameters:
handle :: [in] File where field is stored
field :: [in] The field to extract information from
name :: [out] The variable name
units :: [out] The units of the variable
longname :: [out] The long name of the variable
checksum :: [out] The checksums of the variable in a file
-
subroutine
mom_io_file/
read_field_chksum_infra
(handle, field, chksum, valid_chksum)¶ Interface to read_field_chksum.
- Parameters:
handle :: [in] File where field is stored
field :: [in] The field whose checksum attribute is to be read
chksum :: [out] The checksum for the field.
valid_chksum :: [out] If true, chksum has been successfully read
-
subroutine
mom_io_file/
get_file_fieldtypes
(handle, fields)¶ Get the native (fieldtype) fields of a MOM framework file.
-
subroutine
mom_io_file/
open_file_nc
(handle, filename, action, MOM_domain, threading, fileset)¶ Open a MOM netCDF file.
- Call to:
-
subroutine
mom_io_file/
close_file_nc
(handle)¶ Close a MOM netCDF file.
-
subroutine
mom_io_file/
flush_file_nc
(handle)¶ Flush the buffer of a MOM netCDF file.
-
function
mom_io_file/
register_axis_nc
(handle, label, units, longname, cartesian, sense, domain, data, edge_axis, calendar) [type(mom_axis)]¶ Register an axis to the MOM netcdf file.
- Parameters:
handle :: [inout] Handle for a netCDF file that is open for writing
label :: [in] The name in the file of this axis
units :: [in] The units of this axis
longname :: [in] The long description of this axis
cartesian :: [in] A variable indicating which direction this axis corresponds with. Valid values include ‘X’, ‘Y’, ‘Z’, ‘T’, and ‘N’ for none.
sense :: [in] This is 1 for axes whose values increase upward, or -1 if they increase downward.
domain :: [in] The domain decomposion for this axis
data :: [in] The coordinate values of the points on this axis
edge_axis :: [in] If true, this axis marks an edge of the tracer cells
calendar :: [in] The name of the calendar used with a time axis
-
function
mom_io_file/
register_field_nc
(handle, axes, label, units, longname, pack, standard_name, checksum) [type(mom_field)]¶ Register a field to the MOM netcdf file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
axes :: [in] Handles for the axis used for this variable
label :: [in] The name in the file of this variable
units :: [in] The units of this variable
longname :: [in] The long description of this variable
pack :: [in] A precision reduction factor with which the variable. The default, 1, has no reduction, but 2 is not uncommon.
standard_name :: [in] The standard (e.g., CMOR) name for this variable
checksum :: [in] Checksum values that can be used to verify reads.
-
subroutine
mom_io_file/
write_attribute_nc
(handle, name, attribute)¶ Write global metadata to the MOM netcdf file.
- Parameters:
handle :: [in] Handle for a file that is open for writing
name :: [in] The name in the file of this global attribute
attribute :: [in] The value of this attribute
-
subroutine
mom_io_file/
write_field_4d_nc
(handle, field_md, MOM_domain, field, tstamp, tile_count, fill_value)¶ Write a 4D field to the MOM netcdf file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
field_md :: [in] Field type with metadata
mom_domain :: [in] The MOM_Domain that describes the decomposition
field :: [inout] Field to write
tstamp :: [in] Model time of this field
tile_count :: [in] PEs per tile (default: 1)
fill_value :: [in] Missing data fill value
-
subroutine
mom_io_file/
write_field_3d_nc
(handle, field_md, MOM_domain, field, tstamp, tile_count, fill_value)¶ Write a 3D field to the MOM netcdf file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
field_md :: [in] Field type with metadata
mom_domain :: [in] The MOM_Domain that describes the decomposition
field :: [inout] Field to write
tstamp :: [in] Model time of this field
tile_count :: [in] PEs per tile (default: 1)
fill_value :: [in] Missing data fill value
-
subroutine
mom_io_file/
write_field_2d_nc
(handle, field_md, MOM_domain, field, tstamp, tile_count, fill_value)¶ Write a 2D field to the MOM netcdf file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
field_md :: [in] Field type with metadata
mom_domain :: [in] The MOM_Domain that describes the decomposition
field :: [inout] Field to write
tstamp :: [in] Model time of this field
tile_count :: [in] PEs per tile (default: 1)
fill_value :: [in] Missing data fill value
-
subroutine
mom_io_file/
write_field_1d_nc
(handle, field_md, field, tstamp)¶ Write a 1D field to the MOM netcdf file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
field_md :: [in] Field type with metadata
field :: [in] Field to write
tstamp :: [in] Model time of this field
-
subroutine
mom_io_file/
write_field_0d_nc
(handle, field_md, field, tstamp)¶ Write a 0D field to the MOM netcdf file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
field_md :: [in] Field type with metadata
field :: [in] Field to write
tstamp :: [in] Model time of this field
-
subroutine
mom_io_file/
write_field_axis_nc
(handle, axis)¶ Write an axis field to the MOM netcdf file.
- Parameters:
handle :: [inout] Handle for a file that is open for writing
axis :: [in] An axis type variable with information to write
-
function
mom_io_file/
file_is_open_nc
(handle) [logical]¶ True if the framework file has been opened.
- Parameters:
handle :: [in] Handle to a file to inquire about
-
subroutine
mom_io_file/
get_file_info_nc
(handle, ndim, nvar, ntime)¶ Return number of dimensions, variables, or time levels in a MOM netcdf file.
- Parameters:
handle :: [in] Handle for a file that is open for I/O
ndim :: [out] The number of dimensions in the file
nvar :: [out] The number of variables in the file
ntime :: [out] The number of time levels in the file
-
subroutine
mom_io_file/
update_file_contents_nc
(handle)¶ Update the axes and fields descriptors of a MOM netCDF file.
- Parameters:
handle :: [inout] Handle for a file that is open for I/O
-
subroutine
mom_io_file/
get_file_fields_nc
(handle, fields)¶ Return the field descriptors of a MOM netCDF file.
- Parameters:
handle :: [inout] Handle for a file that is open for I/O
fields :: [inout] Field-type descriptions of all of the variables in a file.
-
subroutine
mom_io_file/
get_field_atts_nc
(handle, field, name, units, longname, checksum)¶ Get attributes from a netCDF field.
- Parameters:
handle :: [in] File where field is stored
field :: [in] The field to extract information from
name :: [out] The variable name
units :: [out] The units of the variable
longname :: [out] The long name of the variable
checksum :: [out] The checksums of the variable in a file
-
subroutine
mom_io_file/
read_field_chksum_nc
(handle, field, chksum, valid_chksum)¶ Interface to read_field_chksum.
- Parameters:
handle :: [in] File where field is stored
field :: [in] The field whose checksum attribute is to be read
chksum :: [out] The checksum for the field.
valid_chksum :: [out] If true, chksum has been successfully read
-
subroutine
mom_io_file/
get_field_nc
(handle, label, values, rescale)¶ Read the values of a netCDF field into an array that might have halos.
- Parameters:
handle :: [in] Handle of netCDF file to be read
label :: [in] Field variable name
values :: [inout] Field values read from the file. It would be intent(out) but for the need to preserve any initialized values in the halo regions.
rescale :: [in] A multiplicative rescaling factor for the values that are read. Omitting this is the same as setting it to 1.
- Call to: