SOCA
soca_balance_mod::soca_balance Type Reference

Variable transform for the balance operators (K) More...

Collaboration diagram for soca_balance_mod::soca_balance:

Public Member Functions

procedure setup => soca_balance_setup
 Initialization of the balance operator and its trajectory. More...
 
procedure delete => soca_balance_delete
 Destructor for the balance oprator. More...
 
procedure mult => soca_balance_mult
 Apply forward balance operator. More...
 
procedure multad => soca_balance_multad
 Apply backward balance operator. More...
 
procedure multinv => soca_balance_multinv
 Apply inverse of the forward balance operator. More...
 
procedure multinvad => soca_balance_multinvad
 Apply inverse of the backward balance operator. More...
 

Private Attributes

type(soca_kst), private kst
 T/S balance. More...
 
type(soca_ksshts), private ksshts
 SSH/T/S balance. More...
 
real(kind=kind_real), dimension(:,:), allocatable, private kct
 C/T Jacobian. More...
 
type(soca_geom), pointer, private geom
 geometry More...
 

Related Functions

(Note that these are not member functions.)

subroutine soca_balance_setup (self, f_conf, traj, geom)
 Initialization of the balance operator and its trajectory. More...
 
subroutine soca_balance_delete (self)
 Destructor for the balance oprator. More...
 
subroutine soca_balance_mult (self, dxa, dxm)
 Apply forward balance operator. More...
 
subroutine soca_balance_multad (self, dxa, dxm)
 Apply backward balance operator. More...
 
subroutine soca_balance_multinv (self, dxa, dxm)
 Apply inverse of the forward balance operator. More...
 
subroutine soca_balance_multinvad (self, dxa, dxm)
 Apply inverse of the backward balance operator. More...
 

Detailed Description

Variable transform for the balance operators (K)

The core of the balance transformations are provided by soca_ksshts_mod::soca_ksshts and soca_kst_mod::soca_kst

Definition at line 29 of file soca_balance_mod.F90.

Member Function/Subroutine Documentation

◆ delete()

procedure soca_balance_mod::soca_balance::delete

Destructor for the balance oprator.

See also
soca_balance_delete

Definition at line 41 of file soca_balance_mod.F90.

◆ mult()

procedure soca_balance_mod::soca_balance::mult

Apply forward balance operator.

See also
soca_balance_mult

Definition at line 44 of file soca_balance_mod.F90.

◆ multad()

procedure soca_balance_mod::soca_balance::multad

Apply backward balance operator.

See also
soca_balance_multad

Definition at line 47 of file soca_balance_mod.F90.

◆ multinv()

procedure soca_balance_mod::soca_balance::multinv

Apply inverse of the forward balance operator.

See also
soca_balance_multinv

Definition at line 50 of file soca_balance_mod.F90.

◆ multinvad()

procedure soca_balance_mod::soca_balance::multinvad

Apply inverse of the backward balance operator.

See also
soca_balance_multinvad

Definition at line 53 of file soca_balance_mod.F90.

◆ setup()

procedure soca_balance_mod::soca_balance::setup

Initialization of the balance operator and its trajectory.

See also
soca_balance_setup

Definition at line 38 of file soca_balance_mod.F90.

Friends And Related Function Documentation

◆ soca_balance_delete()

subroutine soca_balance_delete ( class(soca_balance), intent(inout)  self)
related

Destructor for the balance oprator.

Definition at line 224 of file soca_balance_mod.F90.

◆ soca_balance_mult()

subroutine soca_balance_mult ( class(soca_balance), intent(in)  self,
type(soca_increment), intent(in)  dxa,
type(soca_increment), intent(inout)  dxm 
)
related

Apply forward balance operator.

Parameters
[in]dxainput increment
[in,out]dxmoutput increment

[ I 0 0 0 ] [ Kst I 0 0 ] K= [ Ketat Ketas I 0 ] [ Kct 0 0 I ]

Definition at line 241 of file soca_balance_mod.F90.

◆ soca_balance_multad()

subroutine soca_balance_multad ( class(soca_balance), intent(in)  self,
type(soca_increment), intent(inout)  dxa,
type(soca_increment), intent(in)  dxm 
)
related

Apply backward balance operator.

Parameters
[in]dxminput increment
[in,out]dxaoutput increment

Definition at line 298 of file soca_balance_mod.F90.

◆ soca_balance_multinv()

subroutine soca_balance_multinv ( class(soca_balance), intent(in)  self,
type(soca_increment), intent(inout)  dxa,
type(soca_increment), intent(in)  dxm 
)
related

Apply inverse of the forward balance operator.

Parameters
[in]dxminput increment
[in,out]dxaoutput increment

Definition at line 348 of file soca_balance_mod.F90.

◆ soca_balance_multinvad()

subroutine soca_balance_multinvad ( class(soca_balance), intent(in)  self,
type(soca_increment), intent(in)  dxa,
type(soca_increment), intent(inout)  dxm 
)
related

Apply inverse of the backward balance operator.

Parameters
[in,out]dxmoutput increment
[in]dxainput increment

Definition at line 401 of file soca_balance_mod.F90.

◆ soca_balance_setup()

subroutine soca_balance_setup ( class(soca_balance), intent(inout)  self,
type(fckit_configuration), intent(in)  f_conf,
type(soca_state), intent(in), target  traj,
type(soca_geom), intent(in), target  geom 
)
related

Initialization of the balance operator and its trajectory.

  • balances always used: T,S,SSH
  • optional balances depending on input fields: cicen
    Parameters
    [in]f_confconfiguration
    [in]trajtrajectory
    [in]geomgeometry

Definition at line 69 of file soca_balance_mod.F90.

Member Data Documentation

◆ geom

type(soca_geom), pointer, private soca_balance_mod::soca_balance::geom
private

geometry

Definition at line 34 of file soca_balance_mod.F90.

◆ kct

real(kind=kind_real), dimension(:,:), allocatable, private soca_balance_mod::soca_balance::kct
private

C/T Jacobian.

Definition at line 33 of file soca_balance_mod.F90.

◆ ksshts

type(soca_ksshts), private soca_balance_mod::soca_balance::ksshts
private

SSH/T/S balance.

Definition at line 32 of file soca_balance_mod.F90.

◆ kst

type(soca_kst), private soca_balance_mod::soca_balance::kst
private

T/S balance.

Definition at line 31 of file soca_balance_mod.F90.


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