5 use mpi
, only : mpi_request_null
14 logical :: active = .false., halo_allocated=.false.
15 integer,
dimension(3) :: grid
16 real(kind=DEFAULT_PRECISION),
dimension(:,:,:),
allocatable :: data
17 real(kind=DEFAULT_PRECISION),
dimension(:),
allocatable :: flux_previous_y, flux_y_buffer
18 real(kind=DEFAULT_PRECISION),
dimension(:,:),
allocatable :: flux_previous_x
19 integer :: async_flux_handle = mpi_request_null
35 logical,
dimension(3) :: get_field_interpolation_index
39 get_field_interpolation_index(i) = merge(.true., .false., field%grid(i) ==
primal_grid)
A pointer to the prognostic field. This is so we can wrap prognostics up in an array and still refer ...
Contains prognostic field definitions and functions.
A prognostic field which is assumed to be 3D.
integer, parameter, public default_precision
MPI communication type which we use for the prognostic and calculation data.
Contains common definitions for the data and datatypes used by MONC.
logical function, dimension(3), public get_field_interpolation_index(field)
Retrieves the index(s) that require interpolation to go from the primal the dual grid.
integer, parameter, public primal_grid
Grid type parameters (usually applied to each dimension of a prognostic)
Functionality to support the different types of grid and abstraction between global grids and local o...