NCEPLIBS-sp  2.5.0
sptgpmd.f File Reference

Transform spectral to Mercator gradients. More...

Go to the source code of this file.

Functions/Subroutines

subroutine sptgpmd (IROMB, MAXWV, KMAX, MI, MJ, KWSKIP, KGSKIP, NISKIP, NJSKIP, RLAT1, RLON1, DLAT, DLON, WAVE, XM, YM)
 This subprogram performs a spherical transform from spectral coefficients of scalar fields to gradient fields on a Mercator grid. More...
 

Detailed Description

Transform spectral to Mercator gradients.

Author
Iredell
Date
96-02-29

Definition in file sptgpmd.f.

Function/Subroutine Documentation

◆ sptgpmd()

subroutine sptgpmd (   IROMB,
  MAXWV,
  KMAX,
  MI,
  MJ,
  KWSKIP,
  KGSKIP,
  NISKIP,
  NJSKIP,
  RLAT1,
  RLON1,
  DLAT,
  DLON,
real, dimension(*)  WAVE,
real, dimension(*)  XM,
real, dimension(*)  YM 
)

This subprogram performs a spherical transform from spectral coefficients of scalar fields to gradient fields on a Mercator grid.

The wave-space can be either triangular or rhomboidal. The wave and grid fields may have general indexing, but each wave field is in sequential 'IBM order', i.e. with zonal wavenumber as the slower index.

The Mercator grid is identified by the location of its first point and by its respective increments.

The transforms are all multiprocessed over sector points.

Transform several fields at a time to improve vectorization. Subprogram can be called from a multiprocessing environment.

Parameters
IROMBSpectral domain shape (0 for triangular, 1 for rhomboidal)
MAXWVSpectral truncation
KMAXNumber of fields to transform
MINumber of points in the faster zonal direction
MJNumber of points in the slower merid direction
KWSKIPSkip number between wave fields (defaults to (MAXWV+1)*((IROMB+1)*MAXWV+2) if KWSKIP=0)
KGSKIPSkip number between grid fields (defaults to MI*MJ if KGSKIP=0)
NISKIPSkip number between grid i-points (defaults to 1 if NISKIP=0)
NJSKIPSkip number between grid j-points (defaults to MI if NJSKIP=0)
RLAT1Latitude of the first grid point in degrees
RLON1Longitude of the first grid point in degrees
DLATLatitude increment in degrees such that D(PHI)/D(J)=DLAT*COS(PHI) where J is meridional index. DLAT is negative for grids indexed southward. (in terms of grid increment dy valid at latitude RLATI, the latitude increment DLAT is determined as DLAT=DPR*DY/(RERTH*COS(RLATI/DPR)) where DPR=180/PI and RERTH is Earth's radius)
DLONLongitude increment in degrees such that D(LAMBDA)/D(I)=DLON where I is zonal index. DLON is negative for grids indexed westward.
WAVEWave fields
XMMercator x-gradients
YMMercator y-gradients
Author
Iredell
Date
96-02-29

Definition at line 53 of file sptgpmd.f.

References splaplac(), sptgpmv(), and spwget().