241 |
% is calculated as T=Theta*(p/po)^(R/cp). Moist potential temperature is |
% is calculated as T=Theta*(p/po)^(R/cp). Moist potential temperature is |
242 |
% calculated as Theta_e=Theta*e^(L*q*/cp*T) where q*=(R/Rv)*(es/p) and |
% calculated as Theta_e=Theta*e^(L*q*/cp*T) where q*=(R/Rv)*(es/p) and |
243 |
% es=Ae^(beta*T). |
% es=Ae^(beta*T). |
244 |
elseif ismember(fln,{'ActT','MoiPTc'}) |
elseif ismember(fln,{'ActT','ThetaEc'}) |
245 |
if isequal('flu','O'), |
if isequal('flu','O'), |
246 |
error('Calculation may only be done for atmosphere!'); |
error('Calculation may only be done for atmosphere!'); |
247 |
end |
end |
256 |
ddf,filesuffix,mnchandle); |
ddf,filesuffix,mnchandle); |
257 |
end |
end |
258 |
theta = DiagAverage(theta,fln,avg,months,ddf,Dim); |
theta = DiagAverage(theta,fln,avg,months,ddf,Dim); |
259 |
if ismember(fln,{'ActT','MoiPTc'}) |
if ismember(fln,{'ActT','ThetaEc'}) |
260 |
pres = NaN.*zeros(size(theta)); |
pres = NaN.*zeros(size(theta)); |
261 |
for iz=1:length(ZC), pres(:,:,iz)=ZC(iz); end |
for iz=1:length(ZC), pres(:,:,iz)=ZC(iz); end |
262 |
temp=theta.*(pres./presrefA).^(RdA/cpA); |
temp=theta.*(pres./presrefA).^(RdA/cpA); |
263 |
if isequal(fln,'ActT'), data=temp; end |
if isequal(fln,'ActT'), data=temp; end |
264 |
end |
end |
265 |
if isequal(fln,'MoiPTc') |
if isequal(fln,'ThetaEc') |
266 |
es=A_CC.*exp(Beta_CC.*(temp-K2C)); |
es=A_CC.*exp(Beta_CC.*(temp-K2C)); |
267 |
qstar=(RdA/RvA).*(es./pres); |
qstar=(RdA/RvA).*(es./pres); |
268 |
data=theta.*exp(LHvapA.*qstar./cpA./temp); |
data=theta.*exp(LHvapA.*qstar./cpA./temp); |