55 SUBROUTINE sptrun(IROMB,MAXWV,IDRTI,IMAXI,JMAXI,IDRTO,IMAXO,JMAXO,
56 & KMAX,IPRIME,ISKIPI,JSKIPI,KSKIPI,
57 & ISKIPO,JSKIPO,KSKIPO,JCPU,GRIDI,GRIDO)
58 REAL GRIDI(*),GRIDO(*)
59 REAL W((MAXWV+1)*((IROMB+1)*MAXWV+2)/2*2+1,KMAX)
63 IF(jc.EQ.0) jc=
ncpus()
64 mx=(maxwv+1)*((iromb+1)*maxwv+2)/2
69 inp=(jmaxi-1)*max(0,-jn)+1
70 isp=(jmaxi-1)*max(0,-js)+1
71 CALL sptran(iromb,maxwv,idrti,imaxi,jmaxi,kmax,
72 & iprime,iskipi,jn,js,mdim,kskipi,0,0,jc,
73 & w,gridi(inp),gridi(isp),-1)
79 inp=(jmaxo-1)*max(0,-jn)+1
80 isp=(jmaxo-1)*max(0,-js)+1
81 CALL sptran(iromb,maxwv,idrto,imaxo,jmaxo,kmax,
82 & 0,iskipo,jn,js,mdim,kskipo,0,0,jc,
83 & w,grido(inp),grido(isp),1)
function ncpus()
Set number of CPUs - the number of processors over which to parallelize.
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 sptrun(IROMB, MAXWV, IDRTI, IMAXI, JMAXI, IDRTO, IMAXO, JMAXO, KMAX, IPRIME, ISKIPI, JSKIPI, KSKIPI, ISKIPO, JSKIPO, KSKIPO, JCPU, GRIDI, GRIDO)
This subprogram spectrally truncates scalar fields on a global cylindrical grid, returning the fields...