SOCA
soca_vertconv_mod::soca_vertconv Type Reference

Variable transform for vertical convolution. More...

Collaboration diagram for soca_vertconv_mod::soca_vertconv:

Public Member Functions

procedure setup => soca_conv_setup
 Setup for the vertical convolution. More...
 
procedure mult => soca_conv_mult
 Apply forward convolution. More...
 
procedure mult_ad => soca_conv_mult_ad
 Apply backward convolution. More...
 

Public Attributes

real(kind=kind_real) lz_min
 
real(kind=kind_real) vertical
 
real(kind=kind_real) decorrelation
 
real(kind=kind_real) minimum
 
real(kind=kind_real) m
 
real(kind=kind_real) lz_mld
 
real(kind=kind_real) if = 0
 
real(kind=kind_real) use
 
real(kind=kind_real) mld
 
real(kind=kind_real) to
 
real(kind=kind_real) calculate
 
real(kind=kind_real) lz
 
real(kind=kind_real) lz_mld_max
 
real(kind=kind_real) calculating
 
real(kind=kind_real) from
 
real(kind=kind_real) max
 
real(kind=kind_real) value
 
real(kind=kind_real) scale_layer_thick
 
real(kind=kind_real) set
 
real(kind=kind_real) the
 
real(kind=kind_real) scale
 
type(soca_state), pointer bkg
 as a multiple of the layer thickness More...
 
type(soca_state), pointer background
 
type(soca_geom), pointer geom
 
type(soca_geom), pointer geometry
 
integer isc
 
integer iec
 
integer jsc
 
integer jec
 
integer compute
 
integer domain
 

Related Functions

(Note that these are not member functions.)

subroutine soca_conv_setup (self, bkg, geom, f_conf)
 Setup for the vertical convolution. More...
 
subroutine soca_calc_lz (self, i, j, lz)
 Calculate vertical correlation lengths for a given column. More...
 
subroutine soca_conv_mult (self, convdx, dx)
 Apply forward convolution. More...
 
subroutine soca_conv_mult_ad (self, convdx, dx)
 Apply backward convolution. More...
 

Detailed Description

Variable transform for vertical convolution.

Note
this only operates on tocn and socn

Definition at line 27 of file soca_vertconv_mod.F90.

Member Function/Subroutine Documentation

◆ mult()

procedure soca_vertconv_mod::soca_vertconv::mult

Apply forward convolution.

See also
soca_conv_mult

Definition at line 42 of file soca_vertconv_mod.F90.

◆ mult_ad()

procedure soca_vertconv_mod::soca_vertconv::mult_ad

Apply backward convolution.

See also
soca_conv_mult_ad

Definition at line 45 of file soca_vertconv_mod.F90.

◆ setup()

procedure soca_vertconv_mod::soca_vertconv::setup

Setup for the vertical convolution.

See also
soca_conv_setup

Definition at line 39 of file soca_vertconv_mod.F90.

Friends And Related Function Documentation

◆ soca_calc_lz()

subroutine soca_calc_lz ( class(soca_vertconv), intent(in)  self,
integer, intent(in)  i,
integer, intent(in)  j,
real(kind=kind_real), dimension(:), intent(inout)  lz 
)
related

Calculate vertical correlation lengths for a given column.

Parameters
[in]ii index of grid point
[in]jj index of grid point
[in,out]lzoutput correlation legnths

Definition at line 87 of file soca_vertconv_mod.F90.

◆ soca_conv_mult()

subroutine soca_conv_mult ( class(soca_vertconv), intent(inout)  self,
type(soca_increment), intent(inout)  convdx,
type(soca_increment), intent(in)  dx 
)
related

Apply forward convolution.

Parameters
[in]dxinput increment to convolve
[in,out]convdxoutput increment

Definition at line 124 of file soca_vertconv_mod.F90.

◆ soca_conv_mult_ad()

subroutine soca_conv_mult_ad ( class(soca_vertconv), intent(inout)  self,
type(soca_increment), intent(in)  convdx,
type(soca_increment), intent(inout)  dx 
)
related

Apply backward convolution.

Parameters
[in,out]dxoutput increment
[in]convdxinput increment

Definition at line 180 of file soca_vertconv_mod.F90.

◆ soca_conv_setup()

subroutine soca_conv_setup ( class(soca_vertconv), intent(inout)  self,
type(soca_state), intent(in), target  bkg,
type(soca_geom), intent(in), target  geom,
type(fckit_configuration), intent(in)  f_conf 
)
related

Setup for the vertical convolution.

Todo:
: Investigate computing and storing weights in vertconc data structure
Parameters
[in]bkgT/S background
[in]f_confyaml configuration
[in]geominput geometry

Definition at line 59 of file soca_vertconv_mod.F90.

Member Data Documentation

◆ background

type(soca_state), pointer soca_vertconv_mod::soca_vertconv::background

Definition at line 33 of file soca_vertconv_mod.F90.

◆ bkg

type(soca_state), pointer soca_vertconv_mod::soca_vertconv::bkg

as a multiple of the layer thickness

Definition at line 33 of file soca_vertconv_mod.F90.

◆ calculate

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::calculate

Definition at line 29 of file soca_vertconv_mod.F90.

◆ calculating

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::calculating

Definition at line 30 of file soca_vertconv_mod.F90.

◆ compute

integer soca_vertconv_mod::soca_vertconv::compute

Definition at line 35 of file soca_vertconv_mod.F90.

◆ decorrelation

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::decorrelation

Definition at line 28 of file soca_vertconv_mod.F90.

◆ domain

integer soca_vertconv_mod::soca_vertconv::domain

Definition at line 35 of file soca_vertconv_mod.F90.

◆ from

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::from

Definition at line 30 of file soca_vertconv_mod.F90.

◆ geom

type(soca_geom), pointer soca_vertconv_mod::soca_vertconv::geom

Definition at line 34 of file soca_vertconv_mod.F90.

◆ geometry

type(soca_geom), pointer soca_vertconv_mod::soca_vertconv::geometry

Definition at line 34 of file soca_vertconv_mod.F90.

◆ iec

integer soca_vertconv_mod::soca_vertconv::iec

Definition at line 35 of file soca_vertconv_mod.F90.

◆ if

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::if = 0

Definition at line 29 of file soca_vertconv_mod.F90.

◆ isc

integer soca_vertconv_mod::soca_vertconv::isc

Definition at line 35 of file soca_vertconv_mod.F90.

◆ jec

integer soca_vertconv_mod::soca_vertconv::jec

Definition at line 35 of file soca_vertconv_mod.F90.

◆ jsc

integer soca_vertconv_mod::soca_vertconv::jsc

Definition at line 35 of file soca_vertconv_mod.F90.

◆ lz

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::lz

Definition at line 29 of file soca_vertconv_mod.F90.

◆ lz_min

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::lz_min

Definition at line 28 of file soca_vertconv_mod.F90.

◆ lz_mld

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::lz_mld

Definition at line 29 of file soca_vertconv_mod.F90.

◆ lz_mld_max

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::lz_mld_max

Definition at line 30 of file soca_vertconv_mod.F90.

◆ m

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::m

Definition at line 28 of file soca_vertconv_mod.F90.

◆ max

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::max

Definition at line 30 of file soca_vertconv_mod.F90.

◆ minimum

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::minimum

Definition at line 28 of file soca_vertconv_mod.F90.

◆ mld

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::mld

Definition at line 29 of file soca_vertconv_mod.F90.

◆ scale

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::scale

Definition at line 31 of file soca_vertconv_mod.F90.

◆ scale_layer_thick

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::scale_layer_thick

Definition at line 31 of file soca_vertconv_mod.F90.

◆ set

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::set

Definition at line 31 of file soca_vertconv_mod.F90.

◆ the

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::the

Definition at line 31 of file soca_vertconv_mod.F90.

◆ to

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::to

Definition at line 29 of file soca_vertconv_mod.F90.

◆ use

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::use

Definition at line 29 of file soca_vertconv_mod.F90.

◆ value

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::value

Definition at line 30 of file soca_vertconv_mod.F90.

◆ vertical

real(kind=kind_real) soca_vertconv_mod::soca_vertconv::vertical

Definition at line 28 of file soca_vertconv_mod.F90.


The documentation for this type was generated from the following file: