53 SUBROUTINE sptgpm(IROMB,MAXWV,KMAX,MI,MJ,
54 & KWSKIP,KGSKIP,NISKIP,NJSKIP,
55 & RLAT1,RLON1,DLAT,DLON,WAVE,GM)
58 REAL EPS((MAXWV+1)*((IROMB+1)*MAXWV+2)/2),EPSTOP(MAXWV+1)
59 REAL ENN1((MAXWV+1)*((IROMB+1)*MAXWV+2)/2)
60 REAL ELONN1((MAXWV+1)*((IROMB+1)*MAXWV+2)/2)
61 REAL EON((MAXWV+1)*((IROMB+1)*MAXWV+2)/2),EONTOP(MAXWV+1)
63 REAL WTOP(2*(MAXWV+1),KMAX)
64 REAL PLN((MAXWV+1)*((IROMB+1)*MAXWV+2)/2),PLNTOP(MAXWV+1)
65 REAL F(2*MAXWV+3,2,KMAX)
66 REAL CLAT(MJ),SLAT(MJ),CLON(MAXWV,MI),SLON(MAXWV,MI)
67 parameter(pi=3.14159265358979,dpr=180./pi)
70 CALL spwget(iromb,maxwv,eps,epstop,enn1,elonn1,eon,eontop)
71 mx=(maxwv+1)*((iromb+1)*maxwv+2)/2
83 rlon=mod(rlon1+dlon*(i-1)+3600,360.)
85 clon(l,i)=cos(l*rlon/dpr)
86 slon(l,i)=sin(l*rlon/dpr)
89 ye=1-log(tan((rlat1+90)/2/dpr))*dpr/dlat
91 rlat=atan(exp(dlat/dpr*(j-ye)))*2*dpr-90
104 CALL splegend(iromb,maxwv,slat(j),clat(j),eps,epstop,
106 CALL spsynth(iromb,maxwv,2*maxwv,idim,kw,2*mxtop,kmax,
107 & clat(j),pln,plntop,mp,wave,wtop,f)
110 ijk=(i-1)*ni+(j-1)*nj+(k-1)*kg+1
115 ijk=(i-1)*ni+(j-1)*nj+(k-1)*kg+1
116 gm(ijk)=gm(ijk)+2.*(f(2*l+1,1,k)*clon(l,i)
117 & -f(2*l+2,1,k)*slon(l,i))
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 sptgpm(iromb, maxwv, kmax, mi, mj, kwskip, kgskip, niskip, njskip, rlat1, rlon1, dlat, dlon, wave, gm)
This subprogram performs a spherical transform from spectral coefficients of scalar quantities to sca...
subroutine spwget(iromb, maxwv, eps, epstop, enn1, elonn1, eon, eontop)
This subprogram gets wave-space constants.