# Absolute Pressure to Sea Level Corrected

I have a Absolute Pressure Sensor (SCP1000) that I’m currently working with. I just want to know if the correction formula is valid for general use. I do check a CWOP site which is about 2 miles away with lower elevation and their pressure is appx .3 mb higher.

Absolute Pressure = 95682Pa

Absolute Pressure(mb) = 95682Pa * 0.01
Absolute Pressure = 956.82mb

Elevation 1687 Feet

Correction Formula = 3.6mb * (Elevation)/100

Correction = 3.6mb * 1687ft/100
Correction = 60.732mb

Sea level Pressure (Corrected) = 956.82mb + 60.732mb
Sea level Pressure (Corrected) = 1017.552mb

Thanks

Sea Level Pressure reduction formula typically includes temperature and humidity as part of the calculation. It’s a rather involved formula. The altimeter formula is another formula for normalizing to sea level and only uses pressure and elevation for the formula. CWOP stations are supposed to submit altimeter, so that should be what CWOP stations show.

Then basically I should be converting to altimeter reading.

A = (P^N + K*Z)^(1/N), where P is the raw station pressure (in. Hg), N = 0.1903, K = 1.313E -5, Z is elevation (feet).

Storm017

That’s probably right. There are a number of different altimeter formulas that give approximately the same result. This function from a Pascal library I wrote (http://www.softwx.com/weather/uwxutils.html) contains the formulas for a number of the different ones I have found. I use the MADIS formula in my software.

class function TWxUtils.StationToAltimeter(PressureHPa: TWxReal; elevationM: TWxReal;
algorithm: TAltimeterAlgorithm = DefaultAltimeterAlgorithm): TWxReal;
var
geopEl: TWxReal;
k1, k2: TWxReal;
begin
case algorithm of
aaASOS:
// see ASOS training at http://www.nwstc.noaa.gov
begin
Result := InToHPa(Power(Power(HPaToIn(pressureHPa), 0.1903) + (1.313E-5 * MToFt(elevationM)), 5.255));
end;
aaASOS2:
begin
geopEl := GeopotentialAltitude(elevationM);
k1 := standardLapseRate * gasConstantAir / gravity; // approx. 0.190263
k2 := 8.41728638E-5; // (standardLapseRate / standardTempK) * (Power(standardSLP, k1)
Result := Power(Power(pressureHPa, k1) + (k2 * geopEl), 1/k1);
end;
begin
k1 := 0.190284; // discrepency with calculated k1 probably because Smithsonian used less precise gas constant and gravity values
k2 := 8.4184960528E-5; // (standardLapseRate / standardTempK) * (Power(standardSLP, k1)
Result := Power(Power(pressureHPa - 0.3, k1) + (k2 * elevationM), 1/k1);
end;
aaNOAA:
// see http://www.srh.noaa.gov/elp/wxcalc/formulas/altimeterSetting.html
begin
k1 := 0.190284; // discrepency with k1 probably because Smithsonian used less precise gas constant and gravity values
k2 := 8.42288069E-5; // (standardLapseRate / 288) * (Power(standardSLP, k1SMT);
Result := (pressureHPa - 0.3) * Power(1 + (k2 * (elevationM / Power(pressureHPa - 0.3, k1))), 1/k1);
end;
aaWOB:
// see http://www.wxqa.com/archive/obsman.pdf
begin
k1 := standardLapseRate * gasConstantAir / gravity; // approx. 0.190263
k2 := 1.312603E-5; //(standardLapseRateFt / standardTempK) * Power(standardSlpInHg, k1);
Result := InToHPa(Power(Power(HPaToIn(pressureHPa), k1) + (k2 * MToFt(elevationM)), 1/k1));
end;
aaSMT:
// see WMO Instruments and Observing Methods Report No.19 at
// http://www.wmo.int/pages/prog/www/IMOP/publications/IOM-19-Synoptic-AWS.pdf
begin
k1 := 0.190284; // discrepency with calculated value probably because Smithsonian used less precise gas constant and gravity values
k2 := 4.30899E-5; // (standardLapseRate / 288) * (Power(standardSlpInHg, k1SMT));
geopEl := GeopotentialAltitude(elevationM);
Result := InToHPa((HPaToIn(pressureHPa) - 0.01)
* Power(1 + (k2 * (geopEl / Power(HPaToIn(pressureHPa) - 0.01, k1))), 1/k1));
end;
else Result := pressureHPa; // unknown algorithm
end;
end;

I’m just looking for an approximate right now, just to see how this sensor performs over a period of time. I was at your site a while back looking thru the software you have.