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(pi=3.14159265358979,dpr=180./pi)
78 CALL spwget(iromb,maxwv,eps,epstop,enn1,elonn1,eon,eontop)
79 mx=(maxwv+1)*((iromb+1)*maxwv+2)/2
92 rlon=mod(rlon1+dlon*(i-1)+3600,360.)
94 clon(l,i)=cos(l*rlon/dpr)
95 slon(l,i)=sin(l*rlon/dpr)
98 ye=1-log(tan((rlat1+90)/2/dpr))*dpr/dlat
100 rlat=atan(exp(dlat/dpr*(j-ye)))*2*dpr-90
101 clat(j)=cos(rlat/dpr)
102 slat(j)=sin(rlat/dpr)
110 CALL spdz2uv(iromb,maxwv,enn1,elonn1,eon,eontop,
111 & waved(kws+1),wavez(kws+1),
112 & w(1,k),w(1,kmax+k),wtop(1,k),wtop(1,kmax+k))
118 CALL splegend(iromb,maxwv,slat(j),clat(j),eps,epstop,
120 CALL spsynth(iromb,maxwv,2*maxwv,idim,mdim,2*mxtop,2*kmax,
121 & clat(j),pln,plntop,mp,w,wtop,f)
126 ijk=(i-1)*ni+(j-1)*nj+(k-1)*kg+1
132 ijk=(i-1)*ni+(j-1)*nj+(k-1)*kg+1
133 um(ijk)=um(ijk)+2.*(f(2*l+1,1,ku)*clon(l,i)
134 & -f(2*l+2,1,ku)*slon(l,i))
135 vm(ijk)=vm(ijk)+2.*(f(2*l+1,1,kv)*clon(l,i)
136 & -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.