NCEPLIBS-ip  5.0.0
spectral_interp_mod Module Reference

Interpolate spectral. More...

Data Types

interface  interpolate_spectral
 
interface  polates4
 
interface  polatev4
 

Functions/Subroutines

subroutine interpolate_spectral_scalar (IPOPT, grid_in, grid_out, MI, MO, KM, IBI, GI, NO, RLAT, RLON, IBO, LO, GO, IRET)
 Interpolate spectral scalar. More...
 
subroutine interpolate_spectral_vector (IPOPT, grid_in, grid_out, MI, MO, KM, IBI, UI, VI, NO, RLAT, RLON, CROT, SROT, IBO, LO, UO, VO, IRET)
 Interpolate spectral vector. More...
 
subroutine polates4_grib1 (IPOPT, KGDSI, KGDSO, MI, MO, KM, IBI, GI, NO, RLAT, RLON, IBO, LO, GO, IRET)
 Interpolate scalar fields (spectral). More...
 
subroutine polates4_grib2 (IPOPT, IGDTNUMI, IGDTMPLI, IGDTLENI, IGDTNUMO, IGDTMPLO, IGDTLENO, MI, MO, KM, IBI, GI, NO, RLAT, RLON, IBO, LO, GO, IRET)
 Interpolate scalar fields (spectral). More...
 
subroutine polatev4_grib1 (IPOPT, KGDSI, KGDSO, MI, MO, KM, IBI, UI, VI, NO, RLAT, RLON, CROT, SROT, IBO, LO, UO, VO, IRET)
 Interpolate vector fields (spectral). More...
 
subroutine polatev4_grib2 (IPOPT, IGDTNUMI, IGDTMPLI, IGDTLENI, IGDTNUMO, IGDTMPLO, IGDTLENO, MI, MO, KM, IBI, UI, VI, NO, RLAT, RLON, CROT, SROT, IBO, LO, UO, VO, IRET)
 Interpolate vector fields (spectral). More...
 

Detailed Description

Interpolate spectral.

Author
Mark Iredell
Date
96-04-10

Function/Subroutine Documentation

◆ interpolate_spectral_scalar()

subroutine spectral_interp_mod::interpolate_spectral_scalar ( integer, dimension(20), intent(in)  IPOPT,
class(ip_grid), intent(in)  grid_in,
class(ip_grid), intent(in)  grid_out,
integer, intent(in)  MI,
integer, intent(in)  MO,
integer, intent(in)  KM,
integer, dimension(km), intent(in)  IBI,
real, dimension(mi,km), intent(in)  GI,
integer, intent(out)  NO,
real, dimension(mo), intent(inout)  RLAT,
real, dimension(mo), intent(inout)  RLON,
integer, dimension(km), intent(out)  IBO,
logical*1, dimension(mo,km), intent(out)  LO,
real, dimension(mo,km), intent(out)  GO,
integer, intent(out)  IRET 
)
private

Interpolate spectral scalar.

Parameters
[in]ipoptinterpolation options; ipopt(1)=0 for triangular; ipopt(1)=1 for rhomboidal; ipopt(2) is truncation number (defaults to a sensible truncation if ipopt(2)=-1).
[in]grid_ininput grid descriptor.
[in]grid_outoutput grid descriptor.
[in]MIskip number between input grid fields if km>1 or dimension of input grid fields if km=1.
[in]MOskip number between output grid fields if km>1 or dimension of output grid fields if km=1.
[in]KMnumber of fields to interpolate.
[in]IBIinput bitmap flags (Must be all 0. Routine does not do bitmapped interpolation.)
[in]GIinput fields to interpolate.
[out]NOnumber of output points.
[in,out]RLAToutput latitudes in degrees.
[in,out]RLONoutput longitudes in degrees.
[out]IBOoutput bitmap flags.
[out]LOoutput bitmaps.
[out]GOoutput fields interpolated.
[out]IRETreturn code. 0/non-0 - successful/not successful.
Author
Mark Iredell
Date
96-04-10

Definition at line 60 of file spectral_interp_mod.F90.

◆ interpolate_spectral_vector()

subroutine spectral_interp_mod::interpolate_spectral_vector ( integer, dimension(20), intent(in)  IPOPT,
class(ip_grid), intent(in)  grid_in,
class(ip_grid), intent(in)  grid_out,
integer, intent(in)  MI,
integer, intent(in)  MO,
integer, intent(in)  KM,
integer, dimension(km), intent(in)  IBI,
real, dimension(mi,km), intent(in)  UI,
real, dimension(mi,km), intent(in)  VI,
integer, intent(out)  NO,
real, dimension(mo), intent(inout)  RLAT,
real, dimension(mo), intent(inout)  RLON,
real, dimension(mo), intent(out)  CROT,
real, dimension(mo), intent(out)  SROT,
integer, dimension(km), intent(out)  IBO,
logical*1, dimension(mo,km), intent(out)  LO,
real, dimension(mo,km), intent(out)  UO,
real, dimension(mo,km), intent(out)  VO,
integer, intent(out)  IRET 
)
private

Interpolate spectral vector.

Parameters
ipoptinterpolation options; ipopt(1)=0 for triangular; ipopt(1)=1 for rhomboidal; ipopt(2) is truncation number (defaults to a sensible truncation if ipopt(2)=-1).
grid_ininput grid descriptor.
grid_outoutput grid descriptor.
MIskip number between input grid fields if km>1 or dimension of input grid fields if km=1.
MOskip number between output grid fields if km>1 or dimension of output grid fields if km=1.
KMnumber of fields to interpolate.
IBIinput bitmap flags (Must be all 0. Routine does not do bitmapped interpolation.)
UIinput u-component fields to interpolate.
VIinput v-component fields to interpolate.
NOnumber of output points.
RLAToutput latitudes in degrees.
RLONoutput longitudes in degrees.
CROTvector rotation cosines.
SROTvector rotation sines.
IBOoutput bitmap flags.
LOoutput bitmaps.
UOoutput u-component fields interpolated.
VOoutput v-component fields interpolated.
IRETreturn code. 0/non-0 - successful/not successful.
Author
Mark Iredell
Date
96-04-10

Definition at line 121 of file spectral_interp_mod.F90.

◆ polates4_grib1()

subroutine spectral_interp_mod::polates4_grib1 ( integer, dimension(20), intent(in)  IPOPT,
integer, dimension(200), intent(in)  KGDSI,
integer, dimension(200), intent(in)  KGDSO,
integer, intent(in)  MI,
integer, intent(in)  MO,
integer, intent(in)  KM,
integer, dimension(km), intent(in)  IBI,
real, dimension(mi,km), intent(in)  GI,
integer  NO,
real, dimension(mo), intent(inout)  RLAT,
real, dimension(mo), intent(inout)  RLON,
integer, dimension(km), intent(out)  IBO,
logical*1, dimension(mo,km), intent(out)  LO,
real, dimension(mo,km), intent(out)  GO,
integer, intent(out)  IRET 
)
private

Interpolate scalar fields (spectral).

This subprogram performs spectral interpolation from any grid to any grid for scalar fields. It requires that the input fields be uniformly global.

Options allow choices between triangular shape (ipopt(1)=0) and rhomboidal shape (ipopt(1)=1) which has no default; a second option is the truncation (ipopt(2)) which defaults to a sensible truncation for the input grid (if opt(2)=-1).

Note
If the output grid is not found in a special list, then the transform back to grid is not very fast. This special list contains global cylindrical grids, polar stereographic grids centered at the pole and mercator grids.

Only horizontal interpolation is performed. The grids are defined by their grid description sections (passed in integer form as decoded by subprogram w3fi63()).

The current code recognizes the following projections:

  • kgds(1) = 000 equidistant cylindrical
  • kgds(1) = 001 mercator cylindrical
  • kgds(1) = 003 lambert conformal conical
  • kgds(1) = 004 gaussian cylindrical (spectral native)
  • kgds(1) = 005 polar stereographic azimuthal
  • kgds(1) = 203 rotated equidistant cylindrical (e-stagger)
  • kgds(1) = 205 rotated equidistant cylindrical (b-stagger)

Where kgds could be either input kgdsi or output kgdso. As an added bonus the number of output grid points and their latitudes and longitudes are also returned. On the other hand, the output can be a set of station points if kgdso(1)<0, in which case the number of points and their latitudes and longitudes must be input. Output bitmaps will not be created.

Program History Log

Date Programmer Comments
96-04-10 Iredell Initial
2001-06-18 Iredell improve detection of special fast transform
2015-01-27 Gayno replace calls to gdswiz() with new merged version of gdswzd().
Parameters
[in]ipopt(20) interpolation options ipopt(1)=0 for triangular, ipopt(1)=1 for rhomboidal; ipopt(2) is truncation number (defaults to sensible if ipopt(2)=-1).
[in]kgdsi(200) input gds parameters as decoded by w3fi63
[in]kgdso(200) output gds parameters (kgdso(1)<0 implies random station points)
[in]miskip number between input grid fields if km>1 or dimension of input grid fields if km=1
[in]moskip number between output grid fields if km>1 or dimension of output grid fields if km=1
[in]kmnumber of fields to interpolate
[in]ibi(km) input bitmap flags (must be all 0)
[in]gi(mi,km) input fields to interpolate
[out]nonumber of output points (only if kgdso(1)<0)
[out]rlat(no) output latitudes in degrees (if kgdso(1)<0)
[out]rlon(no) output longitudes in degrees (if kgdso(1)<0)
[out]ibo(km) output bitmap flags
[out]lo(mo,km) output bitmaps (always output)
[out]go(mo,km) output fields interpolated
[out]iretreturn code
  • 0 successful interpolation
  • 2 unrecognized input grid or no grid overlap
  • 3 unrecognized output grid
  • 41 invalid nonglobal input grid
  • 42 invalid spectral method parameters
Author
Iredell
Date
96-04-10

Definition at line 559 of file spectral_interp_mod.F90.

◆ polates4_grib2()

subroutine spectral_interp_mod::polates4_grib2 ( integer, dimension(20), intent(in)  IPOPT,
integer, intent(in)  IGDTNUMI,
integer, dimension(igdtleni), intent(in)  IGDTMPLI,
integer, intent(in)  IGDTLENI,
integer, intent(in)  IGDTNUMO,
integer, dimension(igdtleno), intent(in)  IGDTMPLO,
integer, intent(in)  IGDTLENO,
integer, intent(in)  MI,
integer, intent(in)  MO,
integer, intent(in)  KM,
integer, dimension(km), intent(in)  IBI,
real, dimension(mi,km), intent(in)  GI,
integer, intent(out)  NO,
real, dimension(mo), intent(inout)  RLAT,
real, dimension(mo), intent(inout)  RLON,
integer, dimension(km), intent(out)  IBO,
logical*1, dimension(mo,km), intent(out)  LO,
real, dimension(mo,km), intent(out)  GO,
integer, intent(out)  IRET 
)
private

Interpolate scalar fields (spectral).

This subprogram performs spectral interpolation from any grid to any grid for scalar fields. It requires that the input fields be uniformly global. Options allow choices between triangular shape (ipopt(1)=0) and rhomboidal shape (ipopt(1)=1) which has no default; a second option is the truncation (ipopt(2)) which defaults to a sensible truncation for the input grid (if opt(2)=-1).

Note
If the output grid is not found in a special list, then the transform back to grid is not very fast. This special list contains global cylindrical grids, polar stereographic grids centered at the pole and mercator grids.

Only horizontal interpolation is performed.

The code recognizes the following projections, where "igdtnumi/o" is the GRIB2 grid defintion template number for the input and onutput grids, respectively:

  • igdtnumi/o = 00 equidistant cylindrical
  • igdtnumo = 01 rotated equidistant cylindrical. "e" and non-"e" staggered
  • igdtnumo = 10 mercator cylindrical
  • igdtnumo = 20 polar stereographic azimuthal
  • igdtnumo = 30 lambert conformal conical
  • igdtnumi/o = 40 gaussian cylindrical

As an added bonus the number of output grid points and their latitudes and longitudes are also returned. On the other hand, the output can be a set of station points if igdtnumo < 0, in which case the number of points and their latitudes and longitudes must be input. Output bitmaps will not be created.

Program History Log

Date Programmer Comments
96-04-10 Iredell initial
2001-06-18 Iredell improve detection of special fast transform
2015-01-27 Gayno replace calls to gdswiz with new merged version of gdswzd.
2015-07-13 Gayno convert to grib 2. replace grib 1 kgds arrays with grib 2 grid definition template arrays.
Parameters
[in]ipopt(20) interpolation options; ipopt(1)=0 for triangular, ipopt(1)=1 for rhomboidal; ipopt(2) is truncation number (defaults to sensible if ipopt(2)=-1).
[in]igdtnumigrid definition template number - input grid. Corresponds to the gfldigdtnum component of the NCEPLIBS-g2 library gridmod data structure.
  • 00 - equidistant cylindrical
  • 01 - rotated equidistant cylindrical. "e" and non-"e" staggered
  • 10 - mercator cyclindrical
  • 20 - polar stereographic azimuthal
  • 30 - lambert conformal conical
  • 40 - gaussian equidistant cyclindrical
[in]igdtmpli(igdtleni) grid definition template array - input grid. corresponds to the gfldigdtmpl component of the ncep g2 library gridmod data structure: (section 3 info). See comments in routine ipolates() for complete definition.
[in]igdtleninumber of elements of the grid definition template array - input grid. corresponds to the gfldigdtlen component of the ncep g2 library gridmod data structure.
[in]igdtnumogrid definition template number - output grid. Corresponds to the gfldigdtnum component of the NCEPLIBS-g2 library gridmod data structure. igdtnumo<0 means interpolate to random station points. Otherwise, same definition as igdtnumi.
[in]igdtmplo(igdtleno) grid definition template array - output grid. Corresponds to the gfldigdtmpl component of the ncep g2 library gridmod data structure (section 3 info). See comments in routine ipolates() for complete definition.
[in]igdtlenonumber of elements of the grid definition template array - output grid. Corresponds to the gfldigdtlen component of the [NCEPLIBS-g2](https://github.com/NOAA-EMC/NCEPLIBS-g2) library gridmod data structure.
[in]miskip number between input grid fields if km>1 or dimension of input grid fields if km=1
[in]moskip number between output grid fields if km>1 or dimension of output grid fields if km=1
[out]kmnumber of fields to interpolate
[out]ibi(km) input bitmap flags (must be all 0)
[out]gi(mi,km) input fields to interpolate
[out]nonumber of output points (only if igdtnumo>=0)
[out]rlat(mo) output latitudes in degrees (if igdtnumo<0)
[out]rlon(mo) output longitudes in degrees (if igdtnumo<0)
[out]ibo(km) output bitmap flags
[out]lo(mo,km) output bitmaps (always output)
[out]go(mo,km) output fields interpolated
[out]iretreturn code
  • 0 successful interpolation
  • 2 unrecognized input grid or no grid overlap
  • 3 unrecognized output grid
  • 41 invalid nonglobal input grid
  • 42 invalid spectral method parameters

!

Author
Mark Iredell
Date
96-04-10

Definition at line 254 of file spectral_interp_mod.F90.

◆ polatev4_grib1()

subroutine spectral_interp_mod::polatev4_grib1 ( integer, dimension(20), intent(in)  IPOPT,
integer, dimension(200), intent(in)  KGDSI,
integer, dimension(200), intent(in)  KGDSO,
integer, intent(in)  MI,
integer, intent(in)  MO,
integer, intent(in)  KM,
integer, dimension(km), intent(in)  IBI,
real, dimension(mi,km), intent(in)  UI,
real, dimension(mi,km), intent(in)  VI,
integer  NO,
real, dimension(mo), intent(inout)  RLAT,
real, dimension(mo), intent(inout)  RLON,
real, dimension(mo), intent(out)  CROT,
real, dimension(mo), intent(out)  SROT,
integer, dimension(km), intent(out)  IBO,
logical*1, dimension(mo,km), intent(out)  LO,
real, dimension(mo,km), intent(out)  UO,
real, dimension(mo,km), intent(out)  VO,
integer, intent(out)  IRET 
)
private

Interpolate vector fields (spectral).

This subprogram performs spectral interpolation from any grid to any grid for vector fields. It requires that the input fields be uniformly global. Options allow choices between triangular shape (ipopt(1)=0) and rhomboidal shape (ipopt(1)=1) which has no default; a second option is the truncation (ipopt(2)) which defaults to a sensible truncation for the input grid (if opt(2)=-1).

Note
If the output grid is not found in a special list, then the transform back to grid is not very fast. This special list contains global cylindrical grids, polar stereographic grids centered at the pole and mercator grids.

Only horizontal interpolation is performed. The grids are defined by their grid description sections (passed in integer form as decoded by subprogram w3fi63).

The current code recognizes the following projections:

  • (KGDS(1)=000) EQUIDISTANT CYLINDRICAL
  • (KGDS(1)=001) MERCATOR CYLINDRICAL
  • (KGDS(1)=003) LAMBERT CONFORMAL CONICAL
  • (KGDS(1)=004) GAUSSIAN CYLINDRICAL (SPECTRAL NATIVE)
  • (KGDS(1)=005) POLAR STEREOGRAPHIC AZIMUTHAL
  • (KGDS(1)=203) ROTATED EQUIDISTANT CYLINDRICAL (E-STAGGER)
  • (KGDS(1)=205) ROTATED EQUIDISTANT CYLINDRICAL (B-STAGGER)

Where kgds could be either input kgdsi or output kgdso.

The input and output vectors are rotated so that they are either resolved relative to the defined grid in the direction of increasing x and y coordinates or resolved relative to easterly and northerly directions, as designated by their respective grid description sections. As an added bonus the number of output grid points and their latitudes and longitudes are also returned along with their vector rotation parameters. On the other hand, the output can be a set of station points if kgdso(1)<0, in which case the number of points and their latitudes and longitudes must be input along with their vector rotation parameters.

Output bitmaps will only be created when the output grid extends outside of the domain of the input grid. The output field is set to 0 where the output bitmap is off.

Program History Log

Date Programmer Comments
96-04-10 iredell initial.
2001-06-18 iredell improve detection of special fast transform
2015-01-27 gayno replace calls to gdswiz() with new merged routine gdswzd().
Parameters
[in]ipopt(20) interpolation options ipopt(1)=0 for triangular, ipopt(1)=1 for rhomboidal; ipopt(2) is truncation number (defaults to sensible if ipopt(2)=-1).
[in]kgdsi(200) input gds parameters as decoded by w3fi63.
[in]kgdso(200) output gds parameters (kgdso(1)<0 implies random station points).
[in]miskip number between input grid fields if km>1 or dimension of input grid fields if km=1.
[in]moskip number between output grid fields if km>1 or dimension of output grid fields if km=1.
[in]kmnumber of fields to interpolate
[in]ibi(km) input bitmap flags (must be all 0)
[in]ui(mi,km) input u-component fields to interpolate
[in]vi(mi,km) input v-component fields to interpolate
[out]nonumber of output points (only if kgdso(1)<0)
[out]rlat(no) output latitudes in degrees (if kgdso(1)<0)
[out]rlon(no) output longitudes in degrees (if kgdso(1)<0)
[out]crot(no) vector rotation cosines (if kgdso(1)<0)
[out]srot(no) vector rotation sines (if kgdso(1)<0) (ugrid=crot*uearth-srot*vearth; vgrid=srot*uearth+crot*vearth)
[out]ibo(km) output bitmap flags
[out]lo(mo,km) output bitmaps (always output)
[out]uo(mo,km) output u-component fields interpolated
[out]vo(mo,km) output v-component fields interpolated
[out]iretreturn code
  • 0 successful interpolation
  • 2 unrecognized input grid or no grid overlap
  • 3 unrecognized output grid
  • 41 invalid nonglobal input grid
  • 42 invalid spectral method parameters
Author
IREDELL
Date
96-04-10

Definition at line 1221 of file spectral_interp_mod.F90.

Referenced by spectral_interp_mod::interpolate_spectral::interpolate_spectral_vector().

◆ polatev4_grib2()

subroutine spectral_interp_mod::polatev4_grib2 ( integer, dimension(20), intent(in)  IPOPT,
integer, intent(in)  IGDTNUMI,
integer, dimension(igdtleni), intent(in)  IGDTMPLI,
integer, intent(in)  IGDTLENI,
integer, intent(in)  IGDTNUMO,
integer, dimension(igdtleno), intent(in)  IGDTMPLO,
integer, intent(in)  IGDTLENO,
integer, intent(in)  MI,
integer, intent(in)  MO,
integer, intent(in)  KM,
integer, dimension(km), intent(in)  IBI,
real, dimension(mi,km), intent(in)  UI,
real, dimension(mi,km), intent(in)  VI,
integer, intent(out)  NO,
real, dimension(mo), intent(inout)  RLAT,
real, dimension(mo), intent(inout)  RLON,
real, dimension(mo), intent(out)  CROT,
real, dimension(mo), intent(out)  SROT,
integer, dimension(km), intent(out)  IBO,
logical*1, dimension(mo,km), intent(out)  LO,
real, dimension(mo,km), intent(out)  UO,
real, dimension(mo,km), intent(out)  VO,
integer, intent(out)  IRET 
)
private

Interpolate vector fields (spectral).

This subprogram performs spectral interpolation from any grid to any grid for vector fields. It requires that the input fields be uniformly global. Options allow choices between triangular shape (ipopt(1)=0) and rhomboidal shape (ipopt(1)=1) which has no default; a second option is the truncation (ipopt(2)) which defaults to a sensible truncation for the input grid (if opt(2)=-1).

Note
If the output grid is not found in a special list, then the transform back to grid is not very fast. This special list contains global cylindrical grids, polar stereographic grids centered at the pole and mercator grids. Only horizontal interpolation is performed.

The input and output grids are defined by their grib 2 grid definition template as decoded by the ncep g2 library. The code recognizes the following projections, where "igdtnumi/o" is the grib 2 grid defintion template number for the input and output grids, respectively:

  • igdtnumi/o=00 equidistant cylindrical
  • igdtnumo =01 rotated equidistant cylindrical. "e" and non-"e" staggered
  • igdtnumo =10 mercator cylindrical
  • igdtnumo =20 polar stereographic azimuthal
  • igdtnumo =30 lambert conformal conical
  • igdtnumi/o=40 gaussian cylindrical

The input and output vectors are rotated so that they are either resolved relative to the defined grid in the direction of increasing x and y coordinates or resolved relative to easterly and northerly directions, as designated by their respective grid description sections.

As an added bonus the number of output grid points and their latitudes and longitudes are also returned along with their vector rotation parameters. On the other hand, the output can be a set of station points if igdtnumo<0, in which case the number of points and their latitudes and longitudes must be input along with their vector rotation parameters.

Output bitmaps will only be created when the output grid extends outside of the domain of the input grid. the output field is set to 0 where the output bitmap is off.

Program History Log

Date Programmer Comments
96-04-10 iredell initial
2001-06-18 iredell improve detection of special fast transform
2015-01-27 gayno replace calls to gdswiz() with new merged routine gdswzd().
2015-07-13 gayno convert to grib 2. replace grib 1 kgds arrays with grib 2 grid definition template arrays.
Parameters
[in]ipopt(20) interpolation options ipopt(1)=0 for triangular, ipopt(1)=1 for rhomboidal; ipopt(2) is truncation number (defaults to sensible if ipopt(2)=-1).
[in]igdtnumigrid definition template number - input grid. Corresponds to the gfldigdtnum component of the ncep g2 library gridmod data structure:
  • 00 equidistant cylindrical
  • 01 rotated equidistant cylindrical. "e" and non-"e" staggered
  • 10 mercator cyclindrical
  • 20 polar stereographic azimuthal
  • 30 lambert conformal conical
  • 40 gaussian equidistant cyclindrical
[in]igdtmpli(igdtleni) grid definition template array - input grid. corresponds to the gfldigdtmpl component of the ncep g2 library gridmod data structure (section 3 info). see comments in routine ipolatev for complete definition.
[in]igdtleninumber of elements of the grid definition template array - input grid. corresponds to the gfldigdtlen component of the ncep g2 library gridmod data structure.
[in]igdtnumogrid definition template number - output grid. Corresponds to the gfldigdtnum component of the ncep g2 library gridmod data structure. igdtnumo<0 means interpolate to random station points. Otherwise, same definition as "igdtnumi".
[in]igdtmplo(igdtleno) grid definition template array - output grid. corresponds to the gfldigdtmpl component of the ncep g2 library gridmod data structure (section 3 info). see comments in routine ipolatev() for complete definition.
[in]igdtlenonumber of elements of the grid definition template array - output grid. Corresponds to the gfldigdtlen component of the ncep g2 library gridmod data structure.
[in]miskip number between input grid fields if km>1 or dimension of input grid fields if km=1.
[in]moskip number between output grid fields if km>1 or dimension of output grid fields if km=1.
[in]kmnumber of fields to interpolate
[in]ibi(km) input bitmap flags (must be all 0)
[in]ui(mi,km) input u-component fields to interpolate
[in]vi(mi,km) input v-component fields to interpolate
[out]nonumber of output points (only if igdtnumo>=0)
[in,out]rlat(mo) output latitudes in degrees (if igdtnumo<0)
[in,out]rlon(mo) output longitudes in degrees (if igdtnumo<0)
[in,out]crot(mo) vector rotation cosines (if igdtnumo<0)
[in,out]srot(mo) vector rotation sines (if igdtnumo<0) (ugrid=crot*uearth-srot*vearth; vgrid=srot*uearth+crot*vearth)
[out]ibo(km) output bitmap flags
[out]lo(mo,km) output bitmaps (always output)
[out]uo(mo,km) output u-component fields interpolated
[out]vo(mo,km) output v-component fields interpolated
[out]iretreturn code
  • 0 successful interpolation
  • 2 unrecognized input grid or no grid overlap
  • 3 unrecognized output grid
  • 41 invalid nonglobal input grid
  • 42 invalid spectral method parameters
Author
IREDELL
Date
96-04-10

Definition at line 887 of file spectral_interp_mod.F90.