76 SUBROUTINE sptrunm(IROMB,MAXWV,IDRTI,IMAXI,JMAXI,KMAX,MI,MJ,
77 & IPRIME,ISKIPI,JSKIPI,KSKIPI,KGSKIP,
78 & NISKIP,NJSKIP,JCPU,RLAT1,RLON1,DLAT,DLON,
81 REAL W((MAXWV+1)*((IROMB+1)*MAXWV+2)/2*2+1,KMAX)
85 IF(jc.EQ.0) jc=
ncpus()
86 mx=(maxwv+1)*((iromb+1)*maxwv+2)/2
91 inp=(jmaxi-1)*max(0,-jn)+1
92 isp=(jmaxi-1)*max(0,-js)+1
93 CALL sptran(iromb,maxwv,idrti,imaxi,jmaxi,kmax,
94 & iprime,iskipi,jn,js,mdim,kskipi,0,0,jc,
95 & w,gridi(inp),gridi(isp),-1)
98 CALL sptgpm(iromb,maxwv,kmax,mi,mj,mdim,kgskip,niskip,njskip,
99 & rlat1,rlon1,dlat,dlon,w,gm)
function ncpus()
Set number of CPUs - the number of processors over which to parallelize.
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 sptran(IROMB, MAXWV, IDRT, IMAX, JMAX, KMAX, IPRIME, ISKIP, JNSKIP, JSSKIP, KWSKIP, KGSKIP, JBEG, JEND, JCPU, WAVE, GRIDN, GRIDS, IDIR)
This subprogram performs a spherical transform between spectral coefficients of scalar quantities and...
subroutine sptrunm(IROMB, MAXWV, IDRTI, IMAXI, JMAXI, KMAX, MI, MJ, IPRIME, ISKIPI, JSKIPI, KSKIPI, KGSKIP, NISKIP, NJSKIP, JCPU, RLAT1, RLON1, DLAT, DLON, GRIDI, GM)
This subprogram spectrally truncates scalar fields on a global cylindrical grid, returning the fields...