| 1 |
% |
| 2 |
% function [TMA] = moist_adiabat(LCL,TLCL); |
| 3 |
% |
| 4 |
% Computes the temperature TMA(p) (in K) following |
| 5 |
% a moist adiabat profile from the LCL where the |
| 6 |
% temperature is TLCL (in K) |
| 7 |
% |
| 8 |
|
| 9 |
|
| 10 |
function [TMA] = moist_adiabat(LCL,TLCL); |
| 11 |
|
| 12 |
% Constants |
| 13 |
RGASdry = 287.04; |
| 14 |
RGASvapor = 461.5; |
| 15 |
PREF = 1000; %in mb |
| 16 |
KM = 1000; |
| 17 |
GRAVI = 9.81; |
| 18 |
|
| 19 |
% Pressure grid |
| 20 |
P = [987.5:-25:0]; %in mb |
| 21 |
DP = 25; %in mb |
| 22 |
NL = 40; |
| 23 |
|
| 24 |
% Pressure integral |
| 25 |
TMA = NaN * ones(1,NL); |
| 26 |
TMA(LCL) = TLCL; |
| 27 |
for l = LCL:NL-1; |
| 28 |
%RGAS = RGASvapor * Q(l) + (1-Q(l))*RGASdry ;%if fancy!! |
| 29 |
RGAS = RGASdry; |
| 30 |
t = TMA(l) - 273.15; |
| 31 |
GAMMAs1 = 6.4 - 0.12*t + (2.5*1.e-05)*t^3; |
| 32 |
GAMMAs2 = (-2.4 + .001*(t-5)^2) * (1 - P(l)/PREF); |
| 33 |
GAMMAs = (GAMMAs1+GAMMAs2) / KM; |
| 34 |
DT = - RGAS * TMA(l) * GAMMAs * DP / (GRAVI * P(l)); |
| 35 |
TMA(l+1) = TMA(l) + DT; |
| 36 |
end |