This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
=============================================================================== Robb Kambic Unidata Program Center Software Engineer III Univ. Corp for Atmospheric Research address@hidden WWW: http://www.unidata.ucar.edu/ =============================================================================== ---------- Forwarded message ---------- Date: 24 Mar 2005 15:16:49 -0700 From: Steve Chiswell <address@hidden> To: Robb Kambic <address@hidden> Subject: altimeter to slp Robb, In PR_PALT, the constants are: GAMUSD = 6.5 degrees per km TMCK = 273.15 To = T at 1000mb = 288.15K RDGAS = 287.04 = gas constant for dry air GRAVTY = 9.80616 m s-2 Chiz
FUNCTION PR_PALT ( altm, selv ) C************************************************************************ C* PR_PALT * C* * C* This function computes station pressure from altimeter and station * C* elevation. The following equation is used: * C* * C* PALT = ALTM * ( 1 - ( SELK * GAMUSD / To ) ) ** expo * C* * C* SELK = SELV / 1000 * C* To = US Std. Atmos. sea level temp in Kelvin * C* = TMCK + 15 * C* expo = GRAVTY / ( GAMUSD * RDGAS ) * 1000 * C* * C* Wallace and Hobbs. * C* * C* REAL PR_PALT ( ALTM, SELV ) * C* * C* Input parameters: * C* ALTM REAL Altimeter in millibars * C* SELV REAL Station elevation in meters * C* * C* Output parameters: * C* PR_PALT REAL Pressure in millibars * C** * C* Log: * C* I. Graffman/RDS 11/84 Original source * C* I. Graffman/RDS 12/87 Use constants from table * C* G. Huffman/GSC 7/88 Documentation * C* T. Lee/GSC 12/99 Used TMCK * C************************************************************************ INCLUDE 'GEMPRM.PRM' INCLUDE 'ERMISS.FNC' C------------------------------------------------------------------------ C* Check for missing data. C to = TMCK + 15. IF ( ERMISS ( altm ) .or. ERMISS ( selv ) ) THEN PR_PALT = RMISSD ELSE hgtk = PR_HGMK (selv) C C* Calculate the exponent. C expo = ( GRAVTY / ( GAMUSD * RDGAS ) * 1000.) C C* Calculate pressure. C PR_PALT = altm * ( 1. - ( hgtk * GAMUSD / to ) ) ** expo END IF C* RETURN END