% Insert the code fragments below into your version of parcel.m % Existing code in parcel.m is shown for reference. %----start--------------------------------------------- CAPE = 0; %----end----------------------------------------------- % DO ASCENT % while (p > ptop) while (z < ztop) i = i + 1; z = z + dz; %-----start-------------------------------------------- % for CAPE: save T, Te, p from previous level T1 = T; Te1 = Te; p1 = p; %-----end---------------------------------------------- % environment T, p (US Standard Atmosphere) [Te pe] = TP_std ( z ); p = pe; ================================================== (code omitted) ================================================== % display values % disp ( [p_mb(i) th_K(1) T_C(i) qv_gkg(i) qc_gkg(i)] ) %-----start-------------------------------------------- dCAPE = rgas * ( T - Te + T1 - Te1 ) / 2 * log(p1/p); CAPE = CAPE + max(0, dCAPE); % LFC: dCAPE becomes > 0 if T1-Te1 < 0 && T-Te > 0 LFC = (p1 + p) / 2 / pa_per_mb end % LNB: dCAPE becomes < 0 if T1-Te1 > 0 && T-Te < 0 LNB = (p1 + p) / 2 / pa_per_mb end % disp ( [ p_mb(i) CAPE dCAPE T-Te ] ) %-----end---------------------------------------------- end %-----start-------------------------------------------- CAPE wmax = sqrt(2*CAPE) %-----end----------------------------------------------