Skip to content

Commit 325fb11

Browse files
Added fixed speed pump (#526)
* Added fixed speed pump components and modified icon of variable speed pump * Added fixed speed pump tests * Updated changelog * Updated changelog * Changed unit of measurement of parameter Co-authored-by: nyoussef <99659896+nabily-met@users.noreply.github.com> * Fixed MetroscopiaNPP_direct_wSV which was not working (tiny fix commenting a component SV that no longer exists) * Fixed MetroscopiaNPP_faulty which was not working (tiny fix commenting a superheater fouling that no longer exists) * Modified all MetroscopiaNPP models replacing variable speed pumps with fixed speed pumps and tested comparing to previous versions * Modified all MetroscopiaCCGT models replacing variable speed pumps with fixed speed pumps and tested comparing to previous versions --------- Co-authored-by: nyoussef <99659896+nabily-met@users.noreply.github.com>
1 parent 8afcb4e commit 325fb11

18 files changed

+6866
-7005
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ Use [gitmoji](https://gitmoji.dev/) to identify your changes.
88
## [Unreleased]
99

1010
### ✨ Added <!--Make sure to add a link to the PR and issues related to your change-->
11+
- Added fixed speed pump [#526](https://github.com/Metroscope-dev/metroscope-modeling-library/pull/526)
1112

1213
### 🐛 Fixed <!--Make sure to add a link to the PR and issues related to your change-->
1314

MetroscopeModelingLibrary/Examples/CCGT/MetroscopiaCCGT/MetroscopiaCCGT_direct.mo

Lines changed: 12 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -122,11 +122,11 @@ model MetroscopiaCCGT_direct
122122
parameter Units.HeatExchangeCoefficient Cond_Kth=93661.23; // Condensation pressure
123123
parameter Units.VolumeFlowRate Qv_cond_cold=2.7349906; // Circulating water outlet temperature
124124
// Exctraction Pump
125-
parameter Real pump_a3 = 1735.4259; // Exctraction pump outlet pressure
126-
parameter Real pump_b3 = 0.70563865; // Exctraction pump outlet temperature
125+
parameter Real pump_hn = 1735.4259; // Exctraction pump outlet pressure
126+
parameter Real pump_rh = 0.70563865; // Exctraction pump outlet temperature
127127
// Recirculation pump
128-
parameter Real pumpRec_a3 = 870.66187; // Recirculation pump outlet pressure
129-
parameter Real pumpRec_b3 = 0.6881236; // Recirculation pump outlet temperature
128+
parameter Real pumpRec_hn = 870.66187; // Recirculation pump outlet pressure
129+
parameter Real pumpRec_rh = 0.6881236; // Recirculation pump outlet temperature
130130
parameter Real pumpRec_CV_Cvmax = 52.329174; // Recirculation control valve opening
131131

132132
MetroscopeModelingLibrary.MultiFluid.HeatExchangers.Economiser economiser(
@@ -281,7 +281,7 @@ model MetroscopiaCCGT_direct
281281
origin={-16,185})));
282282
MetroscopeModelingLibrary.WaterSteam.BoundaryConditions.Sink circulating_water_sink
283283
annotation (Placement(transformation(extent={{98,194},{114,210}})));
284-
MetroscopeModelingLibrary.WaterSteam.Machines.Pump pump(
284+
WaterSteam.Machines.FixedSpeedPump pump(
285285
T_in_0=305.940398,
286286
T_out_0=308.05325,
287287
P_in_0=14728.373,
@@ -308,11 +308,6 @@ model MetroscopiaCCGT_direct
308308
P_0=17000533,
309309
h_0=161452.27)
310310
annotation (Placement(transformation(extent={{-5,-5},{5,5}}, origin={155,157})));
311-
MetroscopeModelingLibrary.Power.BoundaryConditions.Source powerSource
312-
annotation (Placement(transformation(
313-
extent={{-10,-10},{10,10}},
314-
rotation=270,
315-
origin={110,176})));
316311
MetroscopeModelingLibrary.WaterSteam.Pipes.LoopBreaker loopBreaker
317312
annotation (Placement(transformation(
318313
extent={{-10,-10},{10,10}},
@@ -482,7 +477,7 @@ model MetroscopiaCCGT_direct
482477
extent={{-6,-6},{6,6}},
483478
rotation=0,
484479
origin={-28,240})));
485-
MetroscopeModelingLibrary.WaterSteam.Machines.Pump pumpRec(
480+
WaterSteam.Machines.FixedSpeedPump pumpRec(
486481
T_in_0=593.66584,
487482
T_out_0=597.50715,
488483
P_in_0=13770425,
@@ -494,11 +489,6 @@ model MetroscopiaCCGT_direct
494489
extent={{-7,-7},{7,7}},
495490
origin={94,80.5455},
496491
rotation=0)));
497-
MetroscopeModelingLibrary.Power.BoundaryConditions.Source pumpRec_powerSource
498-
annotation (Placement(transformation(
499-
extent={{-10,-10},{10,10}},
500-
rotation=270,
501-
origin={94,98})));
502492
MetroscopeModelingLibrary.Sensors.WaterSteam.TemperatureSensor T_pumpRec_out_sensor(
503493
Q_0=9.376354,
504494
P_0=19550464,
@@ -860,37 +850,21 @@ equation
860850
T_pump_out_sensor.T_degC = T_pump_out;
861851
P_pump_out_sensor.P_barA = P_pump_out;
862852
Q_pump_out_sensor.Q = Q_pump_out;
863-
// Parameters
864-
pump.VRot = 1400;
865-
pump.VRotn = 1400;
866-
pump.rm = 0.85;
867-
pump.a1 = 0;
868-
pump.a2 = 0;
869-
pump.b1 = 0;
870-
pump.b2 = 0;
871-
pump.rh_min = 0.0001;
853+
872854
// Calibrated parameters
873-
pump.a3 = pump_a3;
874-
pump.b3 = pump_b3;
855+
pump.hn = pump_hn;
856+
pump.rh = pump_rh;
875857

876858
//--- Recirculation pump ---
877859
// Quantities definition
878860
T_pumpRec_out_sensor.T_degC = T_pumpRec_out;
879861
P_pumpRec_out_sensor.P_barA = P_pumpRec_out;
880862
pumpRec_opening_sensor.Opening = pumpRec_opening;
881863
Q_pumpRec_out_sensor.Q = Q_pumpRec_out;
882-
// Parameters
883-
pumpRec.VRot = 1400;
884-
pumpRec.VRotn = 1400;
885-
pumpRec.rm = 0.85;
886-
pumpRec.a1 = 0;
887-
pumpRec.a2 = 0;
888-
pumpRec.b1 = 0;
889-
pumpRec.b2 = 0;
890-
pumpRec.rh_min = 0.0001;
864+
891865
// Calibrated parameters
892-
pumpRec.a3 = pumpRec_a3;
893-
pumpRec.b3 = pumpRec_b3;
866+
pumpRec.hn = pumpRec_hn;
867+
pumpRec.rh = pumpRec_rh;
894868
pumpRec_controlValve.Cv_max = pumpRec_CV_Cvmax;
895869

896870
connect(HPsuperheater1.C_cold_out, T_w_HPSH1_out_sensor.C_in) annotation (
@@ -928,9 +902,6 @@ equation
928902
connect(condenser.C_hot_out, pump.C_in) annotation (Line(points={{52,170.778},{52,157},{103,157}},
929903
color={28,108,200},
930904
thickness=1));
931-
connect(powerSource.C_out, pump.C_power)
932-
annotation (Line(points={{110,171.2},{110,164.56}},
933-
color={244,125,35}));
934905
connect(HPsuperheater1.C_cold_in, P_w_evap_out_sensor.C_out) annotation (Line(
935906
points={{-156.6,15.8},{-156,15.8},{-156,34},{-46,34}},
936907
color={28,108,200},
@@ -1015,9 +986,6 @@ equation
1015986
connect(P_pump_out_sensor.C_out, Q_pump_out_sensor.C_in) annotation (Line(
1016987
points={{160,157},{166,157}}, color={28,108,200},
1017988
thickness=1));
1018-
connect(pumpRec.C_power, pumpRec_powerSource.C_out)
1019-
annotation (Line(points={{94,88.1055},{94,93.2}},
1020-
color={244,125,35}));
1021989
connect(P_pumpRec_out_sensor.C_out, Q_pumpRec_out_sensor.C_in)
1022990
annotation (Line(points={{136,80.5455},{140,80.5455}},
1023991
color={28,108,200},

MetroscopeModelingLibrary/Examples/CCGT/MetroscopiaCCGT/MetroscopiaCCGT_reverse.mo

Lines changed: 12 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -118,11 +118,11 @@ model MetroscopiaCCGT_reverse
118118
output Units.HeatExchangeCoefficient Cond_Kth; // Condensation pressure
119119
output Units.VolumeFlowRate Qv_cond_cold; // Circulating water outlet temperature
120120
// Exctraction Pump
121-
output Real pump_a3; // Exctraction pump outlet pressure
122-
output Real pump_b3; // Exctraction pump outlet temperature
121+
output Real pump_hn; // Exctraction pump outlet pressure
122+
output Real pump_rh; // Exctraction pump outlet temperature
123123
// Recirculation pump
124-
output Real pumpRec_a3; // Recirculation pump outlet pressure
125-
output Real pumpRec_b3; // Recirculation pump outlet temperature
124+
output Real pumpRec_hn; // Recirculation pump outlet pressure
125+
output Real pumpRec_rh; // Recirculation pump outlet temperature
126126
output Units.Cv pumpRec_CV_Cvmax;// Recirculation control valve opening
127127

128128
// Observables of interest
@@ -190,7 +190,7 @@ model MetroscopiaCCGT_reverse
190190
origin={-16,159})));
191191
MetroscopeModelingLibrary.WaterSteam.BoundaryConditions.Sink circulating_water_sink
192192
annotation (Placement(transformation(extent={{98,168},{114,184}})));
193-
MetroscopeModelingLibrary.WaterSteam.Machines.Pump pump annotation (Placement(
193+
WaterSteam.Machines.FixedSpeedPump pump annotation (Placement(
194194
transformation(
195195
extent={{-7,-7},{7,7}},
196196
origin={116,131},
@@ -203,11 +203,6 @@ model MetroscopiaCCGT_reverse
203203
MetroscopeModelingLibrary.Sensors.WaterSteam.PressureSensor P_pump_out_sensor(sensor_function="Calibration", causality="hn")
204204
annotation (Placement(transformation(extent={{-5,-5},{5,5}}, origin={155,
205205
131})));
206-
MetroscopeModelingLibrary.Power.BoundaryConditions.Source powerSource
207-
annotation (Placement(transformation(
208-
extent={{-10,-10},{10,10}},
209-
rotation=270,
210-
origin={116,150})));
211206
MetroscopeModelingLibrary.WaterSteam.Pipes.LoopBreaker loopBreaker
212207
annotation (Placement(transformation(
213208
extent={{-10,-10},{10,10}},
@@ -279,16 +274,11 @@ model MetroscopiaCCGT_reverse
279274
extent={{-6,-6},{6,6}},
280275
rotation=0,
281276
origin={-28,214})));
282-
MetroscopeModelingLibrary.WaterSteam.Machines.Pump pumpRec(Q_0=1)
277+
WaterSteam.Machines.FixedSpeedPump pumpRec(Q_0=1)
283278
annotation (Placement(transformation(
284279
extent={{-7,-7},{7,7}},
285280
origin={94,48.5455},
286281
rotation=0)));
287-
MetroscopeModelingLibrary.Power.BoundaryConditions.Source pumpRec_powerSource
288-
annotation (Placement(transformation(
289-
extent={{-10,-10},{10,10}},
290-
rotation=270,
291-
origin={94,66})));
292282
MetroscopeModelingLibrary.Sensors.WaterSteam.TemperatureSensor T_pumpRec_out_sensor(sensor_function="Calibration", causality="rh")
293283
annotation (Placement(transformation(
294284
extent={{5,5},{-5,-5}},
@@ -565,37 +555,21 @@ equation
565555
T_pump_out_sensor.T_degC = T_pump_out;
566556
P_pump_out_sensor.P_barA = P_pump_out;
567557
Q_pump_out_sensor.Q = Q_pump_out;
568-
// Parameters
569-
pump.VRot = 1400;
570-
pump.VRotn = 1400;
571-
pump.rm = 0.85;
572-
pump.a1 = 0;
573-
pump.a2 = 0;
574-
pump.b1 = 0;
575-
pump.b2 = 0;
576-
pump.rh_min = 0.0001;
558+
577559
// Calibrated parameters
578-
pump.a3 = pump_a3;
579-
pump.b3 = pump_b3;
560+
pump.hn = pump_hn;
561+
pump.rh = pump_rh;
580562

581563
//--- Recirculation pump ---
582564
// Quantities definition
583565
T_pumpRec_out_sensor.T_degC = T_pumpRec_out;
584566
P_pumpRec_out_sensor.P_barA = P_pumpRec_out;
585567
pumpRec_opening_sensor.Opening = pumpRec_opening;
586568
Q_pumpRec_out_sensor.Q = Q_pumpRec_out;
587-
// Parameters
588-
pumpRec.VRot = 1400;
589-
pumpRec.VRotn = 1400;
590-
pumpRec.rm = 0.85;
591-
pumpRec.a1 = 0;
592-
pumpRec.a2 = 0;
593-
pumpRec.b1 = 0;
594-
pumpRec.b2 = 0;
595-
pumpRec.rh_min = 0.0001;
569+
596570
// Calibrated parameters
597-
pumpRec.a3 = pumpRec_a3;
598-
pumpRec.b3 = pumpRec_b3;
571+
pumpRec.hn = pumpRec_hn;
572+
pumpRec.rh = pumpRec_rh;
599573
pumpRec_controlValve.Cv_max = pumpRec_CV_Cvmax;
600574

601575
connect(HPsuperheater1.C_cold_out, T_w_HPSH1_out_sensor.C_in) annotation (
@@ -621,9 +595,6 @@ equation
621595
color={28,108,200}));
622596
connect(condenser.C_hot_out, pump.C_in) annotation (Line(points={{52,144.778},{52,131},{109,131}},
623597
color={28,108,200}));
624-
connect(powerSource.C_out, pump.C_power)
625-
annotation (Line(points={{116,145.2},{116,138.56}},
626-
color={244,125,35}));
627598
connect(HPsuperheater1.C_cold_in, P_w_evap_out_sensor.C_out) annotation (Line(
628599
points={{-144,-2},{-144,8},{-46,8}}, color={28,108,200}));
629600
connect(evaporator.C_cold_out, P_w_evap_out_sensor.C_in) annotation (Line(
@@ -679,9 +650,6 @@ equation
679650
points={{142,131},{150,131}}, color={28,108,200}));
680651
connect(P_pump_out_sensor.C_out, Q_pump_out_sensor.C_in) annotation (Line(
681652
points={{160,131},{166,131}}, color={28,108,200}));
682-
connect(pumpRec.C_power, pumpRec_powerSource.C_out)
683-
annotation (Line(points={{94,56.1055},{94,61.2}},
684-
color={244,125,35}));
685653
connect(P_pumpRec_out_sensor.C_out, Q_pumpRec_out_sensor.C_in)
686654
annotation (Line(points={{136,48.5455},{140,48.5455}},
687655
color={28,108,200}));

MetroscopeModelingLibrary/Examples/Nuclear/MetroscopiaNPP/MetroscopiaNPP_direct.mo

Lines changed: 2 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -237,18 +237,14 @@ model MetroscopiaNPP_direct
237237
rotation=0,
238238
origin={460,60})));
239239
MetroscopeModelingLibrary.WaterSteam.BoundaryConditions.Source cold_source annotation (Placement(transformation(extent={{290,57.7778},{310,77.7778}})));
240-
MetroscopeModelingLibrary.WaterSteam.Machines.Pump extraction_pump(
240+
WaterSteam.Machines.FixedSpeedPump extraction_pump(
241241
T_in_0=312.05,
242242
T_out_0=312.15,
243243
P_in_0=6980,
244244
P_out_0=700000,
245245
h_in_0=163e3,
246246
h_out_0=164e3,
247247
Q_0=1060) annotation (Placement(transformation(extent={{380,-78},{364,-62}})));
248-
MetroscopeModelingLibrary.Power.BoundaryConditions.Source LP_pump_Wm_source annotation (Placement(transformation(
249-
extent={{-10,-10},{10,10}},
250-
rotation=270,
251-
origin={372,-46})));
252248
MetroscopeModelingLibrary.Sensors.WaterSteam.TemperatureSensor extraction_pump_T_out_sensor(
253249
Q_0=1060,
254250
P_0=700000,
@@ -310,18 +306,14 @@ model MetroscopiaNPP_direct
310306
Q_0=1500,
311307
T_0=350.05,
312308
h_0=322e3) annotation (Placement(transformation(extent={{114,-80},{94,-60}})));
313-
MetroscopeModelingLibrary.WaterSteam.Machines.Pump feedwater_pump(
309+
WaterSteam.Machines.FixedSpeedPump feedwater_pump(
314310
T_in_0=350.05,
315311
T_out_0=353.15,
316312
P_in_0=600000,
317313
P_out_0=5900000,
318314
h_in_0=322e3,
319315
h_out_0=340e3,
320316
Q_0=1500) annotation (Placement(transformation(extent={{62,-78},{46,-62}})));
321-
MetroscopeModelingLibrary.Power.BoundaryConditions.Source HP_pump_Wm_source annotation (Placement(transformation(
322-
extent={{-10,-10},{10,10}},
323-
rotation=270,
324-
origin={54,-46})));
325317
MetroscopeModelingLibrary.Sensors.WaterSteam.TemperatureSensor HP_pump_T_out_sensor(
326318
Q_0=1500,
327319
P_0=5900000,
@@ -507,16 +499,6 @@ equation
507499
extraction_pump_T_out_sensor.T_degC = extraction_pump_T_out;
508500
extraction_pump_P_out_sensor.P_barA = extraction_pump_P_out;
509501

510-
// Parameters
511-
extraction_pump.VRotn = 4000;
512-
extraction_pump.VRot = 3950;
513-
extraction_pump.rm = 0.85;
514-
extraction_pump.a1 = 0;
515-
extraction_pump.a2 = 0;
516-
extraction_pump.b1 = 0;
517-
extraction_pump.b2 = 0;
518-
extraction_pump.rh_min = 0.2;
519-
520502
// Calibrated parameters
521503
extraction_pump.hn = extraction_pump_hn;
522504
extraction_pump.rh = extraction_pump_rh;
@@ -550,16 +532,6 @@ equation
550532
HP_pump_T_out_sensor.T_degC = HP_pump_T_out;
551533
HP_pump_P_out_sensor.P_barA = HP_pump_P_out;
552534

553-
// Parameters
554-
feedwater_pump.VRotn = 4000;
555-
feedwater_pump.VRot = 4000;
556-
feedwater_pump.rm = 0.85;
557-
feedwater_pump.a1 = 0;
558-
feedwater_pump.a2 = 0;
559-
feedwater_pump.b1 = 0;
560-
feedwater_pump.b2 = 0;
561-
feedwater_pump.rh_min = 0.2;
562-
563535
// Calibrated parameters
564536
feedwater_pump.hn = feedwater_pump_hn;
565537
feedwater_pump.rh = feedwater_pump_rh;
@@ -610,7 +582,6 @@ equation
610582
connect(P_cond_sensor.C_out, condenser.C_hot_in) annotation (Line(points={{298,130},{392.5,130},{392.5,74.2864}},
611583
color={28,108,200}));
612584
connect(superheater_T_out_sensor.C_out, LPT1.C_in) annotation (Line(points={{100,130},{151,130}}, color={28,108,200}));
613-
connect(extraction_pump.C_power, LP_pump_Wm_source.C_out) annotation (Line(points={{372,-61.36},{372,-50.8}}, color={244,125,35}));
614585
connect(extraction_pump.C_out, extraction_pump_T_out_sensor.C_in) annotation (Line(points={{364,-70},{350,-70}}, color={28,108,200}));
615586
connect(extraction_pump_T_out_sensor.C_out,extraction_pump_P_out_sensor. C_in) annotation (Line(points={{336,-70},{322,-70}}, color={28,108,200}));
616587
connect(condenser.C_hot_out, extraction_pump.C_in) annotation (Line(points={{392.5,48.2222},{392.5,-70},{380,-70}},
@@ -628,7 +599,6 @@ equation
628599
color={28,108,200}));
629600
connect(deaerator_inlet_pipe.C_out, deaerator_outlet_pipe.C_in) annotation (Line(points={{166,-70},{114,-70}}, color={28,108,200}));
630601
connect(steam_dryer_liq_out_pipe.C_out, deaerator_outlet_pipe.C_in) annotation (Line(points={{142,-60},{142,-70},{114,-70}}, color={28,108,200}));
631-
connect(feedwater_pump.C_power, HP_pump_Wm_source.C_out) annotation (Line(points={{54,-61.36},{54,-50.8}}, color={244,125,35}));
632602
connect(feedwater_pump.C_out, HP_pump_T_out_sensor.C_in) annotation (Line(points={{46,-70},{30,-70}}, color={28,108,200}));
633603
connect(HP_pump_T_out_sensor.C_out, HP_pump_P_out_sensor.C_in) annotation (Line(points={{16,-70},{4,-70}}, color={28,108,200}));
634604
connect(feedwater_pump.C_in, deaerator_outlet_pipe.C_out) annotation (Line(points={{62,-70},{94,-70}}, color={28,108,200}));

0 commit comments

Comments
 (0)