SABER
type_vbal_blk Module Reference

Vertical balance block derived type. More...

Data Types

type  vbal_blk_type
 

Functions/Subroutines

subroutine vbal_blk_alloc (vbal_blk, nam, geom, nc2b, iv, jv)
 Allocation. More...
 
subroutine vbal_blk_partial_dealloc (vbal_blk)
 Release memory (partial) More...
 
subroutine vbal_blk_dealloc (vbal_blk)
 Release memory (full) More...
 
subroutine vbal_blk_compute_covariances (vbal_blk, mpl, geom, samp, ens, auto, cross)
 Compute auto- and cross-covariances. More...
 
subroutine vbal_blk_compute_regression (vbal_blk, mpl, nam, geom, samp, nsub, auto, cross, ic2b)
 Compute regression. More...
 
subroutine vbal_blk_apply (vbal_blk, geom, h_n_s, h_c2b, h_S, fld)
 Apply vertical balance block. More...
 
subroutine vbal_blk_apply_ad (vbal_blk, geom, h_n_s, h_c2b, h_S, fld)
 Apply adjoint vertical balance block. More...
 

Detailed Description

Vertical balance block derived type.

Function/Subroutine Documentation

◆ vbal_blk_alloc()

subroutine type_vbal_blk::vbal_blk_alloc ( class(vbal_blk_type), intent(inout)  vbal_blk,
type(nam_type), intent(in)  nam,
type(geom_type), intent(in)  geom,
integer, intent(in)  nc2b,
integer, intent(in)  iv,
integer, intent(in)  jv 
)
private

Allocation.

Parameters
[in,out]vbal_blkVertical balance block
[in]namNamelist
[in]geomGeometry
[in]nc2bSubset Sc2 size, halo B
[in]ivFirst variable index
[in]jvSecond variable index

Definition at line 49 of file type_vbal_blk.F90.

◆ vbal_blk_apply()

subroutine type_vbal_blk::vbal_blk_apply ( class(vbal_blk_type), intent(in)  vbal_blk,
type(geom_type), intent(in)  geom,
integer, dimension(geom%nc0a,geom%nl0i), intent(in)  h_n_s,
integer, dimension(3,geom%nc0a,geom%nl0i), intent(in)  h_c2b,
real(kind_real), dimension(3,geom%nc0a,geom%nl0i), intent(in)  h_S,
real(kind_real), dimension(geom%nc0a,geom%nl0), intent(inout)  fld 
)
private

Apply vertical balance block.

Parameters
[in]vbal_blkVertical balance block
[in]geomGeometry
[in]h_n_sNumber of neighbors for the horizontal interpolation
[in]h_c2bIndex of neighbors for the horizontal interpolation
[in]h_sWeight of neighbors for the horizontal interpolation
[in,out]fldSource/destination vector

Definition at line 331 of file type_vbal_blk.F90.

◆ vbal_blk_apply_ad()

subroutine type_vbal_blk::vbal_blk_apply_ad ( class(vbal_blk_type), intent(in)  vbal_blk,
type(geom_type), intent(in)  geom,
integer, dimension(geom%nc0a,geom%nl0i), intent(in)  h_n_s,
integer, dimension(3,geom%nc0a,geom%nl0i), intent(in)  h_c2b,
real(kind_real), dimension(3,geom%nc0a,geom%nl0i), intent(in)  h_S,
real(kind_real), dimension(geom%nc0a,geom%nl0), intent(inout)  fld 
)
private

Apply adjoint vertical balance block.

Parameters
[in]vbal_blkVertical balance block
[in]geomGeometry
[in]h_n_sNumber of neighbors for the horizontal interpolation
[in]h_c2bIndex of neighbors for the horizontal interpolation
[in]h_sWeight of neighbors for the horizontal interpolation
[in,out]fldSource/destination vector

Definition at line 375 of file type_vbal_blk.F90.

◆ vbal_blk_compute_covariances()

subroutine type_vbal_blk::vbal_blk_compute_covariances ( class(vbal_blk_type), intent(in)  vbal_blk,
type(mpl_type), intent(inout)  mpl,
type(geom_type), intent(in)  geom,
type(samp_type), intent(in)  samp,
type(ens_type), intent(in)  ens,
real(kind_real), dimension(samp%nc1e,geom%nl0,geom%nl0,ens%nsub), intent(out)  auto,
real(kind_real), dimension(samp%nc1e,geom%nl0,geom%nl0,ens%nsub), intent(out)  cross 
)
private

Compute auto- and cross-covariances.

Parameters
[in]vbal_blkVertical balance block
[in,out]mplMPI data
[in]geomGeometry
[in]sampSampling
[in]ensEnsemble
[out]autoAuto-covariance
[out]crossCross-covariance

Definition at line 113 of file type_vbal_blk.F90.

◆ vbal_blk_compute_regression()

subroutine type_vbal_blk::vbal_blk_compute_regression ( class(vbal_blk_type), intent(inout)  vbal_blk,
type(mpl_type), intent(inout)  mpl,
type(nam_type), intent(in)  nam,
type(geom_type), intent(in)  geom,
type(samp_type), intent(in)  samp,
integer, intent(in)  nsub,
real(kind_real), dimension(samp%nc1e,geom%nl0,geom%nl0,nsub), intent(in)  auto,
real(kind_real), dimension(samp%nc1e,geom%nl0,geom%nl0,nsub), intent(in)  cross,
integer, intent(in)  ic2b 
)
private

Compute regression.

Parameters
[in,out]vbal_blkVertical balance block
[in,out]mplMPI data
[in]namNamelist
[in]geomGeometry
[in]sampSampling
[in]nsubNumber of sub-ensembles
[in]autoAuto-covariance
[in]crossCross-covariance
[in]ic2bIndex

Definition at line 207 of file type_vbal_blk.F90.

Here is the call graph for this function:

◆ vbal_blk_dealloc()

subroutine type_vbal_blk::vbal_blk_dealloc ( class(vbal_blk_type), intent(inout)  vbal_blk)
private

Release memory (full)

Parameters
[in,out]vbal_blkVertical balance block

Definition at line 96 of file type_vbal_blk.F90.

◆ vbal_blk_partial_dealloc()

subroutine type_vbal_blk::vbal_blk_partial_dealloc ( class(vbal_blk_type), intent(inout)  vbal_blk)
private

Release memory (partial)

Parameters
[in,out]vbal_blkVertical balance block

Definition at line 78 of file type_vbal_blk.F90.