- Timestamp:
- Jul 21, 2008, 5:41:41 PM (15 years ago)
- Location:
- branches/gui
- Files:
-
- 1 added
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/gui/eml/controllers/PIDIncr.mso
r555 r558 165 165 switch Action 166 166 case "Direct": 167 action = -1.0; 168 case "Reverse": 167 169 action = 1.0; 168 case "Reverse":169 action = -1.0;170 170 end 171 171 … … 295 295 296 296 end 297 298 299 Model PID_gui as PIDIncr300 ATTRIBUTES301 Pallete = true;302 Icon = "icon/PIDIncr";303 304 PARAMETERS305 MinInput as control_signal;306 MaxInput as control_signal;307 308 VARIABLES309 in Input as control_signal(Protected=true, PosX=0, PosY=0.5);310 out Output as control_signal(Protected=true, PosX=1, PosY=0.5);311 SetPoint as control_signal;312 313 EQUATIONS314 Ports.input*(MaxInput - MinInput) = Input - MinInput;315 Ports.output = Output;316 Ports.setPoint*(MaxInput - MinInput) = SetPoint - MinInput;317 end -
branches/gui/eml/controllers/PIDs.mso
r354 r558 18 18 using "types"; 19 19 20 Model MParameters21 22 ATTRIBUTES23 Pallete = false;24 Brief = "Model of Parameters to be used with PIDs.";25 26 VARIABLES27 28 alpha as positive (Brief="Derivative term filter constant", Default=1);29 beta as positive (Brief="Proportional term setPoint change filter");30 bias as control_signal (Brief="Previous scaled bias", Default=0.5);31 derivTime as time_sec (Brief="Derivative time constant");32 intTime as time_sec (Brief="Integral time constant");33 gain as positive (Brief="Controller gain", Default=0.5);34 gamma as positive (Brief="Derivative term SP change filter");35 tau as time_sec (Brief="Input filter time constant");36 tauSet as time_sec (Brief="Input filter time constant");37 38 end39 40 Model MOptions41 42 ATTRIBUTES43 Pallete = false;44 Brief = "Model of Options to be used with PIDs.";45 46 VARIABLES47 48 action as Real (Brief="Controller action: (-1) Direct,(1) Reverse", Default=-1);49 autoMan as Real (Brief="Controller option: (0) Automatic, (1) Manual", Default=0);50 clip as Real (Brief="Controller option: (1) output clipped, (0) output unclipped", Default=1);51 52 end53 54 20 Model MPorts 55 21 … … 91 57 92 58 ATTRIBUTES 93 Pallete = true;59 Pallete = false; 94 60 Icon = "icon/PID"; 95 61 Brief = "Model of PIDs."; … … 105 71 106 72 PARAMETERS 107 PID_Select as Switcher (Brief="Type of PID", Valid=["Ideal","Parallel","Series","Ideal_AWBT","Parallel_AWBT","Series_AWBT","Ideal_AW","Parallel_AW","Series_AW"], Default = "Ideal"); 108 109 VARIABLES 110 Parameters as MParameters; 111 Options as MOptions; 73 PID_Select as Switcher (Brief="Type of PID Incremental", Valid=["Ideal","Parallel","Series","Ideal_AWBT","Parallel_AWBT","Series_AWBT","Ideal_AW","Parallel_AW","Series_AW"], Default = "Ideal"); 74 Action as Switcher (Brief="Controller action", Valid=["Direct","Reverse"], Default = "Reverse"); 75 Mode as Switcher (Brief="Controller mode", Valid=["Automatic","Manual"], Default = "Automatic"); 76 Clip as Switcher (Brief="Controller mode", Valid=["Clipped","Unclipped"], Default = "Clipped"); 77 78 alpha as positive (Brief="Derivative term filter constant", Default=1); 79 beta as positive (Brief="Proportional term setPoint change filter"); 80 bias as control_signal (Brief="Previous scaled bias", Default=0.5); 81 derivTime as time_sec (Brief="Derivative time constant"); 82 intTime as time_sec (Brief="Integral time constant"); 83 gain as positive (Brief="Controller gain", Default=0.5); 84 gamma as positive (Brief="Derivative term SP change filter"); 85 tau as time_sec (Brief="Input filter time constant"); 86 tauSet as time_sec (Brief="Input filter time constant"); 87 88 VARIABLES 112 89 Internal as MInternal_Variables; 113 90 Ports as MPorts; 114 91 AWFactor as Real (Brief="Integral term multiplier used in anti-reset windup"); 92 action as Real(Protected=true); 115 93 116 94 INITIAL … … 122 100 EQUATIONS 123 101 124 if ( Parameters.tau equal 0) then102 if (tau equal 0) then 125 103 "Input first order filter" 126 ( Parameters.tau + 1e-3*'s')*diff(Internal.inputFilt)= Ports.input - Internal.inputFilt;104 (tau + 1e-3*'s')*diff(Internal.inputFilt)= Ports.input - Internal.inputFilt; 127 105 else 128 106 "Input first order filter" 129 Parameters.tau*diff(Internal.inputFilt)= Ports.input - Internal.inputFilt;130 end 131 132 if ( Parameters.tauSet equal 0) then107 tau*diff(Internal.inputFilt)= Ports.input - Internal.inputFilt; 108 end 109 110 if (tauSet equal 0) then 133 111 "setPoint first order filter" 134 ( Parameters.tauSet + 1e-3*'s')*diff(Internal.setPointFilt)= Ports.setPoint - Internal.setPointFilt;112 (tauSet + 1e-3*'s')*diff(Internal.setPointFilt)= Ports.setPoint - Internal.setPointFilt; 135 113 else 136 114 "setPoint first order filter" 137 Parameters.tauSet*diff(Internal.setPointFilt)= Ports.setPoint - Internal.setPointFilt; 138 end 139 140 if Options.autoMan equal 1 then 115 tauSet*diff(Internal.setPointFilt)= Ports.setPoint - Internal.setPointFilt; 116 end 117 118 switch Mode 119 case "Manual": 141 120 "Error definition for proportional term" 142 Internal.error = Internal.inputFilt*( Parameters.beta-1.0);121 Internal.error = Internal.inputFilt*(beta-1.0); 143 122 "Error definition for derivative term" 144 Internal.errorD= Internal.inputFilt*( Parameters.gamma-1.0);123 Internal.errorD= Internal.inputFilt*(gamma-1.0); 145 124 "Error definition for integral term" 146 125 Internal.errorI= 0; 147 else126 case "Automatic": 148 127 "Error definition for proportional term" 149 Internal.error = Parameters.beta*Internal.setPointFilt - Internal.inputFilt;128 Internal.error = beta*Internal.setPointFilt - Internal.inputFilt; 150 129 "Error definition for derivative term" 151 Internal.errorD = Parameters.gamma*Internal.setPointFilt - Internal.inputFilt;130 Internal.errorD = gamma*Internal.setPointFilt - Internal.inputFilt; 152 131 "Error definition for integral term" 153 132 Internal.errorI = Internal.setPointFilt-Internal.inputFilt; … … 157 136 Internal.propTerm=Internal.error; 158 137 159 if ( Parameters.derivTime equal 0) then138 if (derivTime equal 0) then 160 139 "Derivative term filter" 161 Parameters.alpha*(Parameters.derivTime + 1e-3*'s')*diff(Internal.dFilt) = Internal.errorD - Internal.dFilt;140 alpha*(derivTime + 1e-3*'s')*diff(Internal.dFilt) = Internal.errorD - Internal.dFilt; 162 141 else 163 142 "Derivative term filter" 164 Parameters.alpha*(Parameters.derivTime)*diff(Internal.dFilt) = Internal.errorD - Internal.dFilt;143 alpha*(derivTime)*diff(Internal.dFilt) = Internal.errorD - Internal.dFilt; 165 144 end 166 145 167 146 "Calculate derivative term" 168 Internal.derivTerm = Parameters.derivTime*diff(Internal.dFilt);147 Internal.derivTerm = derivTime*diff(Internal.dFilt); 169 148 170 149 "Scale outp" 171 150 Internal.outps=2*Internal.outp-1; 172 151 173 if Options.clip equal 1 then 152 switch Clip 153 case "Clipped": 174 154 if abs(Internal.outps)>1 then 175 155 "Calculate clipped output when it´s saturated" … … 179 159 Ports.output=Internal.outp; 180 160 end 181 else161 case "Unclipped": 182 162 "Calculate unclipped output" 183 163 Ports.output=Internal.outp; 184 164 end 185 165 166 switch Action 167 case "Direct": 168 action = -1.0; 169 case "Reverse": 170 action = 1.0; 171 end 172 173 186 174 switch PID_Select 187 175 … … 189 177 190 178 "Calculate integral term with anti-windup" 191 Parameters.intTime*diff(Internal.intTerm) = AWFactor*Internal.errorI;192 193 "Sum of proportional, integral and derivative terms" 194 Internal.outp = Parameters.bias + Options.action*Parameters.gain*(Internal.propTerm + Internal.intTerm + Internal.derivTerm);195 196 if abs(Internal.outps)>1 and ( Options.action*sign(Internal.outps)*Internal.errorI)>0 then179 intTime*diff(Internal.intTerm) = AWFactor*Internal.errorI; 180 181 "Sum of proportional, integral and derivative terms" 182 Internal.outp = bias + action*gain*(Internal.propTerm + Internal.intTerm + Internal.derivTerm); 183 184 if abs(Internal.outps)>1 and (action*sign(Internal.outps)*Internal.errorI)>0 then 197 185 "Calculate AWFactor" 198 186 AWFactor=-tanh(sign(Internal.outps)*Internal.outps*100-102); … … 205 193 206 194 "Calculate integral term with anti-windup" 207 Parameters.intTime*diff(Internal.intTerm) = AWFactor*Internal.errorI;208 209 "Sum of proportional, integral and derivative terms" 210 Internal.outp = Parameters.bias + Options.action*(Parameters.gain*Internal.propTerm + Internal.intTerm + Internal.derivTerm);211 212 if abs(Internal.outps)>1 and ( Options.action*sign(Internal.outps)*Internal.errorI)>0 then195 intTime*diff(Internal.intTerm) = AWFactor*Internal.errorI; 196 197 "Sum of proportional, integral and derivative terms" 198 Internal.outp = bias + action*(gain*Internal.propTerm + Internal.intTerm + Internal.derivTerm); 199 200 if abs(Internal.outps)>1 and (action*sign(Internal.outps)*Internal.errorI)>0 then 213 201 "Calculate AWFactor" 214 202 AWFactor=-tanh(sign(Internal.outps)*Internal.outps*100-102); … … 222 210 223 211 "Calculate integral term with anti-windup" 224 Parameters.intTime*diff(Internal.intTerm) = AWFactor*Internal.errorI;225 226 "Sum of proportional, integral and derivative terms" 227 Internal.outp = Parameters.bias + Options.action*(Parameters.gain*(Internal.propTerm + Internal.intTerm)*(1 + Internal.derivTerm));228 229 if abs(Internal.outps)>1 and ( Options.action*sign(Internal.outps)*Internal.errorI)>0 then212 intTime*diff(Internal.intTerm) = AWFactor*Internal.errorI; 213 214 "Sum of proportional, integral and derivative terms" 215 Internal.outp = bias + action*(gain*(Internal.propTerm + Internal.intTerm)*(1 + Internal.derivTerm)); 216 217 if abs(Internal.outps)>1 and (action*sign(Internal.outps)*Internal.errorI)>0 then 230 218 "Calculate AWFactor" 231 219 AWFactor=-tanh(sign(Internal.outps)*Internal.outps*100-102); … … 238 226 239 227 "Calculate integral term" 240 Parameters.intTime*diff(Internal.intTerm) = Internal.errorI;228 intTime*diff(Internal.intTerm) = Internal.errorI; 241 229 242 230 "Sum of proportional, integral and derivative terms" 243 Internal.outp = Parameters.bias + Options.action*Parameters.gain*(Internal.propTerm + Internal.intTerm + Internal.derivTerm);231 Internal.outp = bias + action*gain*(Internal.propTerm + Internal.intTerm + Internal.derivTerm); 244 232 245 233 "Calculate AWFactor - Not in use in this mode" … … 249 237 250 238 "Calculate integral term" 251 Parameters.intTime*diff(Internal.intTerm) = Internal.errorI;239 intTime*diff(Internal.intTerm) = Internal.errorI; 252 240 253 241 "Sum of proportional, integral and derivative terms" 254 Internal.outp = Parameters.bias + Options.action*(Parameters.gain*Internal.propTerm + Internal.intTerm + Internal.derivTerm);242 Internal.outp = bias + action*(gain*Internal.propTerm + Internal.intTerm + Internal.derivTerm); 255 243 256 244 "Calculate AWFactor - Not in use in this mode" … … 260 248 261 249 "Calculate integral term" 262 Parameters.intTime*diff(Internal.intTerm) = Internal.errorI;263 264 "Sum of proportional, integral and derivative terms" 265 Internal.outp = Parameters.bias + Options.action*(Parameters.gain*(Internal.propTerm + Internal.intTerm)*(1 + Internal.derivTerm));250 intTime*diff(Internal.intTerm) = Internal.errorI; 251 252 "Sum of proportional, integral and derivative terms" 253 Internal.outp = bias + action*(gain*(Internal.propTerm + Internal.intTerm)*(1 + Internal.derivTerm)); 266 254 267 255 "Calculate AWFactor - Not in use in this mode" … … 271 259 272 260 "Calculate integral term with anti-windup and bumpless transfer" 273 Options.action*Parameters.gain*(Parameters.intTime*diff(Internal.intTerm)-Internal.errorI) = Ports.output-Internal.outp;261 action*gain*(intTime*diff(Internal.intTerm)-Internal.errorI) = Ports.output-Internal.outp; 274 262 275 263 "Sum of proportional, integral and derivative terms" 276 Internal.outp = Parameters.bias + Options.action*Parameters.gain*(Internal.propTerm + Internal.intTerm + Internal.derivTerm);264 Internal.outp = bias + action*gain*(Internal.propTerm + Internal.intTerm + Internal.derivTerm); 277 265 278 266 "Calculate AWFactor - Not in use in this mode" … … 282 270 283 271 "Calculate integral term with anti-windup and bumpless transfer" 284 Options.action*Parameters.gain*(Parameters.intTime*diff(Internal.intTerm)-Internal.errorI) = Ports.output-Internal.outp;272 action*gain*(intTime*diff(Internal.intTerm)-Internal.errorI) = Ports.output-Internal.outp; 285 273 286 274 "Sum of proportional, integral and derivative terms" 287 Internal.outp = Parameters.bias + Options.action*(Parameters.gain*Internal.propTerm + Internal.intTerm + Internal.derivTerm);275 Internal.outp = bias + action*(gain*Internal.propTerm + Internal.intTerm + Internal.derivTerm); 288 276 289 277 "Calculate AWFactor - Not in use in this mode" … … 293 281 294 282 "Calculate integral term with anti-windup and bumpless transfer" 295 Options.action*Parameters.gain*(Parameters.intTime*diff(Internal.intTerm)-Internal.errorI) = Ports.output-Internal.outp; 296 297 "Sum of proportional, integral and derivative terms" 298 Internal.outp = Parameters.bias + Options.action*(Parameters.gain*(Internal.propTerm + Internal.intTerm)*(1 + Internal.derivTerm)); 299 300 "Calculate AWFactor - Not in use in this mode" 301 AWFactor=1; 302 303 end 304 305 end 283 action*gain*(intTime*diff(Internal.intTerm)-Internal.errorI) = Ports.output-Internal.outp; 284 285 "Sum of proportional, integral and derivative terms" 286 Internal.outp = bias + action*(gain*(Internal.propTerm + Internal.intTerm)*(1 + Internal.derivTerm)); 287 288 "Calculate AWFactor - Not in use in this mode" 289 AWFactor=1; 290 291 end 292 293 end 294 295 296 Model PID_gui as PID 297 ATTRIBUTES 298 Pallete = true; 299 Icon = "icon/PIDIncr"; 300 301 PARAMETERS 302 MinInput as control_signal(Default=-1000); 303 MaxInput as control_signal(Default=1000); 304 305 VARIABLES 306 in Input as control_signal(Protected=true, PosX=0, PosY=0.5); 307 out Output as control_signal(Protected=true, PosX=1, PosY=0.5); 308 SetPoint as control_signal; 309 310 EQUATIONS 311 Ports.input*(MaxInput - MinInput) = Input - MinInput; 312 Ports.output = Output; 313 Ports.setPoint*(MaxInput - MinInput) = SetPoint - MinInput; 314 end 315 316 Model FirstOrder 317 ATTRIBUTES 318 Pallete = true; 319 Icon = "icon/PIDIncr"; 320 321 PARAMETERS 322 tau as Real (Brief="Time Constant", Unit = 's', Default=4); 323 A as Real (Unit='1/s'); 324 B as Real (Unit='1/s'); 325 C as Real; 326 D as Real(Default=0); 327 328 VARIABLES 329 x as control_signal(Brief="State"); 330 in u as control_signal(Brief="Input signal", PosX=0, PosY=0.5); 331 out y as control_signal(Brief="Output signal", PosX=1, PosY=0.5); 332 333 EQUATIONS 334 diff(x) = A*x + B*u; 335 y = C*x + D*u; 336 end 337 338 339 Model StepSignal 340 ATTRIBUTES 341 Pallete = true; 342 Icon = "icon/PIDIncr"; 343 344 PARAMETERS 345 StepTime as positive(Unit='s'); 346 StartValue as control_signal; 347 FinalValue as control_signal; 348 349 VARIABLES 350 out OutSignal as control_signal(PosX=1, PosY=0.5); 351 352 EQUATIONS 353 if(time < StepTime) then 354 OutSignal = StartValue; 355 else 356 OutSignal = FinalValue; 357 end 358 end 359 360 Model ConstantSignal 361 ATTRIBUTES 362 Pallete = true; 363 Icon = "icon/PIDIncr"; 364 365 PARAMETERS 366 Value as control_signal; 367 368 VARIABLES 369 out OutSignal as control_signal(PosX=1, PosY=0.5); 370 371 EQUATIONS 372 OutSignal = Value; 373 end -
branches/gui/eml/controllers/multiply.mso
r354 r558 35 35 36 36 VARIABLES 37 input1 as Real (Brief="input signal 1");38 input2 as Real (Brief="input signal 2");39 output as Real (Brief="output signal");37 in input1 as control_signal (Brief="input signal 1", PosX=0, PosY=0.75); 38 in input2 as control_signal (Brief="input signal 2", PosX=0, PosY=0.25); 39 out output as control_signal (Brief="output signal", PosX=1, PosY=0.5); 40 40 41 41 EQUATIONS -
branches/gui/eml/pressure_changers/valve.mso
r372 r558 212 212 end 213 213 end 214 215 216 Model valve_flow 217 ATTRIBUTES 218 Pallete = true; 219 Icon = "icon/Valve"; 220 Brief = "Model of a very simple valve - used in distillation column models."; 221 Info = 222 "== Assumptions == 223 * no flashing liquid in the valve; 224 * the flow in the valve is adiabatic; 225 * dynamics in the valve are neglected; 226 * linear flow type. 227 228 == Specify == 229 * the inlet stream 230 * the plug position (x) OR outlet temperature (Outlet.T) OR outlet pressure (Outlet.P) 231 232 OR 233 234 * the inlet stream excluding its flow (Inlet.F) 235 * the outlet pressure (Outlet.P) OR outlet flow (Outlet.F) 236 * the plug position (x) 237 "; 238 239 PARAMETERS 240 outer PP as Plugin(Type="PP"); 241 outer NComp as Integer; 242 243 MinFlow as flow_mol(Default=0); 244 MaxFlow as flow_mol(Default=1000); 245 246 VARIABLES 247 in Inlet as stream (Brief = "Inlet stream", PosX=0, PosY=0.7365, Symbol="_{in}"); 248 out Outlet as streamPH (Brief = "Outlet stream", PosX=1, PosY=0.7365, Symbol="_{out}"); 249 in FlowFraction as fraction (Brief="Flow Signal", PosX=0.5, PosY=0); 250 251 EQUATIONS 252 "Overall Molar Balance" 253 Inlet.F = Outlet.F; 254 255 "Componente Molar Balance" 256 Inlet.z = Outlet.z; 257 258 "Energy Balance" 259 Inlet.h = Outlet.h; 260 261 "Pressure" 262 Outlet.P = Inlet.P; 263 264 "Flow" 265 Outlet.F = MinFlow + FlowFraction*(MaxFlow-MinFlow); 266 end 267 -
branches/gui/sample/controllers/sample_tanks_pid.mso
r481 r558 47 47 PIDc.PID_Select = "Ideal_AWBT"; 48 48 49 PIDc.tau = 1*'s'; 50 PIDc.tauSet = 1*'s'; 51 PIDc.alpha = 0.3; 52 PIDc.bias = 0; 53 PIDc.gamma = 1; 54 PIDc.beta = 1; 55 PIDc.Action = "Direct"; 56 PIDc.Clip = "Clipped"; 57 PIDc.Mode = "Automatic"; 58 PIDc.intTime=5000*'s'; 59 PIDc.gain = 3.5; 60 PIDc.derivTime=1*'s'; 61 49 62 EQUATIONS 50 PIDc.Parameters.tau = 1*'s'; 51 PIDc.Parameters.tauSet = 1*'s'; 52 PIDc.Parameters.alpha = 0.3; 53 PIDc.Parameters.bias = 0; 54 PIDc.Parameters.gamma = 1; 55 PIDc.Parameters.beta = 1; 56 PIDc.Options.action = -1; 57 PIDc.Options.clip=1; 58 PIDc.Options.autoMan = 0; 59 PIDc.Parameters.intTime=5000*'s'; 60 PIDc.Parameters.gain = 3.5; 61 PIDc.Parameters.derivTime=1*'s'; 63 62 64 PIDc.Ports.input = h_ad; 63 65 h_ad = (Tanque1.h-h_min)/(h_max-h_min); … … 105 107 PIDx.PID_Select = "Ideal_AWBT"; 106 108 109 PIDx.tau = 1*'s'; 110 PIDx.tauSet = 1*'s'; 111 PIDx.alpha = 0.3; 112 PIDx.bias = 0; 113 PIDx.gamma = 1; 114 PIDx.beta = 1; 115 PIDx.intTime=5000*'s'; 116 PIDx.gain =3.5; 117 PIDx.derivTime=1*'s'; 118 PIDx.Action = "Direct"; 119 PIDx.Clip = "Clipped"; 120 PIDx.Mode = "Automatic"; 121 107 122 EQUATIONS 108 PIDx.Parameters.tau = 1*'s'; 109 PIDx.Parameters.tauSet = 1*'s'; 110 PIDx.Parameters.alpha = 0.3; 111 PIDx.Parameters.bias = 0; 112 PIDx.Parameters.gamma = 1; 113 PIDx.Parameters.beta = 1; 114 PIDx.Parameters.intTime=5000*'s'; 115 PIDx.Parameters.gain =3.5; 116 PIDx.Parameters.derivTime=1*'s'; 117 PIDx.Options.action = -1; 118 PIDx.Options.clip=1; 119 PIDx.Options.autoMan = 0; 123 120 124 PIDx.Ports.input = h_ad; 121 125 h_ad = (Tanque1.h-h_min)/(h_max-h_min); -
branches/gui/sample/processes/Sample_Flowsheet.pfd
r556 r558 5 5 <Component>benzene</Component> 6 6 <Component>water</Component> 7 <Liquid_Model> PR</Liquid_Model>8 <Vapour_Model> PR</Vapour_Model>7 <Liquid_Model>SRK</Liquid_Model> 8 <Vapour_Model>SRK</Vapour_Model> 9 9 </Physical_Properties> 10 10 <Options> … … 13 13 <Time_Step>1</Time_Step> 14 14 <Time_End>30</Time_End> 15 <Time_Unit_Text> min</Time_Unit_Text>15 <Time_Unit_Text>s</Time_Unit_Text> 16 16 <Sparse_Algebra>1</Sparse_Algebra> 17 17 <Integration_Index>0</Integration_Index> … … 19 19 <NLASolver_File_Index>0</NLASolver_File_Index> 20 20 <NLASolver_File_Text>sundials</NLASolver_File_Text> 21 <NLASolver_Relative_Accuracy>1e-6</NLASolver_Relative_Accuracy> 22 <NLASolver_Absolute_Accuracy>1e-8</NLASolver_Absolute_Accuracy> 21 23 <DAESolver_File_Index>0</DAESolver_File_Index> 24 <DAESolver_File_Text>sundials</DAESolver_File_Text> 25 <DAESolver_Relative_Accuracy>1e-2</DAESolver_Relative_Accuracy> 26 <DAESolver_Absolute_Accuracy>1e-8</DAESolver_Absolute_Accuracy> 22 27 </Options> 23 28 <Width>2000</Width> … … 26 31 <View> 27 32 <Zoom_Level>1</Zoom_Level> 28 <Show_Grid> 0</Show_Grid>29 <Snap_to_Grid> 0</Snap_to_Grid>33 <Show_Grid>1</Show_Grid> 34 <Snap_to_Grid>1</Snap_to_Grid> 30 35 <Width>1077</Width> 31 <Height> 418</Height>36 <Height>369</Height> 32 37 <X>0</X> 33 38 <Y>0</Y> … … 35 40 <View> 36 41 <Zoom_Level>1</Zoom_Level> 37 <Show_Grid> 0</Show_Grid>38 <Snap_to_Grid> 0</Snap_to_Grid>42 <Show_Grid>1</Show_Grid> 43 <Snap_to_Grid>1</Snap_to_Grid> 39 44 <Width>1077</Width> 40 45 <Height>0</Height> … … 47 52 <Block_Name>energy_source_1</Block_Name> 48 53 <Image_File_Name>/home/rafael/src/biblioteca/branches/gui/eml/icon/energy_source.png</Image_File_Name> 49 <X> 392</X>50 <Y> 331</Y>54 <X>42</X> 55 <Y>457</Y> 51 56 <Z>0</Z> 52 57 <Width>72.5</Width> … … 67 72 </Block> 68 73 <Block> 69 <Type>source</Type>70 <Id_String>source_1</Id_String>71 <Block_Name>source_1</Block_Name>72 <Image_File_Name>/home/rafael/src/biblioteca/branches/gui/eml/icon/Source.png</Image_File_Name>73 <X>21</X>74 <Y>213</Y>75 <Z>0</Z>76 <Width>72.5</Width>77 <Height>37</Height>78 <Block_Properties>79 <Model_File_Path>streams</Model_File_Path>80 <Instance_Id>source_1</Instance_Id>81 <Model_Name>source</Model_Name>82 <T_Connection>0</T_Connection>83 <Sub_Models>84 <Block_Properties>85 <Model_File_Path>streams</Model_File_Path>86 <Instance_Id>Outlet</Instance_Id>87 <Model_Name>Outlet</Model_Name>88 <T_Connection>2</T_Connection>89 <Base_Models>90 <Block_Properties>91 <Model_File_Path>streams</Model_File_Path>92 <Instance_Id>Outlet</Instance_Id>93 <Model_Name>stream</Model_Name>94 <T_Connection>2</T_Connection>95 <Parameters>96 <Desc>NComp</Desc>97 <Index>0</Index>98 <Values>2</Values>99 <Status>0</Status>100 </Parameters>101 <Variables>102 <Desc>F</Desc>103 <Index>0</Index>104 <Values>500</Values>105 <Status>1</Status>106 <Unit>kmol/h</Unit>107 </Variables>108 <Variables>109 <Desc>T</Desc>110 <Index>0</Index>111 <Values>338</Values>112 <Status>1</Status>113 <Unit>K</Unit>114 </Variables>115 <Variables>116 <Desc>P</Desc>117 <Index>0</Index>118 <Values>507</Values>119 <Status>1</Status>120 <Unit>kPa</Unit>121 </Variables>122 <Variables>123 <Desc>h</Desc>124 <Index>0</Index>125 <Values>-27911.4</Values>126 <Status>0</Status>127 <Unit>kJ/kmol</Unit>128 </Variables>129 <Variables>130 <Desc>v</Desc>131 <Index>0</Index>132 <Values>0</Values>133 <Status>0</Status>134 </Variables>135 <Variables>136 <Desc>z</Desc>137 <Index>0</Index>138 <Values>0.8</Values>139 <Status>1</Status>140 <Index>1</Index>141 <Values>0.2</Values>142 <Status>1</Status>143 </Variables>144 </Block_Properties>145 </Base_Models>146 </Block_Properties>147 </Sub_Models>148 <Parameters>149 <Desc>PP</Desc>150 <Index>0</Index>151 <Values>PP</Values>152 <Status>0</Status>153 </Parameters>154 <Parameters>155 <Desc>NComp</Desc>156 <Index>0</Index>157 <Values>2</Values>158 <Status>0</Status>159 </Parameters>160 <Parameters>161 <Desc>M</Desc>162 <Index>0</Index>163 <Values>78.1134</Values>164 <Status>0</Status>165 <Unit>kg/kmol</Unit>166 <Index>1</Index>167 <Values>18.0152</Values>168 <Status>0</Status>169 <Unit>kg/kmol</Unit>170 </Parameters>171 <Parameters>172 <Desc>rhoModel</Desc>173 <Index>0</Index>174 <Values>volume</Values>175 <Status>0</Status>176 </Parameters>177 <Variables>178 <Desc>hl</Desc>179 <Index>0</Index>180 <Values>-27911.4</Values>181 <Status>0</Status>182 <Unit>kJ/kmol</Unit>183 </Variables>184 <Variables>185 <Desc>hv</Desc>186 <Index>0</Index>187 <Values>1610.68</Values>188 <Status>0</Status>189 <Unit>kJ/kmol</Unit>190 </Variables>191 <Variables>192 <Desc>s</Desc>193 <Index>0</Index>194 <Values>-171.721</Values>195 <Status>0</Status>196 <Unit>kJ/kmol/K</Unit>197 </Variables>198 <Variables>199 <Desc>sl</Desc>200 <Index>0</Index>201 <Values>-171.721</Values>202 <Status>0</Status>203 <Unit>kJ/kmol/K</Unit>204 </Variables>205 <Variables>206 <Desc>sv</Desc>207 <Index>0</Index>208 <Values>-97.4206</Values>209 <Status>0</Status>210 <Unit>kJ/kmol/K</Unit>211 </Variables>212 <Variables>213 <Desc>zmass</Desc>214 <Index>0</Index>215 <Values>0.945486</Values>216 <Status>0</Status>217 <Index>1</Index>218 <Values>0.0545141</Values>219 <Status>0</Status>220 </Variables>221 <Variables>222 <Desc>Mw</Desc>223 <Index>0</Index>224 <Values>66.0938</Values>225 <Status>0</Status>226 <Unit>kg/kmol</Unit>227 </Variables>228 <Variables>229 <Desc>vm</Desc>230 <Index>0</Index>231 <Values>7.77911e-05</Values>232 <Status>0</Status>233 <Unit>m^3/mol</Unit>234 </Variables>235 <Variables>236 <Desc>rho</Desc>237 <Index>0</Index>238 <Values>849.632</Values>239 <Status>0</Status>240 <Unit>kg/m^3</Unit>241 </Variables>242 <Variables>243 <Desc>rhom</Desc>244 <Index>0</Index>245 <Values>12.8549</Values>246 <Status>0</Status>247 <Unit>kmol/m^3</Unit>248 </Variables>249 <Variables>250 <Desc>Fw</Desc>251 <Index>0</Index>252 <Values>33046.9</Values>253 <Status>0</Status>254 <Unit>kg/h</Unit>255 </Variables>256 <Variables>257 <Desc>Fvol</Desc>258 <Index>0</Index>259 <Values>38.8955</Values>260 <Status>0</Status>261 <Unit>m^3/h</Unit>262 </Variables>263 <Variables>264 <Desc>T_Cdeg</Desc>265 <Index>0</Index>266 <Values>64.85</Values>267 <Status>0</Status>268 <Unit>K</Unit>269 </Variables>270 </Block_Properties>271 </Block>272 <Block>273 74 <Type>flash</Type> 274 75 <Id_String>flash_1</Id_String> 275 76 <Block_Name>flash_1</Block_Name> 276 77 <Image_File_Name>/home/rafael/src/biblioteca/branches/gui/eml/stage_separators/icon/Flash.png</Image_File_Name> 277 <X> 183</X>278 <Y> 102</Y>78 <X>243</X> 79 <Y>47</Y> 279 80 <Z>0</Z> 280 81 <Width>140</Width> … … 327 128 <Desc>h</Desc> 328 129 <Index>0</Index> 329 <Values>-2 7911.4</Values>130 <Values>-25799</Values> 330 131 <Status>0</Status> 331 132 <Unit>kJ/kmol</Unit> … … 377 178 <Desc>F</Desc> 378 179 <Index>0</Index> 379 <Values> 430</Values>380 <Status> 1</Status>180 <Values>501.79</Values> 181 <Status>0</Status> 381 182 <Unit>kmol/h</Unit> 382 183 </Variables> … … 384 185 <Desc>T</Desc> 385 186 <Index>0</Index> 386 <Values>3 38</Values>187 <Values>309.539</Values> 387 188 <Status>2</Status> 388 189 <Unit>K</Unit> … … 391 192 <Desc>P</Desc> 392 193 <Index>0</Index> 393 <Values>0. 197882</Values>194 <Values>0.211326</Values> 394 195 <Status>0</Status> 395 196 <Unit>atm</Unit> … … 398 199 <Desc>h</Desc> 399 200 <Index>0</Index> 400 <Values>- 32604.8</Values>201 <Values>-29089</Values> 401 202 <Status>0</Status> 402 203 <Unit>kJ/kmol</Unit> … … 411 212 <Desc>z</Desc> 412 213 <Index>0</Index> 413 <Values>0. 730219</Values>214 <Values>0.828665</Values> 414 215 <Status>2</Status> 415 216 <Index>1</Index> 416 <Values>0. 269781</Values>217 <Values>0.171335</Values> 417 218 <Status>0</Status> 418 219 </Variables> … … 456 257 <Desc>F</Desc> 457 258 <Index>0</Index> 458 <Values> 70</Values>459 <Status> 1</Status>259 <Values>34.9801</Values> 260 <Status>0</Status> 460 261 <Unit>kmol/h</Unit> 461 262 </Variables> … … 463 264 <Desc>T</Desc> 464 265 <Index>0</Index> 465 <Values> 297.272</Values>266 <Values>309.539</Values> 466 267 <Status>0</Status> 467 268 <Unit>K</Unit> … … 470 271 <Desc>P</Desc> 471 272 <Index>0</Index> 472 <Values>0. 197882</Values>273 <Values>0.211326</Values> 473 274 <Status>0</Status> 474 275 <Unit>atm</Unit> … … 477 278 <Desc>h</Desc> 478 279 <Index>0</Index> 479 <Values> -194.415</Values>280 <Values>543.122</Values> 480 281 <Status>0</Status> 481 282 <Unit>kJ/kmol</Unit> … … 490 291 <Desc>z</Desc> 491 292 <Index>0</Index> 492 <Values>0.5 11161</Values>293 <Values>0.533401</Values> 493 294 <Status>0</Status> 494 295 <Index>1</Index> 495 <Values>0.4 88839</Values>296 <Values>0.466599</Values> 496 297 <Status>0</Status> 497 298 </Variables> … … 523 324 <Desc>V</Desc> 524 325 <Index>0</Index> 525 <Values> 1</Values>326 <Values>2</Values> 526 327 <Status>4</Status> 527 328 <Unit>m^3</Unit> … … 542 343 <Index>0</Index> 543 344 <Values>vertical</Values> 544 <Status> 0</Status>345 <Status>4</Status> 545 346 </Parameters> 546 347 <Parameters> 547 348 <Desc>diameter</Desc> 548 349 <Index>0</Index> 549 <Values> 1</Values>550 <Status> 0</Status>350 <Values>0.5</Values> 351 <Status>4</Status> 551 352 <Unit>m</Unit> 552 353 </Parameters> … … 561 362 <Desc>M</Desc> 562 363 <Index>0</Index> 563 <Values> 10.4545</Values>364 <Values>6.9189</Values> 564 365 <Status>0</Status> 565 366 <Unit>kmol</Unit> 566 367 <Index>1</Index> 567 <Values> 3.86245</Values>368 <Values>1.43433</Values> 568 369 <Status>0</Status> 569 370 <Unit>kmol</Unit> … … 572 373 <Desc>ML</Desc> 573 374 <Index>0</Index> 574 <Values> 14.317</Values>375 <Values>8.34264</Values> 575 376 <Status>0</Status> 576 377 <Unit>kmol</Unit> … … 579 380 <Desc>MV</Desc> 580 381 <Index>0</Index> 581 <Values> -1.00408e-06</Values>382 <Values>0.0105811</Values> 582 383 <Status>0</Status> 583 384 <Unit>kmol</Unit> … … 586 387 <Desc>E</Desc> 587 388 <Index>0</Index> 588 <Values>- 466822</Values>389 <Values>-242716</Values> 589 390 <Status>0</Status> 590 391 <Unit>kJ</Unit> … … 593 394 <Desc>vL</Desc> 594 395 <Index>0</Index> 595 <Values> 6.98558e-05</Values>396 <Values>8.80732e-05</Values> 596 397 <Status>0</Status> 597 398 <Unit>m^3/mol</Unit> … … 600 401 <Desc>vV</Desc> 601 402 <Index>0</Index> 602 <Values>0.1 22575</Values>403 <Values>0.119575</Values> 603 404 <Status>0</Status> 604 405 <Unit>m^3/mol</Unit> … … 607 408 <Desc>Level</Desc> 608 409 <Index>0</Index> 609 <Values>0.4</Values> 410 <Values>3.74212</Values> 411 <Status>0</Status> 412 <Unit>m</Unit> 413 </Variables> 414 <Variables> 415 <Desc>Across</Desc> 416 <Index>0</Index> 417 <Values>0.19635</Values> 418 <Status>0</Status> 419 <Unit>m^2</Unit> 420 </Variables> 421 <Variables> 422 <Desc>vfrac</Desc> 423 <Index>0</Index> 424 <Values>0.0699602</Values> 425 <Status>0</Status> 426 </Variables> 427 <Variables> 428 <Desc>Pratio</Desc> 429 <Index>0</Index> 430 <Values>0.042234</Values> 431 <Status>0</Status> 432 </Variables> 433 <Variables> 434 <Desc>Pdrop</Desc> 435 <Index>0</Index> 436 <Values>485.587</Values> 437 <Status>0</Status> 438 <Unit>kPa</Unit> 439 </Variables> 440 <Variables> 441 <Desc>TI</Desc> 442 <Index>0</Index> 443 <Values>36.3895</Values> 444 <Status>0</Status> 445 </Variables> 446 <Variables> 447 <Desc>PI</Desc> 448 <Index>0</Index> 449 <Values>0.211326</Values> 450 <Status>0</Status> 451 </Variables> 452 <Variables> 453 <Desc>LI</Desc> 454 <Index>0</Index> 455 <Values>0.367382</Values> 610 456 <Status>2</Status> 611 <Unit>m</Unit>612 </Variables>613 <Variables>614 <Desc>Across</Desc>615 <Index>0</Index>616 <Values>0.785398</Values>617 <Status>0</Status>618 <Unit>m^2</Unit>619 </Variables>620 <Variables>621 <Desc>vfrac</Desc>622 <Index>0</Index>623 <Values>0.14</Values>624 <Status>0</Status>625 </Variables>626 <Variables>627 <Desc>Pratio</Desc>628 <Index>0</Index>629 <Values>0.0395472</Values>630 <Status>0</Status>631 </Variables>632 <Variables>633 <Desc>Pdrop</Desc>634 <Index>0</Index>635 <Values>486.95</Values>636 <Status>0</Status>637 <Unit>kPa</Unit>638 </Variables>639 <Variables>640 <Desc>TI</Desc>641 <Index>0</Index>642 <Values>24.1215</Values>643 <Status>0</Status>644 </Variables>645 <Variables>646 <Desc>PI</Desc>647 <Index>0</Index>648 <Values>0.197882</Values>649 <Status>0</Status>650 </Variables>651 <Variables>652 <Desc>LI</Desc>653 <Index>0</Index>654 <Values>1.00012</Values>655 <Status>0</Status>656 457 </Variables> 657 458 </Block_Properties> 658 459 </Block> 659 460 <Block> 660 <Type> simple_sink</Type>661 <Id_String> simple_sink_1</Id_String>662 <Block_Name> simple_sink_1</Block_Name>663 <Image_File_Name>/home/rafael/src/biblioteca/branches/gui/eml/ icon/Sink.png</Image_File_Name>664 <X>4 04</X>665 <Y> 455</Y>461 <Type>valve_flow</Type> 462 <Id_String>valve_flow_1</Id_String> 463 <Block_Name>LCvalve</Block_Name> 464 <Image_File_Name>/home/rafael/src/biblioteca/branches/gui/eml/pressure_changers/icon/Valve.png</Image_File_Name> 465 <X>426</X> 466 <Y>374</Y> 666 467 <Z>0</Z> 667 <Width> 72.5</Width>668 <Height> 37</Height>468 <Width>64</Width> 469 <Height>43</Height> 669 470 <Block_Properties> 670 <Model_File_Path> streams</Model_File_Path>671 <Instance_Id> simple_sink_1</Instance_Id>672 <Model_Name> simple_sink</Model_Name>471 <Model_File_Path>pressure_changers/valve</Model_File_Path> 472 <Instance_Id>valve_flow_1</Instance_Id> 473 <Model_Name>valve_flow</Model_Name> 673 474 <T_Connection>0</T_Connection> 674 475 <Sub_Models> 675 476 <Block_Properties> 676 <Model_File_Path> streams</Model_File_Path>477 <Model_File_Path>pressure_changers/valve</Model_File_Path> 677 478 <Instance_Id>Inlet</Instance_Id> 678 479 <Model_Name>Inlet</Model_Name> … … 693 494 <Desc>F</Desc> 694 495 <Index>0</Index> 695 <Values> 430</Values>496 <Values>501.79</Values> 696 497 <Status>0</Status> 697 498 <Unit>kmol/h</Unit> … … 700 501 <Desc>T</Desc> 701 502 <Index>0</Index> 702 <Values> 297.272</Values>503 <Values>309.539</Values> 703 504 <Status>0</Status> 704 505 <Unit>K</Unit> … … 707 508 <Desc>P</Desc> 708 509 <Index>0</Index> 709 <Values>0. 197882</Values>510 <Values>0.211326</Values> 710 511 <Status>0</Status> 711 512 <Unit>atm</Unit> … … 714 515 <Desc>h</Desc> 715 516 <Index>0</Index> 716 <Values>- 32604.8</Values>517 <Values>-29089</Values> 717 518 <Status>0</Status> 718 519 <Unit>kJ/kmol</Unit> … … 727 528 <Desc>z</Desc> 728 529 <Index>0</Index> 729 <Values>0. 730219</Values>530 <Values>0.828665</Values> 730 531 <Status>0</Status> 731 532 <Index>1</Index> 732 <Values>0. 269781</Values>533 <Values>0.171335</Values> 733 534 <Status>0</Status> 734 535 </Variables> … … 737 538 </Block_Properties> 738 539 </Sub_Models> 540 <Sub_Models> 541 <Block_Properties> 542 <Model_File_Path>pressure_changers/valve</Model_File_Path> 543 <Instance_Id>Outlet</Instance_Id> 544 <Model_Name>Outlet</Model_Name> 545 <T_Connection>2</T_Connection> 546 <Base_Models> 547 <Block_Properties> 548 <Model_File_Path>streams</Model_File_Path> 549 <Instance_Id>Outlet</Instance_Id> 550 <Model_Name>streamPH</Model_Name> 551 <T_Connection>2</T_Connection> 552 <Base_Models> 553 <Block_Properties> 554 <Model_File_Path>streams</Model_File_Path> 555 <Instance_Id>Outlet</Instance_Id> 556 <Model_Name>stream</Model_Name> 557 <T_Connection>2</T_Connection> 558 <Parameters> 559 <Desc>NComp</Desc> 560 <Index>0</Index> 561 <Values>2</Values> 562 <Status>0</Status> 563 </Parameters> 564 <Variables> 565 <Desc>F</Desc> 566 <Index>0</Index> 567 <Values>501.79</Values> 568 <Status>0</Status> 569 <Unit>kmol/h</Unit> 570 </Variables> 571 <Variables> 572 <Desc>T</Desc> 573 <Index>0</Index> 574 <Values>309.539</Values> 575 <Status>0</Status> 576 <Unit>K</Unit> 577 </Variables> 578 <Variables> 579 <Desc>P</Desc> 580 <Index>0</Index> 581 <Values>0.211326</Values> 582 <Status>0</Status> 583 <Unit>atm</Unit> 584 </Variables> 585 <Variables> 586 <Desc>h</Desc> 587 <Index>0</Index> 588 <Values>-29089</Values> 589 <Status>0</Status> 590 <Unit>kJ/kmol</Unit> 591 </Variables> 592 <Variables> 593 <Desc>v</Desc> 594 <Index>0</Index> 595 <Values>1.84508e-06</Values> 596 <Status>0</Status> 597 </Variables> 598 <Variables> 599 <Desc>z</Desc> 600 <Index>0</Index> 601 <Values>0.828665</Values> 602 <Status>0</Status> 603 <Index>1</Index> 604 <Values>0.171335</Values> 605 <Status>0</Status> 606 </Variables> 607 </Block_Properties> 608 </Base_Models> 609 <Parameters> 610 <Desc>PP</Desc> 611 <Index>0</Index> 612 <Values>PP</Values> 613 <Status>0</Status> 614 </Parameters> 615 <Variables> 616 <Desc>s</Desc> 617 <Index>0</Index> 618 <Values>-177.827</Values> 619 <Status>0</Status> 620 <Unit>kJ/kmol/K</Unit> 621 </Variables> 622 </Block_Properties> 623 </Base_Models> 624 </Block_Properties> 625 </Sub_Models> 626 <Parameters> 627 <Desc>PP</Desc> 628 <Index>0</Index> 629 <Values>PP</Values> 630 <Status>0</Status> 631 </Parameters> 632 <Parameters> 633 <Desc>NComp</Desc> 634 <Index>0</Index> 635 <Values>2</Values> 636 <Status>0</Status> 637 </Parameters> 638 <Parameters> 639 <Desc>MinFlow</Desc> 640 <Index>0</Index> 641 <Values>0</Values> 642 <Status>0</Status> 643 <Unit>kmol/h</Unit> 644 </Parameters> 645 <Parameters> 646 <Desc>MaxFlow</Desc> 647 <Index>0</Index> 648 <Values>1000</Values> 649 <Status>0</Status> 650 <Unit>kmol/h</Unit> 651 </Parameters> 652 <Variables> 653 <Desc>FlowFraction</Desc> 654 <Index>0</Index> 655 <Values>0.50179</Values> 656 <Status>0</Status> 657 </Variables> 739 658 </Block_Properties> 740 659 </Block> 741 660 <Block> 742 <Type>simple_s ink</Type>743 <Id_String>simple_s ink_2</Id_String>744 <Block_Name>simple_s ink_2</Block_Name>745 <Image_File_Name>/home/rafael/src/biblioteca/branches/gui/eml/icon/S ink.png</Image_File_Name>746 <X> 332</X>747 <Y>1 0</Y>661 <Type>simple_source</Type> 662 <Id_String>simple_source_1</Id_String> 663 <Block_Name>simple_source_1</Block_Name> 664 <Image_File_Name>/home/rafael/src/biblioteca/branches/gui/eml/icon/Source.png</Image_File_Name> 665 <X>54</X> 666 <Y>151</Y> 748 667 <Z>0</Z> 749 <Width> 72.5</Width>750 <Height>3 7</Height>668 <Width>68</Width> 669 <Height>30</Height> 751 670 <Block_Properties> 752 671 <Model_File_Path>streams</Model_File_Path> 753 <Instance_Id>simple_s ink_2</Instance_Id>754 <Model_Name>simple_s ink</Model_Name>672 <Instance_Id>simple_source_1</Instance_Id> 673 <Model_Name>simple_source</Model_Name> 755 674 <T_Connection>0</T_Connection> 756 675 <Sub_Models> 757 676 <Block_Properties> 758 677 <Model_File_Path>streams</Model_File_Path> 678 <Instance_Id>Outlet</Instance_Id> 679 <Model_Name>Outlet</Model_Name> 680 <T_Connection>2</T_Connection> 681 <Base_Models> 682 <Block_Properties> 683 <Model_File_Path>streams</Model_File_Path> 684 <Instance_Id>Outlet</Instance_Id> 685 <Model_Name>stream</Model_Name> 686 <T_Connection>2</T_Connection> 687 <Parameters> 688 <Desc>NComp</Desc> 689 <Index>0</Index> 690 <Values>2</Values> 691 <Status>0</Status> 692 </Parameters> 693 <Variables> 694 <Desc>F</Desc> 695 <Index>0</Index> 696 <Values>500</Values> 697 <Status>1</Status> 698 <Unit>kmol/h</Unit> 699 </Variables> 700 <Variables> 701 <Desc>T</Desc> 702 <Index>0</Index> 703 <Values>338</Values> 704 <Status>1</Status> 705 <Unit>K</Unit> 706 </Variables> 707 <Variables> 708 <Desc>P</Desc> 709 <Index>0</Index> 710 <Values>507</Values> 711 <Status>1</Status> 712 <Unit>kPa</Unit> 713 </Variables> 714 <Variables> 715 <Desc>h</Desc> 716 <Index>0</Index> 717 <Values>-25799</Values> 718 <Status>0</Status> 719 <Unit>kJ/kmol</Unit> 720 </Variables> 721 <Variables> 722 <Desc>v</Desc> 723 <Index>0</Index> 724 <Values>0</Values> 725 <Status>0</Status> 726 </Variables> 727 <Variables> 728 <Desc>z</Desc> 729 <Index>0</Index> 730 <Values>0.8</Values> 731 <Status>1</Status> 732 <Index>1</Index> 733 <Values>0.2</Values> 734 <Status>1</Status> 735 </Variables> 736 </Block_Properties> 737 </Base_Models> 738 </Block_Properties> 739 </Sub_Models> 740 <Parameters> 741 <Desc>PP</Desc> 742 <Index>0</Index> 743 <Values>PP</Values> 744 <Status>0</Status> 745 </Parameters> 746 <Parameters> 747 <Desc>NComp</Desc> 748 <Index>0</Index> 749 <Values>2</Values> 750 <Status>0</Status> 751 </Parameters> 752 <Variables> 753 <Desc>hl</Desc> 754 <Index>0</Index> 755 <Values>-25799</Values> 756 <Status>0</Status> 757 <Unit>kJ/kmol</Unit> 758 </Variables> 759 <Variables> 760 <Desc>hv</Desc> 761 <Index>0</Index> 762 <Values>1622.61</Values> 763 <Status>0</Status> 764 <Unit>kJ/kmol</Unit> 765 </Variables> 766 <Variables> 767 <Desc>s</Desc> 768 <Index>0</Index> 769 <Values>-167.713</Values> 770 <Status>0</Status> 771 <Unit>kJ/kmol/K</Unit> 772 </Variables> 773 <Variables> 774 <Desc>sl</Desc> 775 <Index>0</Index> 776 <Values>-167.713</Values> 777 <Status>0</Status> 778 <Unit>kJ/kmol/K</Unit> 779 </Variables> 780 <Variables> 781 <Desc>sv</Desc> 782 <Index>0</Index> 783 <Values>-97.4132</Values> 784 <Status>0</Status> 785 <Unit>kJ/kmol/K</Unit> 786 </Variables> 787 </Block_Properties> 788 </Block> 789 <Block> 790 <Type>PI_simple</Type> 791 <Id_String>PI_simple_1</Id_String> 792 <Block_Name>LC</Block_Name> 793 <Image_File_Name>/home/rafael/src/biblioteca/branches/gui/eml/controllers/icon/PID.png</Image_File_Name> 794 <X>530</X> 795 <Y>212</Y> 796 <Z>0</Z> 797 <Width>51</Width> 798 <Height>58</Height> 799 <Block_Properties> 800 <Model_File_Path>controllers/pi</Model_File_Path> 801 <Instance_Id>PI_simple_1</Instance_Id> 802 <Model_Name>PI_simple</Model_Name> 803 <T_Connection>0</T_Connection> 804 <Parameters> 805 <Desc>Kp</Desc> 806 <Index>0</Index> 807 <Values>0.5</Values> 808 <Status>0</Status> 809 </Parameters> 810 <Parameters> 811 <Desc>Ki</Desc> 812 <Index>0</Index> 813 <Values>1</Values> 814 <Status>0</Status> 815 <Unit>s</Unit> 816 </Parameters> 817 <Parameters> 818 <Desc>bias</Desc> 819 <Index>0</Index> 820 <Values>0.5</Values> 821 <Status>0</Status> 822 </Parameters> 823 <Parameters> 824 <Desc>MinInput</Desc> 825 <Index>0</Index> 826 <Values>-1000</Values> 827 <Status>0</Status> 828 </Parameters> 829 <Parameters> 830 <Desc>MaxInput</Desc> 831 <Index>0</Index> 832 <Values>1000</Values> 833 <Status>0</Status> 834 </Parameters> 835 <Variables> 836 <Desc>SetPoint</Desc> 837 <Index>0</Index> 838 <Values>0.5</Values> 839 <Status>1</Status> 840 </Variables> 841 <Variables> 842 <Desc>Input</Desc> 843 <Index>0</Index> 844 <Values>0.367382</Values> 845 <Status>0</Status> 846 </Variables> 847 <Variables> 848 <Desc>Output</Desc> 849 <Index>0</Index> 850 <Values>0.50179</Values> 851 <Status>0</Status> 852 </Variables> 853 <Variables> 854 <Desc>intTerm</Desc> 855 <Index>0</Index> 856 <Values>0.00175667</Values> 857 <Status>0</Status> 858 </Variables> 859 <Variables> 860 <Desc>outps</Desc> 861 <Index>0</Index> 862 <Values>0.50179</Values> 863 <Status>0</Status> 864 </Variables> 865 </Block_Properties> 866 </Block> 867 <Block> 868 <Type>PI_simple</Type> 869 <Id_String>PI_simple_1</Id_String> 870 <Block_Name>PC</Block_Name> 871 <Image_File_Name>/home/rafael/src/biblioteca/branches/gui/eml/controllers/icon/PID.png</Image_File_Name> 872 <X>530</X> 873 <Y>88</Y> 874 <Z>0</Z> 875 <Width>47</Width> 876 <Height>52</Height> 877 <Block_Properties> 878 <Model_File_Path>controllers/pi</Model_File_Path> 879 <Instance_Id>PI_simple_1</Instance_Id> 880 <Model_Name>PI_simple</Model_Name> 881 <T_Connection>0</T_Connection> 882 <Parameters> 883 <Desc>Kp</Desc> 884 <Index>0</Index> 885 <Values>-0.5</Values> 886 <Status>4</Status> 887 </Parameters> 888 <Parameters> 889 <Desc>Ki</Desc> 890 <Index>0</Index> 891 <Values>1</Values> 892 <Status>0</Status> 893 <Unit>s</Unit> 894 </Parameters> 895 <Parameters> 896 <Desc>bias</Desc> 897 <Index>0</Index> 898 <Values>0.5</Values> 899 <Status>0</Status> 900 </Parameters> 901 <Parameters> 902 <Desc>MinInput</Desc> 903 <Index>0</Index> 904 <Values>0</Values> 905 <Status>4</Status> 906 </Parameters> 907 <Parameters> 908 <Desc>MaxInput</Desc> 909 <Index>0</Index> 910 <Values>10</Values> 911 <Status>4</Status> 912 </Parameters> 913 <Variables> 914 <Desc>SetPoint</Desc> 915 <Index>0</Index> 916 <Values>0.14</Values> 917 <Status>1</Status> 918 </Variables> 919 <Variables> 920 <Desc>Input</Desc> 921 <Index>0</Index> 922 <Values>0.211326</Values> 923 <Status>0</Status> 924 </Variables> 925 <Variables> 926 <Desc>Output</Desc> 927 <Index>0</Index> 928 <Values>0.349801</Values> 929 <Status>0</Status> 930 </Variables> 931 <Variables> 932 <Desc>intTerm</Desc> 933 <Index>0</Index> 934 <Values>-0.146633</Values> 935 <Status>0</Status> 936 </Variables> 937 <Variables> 938 <Desc>outps</Desc> 939 <Index>0</Index> 940 <Values>0.349801</Values> 941 <Status>0</Status> 942 </Variables> 943 </Block_Properties> 944 </Block> 945 <Block> 946 <Type>valve_flow</Type> 947 <Id_String>valve_flow_1</Id_String> 948 <Block_Name>PCvalve</Block_Name> 949 <Image_File_Name>/home/rafael/src/biblioteca/branches/gui/eml/pressure_changers/icon/Valve.png</Image_File_Name> 950 <X>441</X> 951 <Y>35</Y> 952 <Z>0</Z> 953 <Width>34</Width> 954 <Height>25</Height> 955 <Block_Properties> 956 <Model_File_Path>pressure_changers/valve</Model_File_Path> 957 <Instance_Id>valve_flow_1</Instance_Id> 958 <Model_Name>valve_flow</Model_Name> 959 <T_Connection>0</T_Connection> 960 <Sub_Models> 961 <Block_Properties> 962 <Model_File_Path>pressure_changers/valve</Model_File_Path> 759 963 <Instance_Id>Inlet</Instance_Id> 760 964 <Model_Name>Inlet</Model_Name> … … 775 979 <Desc>F</Desc> 776 980 <Index>0</Index> 777 <Values> 70</Values>981 <Values>34.9801</Values> 778 982 <Status>0</Status> 779 983 <Unit>kmol/h</Unit> … … 782 986 <Desc>T</Desc> 783 987 <Index>0</Index> 784 <Values> 297.272</Values>988 <Values>309.539</Values> 785 989 <Status>0</Status> 786 990 <Unit>K</Unit> … … 789 993 <Desc>P</Desc> 790 994 <Index>0</Index> 791 <Values>0. 197882</Values>995 <Values>0.211326</Values> 792 996 <Status>0</Status> 793 997 <Unit>atm</Unit> … … 796 1000 <Desc>h</Desc> 797 1001 <Index>0</Index> 798 <Values> -194.415</Values>1002 <Values>543.122</Values> 799 1003 <Status>0</Status> 800 1004 <Unit>kJ/kmol</Unit> … … 809 1013 <Desc>z</Desc> 810 1014 <Index>0</Index> 811 <Values>0.5 11161</Values>1015 <Values>0.533401</Values> 812 1016 <Status>0</Status> 813 1017 <Index>1</Index> 814 <Values>0.4 88839</Values>1018 <Values>0.466599</Values> 815 1019 <Status>0</Status> 816 1020 </Variables> … … 819 1023 </Block_Properties> 820 1024 </Sub_Models> 1025 <Sub_Models> 1026 <Block_Properties> 1027 <Model_File_Path>pressure_changers/valve</Model_File_Path> 1028 <Instance_Id>Outlet</Instance_Id> 1029 <Model_Name>Outlet</Model_Name> 1030 <T_Connection>2</T_Connection> 1031 <Base_Models> 1032 <Block_Properties> 1033 <Model_File_Path>streams</Model_File_Path> 1034 <Instance_Id>Outlet</Instance_Id> 1035 <Model_Name>streamPH</Model_Name> 1036 <T_Connection>2</T_Connection> 1037 <Base_Models> 1038 <Block_Properties> 1039 <Model_File_Path>streams</Model_File_Path> 1040 <Instance_Id>Outlet</Instance_Id> 1041 <Model_Name>stream</Model_Name> 1042 <T_Connection>2</T_Connection> 1043 <Parameters> 1044 <Desc>NComp</Desc> 1045 <Index>0</Index> 1046 <Values>2</Values> 1047 <Status>0</Status> 1048 </Parameters> 1049 <Variables> 1050 <Desc>F</Desc> 1051 <Index>0</Index> 1052 <Values>34.9801</Values> 1053 <Status>0</Status> 1054 <Unit>kmol/h</Unit> 1055 </Variables> 1056 <Variables> 1057 <Desc>T</Desc> 1058 <Index>0</Index> 1059 <Values>309.543</Values> 1060 <Status>0</Status> 1061 <Unit>K</Unit> 1062 </Variables> 1063 <Variables> 1064 <Desc>P</Desc> 1065 <Index>0</Index> 1066 <Values>0.211326</Values> 1067 <Status>0</Status> 1068 <Unit>atm</Unit> 1069 </Variables> 1070 <Variables> 1071 <Desc>h</Desc> 1072 <Index>0</Index> 1073 <Values>543.122</Values> 1074 <Status>0</Status> 1075 <Unit>kJ/kmol</Unit> 1076 </Variables> 1077 <Variables> 1078 <Desc>v</Desc> 1079 <Index>0</Index> 1080 <Values>0.999993</Values> 1081 <Status>0</Status> 1082 </Variables> 1083 <Variables> 1084 <Desc>z</Desc> 1085 <Index>0</Index> 1086 <Values>0.533401</Values> 1087 <Status>0</Status> 1088 <Index>1</Index> 1089 <Values>0.466599</Values> 1090 <Status>0</Status> 1091 </Variables> 1092 </Block_Properties> 1093 </Base_Models> 1094 <Parameters> 1095 <Desc>PP</Desc> 1096 <Index>0</Index> 1097 <Values>PP</Values> 1098 <Status>0</Status> 1099 </Parameters> 1100 <Variables> 1101 <Desc>s</Desc> 1102 <Index>0</Index> 1103 <Values>-75.338</Values> 1104 <Status>0</Status> 1105 <Unit>kJ/kmol/K</Unit> 1106 </Variables> 1107 </Block_Properties> 1108 </Base_Models> 1109 </Block_Properties> 1110 </Sub_Models> 1111 <Parameters> 1112 <Desc>PP</Desc> 1113 <Index>0</Index> 1114 <Values>PP</Values> 1115 <Status>0</Status> 1116 </Parameters> 1117 <Parameters> 1118 <Desc>NComp</Desc> 1119 <Index>0</Index> 1120 <Values>2</Values> 1121 <Status>0</Status> 1122 </Parameters> 1123 <Parameters> 1124 <Desc>MinFlow</Desc> 1125 <Index>0</Index> 1126 <Values>0</Values> 1127 <Status>4</Status> 1128 <Unit>kmol/h</Unit> 1129 </Parameters> 1130 <Parameters> 1131 <Desc>MaxFlow</Desc> 1132 <Index>0</Index> 1133 <Values>100</Values> 1134 <Status>4</Status> 1135 <Unit>kmol/h</Unit> 1136 </Parameters> 1137 <Variables> 1138 <Desc>FlowFraction</Desc> 1139 <Index>0</Index> 1140 <Values>0.349801</Values> 1141 <Status>0</Status> 1142 </Variables> 821 1143 </Block_Properties> 822 1144 </Block> 823 1145 <Line> 824 <Line_Name>1</Line_Name>825 <X1>93.5</X1>826 <Y1>232.447</Y1>827 <X2>183</X2>828 <Y2>223.972</Y2>829 <Block_Source>source_1</Block_Source>830 <Port_Source>Outlet</Port_Source>831 <Block_Target>flash_1</Block_Target>832 <Port_Target>Inlet</Port_Target>833 </Line>834 <Line>835 1146 <Line_Name>2</Line_Name> 836 <X1> 464.5</X1>837 <Y1> 348.48</Y1>838 <X2>3 23</X2>839 <Y2>2 72.077</Y2>1147 <X1>114.5</X1> 1148 <Y1>474.48</Y1> 1149 <X2>383</X2> 1150 <Y2>217.078</Y2> 840 1151 <Block_Source>energy_source_1</Block_Source> 841 1152 <Port_Source>OutletQ</Port_Source> … … 844 1155 </Line> 845 1156 <Line> 846 <Line_Name> 3</Line_Name>847 <X1> 250.06</X1>848 <Y1> 327</Y1>849 <X2>4 04</X2>850 <Y2>4 74.64</Y2>1157 <Line_Name>1</Line_Name> 1158 <X1>310.06</X1> 1159 <Y1>272</Y1> 1160 <X2>426</X2> 1161 <Y2>405.67</Y2> 851 1162 <Block_Source>flash_1</Block_Source> 852 1163 <Port_Source>OutletL</Port_Source> 853 <Block_Target> simple_sink_1</Block_Target>1164 <Block_Target>valve_flow_1</Block_Target> 854 1165 <Port_Target>Inlet</Port_Target> 855 1166 </Line> 856 1167 <Line> 857 <Line_Name>4</Line_Name> 858 <X1>251.278</X1> 859 <Y1>102</Y1> 860 <X2>332</X2> 861 <Y2>29.6396</Y2> 1168 <Line_Name>1</Line_Name> 1169 <X1>122</X1> 1170 <Y1>166.768</Y1> 1171 <X2>243</X2> 1172 <Y2>168.972</Y2> 1173 <Block_Source>simple_source_1</Block_Source> 1174 <Port_Source>Outlet</Port_Source> 1175 <Block_Target>flash_1</Block_Target> 1176 <Port_Target>Inlet</Port_Target> 1177 </Line> 1178 <Line> 1179 <Line_Name>1</Line_Name> 1180 <X1>383</X1> 1181 <Y1>137</Y1> 1182 <X2>530</X2> 1183 <Y2>241</Y2> 1184 <Block_Source>flash_1</Block_Source> 1185 <Port_Source>LI</Port_Source> 1186 <Block_Target>PI_simple_1</Block_Target> 1187 <Port_Target>Input</Port_Target> 1188 </Line> 1189 <Line> 1190 <Line_Name>2</Line_Name> 1191 <X1>581</X1> 1192 <Y1>241</Y1> 1193 <X2>458</X2> 1194 <Y2>374</Y2> 1195 <Block_Source>PI_simple_1</Block_Source> 1196 <Port_Source>Output</Port_Source> 1197 <Block_Target>valve_flow_1</Block_Target> 1198 <Port_Target>FlowFraction</Port_Target> 1199 </Line> 1200 <Line> 1201 <Line_Name>1</Line_Name> 1202 <X1>383</X1> 1203 <Y1>114.5</Y1> 1204 <X2>530</X2> 1205 <Y2>114</Y2> 1206 <Block_Source>flash_1</Block_Source> 1207 <Port_Source>PI</Port_Source> 1208 <Block_Target>PI_simple_1</Block_Target> 1209 <Port_Target>Input</Port_Target> 1210 </Line> 1211 <Line> 1212 <Line_Name>2</Line_Name> 1213 <X1>311.278</X1> 1214 <Y1>47</Y1> 1215 <X2>441</X2> 1216 <Y2>53.4125</Y2> 862 1217 <Block_Source>flash_1</Block_Source> 863 1218 <Port_Source>OutletV</Port_Source> 864 <Block_Target> simple_sink_2</Block_Target>1219 <Block_Target>valve_flow_1</Block_Target> 865 1220 <Port_Target>Inlet</Port_Target> 866 1221 </Line> 1222 <Line> 1223 <Line_Name>3</Line_Name> 1224 <X1>577</X1> 1225 <Y1>114</Y1> 1226 <X2>458</X2> 1227 <Y2>35</Y2> 1228 <Block_Source>PI_simple_1</Block_Source> 1229 <Port_Source>Output</Port_Source> 1230 <Block_Target>valve_flow_1</Block_Target> 1231 <Port_Target>FlowFraction</Port_Target> 1232 </Line> 867 1233 </Diagram> -
branches/gui/sample/stage_separators/sample_flash.mso
r313 r558 62 62 63 63 fl.OutletV.F = 68.5 * 'kmol/h'; 64 Q.OutletQ .Q= 0 * 'kJ/h';64 Q.OutletQ = 0 * 'kJ/h'; 65 65 66 66 SET
Note: See TracChangeset
for help on using the changeset viewer.