Case-Bedingung
Case-Bedingungen werden zur optionalen Definition eines PML-Blocks verwendet. Sie stehen am Anfang des Modells und werden im Unterschied zu if-Bedingungen nur einmal vor der Simulation ausgewertet.
PML-Block1
begin case (Bedingung)
PML-Block2
end case
PML-Block3
Der Wert in der Klammer muss vor den Rechnungen bekannt sein und darf keine Zeitreihe sein.
Nur wenn die Case-Bedingung zutrifft, wird der PML-Block ausgewertet.
Case-Bedingungen werden hauptsächlich verwendet, um Werte von Options abzufragen.
Zeitabhängige Abfragen sind mit einer Case-Bedingung nicht möglich.
Die Bedingung wird mit begin case gestartet.
Beispiele
begin case(Option < 0.5)
Q_dot_heat = eta*H_dot_chem;
Gleichung2;
usw.
end case
Gleichung3;
begin case(Option > 0.5 && Option < 1.5)
Q_dot_heat = 5[kW];
Gleichung4;
end case
Die folgende Abbildung zeigt ein Beispiel für Case-Bedingungen, in dem die Option abgefragt wird, ob die Eingabe der Luftfeuchte über die Vorgabe der relativen oder absoluten Feuchte vorgenommen werden soll. Je nach Ergebnis der Abfrage wird die Rechnung in die jeweilige Richtung durchgeführt.
//**************************************************************//
//*** Calculation of design state Inlet wet bulb temperature ***//
//**************************************************************//
//Type of humidity –> Specific Humidity
begin case (Type_Humidity == 0)
x_in := Spec_Hum; //Specific Humidity
phi_in := p_ambient / ((.amb.M_W * p_sW_in) / (x_in * .amb.M_Air) + p_sW_in); //Relative Humidity
end case
//Type of humidity –> Relative Humidity
begin case (Type_Humidity == 1)
phi_in := Rel_Hum;
x_in := (.amb.M_W * p_sW_in) / (.amb.M_Air * ((p_ambient / phi_in) – p_sW_in));
end case

