RMNLIB

(EXTRAP1D_LAPSERATE_X)





SUBROUTINE EXTRAP1D_LAPSERATE_X(numInterpSets, srcNumLevels, destNumLevels, src_ijDim, dst_ijDim, vLevelSource, stateSource, stateDerivSource, posnDestInSrc, vLevelDestn, stateDestn, stateDerivDestn, extrapEnableDown, extrapEnableUp, extrapGuideDown, extrapGuideUp, flux, numExtArraysIn, numExtArraysOut, ExtArraysIn, ExtArraysOut)
integer, intent(in) :: numInterpSets integer, intent(in) :: srcNumLevels integer, intent(in) :: destNumLevels integer, intent(in) :: src_ijDim integer, intent(in) :: dst_ijDim real, dimension(src_ijDim, srcNumLevels), intent(in) :: vLevelSource real, dimension(src_ijDim, srcNumLevels), intent(in) :: stateSource real, dimension(src_ijDim, srcNumLevels), intent(in) :: stateDerivSource integer, dimension(dst_ijDim, destNumLevels), intent(in) :: posnDestInSrc real, dimension(dst_ijDim, destNumLevels), intent(in) :: vLevelDestn real, dimension(dst_ijDim, destNumLevels), intent(out) :: stateDestn real, dimension(dst_ijDim, destNumLevels), intent(out) :: stateDerivDestn logical, intent(in) :: extrapEnableDown, extrapEnableUp real, intent(in) :: extrapGuideDown, extrapGuideUp external flux integer, intent(in) :: numExtArraysIn integer, intent(in) :: numExtArraysOut real, dimension(src_ijDim, numExtArraysIn), intent(in) :: ExtArraysIn real, dimension(dst_ijDim, numExtArraysOut), intent(out) :: ExtArraysOut
DESCRIPTION For each destination level that is outside the set of source levels, a state value (but not a derivative) is extrapolated. The extrapolated value lies on a straight line that passes through the closest source level with the slope, extrapGuideDown (for a destination level that lies before [i.e. has a smaller index than] the source levels) or extrapGuideUp (for a destination level that lies after the source levels). Values that would be interpolated are untouched by the routine.
Author: Jeff Blezius - revised Oct 2003
ARGUMENTS

It can be noted that the arguments to all of the Interp1D_* and Extrap1D_* routines are identical, for ease of switching a call from one to another of them. You should examine the generic description of the arguments. The following are uses of the generic arguments that are specific to this routine:
Input:
extrapGuideDown lapse rate below the vLevelSource values; i.e. the derivative of the state value with respect to the vertical level
extrapGuideUp lapse rate above the vLevelSource values; i.e. the derivative of the state value with respect to the vertical level
flux unused
ExtArraysIn unused
Output:
stateDerivDestn(dst_ijDim, dstNumLevels) unused
ExtArraysOut unused

SEE ALSO

Interp1D_FindPos, Interp1D_NearestNeighbour_X, Interp1D_Linear_X, Interp1D_CubicLagrange_X, Interp1D_CubicWithDerivs_X, Extrap1D_Surface_X, Extrap1D_SurfaceWind_X

Return to RPN Libraries home page
Return to product index
Last updated: December 5, 2003