input_output Module

For performing input and output.


Uses

  • module~~input_output~~UsesGraph module~input_output input_output module~params params module~input_output->module~params netcdf netcdf module~input_output->netcdf

Used by

  • module~~input_output~~UsedByGraph module~input_output input_output proc~land_model_init land_model_init proc~land_model_init->module~input_output proc~sea_model_init sea_model_init proc~sea_model_init->module~input_output proc~initialize initialize proc~initialize->module~input_output proc~initialize_boundaries initialize_boundaries proc~initialize_boundaries->module~input_output proc~initialize_from_rest_state initialize_from_rest_state proc~initialize_from_rest_state->module~input_output proc~obs_ssta obs_ssta proc~obs_ssta->module~input_output program~speedy speedy program~speedy->module~input_output

Contents


Interfaces

public interface load_boundary_file

Interface for reading boundary files.

  • private function load_boundary_file_2d(file_name, field_name) result(field)

    Loads the given 2D field from the given boundary file.

    Arguments

    Type IntentOptional AttributesName
    character(len=*), intent(in) :: file_name

    The NetCDF file to read from

    character(len=*), intent(in) :: field_name

    The field to read

    Return Value real, dimension(ix,il)

  • private function load_boundary_file_one_month_from_year(file_name, field_name, month) result(field)

    Loads the given 2D field at the given month from the given monthly boundary file.

    Arguments

    Type IntentOptional AttributesName
    character(len=*), intent(in) :: file_name

    The NetCDF file to read from

    character(len=*), intent(in) :: field_name

    The field to read

    integer, intent(in) :: month

    The month to read

    Return Value real, dimension(ix,il)

  • private function load_boundary_file_one_month_from_long(file_name, field_name, month, length) result(field)

    Loads the given 2D field at the given month from the given boundary file of a given length.

    Read more…

    Arguments

    Type IntentOptional AttributesName
    character(len=*), intent(in) :: file_name

    The NetCDF file to read from

    character(len=*), intent(in) :: field_name

    The field to read

    integer, intent(in) :: month

    The month to read

    integer, intent(in) :: length

    The total length of the file in number of months

    Return Value real, dimension(ix,il)


Functions

private function load_boundary_file_2d(file_name, field_name) result(field)

Loads the given 2D field from the given boundary file.

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: file_name

The NetCDF file to read from

character(len=*), intent(in) :: field_name

The field to read

Return Value real, dimension(ix,il)

private function load_boundary_file_one_month_from_year(file_name, field_name, month) result(field)

Loads the given 2D field at the given month from the given monthly boundary file.

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: file_name

The NetCDF file to read from

character(len=*), intent(in) :: field_name

The field to read

integer, intent(in) :: month

The month to read

Return Value real, dimension(ix,il)

private function load_boundary_file_one_month_from_long(file_name, field_name, month, length) result(field)

Loads the given 2D field at the given month from the given boundary file of a given length.

Read more…

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: file_name

The NetCDF file to read from

character(len=*), intent(in) :: field_name

The field to read

integer, intent(in) :: month

The month to read

integer, intent(in) :: length

The total length of the file in number of months

Return Value real, dimension(ix,il)


Subroutines

public subroutine output(timestep, vor, div, t, ps, tr, phi)

Writes a snapshot of all prognostic variables to a NetCDF file.

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: timestep

The time step that is being written

complex, intent(in) :: vor(mx,nx,kx,2)

Vorticity

complex, intent(in) :: div(mx,nx,kx,2)

Divergence

complex, intent(in) :: t(mx,nx,kx,2)

Temperature

complex, intent(in) :: ps(mx,nx,2)

log(normalized surface pressure)

complex, intent(in) :: tr(mx,nx,kx,2,ntr)

Tracers

complex, intent(in) :: phi(mx,nx,kx)

Geopotential

private subroutine check(ierr)

Handles any errors from the NetCDF API.

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ierr