cable_output_reduction_buffers_smod Submodule

Implementation of procedures used for managing the grid reduction buffers used in the output system.



Variables

Type Visibility Attributes Name Initial
integer(kind=int32), private, allocatable, target :: temp_buffer_land_int32(:)

Grid reduction buffer for data with shape [mp] and type integer(int32).

real(kind=real32), private, allocatable, target :: temp_buffer_land_real32(:)

Grid reduction buffer for data with shape [mp] and type real(real32).

real(kind=real64), private, allocatable, target :: temp_buffer_land_real64(:)

Grid reduction buffer for data with shape [mp] and type real(real64).

integer(kind=int32), private, allocatable, target :: temp_buffer_land_soil_int32(:,:)

Grid reduction buffer for data with shape [mp, ms] and type integer(int32).

real(kind=real32), private, allocatable, target :: temp_buffer_land_soil_real32(:,:)

Grid reduction buffer for data with shape [mp, ms] and type real(real32).

real(kind=real64), private, allocatable, target :: temp_buffer_land_soil_real64(:,:)

Grid reduction buffer for data with shape [mp, ms] and type real(real64).

integer(kind=int32), private, allocatable, target :: temp_buffer_land_snow_int32(:,:)

Grid reduction buffer for data with shape [mp, msn] and type integer(int32).

real(kind=real32), private, allocatable, target :: temp_buffer_land_snow_real32(:,:)

Grid reduction buffer for data with shape [mp, msn] and type real(real32).

real(kind=real64), private, allocatable, target :: temp_buffer_land_snow_real64(:,:)

Grid reduction buffer for data with shape [mp, msn] and type real(real64).

integer(kind=int32), private, allocatable, target :: temp_buffer_land_rad_int32(:,:)

Grid reduction buffer for data with shape [mp, nrb] and type integer(int32).

real(kind=real32), private, allocatable, target :: temp_buffer_land_rad_real32(:,:)

Grid reduction buffer for data with shape [mp, nrb] and type real(real32).

real(kind=real64), private, allocatable, target :: temp_buffer_land_rad_real64(:,:)

Grid reduction buffer for data with shape [mp, nrb] and type real(real64).

integer(kind=int32), private, allocatable, target :: temp_buffer_land_plantcarbon_int32(:,:)

Grid reduction buffer for data with shape [mp, ncp] and type integer(int32).

real(kind=real32), private, allocatable, target :: temp_buffer_land_plantcarbon_real32(:,:)

Grid reduction buffer for data with shape [mp, ncp] and type real(real32).

real(kind=real64), private, allocatable, target :: temp_buffer_land_plantcarbon_real64(:,:)

Grid reduction buffer for data with shape [mp, ncp] and type real(real64).

integer(kind=int32), private, allocatable, target :: temp_buffer_land_soilcarbon_int32(:,:)

Grid reduction buffer for data with shape [mp, ncs] and type integer(int32).

real(kind=real32), private, allocatable, target :: temp_buffer_land_soilcarbon_real32(:,:)

Grid reduction buffer for data with shape [mp, ncs] and type real(real32).

real(kind=real64), private, allocatable, target :: temp_buffer_land_soilcarbon_real64(:,:)

Grid reduction buffer for data with shape [mp, ncs] and type real(real64).


Module Subroutines

Initialises the buffers used for performing grid reductions in the output system.

Arguments

None

Deallocates the buffers used for performing grid reductions in the output system.

Arguments

None

module subroutine cable_output_reduction_buffers_associate_1d_int32(output_var, temp_buffer)

The reduction buffer association subroutine for 1D 32-bit integer variables.

Arguments

Type IntentOptional Attributes Name
type(cable_output_variable_t), intent(inout) :: output_var

The output variable for which to associate the reduction buffer.

integer(kind=int32), intent(inout), pointer :: temp_buffer(:)

The pointer array to associate with the appropriate reduction buffer.

module subroutine cable_output_reduction_buffers_associate_1d_real32(output_var, temp_buffer)

The reduction buffer association subroutine for 1D 32-bit real variables.

Arguments

Type IntentOptional Attributes Name
type(cable_output_variable_t), intent(inout) :: output_var

The output variable for which to associate the reduction buffer.

real(kind=real32), intent(inout), pointer :: temp_buffer(:)

The pointer array to associate with the appropriate reduction buffer.

module subroutine cable_output_reduction_buffers_associate_1d_real64(output_var, temp_buffer)

The reduction buffer association subroutine for 1D 64-bit real variables.

Arguments

Type IntentOptional Attributes Name
type(cable_output_variable_t), intent(inout) :: output_var

The output variable for which to associate the reduction buffer.

real(kind=real64), intent(inout), pointer :: temp_buffer(:)

The pointer array to associate with the appropriate reduction buffer.

module subroutine cable_output_reduction_buffers_associate_2d_int32(output_var, temp_buffer)

The reduction buffer association subroutine for 2D 32-bit integer variables.

Arguments

Type IntentOptional Attributes Name
type(cable_output_variable_t), intent(inout) :: output_var

The output variable for which to associate the reduction buffer.

integer(kind=int32), intent(inout), pointer :: temp_buffer(:,:)

The pointer array to associate with the appropriate reduction buffer.

module subroutine cable_output_reduction_buffers_associate_2d_real32(output_var, temp_buffer)

The reduction buffer association subroutine for 2D 32-bit real variables.

Arguments

Type IntentOptional Attributes Name
type(cable_output_variable_t), intent(inout) :: output_var

The output variable for which to associate the reduction buffer.

real(kind=real32), intent(inout), pointer :: temp_buffer(:,:)

The pointer array to associate with the appropriate reduction buffer.

module subroutine cable_output_reduction_buffers_associate_2d_real64(output_var, temp_buffer)

The reduction buffer association subroutine for 2D 64-bit real variables.

Arguments

Type IntentOptional Attributes Name
type(cable_output_variable_t), intent(inout) :: output_var

The output variable for which to associate the reduction buffer.

real(kind=real64), intent(inout), pointer :: temp_buffer(:,:)

The pointer array to associate with the appropriate reduction buffer.

module subroutine cable_output_reduction_buffers_associate_3d_int32(output_var, temp_buffer)

The reduction buffer association subroutine for 3D 32-bit integer variables.

Arguments

Type IntentOptional Attributes Name
type(cable_output_variable_t), intent(inout) :: output_var

The output variable for which to associate the reduction buffer.

integer(kind=int32), intent(inout), pointer :: temp_buffer(:,:,:)

The pointer array to associate with the appropriate reduction buffer.

module subroutine cable_output_reduction_buffers_associate_3d_real32(output_var, temp_buffer)

The reduction buffer association subroutine for 3D 32-bit real variables.

Arguments

Type IntentOptional Attributes Name
type(cable_output_variable_t), intent(inout) :: output_var

The output variable for which to associate the reduction buffer.

real(kind=real32), intent(inout), pointer :: temp_buffer(:,:,:)

The pointer array to associate with the appropriate reduction buffer.

module subroutine cable_output_reduction_buffers_associate_3d_real64(output_var, temp_buffer)

The reduction buffer association subroutine for 3D 64-bit real variables.

Arguments

Type IntentOptional Attributes Name
type(cable_output_variable_t), intent(inout) :: output_var

The output variable for which to associate the reduction buffer.

real(kind=real64), intent(inout), pointer :: temp_buffer(:,:,:)

The pointer array to associate with the appropriate reduction buffer.