CAM
grid_class Module Reference

Data Types

interface  ddzm
 
interface  ddzt
 
type  grid
 
interface  interp_weights_zm2zt_imp
 
interface  interp_weights_zt2zm_imp
 
interface  zm2zt
 
interface  zt2zm
 

Functions/Subroutines

subroutine, public setup_grid (nzmax, sfc_elevation, l_implemented, grid_type, deltaz, zm_init, zm_top, momentum_heights, thermodynamic_heights, begin_height, end_height)
 
subroutine, public cleanup_grid
 
subroutine, public setup_grid_heights (l_implemented, grid_type, deltaz, zm_init, momentum_heights, thermodynamic_heights)
 
subroutine, public read_grid_heights (nzmax, grid_type, zm_grid_fname, zt_grid_fname, file_unit, momentum_heights, thermodynamic_heights)
 
real(kind=core_rknd) function redirect_interpolated_azmk (azt, k)
 
real(kind=core_rknd) function, dimension(gr%nz) redirect_interpolated_azm (azt)
 
real(kind=core_rknd) function redirect_interpolated_aztk (azt, k)
 
real(kind=core_rknd) function, dimension(gr%nz) redirect_interpolated_azt (azt)
 
pure real(kind=core_rknd) function, dimension(gr%nz), private linear_interpolated_azm (azt)
 
pure real(kind=core_rknd) function, private linear_interpolated_azmk (azt, k)
 
real(kind=core_rknd) function, dimension(gr%nz), private cubic_interpolated_azm (azt)
 
real(kind=core_rknd) function, private cubic_interpolated_azmk (azt, k)
 
pure real(kind=core_rknd) function, dimension(2), private interpolated_azmk_imp (m_lev)
 
pure real(kind=core_rknd) function, dimension(gr%nz), private linear_interpolated_azt (azm)
 
pure real(kind=core_rknd) function, private linear_interpolated_aztk (azm, k)
 
real(kind=core_rknd) function, dimension(gr%nz), private cubic_interpolated_azt (azm)
 
real(kind=core_rknd) function, private cubic_interpolated_aztk (azm, k)
 
pure real(kind=core_rknd) function, dimension(2), private interpolated_aztk_imp (t_lev)
 
pure real(kind=core_rknd) function, dimension(gr%nz), private gradzm (azm)
 
pure real(kind=core_rknd) function, dimension(gr%nz), private gradzt (azt)
 
pure real(kind=dp) function, dimension(xdim), public flip (x, xdim)
 

Variables

integer, parameter, private t_above = 1
 
integer, parameter, private t_below = 2
 
integer, parameter, private m_above = 1
 
integer, parameter, private m_below = 2
 
type(grid), public gr
 

Function/Subroutine Documentation

◆ cleanup_grid()

subroutine, public grid_class::cleanup_grid ( )
Here is the caller graph for this function:

◆ cubic_interpolated_azm()

real( kind = core_rknd ) function, dimension(gr%nz), private grid_class::cubic_interpolated_azm ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azt)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cubic_interpolated_azmk()

real( kind = core_rknd ) function, private grid_class::cubic_interpolated_azmk ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azt,
integer, intent(in)  k 
)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cubic_interpolated_azt()

real( kind = core_rknd ) function, dimension(gr%nz), private grid_class::cubic_interpolated_azt ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azm)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cubic_interpolated_aztk()

real( kind = core_rknd ) function, private grid_class::cubic_interpolated_aztk ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azm,
integer, intent(in)  k 
)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ flip()

pure real(kind = dp) function, dimension(xdim), public grid_class::flip ( real(kind = dp), dimension(xdim), intent(in)  x,
integer, intent(in)  xdim 
)

◆ gradzm()

pure real( kind = core_rknd ) function, dimension(gr%nz), private grid_class::gradzm ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azm)
private

◆ gradzt()

pure real( kind = core_rknd ) function, dimension(gr%nz), private grid_class::gradzt ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azt)
private

◆ interpolated_azmk_imp()

pure real( kind = core_rknd ) function, dimension(2), private grid_class::interpolated_azmk_imp ( integer, intent(in)  m_lev)
private

◆ interpolated_aztk_imp()

pure real( kind = core_rknd ) function, dimension(2), private grid_class::interpolated_aztk_imp ( integer, intent(in)  t_lev)
private

◆ linear_interpolated_azm()

pure real( kind = core_rknd ) function, dimension(gr%nz), private grid_class::linear_interpolated_azm ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azt)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ linear_interpolated_azmk()

pure real( kind = core_rknd ) function, private grid_class::linear_interpolated_azmk ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azt,
integer, intent(in)  k 
)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ linear_interpolated_azt()

pure real( kind = core_rknd ) function, dimension(gr%nz), private grid_class::linear_interpolated_azt ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azm)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ linear_interpolated_aztk()

pure real( kind = core_rknd ) function, private grid_class::linear_interpolated_aztk ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azm,
integer, intent(in)  k 
)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ read_grid_heights()

subroutine, public grid_class::read_grid_heights ( integer, intent(in)  nzmax,
integer, intent(in)  grid_type,
character(len=*), intent(in)  zm_grid_fname,
character(len=*), intent(in)  zt_grid_fname,
integer, intent(in)  file_unit,
real( kind = core_rknd ), dimension(nzmax), intent(out)  momentum_heights,
real( kind = core_rknd ), dimension(nzmax), intent(out)  thermodynamic_heights 
)
Here is the call graph for this function:

◆ redirect_interpolated_azm()

real( kind = core_rknd ) function, dimension(gr%nz) grid_class::redirect_interpolated_azm ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azt)
Here is the call graph for this function:

◆ redirect_interpolated_azmk()

real( kind = core_rknd ) function grid_class::redirect_interpolated_azmk ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azt,
integer, intent(in)  k 
)
Here is the call graph for this function:

◆ redirect_interpolated_azt()

real( kind = core_rknd ) function, dimension(gr%nz) grid_class::redirect_interpolated_azt ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azt)
Here is the call graph for this function:

◆ redirect_interpolated_aztk()

real( kind = core_rknd ) function grid_class::redirect_interpolated_aztk ( real( kind = core_rknd ), dimension(gr%nz), intent(in)  azt,
integer, intent(in)  k 
)
Here is the call graph for this function:

◆ setup_grid()

subroutine, public grid_class::setup_grid ( integer, intent(in)  nzmax,
real( kind = core_rknd ), intent(in)  sfc_elevation,
logical, intent(in)  l_implemented,
integer, intent(in)  grid_type,
real( kind = core_rknd ), intent(in)  deltaz,
real( kind = core_rknd ), intent(in)  zm_init,
real( kind = core_rknd ), intent(in)  zm_top,
real( kind = core_rknd ), dimension(nzmax), intent(in)  momentum_heights,
real( kind = core_rknd ), dimension(nzmax), intent(in)  thermodynamic_heights,
integer, intent(out)  begin_height,
integer, intent(out)  end_height 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setup_grid_heights()

subroutine, public grid_class::setup_grid_heights ( logical, intent(in)  l_implemented,
integer, intent(in)  grid_type,
real( kind = core_rknd ), intent(in)  deltaz,
real( kind = core_rknd ), intent(in)  zm_init,
real( kind = core_rknd ), dimension(gr%nz), intent(in)  momentum_heights,
real( kind = core_rknd ), dimension(gr%nz), intent(in)  thermodynamic_heights 
)
Here is the caller graph for this function:

Variable Documentation

◆ gr

type (grid), public grid_class::gr

◆ m_above

integer, parameter, private grid_class::m_above = 1
private

◆ m_below

integer, parameter, private grid_class::m_below = 2
private

◆ t_above

integer, parameter, private grid_class::t_above = 1
private

◆ t_below

integer, parameter, private grid_class::t_below = 2
private