CAM
micro_mg_data Module Reference

Data Types

interface  mgfieldpostproc
 
interface  mgpacker
 
interface  mgpostproc
 

Functions/Subroutines

type(mgpacker) function new_mgpacker (pcols, pver, mgcols, top_lev)
 
subroutine mgpacker_finalize (self)
 
real(r8) function, dimension(self%mgncol) pack_1d (self, unpacked)
 
real(r8) function, dimension(self%mgncol, self%nlev) pack_2d (self, unpacked)
 
real(r8) function, dimension(self%mgncol, self%nlev+1) pack_interface (self, unpacked)
 
real(r8) function, dimension(self%mgncol, self%nlev, size(unpacked, 3)) pack_3d (self, unpacked)
 
real(r8) function, dimension(self%pcols) unpack_1d (self, packed, fill)
 
real(r8) function, dimension(self%pcols) unpack_1d_array_fill (self, packed, fill)
 
real(r8) function, dimension(self%pcols, self%pver+size(packed, 2) -self%nlev) unpack_2d (self, packed, fill)
 
real(r8) function, dimension(self%pcols, self%pver+size(packed, 2) -self%nlev) unpack_2d_array_fill (self, packed, fill)
 
real(r8) function, dimension(self%pcols, self%pver, size(packed, 3)) unpack_3d (self, packed, fill)
 
real(r8) function, dimension(self%pcols, self%pver, size(packed, 3)) unpack_3d_array_fill (self, packed, fill)
 
type(mgfieldpostproc) function mgfieldpostproc_1d (unpacked_ptr, packed_ptr, fillvalue, accum_method)
 
type(mgfieldpostproc) function mgfieldpostproc_2d (unpacked_ptr, packed_ptr, fillvalue, accum_method)
 
subroutine mgfieldpostproc_finalize (self)
 
subroutine mgfieldpostproc_accumulate (self)
 
subroutine mgfieldpostproc_process_and_unpack (self, packer)
 
subroutine mgfieldpostproc_unpack_only (self, packer)
 
type(mgpostproc) function new_mgpostproc (packer)
 
subroutine mgpostproc_finalize (self)
 
subroutine add_field_1d (self, unpacked_ptr, packed_ptr, fillvalue, accum_method)
 
subroutine add_field_2d (self, unpacked_ptr, packed_ptr, fillvalue, accum_method)
 
subroutine mgpostproc_accumulate (self)
 
subroutine mgpostproc_process_and_unpack (self)
 
subroutine mgpostproc_unpack_only (self)
 
subroutine mgpostproc_copy (lhs, rhs)
 

Variables

integer, parameter, public accum_null = 0
 
integer, parameter, public accum_mean = 1
 

Function/Subroutine Documentation

◆ add_field_1d()

subroutine micro_mg_data::add_field_1d ( class(mgpostproc), intent(inout)  self,
real(r8), dimension(:), intent(in), pointer  unpacked_ptr,
real(r8), dimension(:), intent(in), pointer  packed_ptr,
real(r8), intent(in), optional  fillvalue,
integer, intent(in), optional  accum_method 
)
private

◆ add_field_2d()

subroutine micro_mg_data::add_field_2d ( class(mgpostproc), intent(inout)  self,
real(r8), dimension(:,:), intent(in), pointer  unpacked_ptr,
real(r8), dimension(:,:), intent(in), pointer  packed_ptr,
real(r8), intent(in), optional  fillvalue,
integer, intent(in), optional  accum_method 
)
private

◆ mgfieldpostproc_1d()

type(mgfieldpostproc) function micro_mg_data::mgfieldpostproc_1d ( real(r8), dimension(:), intent(in), pointer  unpacked_ptr,
real(r8), dimension(:), intent(in), pointer  packed_ptr,
real(r8), intent(in), optional  fillvalue,
integer, intent(in), optional  accum_method 
)
private
Here is the caller graph for this function:

◆ mgfieldpostproc_2d()

type(mgfieldpostproc) function micro_mg_data::mgfieldpostproc_2d ( real(r8), dimension(:,:), intent(in), pointer  unpacked_ptr,
real(r8), dimension(:,:), intent(in), pointer  packed_ptr,
real(r8), intent(in), optional  fillvalue,
integer, intent(in), optional  accum_method 
)
private
Here is the caller graph for this function:

◆ mgfieldpostproc_accumulate()

subroutine micro_mg_data::mgfieldpostproc_accumulate ( class(mgfieldpostproc), intent(inout)  self)
private

◆ mgfieldpostproc_finalize()

subroutine micro_mg_data::mgfieldpostproc_finalize ( class(mgfieldpostproc), intent(out)  self)
private

◆ mgfieldpostproc_process_and_unpack()

subroutine micro_mg_data::mgfieldpostproc_process_and_unpack ( class(mgfieldpostproc), intent(inout)  self,
class(mgpacker), intent(in)  packer 
)
private

◆ mgfieldpostproc_unpack_only()

subroutine micro_mg_data::mgfieldpostproc_unpack_only ( class(mgfieldpostproc), intent(inout)  self,
class(mgpacker), intent(in)  packer 
)
private

◆ mgpacker_finalize()

subroutine micro_mg_data::mgpacker_finalize ( class(mgpacker), intent(out)  self)
private

◆ mgpostproc_accumulate()

subroutine micro_mg_data::mgpostproc_accumulate ( class(mgpostproc), intent(inout)  self)
private

◆ mgpostproc_copy()

subroutine micro_mg_data::mgpostproc_copy ( class(mgpostproc), intent(out)  lhs,
type(mgpostproc), intent(in)  rhs 
)
private

◆ mgpostproc_finalize()

subroutine micro_mg_data::mgpostproc_finalize ( class(mgpostproc), intent(inout)  self)
private

◆ mgpostproc_process_and_unpack()

subroutine micro_mg_data::mgpostproc_process_and_unpack ( class(mgpostproc), intent(inout)  self)
private

◆ mgpostproc_unpack_only()

subroutine micro_mg_data::mgpostproc_unpack_only ( class(mgpostproc), intent(inout)  self)
private

◆ new_mgpacker()

type(mgpacker) function micro_mg_data::new_mgpacker ( integer, intent(in)  pcols,
integer, intent(in)  pver,
integer, dimension(:), intent(in)  mgcols,
integer, intent(in)  top_lev 
)
private
Here is the caller graph for this function:

◆ new_mgpostproc()

type(mgpostproc) function micro_mg_data::new_mgpostproc ( type(mgpacker), intent(in)  packer)
private
Here is the caller graph for this function:

◆ pack_1d()

real(r8) function, dimension(self%mgncol) micro_mg_data::pack_1d ( class(mgpacker), intent(in)  self,
real(r8), dimension(:), intent(in)  unpacked 
)
private

◆ pack_2d()

real(r8) function, dimension(self%mgncol,self%nlev) micro_mg_data::pack_2d ( class(mgpacker), intent(in)  self,
real(r8), dimension(:,:), intent(in)  unpacked 
)
private

◆ pack_3d()

real(r8) function, dimension(self%mgncol,self%nlev,size(unpacked, 3)) micro_mg_data::pack_3d ( class(mgpacker), intent(in)  self,
real(r8), dimension(:,:,:), intent(in)  unpacked 
)
private

◆ pack_interface()

real(r8) function, dimension(self%mgncol,self%nlev+1) micro_mg_data::pack_interface ( class(mgpacker), intent(in)  self,
real(r8), dimension(:,:), intent(in)  unpacked 
)
private

◆ unpack_1d()

real(r8) function, dimension(self%pcols) micro_mg_data::unpack_1d ( class(mgpacker), intent(in)  self,
real(r8), dimension(:), intent(in)  packed,
real(r8), intent(in)  fill 
)
private

◆ unpack_1d_array_fill()

real(r8) function, dimension(self%pcols) micro_mg_data::unpack_1d_array_fill ( class(mgpacker), intent(in)  self,
real(r8), dimension(:), intent(in)  packed,
real(r8), dimension(:), intent(in)  fill 
)
private

◆ unpack_2d()

real(r8) function, dimension(self%pcols,self%pver+size(packed, 2)-self%nlev) micro_mg_data::unpack_2d ( class(mgpacker), intent(in)  self,
real(r8), dimension(:,:), intent(in)  packed,
real(r8), intent(in)  fill 
)
private

◆ unpack_2d_array_fill()

real(r8) function, dimension(self%pcols,self%pver+size(packed, 2)-self%nlev) micro_mg_data::unpack_2d_array_fill ( class(mgpacker), intent(in)  self,
real(r8), dimension(:,:), intent(in)  packed,
real(r8), dimension(:,:), intent(in)  fill 
)
private

◆ unpack_3d()

real(r8) function, dimension(self%pcols,self%pver,size(packed, 3)) micro_mg_data::unpack_3d ( class(mgpacker), intent(in)  self,
real(r8), dimension(:,:,:), intent(in)  packed,
real(r8), intent(in)  fill 
)
private

◆ unpack_3d_array_fill()

real(r8) function, dimension(self%pcols,self%pver,size(packed, 3)) micro_mg_data::unpack_3d_array_fill ( class(mgpacker), intent(in)  self,
real(r8), dimension(:,:,:), intent(in)  packed,
real(r8), dimension(:,:,:), intent(in)  fill 
)
private

Variable Documentation

◆ accum_mean

integer, parameter, public micro_mg_data::accum_mean = 1

◆ accum_null

integer, parameter, public micro_mg_data::accum_null = 0