Skip to content

Commit

Permalink
Adapt to new HP models (#84)
Browse files Browse the repository at this point in the history
  • Loading branch information
FWuellhorst authored Sep 30, 2024
2 parents d1ba432 + 7818341 commit a00aef3
Show file tree
Hide file tree
Showing 104 changed files with 1,007 additions and 1,327 deletions.
39 changes: 17 additions & 22 deletions BESMod/Examples/BAUSimStudy/PartialCase.mo
Original file line number Diff line number Diff line change
Expand Up @@ -10,27 +10,23 @@ partial model PartialCase
redeclare BESMod.Systems.Control.NoControl control,
redeclare BESMod.Systems.Hydraulical.HydraulicSystem hydraulic(
energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial,
redeclare Systems.Hydraulical.Generation.HeatPumpAndElectricHeater generation(
redeclare Systems.Hydraulical.Generation.HeatPumpAndElectricHeater
generation(
redeclare model RefrigerantCycleHeatPumpHeating =
AixLib.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.TableData3D
(y_nominal=0.8, redeclare
AixLib.Fluid.HeatPumps.ModularReversible.Data.TableDataSDF.TableData3D.VCLibPy.VCLibVaporInjectionPhaseSeparatorPropane
datTab),
redeclare BESMod.Systems.RecordsCollection.Movers.DefaultMover parPum,
redeclare package Medium_eva = AixLib.Media.Air,
genDesTyp=BESMod.Systems.Hydraulical.Generation.Types.GenerationDesign.BivalentPartParallel,

TBiv=TBiv,
redeclare
BESMod.Systems.Hydraulical.Generation.RecordsCollection.DefaultHP
parHeaPum(
genDesTyp=BESMod.Systems.Hydraulical.Generation.Types.GenerationDesign.BivalentPartParallel,
TBiv=TBiv,
scalingFactor=hydraulic.generation.parHeaPum.QPri_flow_nominal/5000,
dpCon_nominal=0,
dpEva_nominal=0,
use_refIne=false,
refIneFre_constant=0),
BESMod.Systems.Hydraulical.Generation.RecordsCollection.HeatPumps.DefaultHP
parHeaPum,
redeclare
BESMod.Systems.Hydraulical.Generation.RecordsCollection.DefaultElectricHeater
BESMod.Systems.Hydraulical.Generation.RecordsCollection.ElectricHeater.DefaultElectricHeater
parEleHea,
redeclare model PerDataMainHP =
AixLib.DataBase.HeatPump.PerformanceData.VCLibMap (
QCon_flow_nominal=hydraulic.generation.parHeaPum.QPri_flow_nominal,
refrigerant="Propane",
flowsheet="VIPhaseSeparatorFlowsheet"),
redeclare
BESMod.Systems.RecordsCollection.TemperatureSensors.DefaultSensor
parTemSen),
Expand All @@ -42,14 +38,13 @@ partial model PartialCase
dTHysDHW=10,
redeclare model DHWHysteresis =
BESMod.Systems.Hydraulical.Control.Components.BivalentOnOffControllers.TimeBasedElectricHeater,

redeclare model BuildingHysteresis =
BESMod.Systems.Hydraulical.Control.Components.BivalentOnOffControllers.TimeBasedElectricHeater,

redeclare
BESMod.Systems.Hydraulical.Control.RecordsCollection.BasicHeatPumpPI
parPIDHeaPum,
redeclare
BESMod.Systems.Hydraulical.Control.RecordsCollection.DefaultSafetyControl
safetyControl),
parPIDHeaPum),
redeclare
BESMod.Systems.Hydraulical.Distribution.TwoStoDetailedDirectLoading
distribution(
Expand All @@ -69,7 +64,7 @@ partial model PartialCase
use_QLos=true,
T_m=65 + 273.15),
redeclare
BESMod.Systems.Hydraulical.Generation.RecordsCollection.DefaultElectricHeater
BESMod.Systems.Hydraulical.Generation.RecordsCollection.ElectricHeater.DefaultElectricHeater
parEleHeaAftBuf),
redeclare BESMod.Systems.Hydraulical.Transfer.RadiatorPressureBased
transfer(
Expand Down
43 changes: 14 additions & 29 deletions BESMod/Examples/DesignOptimization/BES.mo
Original file line number Diff line number Diff line change
Expand Up @@ -12,35 +12,23 @@ model BES
redeclare BESMod.Systems.Control.NoControl control,
redeclare BESMod.Systems.Hydraulical.HydraulicSystem hydraulic(
energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial,
redeclare Systems.Hydraulical.Generation.HeatPumpAndElectricHeater generation(
redeclare model PerDataRevHP =
AixLib.DataBase.Chiller.PerformanceData.PolynomalApproach (redeclare
function PolyData =
AixLib.DataBase.HeatPump.Functions.Characteristics.ConstantCoP
( powerCompressor=2000, CoP=2)),
redeclare BESMod.Systems.Hydraulical.Components.Frosting.NoFrosting
frost,
redeclare Systems.Hydraulical.Generation.HeatPumpAndElectricHeater
generation(
redeclare BESMod.Systems.RecordsCollection.Movers.DefaultMover parPum,
redeclare package Medium_eva = AixLib.Media.Air,
redeclare package MediumEva = AixLib.Media.Air,
redeclare model RefrigerantCycleHeatPumpHeating =
AixLib.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.TableData3D
(y_nominal=0.8, redeclare
AixLib.Fluid.HeatPumps.ModularReversible.Data.TableDataSDF.TableData3D.VCLibPy.VCLibVaporInjectionPhaseSeparatorPropane
datTab),
genDesTyp=BESMod.Systems.Hydraulical.Generation.Types.GenerationDesign.BivalentPartParallel,
TBiv=parameterStudy.TBiv,
redeclare
BESMod.Systems.Hydraulical.Generation.RecordsCollection.DefaultHP
parHeaPum(
genDesTyp=BESMod.Systems.Hydraulical.Generation.Types.GenerationDesign.BivalentPartParallel,
TBiv=parameterStudy.TBiv,
scalingFactor=hydraulic.generation.parHeaPum.QPri_flow_nominal/
parameterStudy.QHP_flow_biv,
dpCon_nominal=0,
dpEva_nominal=0,
use_refIne=false,
refIneFre_constant=0),
BESMod.Systems.Hydraulical.Generation.RecordsCollection.HeatPumps.DefaultHP
parHeaPum,
redeclare
BESMod.Systems.Hydraulical.Generation.RecordsCollection.DefaultElectricHeater
BESMod.Systems.Hydraulical.Generation.RecordsCollection.ElectricHeater.DefaultElectricHeater
parEleHea,
redeclare model PerDataMainHP =
AixLib.DataBase.HeatPump.PerformanceData.VCLibMap (
QCon_flow_nominal=hydraulic.generation.parHeaPum.QPri_flow_nominal,
refrigerant="Propane",
flowsheet="VIPhaseSeparatorFlowsheet"),
redeclare
BESMod.Systems.RecordsCollection.TemperatureSensors.DefaultSensor
parTemSen(transferHeat=true)),
Expand Down Expand Up @@ -73,10 +61,7 @@ model BES
useExtSGSig=false,
redeclare
BESMod.Systems.Hydraulical.Control.RecordsCollection.BasicHeatPumpPI
parPIDHeaPum,
redeclare
BESMod.Systems.Hydraulical.Control.RecordsCollection.DefaultSafetyControl
safetyControl),
parPIDHeaPum),
redeclare Systems.Hydraulical.Distribution.DistributionTwoStorageParallel
distribution(
redeclare
Expand Down
43 changes: 14 additions & 29 deletions BESMod/Examples/DesignOptimization/BESNoDHW.mo
Original file line number Diff line number Diff line change
Expand Up @@ -12,35 +12,23 @@ model BESNoDHW "Example to demonstrate usage without DHW"
redeclare BESMod.Systems.Control.NoControl control,
redeclare BESMod.Systems.Hydraulical.HydraulicSystem hydraulic(
energyDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial,
redeclare Systems.Hydraulical.Generation.HeatPumpAndElectricHeater generation(
redeclare model PerDataRevHP =
AixLib.DataBase.Chiller.PerformanceData.PolynomalApproach (redeclare
function PolyData =
AixLib.DataBase.HeatPump.Functions.Characteristics.ConstantCoP
( powerCompressor=2000, CoP=2)),
redeclare
BESMod.Systems.Hydraulical.Components.Frosting.NoFrosting frost,
redeclare Systems.Hydraulical.Generation.HeatPumpAndElectricHeater
generation(
redeclare BESMod.Systems.RecordsCollection.Movers.DefaultMover parPum,
redeclare package Medium_eva = AixLib.Media.Air,
redeclare package MediumEva = AixLib.Media.Air,
redeclare model RefrigerantCycleHeatPumpHeating =
AixLib.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.TableData3D
(y_nominal=0.8, redeclare
AixLib.Fluid.HeatPumps.ModularReversible.Data.TableDataSDF.TableData3D.VCLibPy.VCLibVaporInjectionPhaseSeparatorPropane
datTab),
genDesTyp=BESMod.Systems.Hydraulical.Generation.Types.GenerationDesign.BivalentPartParallel,
TBiv=parameterStudy.TBiv,
redeclare
BESMod.Systems.Hydraulical.Generation.RecordsCollection.DefaultHP
parHeaPum(
genDesTyp=BESMod.Systems.Hydraulical.Generation.Types.GenerationDesign.BivalentPartParallel,
TBiv=parameterStudy.TBiv,
scalingFactor=hydraulic.generation.parHeaPum.QPri_flow_nominal/
parameterStudy.QHP_flow_biv,
dpCon_nominal=0,
dpEva_nominal=0,
use_refIne=false,
refIneFre_constant=0),
BESMod.Systems.Hydraulical.Generation.RecordsCollection.HeatPumps.DefaultHP
parHeaPum,
redeclare
BESMod.Systems.Hydraulical.Generation.RecordsCollection.DefaultElectricHeater
BESMod.Systems.Hydraulical.Generation.RecordsCollection.ElectricHeater.DefaultElectricHeater
parEleHea,
redeclare model PerDataMainHP =
AixLib.DataBase.HeatPump.PerformanceData.VCLibMap (
QCon_flow_nominal=hydraulic.generation.parHeaPum.QPri_flow_nominal,
refrigerant="Propane",
flowsheet="VIPhaseSeparatorFlowsheet"),
redeclare
BESMod.Systems.RecordsCollection.TemperatureSensors.DefaultSensor
parTemSen),
Expand Down Expand Up @@ -70,10 +58,7 @@ model BESNoDHW "Example to demonstrate usage without DHW"
useExtSGSig=false,
redeclare
BESMod.Systems.Hydraulical.Control.RecordsCollection.BasicHeatPumpPI
parPIDHeaPum,
redeclare
BESMod.Systems.Hydraulical.Control.RecordsCollection.DefaultSafetyControl
safetyControl),
parPIDHeaPum),
redeclare BESMod.Systems.Hydraulical.Distribution.BuildingOnly
distribution(nParallelDem=1),
redeclare Systems.Hydraulical.Transfer.IdealValveRadiator transfer(
Expand Down
2 changes: 0 additions & 2 deletions BESMod/Examples/DesignOptimization/ParametersToChange.mo
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,4 @@ record ParametersToChange
annotation(Evaluate=false);
parameter Modelica.Units.SI.HeatFlowRate QHP_flow_cutOff=3000
annotation (Evaluate=false);
parameter Modelica.Units.SI.HeatFlowRate QHP_flow_biv=4000
annotation (Evaluate=false);
end ParametersToChange;
33 changes: 13 additions & 20 deletions BESMod/Examples/HeatPumpAndBoiler/AfterBufferWithDHW.mo
Original file line number Diff line number Diff line change
@@ -1,30 +1,23 @@
within BESMod.Examples.HeatPumpAndBoiler;
model AfterBufferWithDHW
"Bivalent Heat Pump System with boiler integration after buffer tank without DHW support"
extends BaseClasses.PartialHybridSystem(
redeclare BESMod.Systems.Hydraulical.HydraulicSystem hydraulic(
redeclare Systems.Hydraulical.Generation.HeatPump
generation(
extends BaseClasses.PartialHybridSystem(redeclare
BESMod.Systems.Hydraulical.HydraulicSystem hydraulic(
redeclare Systems.Hydraulical.Generation.HeatPump generation(
redeclare BESMod.Systems.RecordsCollection.Movers.DefaultMover parPum,
TBiv=parameterStudy.TBiv,
redeclare
BESMod.Systems.Hydraulical.Generation.RecordsCollection.DefaultHP
parHeaPum(
genDesTyp=BESMod.Systems.Hydraulical.Generation.Types.GenerationDesign.BivalentPartParallel,
TBiv=parameterStudy.TBiv,
scalingFactor=hydraulic.generation.parHeaPum.QPri_flow_nominal/
parameterStudy.QHP_flow_biv,
dpCon_nominal=0,
dpEva_nominal=0,
use_refIne=false,
refIneFre_constant=0),
redeclare model PerDataMainHP =
AixLib.DataBase.HeatPump.PerformanceData.VCLibMap (
QCon_flow_nominal=hydraulic.generation.parHeaPum.QPri_flow_nominal,
refrigerant="Propane",
flowsheet="VIPhaseSeparatorFlowsheet"),
BESMod.Systems.Hydraulical.Generation.RecordsCollection.HeatPumps.DefaultHP
parHeaPum,
redeclare model RefrigerantCycleHeatPumpHeating =
AixLib.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.TableData3D
(y_nominal=0.8, redeclare
AixLib.Fluid.HeatPumps.ModularReversible.Data.TableDataSDF.TableData3D.VCLibPy.VCLibVaporInjectionPhaseSeparatorPropane
datTab),
redeclare
BESMod.Systems.RecordsCollection.TemperatureSensors.DefaultSensor
parTemSen),
parTemSen,
genDesTyp=BESMod.Systems.Hydraulical.Generation.Types.GenerationDesign.BivalentPartParallel),
control(boiInGeneration=false),
redeclare Systems.Hydraulical.Distribution.TwoStoragesBoilerWithDHW
distribution(
Expand Down
33 changes: 13 additions & 20 deletions BESMod/Examples/HeatPumpAndBoiler/AfterBufferWithoutDHW.mo
Original file line number Diff line number Diff line change
@@ -1,30 +1,23 @@
within BESMod.Examples.HeatPumpAndBoiler;
model AfterBufferWithoutDHW
"Bivalent Heat Pump System with boiler integration after buffer tank without DHW support"
extends BaseClasses.PartialHybridSystem(
redeclare BESMod.Systems.Hydraulical.HydraulicSystem hydraulic(
redeclare Systems.Hydraulical.Generation.HeatPump
generation(
extends BaseClasses.PartialHybridSystem(redeclare
BESMod.Systems.Hydraulical.HydraulicSystem hydraulic(
redeclare Systems.Hydraulical.Generation.HeatPump generation(
redeclare BESMod.Systems.RecordsCollection.Movers.DefaultMover parPum,
TBiv=parameterStudy.TBiv,
redeclare
BESMod.Systems.Hydraulical.Generation.RecordsCollection.DefaultHP
parHeaPum(
genDesTyp=BESMod.Systems.Hydraulical.Generation.Types.GenerationDesign.BivalentPartParallel,
TBiv=parameterStudy.TBiv,
scalingFactor=hydraulic.generation.parHeaPum.QPri_flow_nominal/
parameterStudy.QHP_flow_biv,
dpCon_nominal=0,
dpEva_nominal=0,
use_refIne=false,
refIneFre_constant=0),
redeclare model PerDataMainHP =
AixLib.DataBase.HeatPump.PerformanceData.VCLibMap (
QCon_flow_nominal=hydraulic.generation.parHeaPum.QPri_flow_nominal,
refrigerant="Propane",
flowsheet="VIPhaseSeparatorFlowsheet"),
BESMod.Systems.Hydraulical.Generation.RecordsCollection.HeatPumps.DefaultHP
parHeaPum,
redeclare model RefrigerantCycleHeatPumpHeating =
AixLib.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.TableData3D
(y_nominal=0.8, redeclare
AixLib.Fluid.HeatPumps.ModularReversible.Data.TableDataSDF.TableData3D.VCLibPy.VCLibVaporInjectionPhaseSeparatorPropane
datTab),
redeclare
BESMod.Systems.RecordsCollection.TemperatureSensors.DefaultSensor
parTemSen),
parTemSen,
genDesTyp=BESMod.Systems.Hydraulical.Generation.Types.GenerationDesign.BivalentPartParallel),
control(boiInGeneration=false),
redeclare Systems.Hydraulical.Distribution.TwoStoDetailedDirectLoading
distribution(
Expand Down
3 changes: 0 additions & 3 deletions BESMod/Examples/HeatPumpAndBoiler/BaseClasses.mo
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,6 @@ package BaseClasses "Contains partial example case"
parPIDHeaPum,
TBiv=parameterStudy.TBiv,
boiInGeneration=true,
redeclare
BESMod.Systems.Hydraulical.Control.RecordsCollection.DefaultSafetyControl
safetyControl,
TCutOff=parameterStudy.TCutOff,
redeclare
BESMod.Systems.Hydraulical.Control.RecordsCollection.BasicBoilerPI
Expand Down
34 changes: 13 additions & 21 deletions BESMod/Examples/HeatPumpAndBoiler/Parallel.mo
Original file line number Diff line number Diff line change
@@ -1,33 +1,25 @@
within BESMod.Examples.HeatPumpAndBoiler;
model Parallel
"Bivalent Heat Pump Systems with parallel heat generation"
extends BaseClasses.PartialHybridSystem(
redeclare BESMod.Systems.Hydraulical.HydraulicSystem hydraulic(
redeclare Systems.Hydraulical.Generation.HeatPumpAndGasBoilerParallel
generation(
extends BaseClasses.PartialHybridSystem(redeclare
BESMod.Systems.Hydraulical.HydraulicSystem hydraulic(redeclare
Systems.Hydraulical.Generation.HeatPumpAndGasBoilerParallel generation(
redeclare BESMod.Systems.RecordsCollection.Movers.DefaultMover parPum,
TBiv=parameterStudy.TBiv,
redeclare
BESMod.Systems.Hydraulical.Generation.RecordsCollection.DefaultHP
parHeaPum(
genDesTyp=BESMod.Systems.Hydraulical.Generation.Types.GenerationDesign.BivalentPartParallel,
TBiv=parameterStudy.TBiv,
scalingFactor=hydraulic.generation.parHeaPum.QPri_flow_nominal/
parameterStudy.QHP_flow_biv,
dpCon_nominal=0,
dpEva_nominal=0,
use_refIne=false,
refIneFre_constant=0),
redeclare model PerDataMainHP =
AixLib.DataBase.HeatPump.PerformanceData.VCLibMap (
QCon_flow_nominal=hydraulic.generation.parHeaPum.QPri_flow_nominal,
refrigerant="Propane",
flowsheet="VIPhaseSeparatorFlowsheet"),
BESMod.Systems.Hydraulical.Generation.RecordsCollection.HeatPumps.DefaultHP
parHeaPum,
redeclare model RefrigerantCycleHeatPumpHeating =
AixLib.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.TableData3D
(y_nominal=0.8, redeclare
AixLib.Fluid.HeatPumps.ModularReversible.Data.TableDataSDF.TableData3D.VCLibPy.VCLibVaporInjectionPhaseSeparatorPropane
datTab),
redeclare
BESMod.Systems.RecordsCollection.TemperatureSensors.DefaultSensor
parTemSen,
redeclare BESMod.Systems.RecordsCollection.Valves.DefaultThreeWayValve
parThrWayVal),
redeclare Systems.Hydraulical.Distribution.DistributionTwoStorageParallel
parThrWayVal), redeclare
Systems.Hydraulical.Distribution.DistributionTwoStorageParallel
distribution(
redeclare
BESMod.Systems.Hydraulical.Distribution.RecordsCollection.SimpleStorage.DefaultStorage
Expand Down
34 changes: 13 additions & 21 deletions BESMod/Examples/HeatPumpAndBoiler/Serial.mo
Original file line number Diff line number Diff line change
@@ -1,30 +1,22 @@
within BESMod.Examples.HeatPumpAndBoiler;
model Serial "Bivalent Heat Pump Systems with serial heat generation"
extends BaseClasses.PartialHybridSystem(
redeclare BESMod.Systems.Hydraulical.HydraulicSystem hydraulic(
redeclare Systems.Hydraulical.Generation.HeatPumpAndGasBoilerSerial
generation(
extends BaseClasses.PartialHybridSystem(redeclare
BESMod.Systems.Hydraulical.HydraulicSystem hydraulic(redeclare
Systems.Hydraulical.Generation.HeatPumpAndGasBoilerSerial generation(
redeclare BESMod.Systems.RecordsCollection.Movers.DefaultMover parPum,
TBiv=parameterStudy.TBiv,
redeclare
BESMod.Systems.Hydraulical.Generation.RecordsCollection.DefaultHP
parHeaPum(
genDesTyp=BESMod.Systems.Hydraulical.Generation.Types.GenerationDesign.BivalentPartParallel,
TBiv=parameterStudy.TBiv,
scalingFactor=hydraulic.generation.parHeaPum.QPri_flow_nominal/
parameterStudy.QHP_flow_biv,
dpCon_nominal=0,
dpEva_nominal=0,
use_refIne=false,
refIneFre_constant=0),
redeclare model PerDataMainHP =
AixLib.DataBase.HeatPump.PerformanceData.VCLibMap (
QCon_flow_nominal=hydraulic.generation.parHeaPum.QPri_flow_nominal,
refrigerant="Propane",
flowsheet="VIPhaseSeparatorFlowsheet"),
BESMod.Systems.Hydraulical.Generation.RecordsCollection.HeatPumps.DefaultHP
parHeaPum,
redeclare model RefrigerantCycleHeatPumpHeating =
AixLib.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.TableData3D
(y_nominal=0.8, redeclare
AixLib.Fluid.HeatPumps.ModularReversible.Data.TableDataSDF.TableData3D.VCLibPy.VCLibVaporInjectionPhaseSeparatorPropane
datTab),
redeclare
BESMod.Systems.RecordsCollection.TemperatureSensors.DefaultSensor
parTemSen),
redeclare Systems.Hydraulical.Distribution.DistributionTwoStorageParallel
parTemSen), redeclare
Systems.Hydraulical.Distribution.DistributionTwoStorageParallel
distribution(
redeclare
BESMod.Systems.Hydraulical.Distribution.RecordsCollection.SimpleStorage.DefaultStorage
Expand Down
Loading

0 comments on commit a00aef3

Please sign in to comment.