FTRAFO Module

Implementation of the spectral transformation using the reduced Gaussian grid


Used by

  • module~~ftrafo~~UsedByGraph module~ftrafo FTRAFO program~calc_etadot calc_etadot program~calc_etadot->module~ftrafo

Contents


Subroutines

public subroutine VDTOUV(XMN, XLAM, XPHI, GWSAVE, IFAX, P, MLAT, MNAUF, NI, NJ, NK)

Calculates scale winds from vorticity and divergence. If in XMN the divergence is passed, then the divergent part of the wind (XPHI=Ud,XPHI=Vd) is returned. If vorticity is passed, then the rotational part of the wind (XLAM=Vrot,XPHI=-Urot) is returned. Summing both, one obtains the whole scale wind.

Arguments

Type IntentOptional AttributesName
real :: XMN(0:(MNAUF+1)*(MNAUF+2)-1,NK)
real :: XLAM(NI,NK)
real :: XPHI(NI,NK)
real :: GWSAVE(8*NJ+15,NJ/2)
integer :: IFAX(10,NJ)
real :: P(0:(MNAUF+3)*(MNAUF+4)/2,NJ/2)
integer :: MLAT(NJ)
integer :: MNAUF
integer :: NI
integer :: NJ
integer :: NK

public subroutine VDUVSUB(J, XMN, XLAM, XPHI, GWSAVE, IFAX, P, GGIND, MLAT, MNAUF, NI, NJ, NK)

Arguments

Type IntentOptional AttributesName
integer :: J
real :: XMN(0:(MNAUF+1)*(MNAUF+2)-1,NK)
real :: XLAM(NI,NK)
real :: XPHI(NI,NK)
real :: GWSAVE(8*NJ+15,NJ/2)
integer :: IFAX(10,NJ)
real :: P(0:(MNAUF+3)*(MNAUF+4)/2,NJ/2)
integer :: GGIND
integer :: MLAT(NJ)
integer :: MNAUF
integer :: NI
integer :: NJ
integer :: NK

public subroutine PHGRAD(XMN, XLAM, XPHI, GWSAVE, IFAX, P, H, MLAT, MNAUF, NI, NJ, NK)

Calculates the gradient of a scalar from the field of the scalar XMN in phase space. Returns fields of the componentens of the horizontal gradients XLAM,XPHI on the Gaussian grid.

Arguments

Type IntentOptional AttributesName
real :: XMN(0:(MNAUF+1)*(MNAUF+2)-1,NK)
real :: XLAM(NI,NK)
real :: XPHI(NI,NK)
real :: GWSAVE(8*NJ+15,NJ/2)
integer :: IFAX(10,NJ)
real :: P(0:(MNAUF+3)*(MNAUF+4)/2,NJ/2)
real :: H(0:(MNAUF+2)*(MNAUF+3)/2)
integer :: MLAT(NJ)
integer :: MNAUF
integer :: NI
integer :: NJ
integer :: NK

public subroutine PHGRACUT(XMN, XLAM, XPHI, GWSAVE, IFAX, P, H, MAUF, MNAUF, NI, NJ, MANF, NK)

Calculated the gradient of a scalar from the field of the scalar XMN in phase space. Returns the fields of the components of the horizontal gradient XLAM,XPHI on the Gaussian grid

Arguments

Type IntentOptional AttributesName
real :: XMN(0:(MNAUF+1)*(MNAUF+2)-1,NK)
real :: XLAM(NI,NJ,NK)
real :: XPHI(NI,NJ,NK)
real :: GWSAVE(4*MAUF+15)
integer :: IFAX(10)
real :: P(0:(MNAUF+3)*(MNAUF+4)/2,NJ)
real :: H(0:(MNAUF+2)*(MNAUF+3)/2)
integer :: MAUF
integer :: MNAUF
integer :: NI
integer :: NJ
integer :: MANF
integer :: NK

public subroutine CONTGL(PS, DPSDL, DPSDM, DIV, U, V, BREITE, ETA, MLAT, A, B, NI, NJ, NK)

Calculation of divergence from the wind field (U,V) in phase space. Returns fields of the componentens of the horizontal gradients XLAM,XPHI on the Gaussian grid

Arguments

Type IntentOptional AttributesName
real :: PS(NI)
real :: DPSDL(NI)
real :: DPSDM(NI)
real :: DIV(NI,NK)
real :: U(NI,NK)
real :: V(NI,NK)
real :: BREITE(NJ)
real :: ETA(NI,NK)
integer :: MLAT(NJ)
real :: A(NK+1)
real :: B(NK+1)
integer :: NI
integer :: NJ
integer :: NK

public subroutine OMEGA(PS, DPSDL, DPSDM, DIV, U, V, BREITE, E, MLAT, A, B, NGI, NGJ, MKK)

Calculates in the hybrid (-)coordinate system

Arguments

Type IntentOptional AttributesName
real :: PS(NGI)
real :: DPSDL(NGI)
real :: DPSDM(NGI)
real :: DIV(NGI,MKK)
real :: U(NGI,MKK)
real :: V(NGI,MKK)
real :: BREITE(NGJ)
real :: E(NGI,MKK)
integer :: MLAT(NGJ)
real :: A(MKK+1)
real :: B(MKK+1)
integer :: NGI
integer :: NGJ
integer :: MKK