From 64fe879d4058bcc4b2da27d4d76d8e19365e32cf Mon Sep 17 00:00:00 2001 From: XANTRONIX Industrial Date: Sat, 15 Mar 2025 01:32:57 -0400 Subject: [PATCH] Fix LCL, LFC (I think) --- lib/xmet/sounding.py | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/lib/xmet/sounding.py b/lib/xmet/sounding.py index b355b05..b309629 100644 --- a/lib/xmet/sounding.py +++ b/lib/xmet/sounding.py @@ -251,10 +251,9 @@ class SoundingParams(): surface.pressure) temp_line = sounding.follow_temp() - dewpoint_line = sounding.follow_dewpoint() virtual_temp_line = sounding.follow_virtual_temp() - dry_adiabat = follow_dry_adiabat(surface.temp, surface.pressure) + dry_adiabat = follow_dry_adiabat(tv, surface.pressure) mixing_ratio_line = follow_saturated_mixing_ratio(surface.dewpoint, surface.pressure) @@ -262,18 +261,15 @@ class SoundingParams(): lcl = dry_adiabat.intersect(mixing_ratio_line, SeriesIntersection.LESSER) - tv2 = virtual_temp(temp_line.nearest(lcl[1]), - dewpoint_line.nearest(lcl[1]), - lcl[1]) + moist_adiabat = follow_moist_adiabat(*lcl) - moist_adiabat = follow_moist_adiabat(tv2-1, lcl[1]) - - lfc = moist_adiabat.intersect(virtual_temp_line, - SeriesIntersection.GREATER) + lfc = virtual_temp_line.intersect(moist_adiabat, + SeriesIntersection.LESSER, + lcl[1]-1) el = temp_line.intersect(moist_adiabat, SeriesIntersection.GREATER, - lfc[1]) + lfc[1]-1) self.lcl = lcl self.lfc = lfc