60 SUBROUTINE sptgpmv(IROMB,MAXWV,KMAX,MI,MJ,
61 & KWSKIP,KGSKIP,NISKIP,NJSKIP,
62 & RLAT1,RLON1,DLAT,DLON,WAVED,WAVEZ,UM,VM)
64 REAL WAVED(*),WAVEZ(*),UM(*),VM(*)
65 REAL EPS((MAXWV+1)*((IROMB+1)*MAXWV+2)/2),EPSTOP(MAXWV+1)
66 REAL ENN1((MAXWV+1)*((IROMB+1)*MAXWV+2)/2)
67 REAL ELONN1((MAXWV+1)*((IROMB+1)*MAXWV+2)/2)
68 REAL EON((MAXWV+1)*((IROMB+1)*MAXWV+2)/2),EONTOP(MAXWV+1)
70 REAL W((MAXWV+1)*((IROMB+1)*MAXWV+2)/2*2+1,2*KMAX)
71 REAL WTOP(2*(MAXWV+1),2*KMAX)
72 REAL PLN((MAXWV+1)*((IROMB+1)*MAXWV+2)/2),PLNTOP(MAXWV+1)
73 REAL F(2*MAXWV+3,2,2*KMAX)
74 REAL CLAT(MJ),SLAT(MJ),CLON(MAXWV,MI),SLON(MAXWV,MI)
75 parameter(rerth=6.3712e6)
76 parameter(pi=3.14159265358979,dpr=180./pi)
79 CALL spwget(iromb,maxwv,eps,epstop,enn1,elonn1,eon,eontop)
80 mx=(maxwv+1)*((iromb+1)*maxwv+2)/2
93 rlon=mod(rlon1+dlon*(i-1)+3600,360.)
95 clon(l,i)=cos(l*rlon/dpr)
96 slon(l,i)=sin(l*rlon/dpr)
99 ye=1-log(tan((rlat1+90)/2/dpr))*dpr/dlat
101 rlat=atan(exp(dlat/dpr*(j-ye)))*2*dpr-90
102 clat(j)=cos(rlat/dpr)
103 slat(j)=sin(rlat/dpr)
111 CALL spdz2uv(iromb,maxwv,enn1,elonn1,eon,eontop,
112 & waved(kws+1),wavez(kws+1),
113 & w(1,k),w(1,kmax+k),wtop(1,k),wtop(1,kmax+k))
119 CALL splegend(iromb,maxwv,slat(j),clat(j),eps,epstop,
121 CALL spsynth(iromb,maxwv,2*maxwv,idim,mdim,2*mxtop,2*kmax,
122 & clat(j),pln,plntop,mp,w,wtop,f)
127 ijk=(i-1)*ni+(j-1)*nj+(k-1)*kg+1
133 ijk=(i-1)*ni+(j-1)*nj+(k-1)*kg+1
134 um(ijk)=um(ijk)+2.*(f(2*l+1,1,ku)*clon(l,i)
135 & -f(2*l+2,1,ku)*slon(l,i))
136 vm(ijk)=vm(ijk)+2.*(f(2*l+1,1,kv)*clon(l,i)
137 & -f(2*l+2,1,kv)*slon(l,i))
subroutine spdz2uv(I, M, ENN1, ELONN1, EON, EONTOP, D, Z, U, V, UTOP, VTOP)
Computes the wind components from divergence and vorticity in spectral space.
subroutine splegend(I, M, SLAT, CLAT, EPS, EPSTOP, PLN, PLNTOP)
Evaluates the orthonormal associated Legendre polynomials in the spectral domain at a given latitude.
subroutine spsynth(I, M, IM, IX, NC, NCTOP, KM, CLAT, PLN, PLNTOP, MP, SPC, SPCTOP, F)
Synthesizes Fourier coefficients from spectral coefficients for a latitude pair (Northern and Souther...
subroutine sptgpmv(IROMB, MAXWV, KMAX, MI, MJ, KWSKIP, KGSKIP, NISKIP, NJSKIP, RLAT1, RLON1, DLAT, DLON, WAVED, WAVEZ, UM, VM)
This subprogram performs a spherical transform from spectral coefficients of divergences and curls to...
subroutine spwget(IROMB, MAXWV, EPS, EPSTOP, ENN1, ELONN1, EON, EONTOP)
This subprogram gets wave-space constants.