final_energy_system_model #60
|
@ -25,7 +25,7 @@ class NonPvGenerationSystem(GenerationSystem):
|
||||||
maximum_cooling_supply_temperature=None, minimum_cooling_supply_temperature=None, heat_output_curve=None,
|
maximum_cooling_supply_temperature=None, minimum_cooling_supply_temperature=None, heat_output_curve=None,
|
||||||
heat_fuel_consumption_curve=None, heat_efficiency_curve=None, cooling_output_curve=None,
|
heat_fuel_consumption_curve=None, heat_efficiency_curve=None, cooling_output_curve=None,
|
||||||
cooling_fuel_consumption_curve=None, cooling_efficiency_curve=None,
|
cooling_fuel_consumption_curve=None, cooling_efficiency_curve=None,
|
||||||
distribution_systems=None, energy_storage_systems=None):
|
distribution_systems=None, energy_storage_systems=None, dual_supply_capability=False):
|
||||||
super().__init__(system_id=system_id, name=name, model_name=model_name, manufacturer=manufacturer, fuel_type=fuel_type,
|
super().__init__(system_id=system_id, name=name, model_name=model_name, manufacturer=manufacturer, fuel_type=fuel_type,
|
||||||
distribution_systems=distribution_systems, energy_storage_systems=energy_storage_systems)
|
distribution_systems=distribution_systems, energy_storage_systems=energy_storage_systems)
|
||||||
self._system_type = system_type
|
self._system_type = system_type
|
||||||
|
@ -53,6 +53,7 @@ class NonPvGenerationSystem(GenerationSystem):
|
||||||
self._cooling_output_curve = cooling_output_curve
|
self._cooling_output_curve = cooling_output_curve
|
||||||
self._cooling_fuel_consumption_curve = cooling_fuel_consumption_curve
|
self._cooling_fuel_consumption_curve = cooling_fuel_consumption_curve
|
||||||
self._cooling_efficiency_curve = cooling_efficiency_curve
|
self._cooling_efficiency_curve = cooling_efficiency_curve
|
||||||
|
self._dual_supply_capability = dual_supply_capability
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def system_type(self):
|
def system_type(self):
|
||||||
|
@ -254,6 +255,14 @@ class NonPvGenerationSystem(GenerationSystem):
|
||||||
"""
|
"""
|
||||||
return self._cooling_efficiency_curve
|
return self._cooling_efficiency_curve
|
||||||
|
|
||||||
|
@property
|
||||||
|
def dual_supply_capability(self):
|
||||||
|
"""
|
||||||
|
Get dual supply capability
|
||||||
|
:return: bool
|
||||||
|
"""
|
||||||
|
return self._dual_supply_capability
|
||||||
|
|
||||||
def to_dictionary(self):
|
def to_dictionary(self):
|
||||||
"""Class content to dictionary"""
|
"""Class content to dictionary"""
|
||||||
_distribution_systems = [_distribution_system.to_dictionary() for _distribution_system in
|
_distribution_systems = [_distribution_system.to_dictionary() for _distribution_system in
|
||||||
|
@ -294,7 +303,8 @@ class NonPvGenerationSystem(GenerationSystem):
|
||||||
'cooling fuel consumption curve': self.cooling_fuel_consumption_curve,
|
'cooling fuel consumption curve': self.cooling_fuel_consumption_curve,
|
||||||
'cooling efficiency curve': self.cooling_efficiency_curve,
|
'cooling efficiency curve': self.cooling_efficiency_curve,
|
||||||
'distribution systems connected': _distribution_systems,
|
'distribution systems connected': _distribution_systems,
|
||||||
'storage systems connected': _energy_storage_systems
|
'storage systems connected': _energy_storage_systems,
|
||||||
|
'dual supply capability': self.dual_supply_capability
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return content
|
return content
|
||||||
|
|
|
@ -56,6 +56,9 @@ class NorthAmericaEnergySystemCatalog(Catalog):
|
||||||
boiler_maximum_heat_output = float(boiler['@maximumHeatOutput'])
|
boiler_maximum_heat_output = float(boiler['@maximumHeatOutput'])
|
||||||
boiler_minimum_heat_output = float(boiler['@minimumHeatOutput'])
|
boiler_minimum_heat_output = float(boiler['@minimumHeatOutput'])
|
||||||
boiler_heat_efficiency = float(boiler['@nominalEfficiency'])
|
boiler_heat_efficiency = float(boiler['@nominalEfficiency'])
|
||||||
|
dual_supply = False
|
||||||
|
if '@dual_supply' in boiler.keys() and boiler['@dual_supply'] == 'True':
|
||||||
|
dual_supply = True
|
||||||
boiler_component = NonPvGenerationSystem(boiler_id,
|
boiler_component = NonPvGenerationSystem(boiler_id,
|
||||||
name=name,
|
name=name,
|
||||||
system_type=system_type,
|
system_type=system_type,
|
||||||
|
@ -65,7 +68,8 @@ class NorthAmericaEnergySystemCatalog(Catalog):
|
||||||
nominal_heat_output=boiler_nominal_thermal_output,
|
nominal_heat_output=boiler_nominal_thermal_output,
|
||||||
maximum_heat_output=boiler_maximum_heat_output,
|
maximum_heat_output=boiler_maximum_heat_output,
|
||||||
minimum_heat_output=boiler_minimum_heat_output,
|
minimum_heat_output=boiler_minimum_heat_output,
|
||||||
heat_efficiency=boiler_heat_efficiency)
|
heat_efficiency=boiler_heat_efficiency,
|
||||||
|
dual_supply_capability=dual_supply)
|
||||||
generation_components.append(boiler_component)
|
generation_components.append(boiler_component)
|
||||||
for heat_pump in heat_pumps:
|
for heat_pump in heat_pumps:
|
||||||
heat_pump_id = heat_pump['@generation_id']
|
heat_pump_id = heat_pump['@generation_id']
|
||||||
|
@ -89,6 +93,9 @@ class NorthAmericaEnergySystemCatalog(Catalog):
|
||||||
parameters = heat_pump['performance_curve']['parameters']
|
parameters = heat_pump['performance_curve']['parameters']
|
||||||
coefficients = list(heat_pump['performance_curve']['coefficients'].values())
|
coefficients = list(heat_pump['performance_curve']['coefficients'].values())
|
||||||
cop_curve = PerformanceCurves(cop_curve_type, dependant_variable, parameters, coefficients)
|
cop_curve = PerformanceCurves(cop_curve_type, dependant_variable, parameters, coefficients)
|
||||||
|
dual_supply = False
|
||||||
|
if '@dual_supply' in heat_pump.keys() and heat_pump['@dual_supply'] == 'True':
|
||||||
|
dual_supply = True
|
||||||
|
|
||||||
heat_pump_component = NonPvGenerationSystem(heat_pump_id,
|
heat_pump_component = NonPvGenerationSystem(heat_pump_id,
|
||||||
name=name,
|
name=name,
|
||||||
|
@ -106,7 +113,8 @@ class NorthAmericaEnergySystemCatalog(Catalog):
|
||||||
minimum_heat_supply_temperature=heat_pump_minimum_heat_supply_temperature,
|
minimum_heat_supply_temperature=heat_pump_minimum_heat_supply_temperature,
|
||||||
maximum_cooling_supply_temperature=heat_pump_maximum_cooling_supply_temperature,
|
maximum_cooling_supply_temperature=heat_pump_maximum_cooling_supply_temperature,
|
||||||
minimum_cooling_supply_temperature=heat_pump_minimum_cooling_supply_temperature,
|
minimum_cooling_supply_temperature=heat_pump_minimum_cooling_supply_temperature,
|
||||||
heat_efficiency_curve=cop_curve)
|
heat_efficiency_curve=cop_curve,
|
||||||
|
dual_supply_capability=dual_supply)
|
||||||
generation_components.append(heat_pump_component)
|
generation_components.append(heat_pump_component)
|
||||||
for pv in photovoltaics:
|
for pv in photovoltaics:
|
||||||
pv_id = pv['@generation_id']
|
pv_id = pv['@generation_id']
|
||||||
|
@ -143,6 +151,8 @@ class NorthAmericaEnergySystemCatalog(Catalog):
|
||||||
for template in templates:
|
for template in templates:
|
||||||
system_id = template['@generation_id']
|
system_id = template['@generation_id']
|
||||||
system_name = template['@name']
|
system_name = template['@name']
|
||||||
|
if '@dual_supply' in template.keys() and template['@dual_supply'] == 'True':
|
||||||
|
dual_supply = True
|
||||||
if 'storage_id' in template.keys():
|
if 'storage_id' in template.keys():
|
||||||
storage_component = template['storage_id']
|
storage_component = template['storage_id']
|
||||||
storage_systems = self._search_storage_equipment(self._load_storage_components(), storage_component)
|
storage_systems = self._search_storage_equipment(self._load_storage_components(), storage_component)
|
||||||
|
@ -158,7 +168,8 @@ class NorthAmericaEnergySystemCatalog(Catalog):
|
||||||
system_type=system_type,
|
system_type=system_type,
|
||||||
fuel_type=fuel_type,
|
fuel_type=fuel_type,
|
||||||
heat_efficiency=heat_efficiency,
|
heat_efficiency=heat_efficiency,
|
||||||
energy_storage_systems=energy_storage_system)
|
energy_storage_systems=energy_storage_system,
|
||||||
|
dual_supply_capability=dual_supply)
|
||||||
generation_components.append(boiler_template)
|
generation_components.append(boiler_template)
|
||||||
elif "Heat Pump" in system_name:
|
elif "Heat Pump" in system_name:
|
||||||
system_type = 'heat pump'
|
system_type = 'heat pump'
|
||||||
|
@ -173,7 +184,8 @@ class NorthAmericaEnergySystemCatalog(Catalog):
|
||||||
supply_medium=supply_medium,
|
supply_medium=supply_medium,
|
||||||
fuel_type=fuel_type,
|
fuel_type=fuel_type,
|
||||||
heat_efficiency=heat_efficiency,
|
heat_efficiency=heat_efficiency,
|
||||||
energy_storage_systems=energy_storage_system)
|
energy_storage_systems=energy_storage_system,
|
||||||
|
dual_supply_capability=dual_supply)
|
||||||
generation_components.append(heat_pump_template)
|
generation_components.append(heat_pump_template)
|
||||||
else:
|
else:
|
||||||
electricity_efficiency = float(template['@nominalEfficiency'])
|
electricity_efficiency = float(template['@nominalEfficiency'])
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
<boilers generation_id="10" name="Natural-Gas Boiler" modelName="K2WTC-135B" manufacturer="K2" installedThermalPower="32.8" minimumHeatOutput="3.5" maximumHeatOutput="35.0" modulationRange="0.96" nominalEfficiency="0.95" combi="true" fuel="natural gas"/>
|
<boilers generation_id="10" name="Natural-Gas Boiler" modelName="K2WTC-135B" manufacturer="K2" installedThermalPower="32.8" minimumHeatOutput="3.5" maximumHeatOutput="35.0" modulationRange="0.96" nominalEfficiency="0.95" combi="true" fuel="natural gas"/>
|
||||||
<boilers generation_id="11" name="Natural-Gas Boiler" modelName="K2WTC-180B" manufacturer="K2" installedThermalPower="49.5" minimumHeatOutput="5.3" maximumHeatOutput="53.0" modulationRange="0.96" nominalEfficiency="0.95" combi="true" fuel="natural gas"/>
|
<boilers generation_id="11" name="Natural-Gas Boiler" modelName="K2WTC-180B" manufacturer="K2" installedThermalPower="49.5" minimumHeatOutput="5.3" maximumHeatOutput="53.0" modulationRange="0.96" nominalEfficiency="0.95" combi="true" fuel="natural gas"/>
|
||||||
<photovoltaicModules generation_id="12" name="Photovoltaic Module" modelName="445MS" manufacturer="Canadian Solar" nominalPower="334.0" nominalEfficiency="0.201" nominalRadiation="800.0" STCRadiation="1000.0" nominalCellTemperature="41.0" STCCellTemperature="26.0" nominalAmbientTemperature="20.0" STCMaxPower="445.0" CellTemperatureCoefficient="-0.0034" height="1.048" width="2.01"/>
|
<photovoltaicModules generation_id="12" name="Photovoltaic Module" modelName="445MS" manufacturer="Canadian Solar" nominalPower="334.0" nominalEfficiency="0.201" nominalRadiation="800.0" STCRadiation="1000.0" nominalCellTemperature="41.0" STCCellTemperature="26.0" nominalAmbientTemperature="20.0" STCMaxPower="445.0" CellTemperatureCoefficient="-0.0034" height="1.048" width="2.01"/>
|
||||||
<heatPumps generation_id="13" name="Air-to-Water Heat Pump" modelName="CMAA 012" description="A second degree equation is used in form of A*T_source^2 + B*T_source + C*T_source*T_sup + D*T_sup + E*T_sup^2 + F" manufacturer="TRANE" installedThermalPower="51.7" minimumHeatOutput="0" maximumHeatOutput="51.7" modulationRange="0.0" fuel="Electricity" heatSource="Air" nominalCOP="3.32" maxHeatingSupTemperature="55.0" minHeatingSupTemperature="6.0" maxCoolingSupTemperature="30.0" minCoolingSupTemperature="11.0" supply_medium="water">
|
<heatPumps generation_id="13" name="Air-to-Water Heat Pump" modelName="CMAA 012" description="A second degree equation is used in form of A*T_source^2 + B*T_source + C*T_source*T_sup + D*T_sup + E*T_sup^2 + F" manufacturer="TRANE" installedThermalPower="51.7" minimumHeatOutput="0" maximumHeatOutput="51.7" modulationRange="0.0" fuel="Electricity" heatSource="Air" nominalCOP="3.32" maxHeatingSupTemperature="55.0" minHeatingSupTemperature="6.0" maxCoolingSupTemperature="30.0" minCoolingSupTemperature="11.0" supply_medium="water" dual_supply="False">
|
||||||
<performance_curve curve_type="second degree multivariable function">
|
<performance_curve curve_type="second degree multivariable function">
|
||||||
<dependant_variable>COP</dependant_variable>
|
<dependant_variable>COP</dependant_variable>
|
||||||
<parameters>source_temperature</parameters>
|
<parameters>source_temperature</parameters>
|
||||||
|
@ -25,7 +25,7 @@
|
||||||
<coefficients a="9.5E-4" b="0.177" c="-0.00242" d="-0.155" e="9.3E-4" f="8.044"/>
|
<coefficients a="9.5E-4" b="0.177" c="-0.00242" d="-0.155" e="9.3E-4" f="8.044"/>
|
||||||
</performance_curve>
|
</performance_curve>
|
||||||
</heatPumps>
|
</heatPumps>
|
||||||
<heatPumps generation_id="14" name="Air-to-Water Heat Pump" modelName="CMAA 70" description="A second degree equation is used in form of A*T_source^2 + B*T_source + C*T_source*T_sup + D*T_sup + E*T_sup^2 + F" manufacturer="TRANE" installedThermalPower="279.3" minimumHeatOutput="0" maximumHeatOutput="279.3" modulationRange="0.0" fuel="Electricity" heatSource="Air" nominalCOP="3.07" maxHeatingSupTemperature="55.0" minHeatingSupTemperature="6.0" maxCoolingSupTemperature="30.0" minCoolingSupTemperature="11.0" supply_medium="water">
|
<heatPumps generation_id="14" name="Air-to-Water Heat Pump" modelName="CMAA 70" description="A second degree equation is used in form of A*T_source^2 + B*T_source + C*T_source*T_sup + D*T_sup + E*T_sup^2 + F" manufacturer="TRANE" installedThermalPower="279.3" minimumHeatOutput="0" maximumHeatOutput="279.3" modulationRange="0.0" fuel="Electricity" heatSource="Air" nominalCOP="3.07" maxHeatingSupTemperature="55.0" minHeatingSupTemperature="6.0" maxCoolingSupTemperature="30.0" minCoolingSupTemperature="11.0" supply_medium="water" dual_supply="False">
|
||||||
<performance_curve curve_type="second degree multivariable function">
|
<performance_curve curve_type="second degree multivariable function">
|
||||||
<dependant_variable>COP</dependant_variable>
|
<dependant_variable>COP</dependant_variable>
|
||||||
<parameters>source_temperature</parameters>
|
<parameters>source_temperature</parameters>
|
||||||
|
@ -33,7 +33,7 @@
|
||||||
<coefficients a="0.0011" b="0.207" c="-0.00292" d="-0.187" e="0.00121" f="8.95"/>
|
<coefficients a="0.0011" b="0.207" c="-0.00292" d="-0.187" e="0.00121" f="8.95"/>
|
||||||
</performance_curve>
|
</performance_curve>
|
||||||
</heatPumps>
|
</heatPumps>
|
||||||
<heatPumps generation_id="15" name="Air-to-Water Heat Pump" modelName="CMAA 140" description="A second degree equation is used in form of A*T_source^2 + B*T_source + C*T_source*T_sup + D*T_sup + E*T_sup^2 + F" manufacturer="TRANE" installedThermalPower="557" minimumHeatOutput="0" maximumHeatOutput="557" modulationRange="0.0" fuel="Electricity" heatSource="Air" nominalCOP="3.46" maxHeatingSupTemperature="55.0" minHeatingSupTemperature="6.0" maxCoolingSupTemperature="30.0" minCoolingSupTemperature="11.0" supply_medium="water">
|
<heatPumps generation_id="15" name="Air-to-Water Heat Pump" modelName="CMAA 140" description="A second degree equation is used in form of A*T_source^2 + B*T_source + C*T_source*T_sup + D*T_sup + E*T_sup^2 + F" manufacturer="TRANE" installedThermalPower="557" minimumHeatOutput="0" maximumHeatOutput="557" modulationRange="0.0" fuel="Electricity" heatSource="Air" nominalCOP="3.46" maxHeatingSupTemperature="55.0" minHeatingSupTemperature="6.0" maxCoolingSupTemperature="30.0" minCoolingSupTemperature="11.0" supply_medium="water" dual_supply="False">
|
||||||
<performance_curve curve_type="second degree multivariable function">
|
<performance_curve curve_type="second degree multivariable function">
|
||||||
<dependant_variable>COP</dependant_variable>
|
<dependant_variable>COP</dependant_variable>
|
||||||
<parameters>source_temperature</parameters>
|
<parameters>source_temperature</parameters>
|
||||||
|
@ -47,20 +47,20 @@
|
||||||
<templateGenerationEquipments generation_id="17" name="template Electric Boiler" nominalEfficiency="0.95" fuel="electricity">
|
<templateGenerationEquipments generation_id="17" name="template Electric Boiler" nominalEfficiency="0.95" fuel="electricity">
|
||||||
<storage_id>6</storage_id>
|
<storage_id>6</storage_id>
|
||||||
</templateGenerationEquipments>
|
</templateGenerationEquipments>
|
||||||
<templateGenerationEquipments generation_id="18" name="template Air-to-Water Heat Pump" fuel="electricity" heatSource="Air" nominalCOP="3" supply_medium="water">
|
<templateGenerationEquipments generation_id="18" name="template Air-to-Water Heat Pump" fuel="electricity" heatSource="Air" nominalCOP="3" supply_medium="water" dual_supply="True">
|
||||||
<storage_id>6</storage_id>
|
<storage_id>6</storage_id>
|
||||||
</templateGenerationEquipments>
|
</templateGenerationEquipments>
|
||||||
<templateGenerationEquipments generation_id="19" name="template Groundwater-to-Water Heat Pump" fuel="electricity" heatSource="Ground" nominalCOP="3.5" supply_medium="water">
|
<templateGenerationEquipments generation_id="19" name="template Groundwater-to-Water Heat Pump" fuel="electricity" heatSource="Ground" nominalCOP="3.5" supply_medium="water" dual_supply="True">
|
||||||
<storage_id>6</storage_id>
|
<storage_id>6</storage_id>
|
||||||
</templateGenerationEquipments>
|
</templateGenerationEquipments>
|
||||||
<templateGenerationEquipments generation_id="20" name="template Water-to-Water Heat Pump" fuel="electricity" heatSource="Water" nominalCOP="3.5" supply_medium="water">
|
<templateGenerationEquipments generation_id="20" name="template Water-to-Water Heat Pump" fuel="electricity" heatSource="Water" nominalCOP="3.5" supply_medium="water" dual_supply="True">
|
||||||
<storage_id>6</storage_id>
|
<storage_id>6</storage_id>
|
||||||
</templateGenerationEquipments>
|
</templateGenerationEquipments>
|
||||||
<templateGenerationEquipments generation_id="21" name="template Natural-Gas Boiler" nominalEfficiency="0.90" fuel="natural gas"/>
|
<templateGenerationEquipments generation_id="21" name="template Natural-Gas Boiler" nominalEfficiency="0.90" fuel="natural gas"/>
|
||||||
<templateGenerationEquipments generation_id="22" name="template Electric Boiler" nominalEfficiency="0.95" fuel="electricity"/>
|
<templateGenerationEquipments generation_id="22" name="template Electric Boiler" nominalEfficiency="0.95" fuel="electricity"/>
|
||||||
<templateGenerationEquipments generation_id="23" name="template Air-to-Water Heat Pump" fuel="electricity" heatSource="Air" nominalCOP="3" supply_medium="water"/>
|
<templateGenerationEquipments generation_id="23" name="template Air-to-Water Heat Pump" fuel="electricity" heatSource="Air" nominalCOP="3" supply_medium="water" dual_supply="True"/>
|
||||||
<templateGenerationEquipments generation_id="24" name="template Groundwater-to-Water Heat Pump" fuel="electricity" heatSource="Ground" nominalCOP="3.5" supply_medium="water"/>
|
<templateGenerationEquipments generation_id="24" name="template Groundwater-to-Water Heat Pump" fuel="electricity" heatSource="Ground" nominalCOP="3.5" supply_medium="water" dual_supply="True"/>
|
||||||
<templateGenerationEquipments generation_id="25" name="template Water-to-Water Heat Pump" fuel="electricity" heatSource="Water" nominalCOP="3.5" supply_medium="water"/>
|
<templateGenerationEquipments generation_id="25" name="template Water-to-Water Heat Pump" fuel="electricity" heatSource="Water" nominalCOP="3.5" supply_medium="water" dual_supply="True"/>
|
||||||
<templateGenerationEquipments generation_id="26" name="template Photovoltaic Module" nominalEfficiency="0.2" width="1.0" height="1.0"/>
|
<templateGenerationEquipments generation_id="26" name="template Photovoltaic Module" nominalEfficiency="0.2" width="1.0" height="1.0"/>
|
||||||
<manufacturers manufacturer_id="1" name="Alpine" country="USA" product="Natural Gas Boiler"/>
|
<manufacturers manufacturer_id="1" name="Alpine" country="USA" product="Natural Gas Boiler"/>
|
||||||
<manufacturers manufacturer_id="2" name="Alta" country="USA" product="Natural Gas Boiler"/>
|
<manufacturers manufacturer_id="2" name="Alta" country="USA" product="Natural Gas Boiler"/>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user