71 SUBROUTINE sptruns(IROMB,MAXWV,IDRTI,IMAXI,JMAXI,KMAX,NPS,
72 & IPRIME,ISKIPI,JSKIPI,KSKIPI,KGSKIP,
73 & NISKIP,NJSKIP,JCPU,TRUE,XMESH,ORIENT,
75 REAL GRIDI(*),GN(*),GS(*)
76 REAL W((MAXWV+1)*((IROMB+1)*MAXWV+2)/2*2+1,KMAX)
80 IF(jc.EQ.0) jc=
ncpus()
81 mx=(maxwv+1)*((iromb+1)*maxwv+2)/2
86 inp=(jmaxi-1)*max(0,-jn)+1
87 isp=(jmaxi-1)*max(0,-js)+1
88 CALL sptran(iromb,maxwv,idrti,imaxi,jmaxi,kmax,
89 & iprime,iskipi,jn,js,mdim,kskipi,0,0,jc,
90 & w,gridi(inp),gridi(isp),-1)
93 CALL sptgps(iromb,maxwv,kmax,nps,mdim,kgskip,niskip,njskip,
94 & true,xmesh,orient,w,gn,gs)
function ncpus()
Set number of CPUs - the number of processors over which to parallelize.
subroutine sptgps(IROMB, MAXWV, KMAX, NPS, KWSKIP, KGSKIP, NISKIP, NJSKIP, TRUE, XMESH, ORIENT, WAVE, GN, GS)
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 sptruns(IROMB, MAXWV, IDRTI, IMAXI, JMAXI, KMAX, NPS, IPRIME, ISKIPI, JSKIPI, KSKIPI, KGSKIP, NISKIP, NJSKIP, JCPU, TRUE, XMESH, ORIENT, GRIDI, GN, GS)
This subprogram spectrally truncates scalar fields on a global cylindrical grid, returning the fields...