Module for transformation of a field variable from the phase space into the physical space onto the reduced Gaussian grid
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public, | parameter | :: | MAXAUF | = | 36000 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real | :: | CXMN(0:(MNAUF+1)*(MNAUF+2)-1,MLEVEL) | ||||
real | :: | FELD(MAXL,MLEVEL) | ||||
real | :: | WSAVE(8*MAXB+15,MAXB/2) | ||||
integer | :: | IFAX(10,MAXB) | ||||
real | :: | Z(0:((MNAUF+3)*(MNAUF+4))/2,MAXB/2) | ||||
integer | :: | MLAT(MAXB/2) | ||||
integer | :: | MNAUF | ||||
integer | :: | MAXL | ||||
integer | :: | MAXB | ||||
integer | :: | MLEVEL |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer | :: | K | ||||
integer | :: | IND(MAXB) | ||||
real | :: | CXMN(0:(MNAUF+1)*(MNAUF+2)-1,MLEVEL) | ||||
real | :: | FELD(MAXL,MLEVEL) | ||||
real | :: | Z(0:((MNAUF+3)*(MNAUF+4))/2,MAXB/2) | ||||
real | :: | WSAVE(8*MAXB+15,MAXB/2) | ||||
integer | :: | IFAX(10,MAXB) | ||||
integer | :: | MLAT(MAXB/2) | ||||
integer | :: | MNAUF | ||||
integer | :: | MAXL | ||||
integer | :: | MAXB | ||||
integer | :: | MLEVEL |
Carries out the transformation of a field variable from the phase space into the physical space on spherical coordinates. It is possible to specify a section of the Earth. This subroutine is slower thatn PHGRPH.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real | :: | CXMN | ||||
real | :: | FELD(MAXL,MAXB,MLEVEL) | ||||
real | :: | WSAVE | ||||
integer | :: | IFAX(10) | ||||
real | :: | Z(0:((MMAX+3)*(MMAX+4))/2,MAXB) | ||||
integer | :: | MNAUF | ||||
integer | :: | MMAX | ||||
integer | :: | MAUF | ||||
integer | :: | MANF | ||||
integer | :: | MAXL | ||||
integer | :: | MAXB | ||||
integer | :: | MLEVEL |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer | :: | J | ||||
real | :: | CXMN | ||||
real | :: | FELD(MAXL,MAXB,MLEVEL) | ||||
real | :: | Z(0:((MNAUF+3)*(MNAUF+4))/2,MAXB) | ||||
real | :: | WSAVE | ||||
integer | :: | IFAX(10) | ||||
integer | :: | MAUF | ||||
integer | :: | MNAUF | ||||
integer | :: | MAXL | ||||
integer | :: | MAXB | ||||
integer | :: | MLEVEL | ||||
integer | :: | MANF |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real, | intent(in) | :: | CXMN(0:(MNAUF+1)*(MNAUF+2)-1,MLEVEL) | |||
real | :: | FELD(MAXL,MAXB,MLEVEL) | ||||
real, | intent(in) | :: | Z(0:((MNAUF+3)*(MNAUF+4))/2,MAXB) | |||
real, | intent(in) | :: | WSAVE(4*MAUF+15) | |||
integer | :: | IFAX(10) | ||||
integer, | intent(in) | :: | J | |||
integer, | intent(in) | :: | MNAUF | |||
integer, | intent(in) | :: | MAUF | |||
integer, | intent(in) | :: | MANF | |||
integer, | intent(in) | :: | MAXL | |||
integer, | intent(in) | :: | MAXB | |||
integer, | intent(in) | :: | MLEVEL |
Calculate the Fourier coefficients CXM
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real | :: | CXMN(0:(MNAUF+1)*(MNAUF+2)-1) | ||||
real | :: | CXM(0:MAXAUF-1) | ||||
real | :: | Z(0:((MNAUF+3)*(MNAUF+4))/2) | ||||
integer | :: | MNAUF | ||||
integer | :: | MAUF |
Calculates the Fourier sum with an FFT algorithm
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real | :: | CXM | ||||
real | :: | TRIGS(2*MAXL) | ||||
integer | :: | IFAX(10) | ||||
integer | :: | MNAUF | ||||
integer | :: | MAXL | ||||
integer | :: | ISIGN |
Calculates the Gaussian latitudes
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real | :: | X1 | ||||
real | :: | X2 | ||||
real | :: | X | ||||
real | :: | W | ||||
integer | :: | N |
Calculates all normalised associated Legendre functions from P00(X) to PLL(X) and writes them into the field Z. The polynomials have indices as with ECMWF, i.e. P00,P10,P11,P20,P21,P22,... Otherwise, this subroutine is analogous to PLGNDN
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer | :: | LL | ||||
real | :: | X | ||||
real | :: | Z |
Calculates the derivatives of the normalised associated Legendre function from P00(X) to PLL(X) and writes them into the field DZ. Order is P00(X),P01(X),P11(X),P02(X),P12(X),P22(X),..PLL(X)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer | :: | MNAUF | ||||
real | :: | Z | ||||
real | :: | DZ |
Implements spectral filter of Sardeshmukh and Hoskins (MWR 1984)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real | :: | FELDMN(0:(MM+1)*(MM+2)-1) | ||||
integer | :: | MM | ||||
integer | :: | MMAX |