kylejgillett / sounderpy

A python package that helps you to access and plot vertical profile data for meteorological analysis
https://kylejgillett.github.io/sounderpy/
MIT License
51 stars 13 forks source link

Add a second or third observation point #29

Open VortDude opened 3 weeks ago

VortDude commented 3 weeks ago

When adding an observed temperature and Td, sounderpy created funky lapse rates for a convective case in the Northern Rockies using ERA5 data. For some reason, sounderPY adds an artifact above the surface where the lapse rate goes straight up before cooling off. This doesn't make sense for a summer day around peak heating in Missoula. It could also be the reason that the 0-3km lapse rate was 11 C/km. Also the surface elevation is incorrect: It seems like this is a problem with the ERA5 data(when looking at the sounding without sfc inputs). It puts KMSO at 850mb which is unrealistic. KMSO is at 3199 feet (975 meters) which according to the OTX sounding at 00z would have been approximately near 925 mb on that particular day (not 850mb!).

Add the capability to add 1-3 data points to the sounding AND the pressure level. There are plenty of mid-slope and mountain-top observations that could help supplement the soundings so that a more realistic low-level lapse rate can be achieved. i.e. Point 6 is at 2407 meters (7897 ft), which looking at the OTX sounding at 00z 7/25, would have been somewhere around 765 mb and it's 4:59pm MDT (~23z) obs were 25 C(T) and 4 C(Td).

2024_07_24_23z_ERA5_noObs 2024_07_24_23z_ERA5_withObs

KMSO obs from July 24: https://www.weather.gov/wrh/timeseries?site=KMSO&hours=72&units=english&chart=on&headers=on&obs=tabular&hourly=false&pview=standard&font=12&history=yes&start=20240724&end=20240725

https://www.weather.gov/wrh/timeseries?site=PNTM8&hours=72&units=english&chart=on&headers=on&obs=tabular&hourly=false&pview=standard&font=12&history=yes&start=20240724&end=20240725

kylejgillett commented 3 weeks ago

Hi @VortDude,

Thanks for using SounderPy and for adding this issue.

First, you are correct in noting that the elevation issue is related to ERA5. (See attached figure). The ERA5 is known to have a pretty rough sfc elevation (the 31km grid spacing) and therefore results is some wild errors in elevation in mountain areas. Other than offering the ability to manually inputting a sfc elevation, there's not much that can be done to my knowledge. I will test an option to manually set the elevation.

Next, the weird artifact you've found is most-certainly due to the interpolation of the new sfc value onto the existing profile. Technically at this point, that interpolation scheme is a "beta" feature so I am not surprised that its giving some issues. That too I will look into here soon. I will probably need to rework the interpolation scheme again.

image