lbt-measures 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.github/workflows/ci.yaml +63 -0
- data/.gitignore +34 -0
- data/.releaserc.json +7 -0
- data/Gemfile +11 -0
- data/LICENSE.md +23 -0
- data/README.md +13 -0
- data/lbt-measures.gemspec +31 -0
- data/lib/efficiency_standard/LICENSE.md +27 -0
- data/lib/efficiency_standard/README.md +32 -0
- data/lib/efficiency_standard/README.md.erb +42 -0
- data/lib/efficiency_standard/measure.rb +142 -0
- data/lib/efficiency_standard/measure.xml +70 -0
- data/lib/inject_idf/LICENSE.md +27 -0
- data/lib/inject_idf/README.md +32 -0
- data/lib/inject_idf/README.md.erb +42 -0
- data/lib/inject_idf/measure.rb +107 -0
- data/lib/inject_idf/measure.xml +72 -0
- data/lib/openstudio_results/LICENSE.md +13 -0
- data/lib/openstudio_results/README.md +266 -0
- data/lib/openstudio_results/README.md.erb +46 -0
- data/lib/openstudio_results/measure.rb +384 -0
- data/lib/openstudio_results/measure.xml +1546 -0
- data/lib/openstudio_results/resources/Siz.AirConditionerVariableRefrigerantFlow.rb +82 -0
- data/lib/openstudio_results/resources/Siz.AirLoopHVAC.rb +23 -0
- data/lib/openstudio_results/resources/Siz.AirLoopHVACUnitaryHeatCoolVAVChangeoverBypass.rb +66 -0
- data/lib/openstudio_results/resources/Siz.AirLoopHVACUnitaryHeatPumpAirToAir.rb +66 -0
- data/lib/openstudio_results/resources/Siz.AirLoopHVACUnitaryHeatPumpAirToAirMultiSpeed.rb +108 -0
- data/lib/openstudio_results/resources/Siz.AirLoopHVACUnitarySystem.rb +84 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalDualDuctVAV.rb +23 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctConstantVolumeCooledBeam.rb +40 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctConstantVolumeFourPipeInduction.rb +84 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctConstantVolumeReheat.rb +45 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctParallelPIUReheat.rb +46 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctSeriesPIUReheat.rb +46 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctUncontrolled.rb +23 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctVAVHeatAndCoolNoReheat.rb +23 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctVAVHeatAndCoolReheat.rb +45 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctVAVNoReheat.rb +23 -0
- data/lib/openstudio_results/resources/Siz.AirTerminalSingleDuctVAVReheat.rb +45 -0
- data/lib/openstudio_results/resources/Siz.BoilerHotWater.rb +46 -0
- data/lib/openstudio_results/resources/Siz.BoilerSteam.rb +29 -0
- data/lib/openstudio_results/resources/Siz.ChillerAbsorption.rb +40 -0
- data/lib/openstudio_results/resources/Siz.ChillerAbsorptionIndirect.rb +40 -0
- data/lib/openstudio_results/resources/Siz.ChillerElectricEIR.rb +69 -0
- data/lib/openstudio_results/resources/Siz.ChillerHeaterPerformanceElectricEIR.rb +52 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXMultiSpeed.rb +32 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXMultiSpeedStageData.rb +49 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXSingleSpeed.rb +47 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXTwoSpeed.rb +50 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXTwoStageWithHumidityControlMode.rb +100 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXVariableRefrigerantFlow.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXVariableSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingDXVariableSpeedSpeedData.rb +13 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingLowTempRadiantVarFlow.rb +18 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingWater.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingWaterToAirHeatPumpEquationFit.rb +63 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingWaterToAirHeatPumpVariableSpeedEquationFit.rb +67 -0
- data/lib/openstudio_results/resources/Siz.CoilCoolingWaterToAirHeatPumpVariableSpeedEquationFitSpeedData.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDXMultiSpeed.rb +32 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDXMultiSpeedStageData.rb +46 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDXSingleSpeed.rb +46 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDXVariableRefrigerantFlow.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDXVariableSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDXVariableSpeedSpeedData.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingDesuperheater.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingElectric.rb +29 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingGas.rb +29 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingGasMultiStage.rb +14 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingGasMultiStageStageData.rb +29 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingLowTempRadiantVarFlow.rb +18 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingWater.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingWaterBaseboard.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingWaterBaseboardRadiant.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingWaterToAirHeatPumpEquationFit.rb +63 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingWaterToAirHeatPumpVariableSpeedEquationFit.rb +67 -0
- data/lib/openstudio_results/resources/Siz.CoilHeatingWaterToAirHeatPumpVariableSpeedEquationFitSpeedData.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilPerformanceDXCooling.rb +47 -0
- data/lib/openstudio_results/resources/Siz.CoilSystemCoolingDXHeatExchangerAssisted.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilSystemCoolingWaterHeatExchangerAssisted.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilWaterHeatingAirToWaterHeatPump.rb +46 -0
- data/lib/openstudio_results/resources/Siz.CoilWaterHeatingAirToWaterHeatPumpWrapped.rb +12 -0
- data/lib/openstudio_results/resources/Siz.CoilWaterHeatingDesuperheater.rb +12 -0
- data/lib/openstudio_results/resources/Siz.ControllerOutdoorAir.rb +23 -0
- data/lib/openstudio_results/resources/Siz.CoolingTowerSingleSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoolingTowerTwoSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.CoolingTowerVariableSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.DistrictCooling.rb +23 -0
- data/lib/openstudio_results/resources/Siz.DistrictHeating.rb +23 -0
- data/lib/openstudio_results/resources/Siz.ElectricLoadCenterInverterLookUpTable.rb +17 -0
- data/lib/openstudio_results/resources/Siz.ElectricLoadCenterInverterSimple.rb +12 -0
- data/lib/openstudio_results/resources/Siz.ElectricLoadCenterStorageConverter.rb +12 -0
- data/lib/openstudio_results/resources/Siz.ElectricLoadCenterStorageSimple.rb +13 -0
- data/lib/openstudio_results/resources/Siz.EvaporativeCoolerDirectResearchSpecial.rb +29 -0
- data/lib/openstudio_results/resources/Siz.EvaporativeCoolerIndirectResearchSpecial.rb +32 -0
- data/lib/openstudio_results/resources/Siz.EvaporativeFluidCoolerSingleSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.EvaporativeFluidCoolerTwoSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.FanConstantVolume.rb +31 -0
- data/lib/openstudio_results/resources/Siz.FanOnOff.rb +31 -0
- data/lib/openstudio_results/resources/Siz.FanSystemModel.rb +31 -0
- data/lib/openstudio_results/resources/Siz.FanVariableVolume.rb +31 -0
- data/lib/openstudio_results/resources/Siz.FanZoneExhaust.rb +13 -0
- data/lib/openstudio_results/resources/Siz.FluidCoolerSingleSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.FluidCoolerTwoSpeed.rb +40 -0
- data/lib/openstudio_results/resources/Siz.GeneratorFuelCellElectricalStorage.rb +13 -0
- data/lib/openstudio_results/resources/Siz.GeneratorFuelCellInverter.rb +12 -0
- data/lib/openstudio_results/resources/Siz.GeneratorFuelCellPowerModule.rb +12 -0
- data/lib/openstudio_results/resources/Siz.GeneratorMicroTurbine.rb +12 -0
- data/lib/openstudio_results/resources/Siz.GeneratorMicroTurbineHeatRecovery.rb +12 -0
- data/lib/openstudio_results/resources/Siz.HVACComponent.rb +127 -0
- data/lib/openstudio_results/resources/Siz.HeaderedPumpsConstantSpeed.rb +30 -0
- data/lib/openstudio_results/resources/Siz.HeaderedPumpsVariableSpeed.rb +30 -0
- data/lib/openstudio_results/resources/Siz.HeatExchangerAirToAirSensibleAndLatent.rb +36 -0
- data/lib/openstudio_results/resources/Siz.HeatExchangerFluidToFluid.rb +23 -0
- data/lib/openstudio_results/resources/Siz.HeatPumpWaterToWaterEquationFitCooling.rb +40 -0
- data/lib/openstudio_results/resources/Siz.HeatPumpWaterToWaterEquationFitHeating.rb +40 -0
- data/lib/openstudio_results/resources/Siz.HumidifierSteamElectric.rb +23 -0
- data/lib/openstudio_results/resources/Siz.Model.rb +134 -0
- data/lib/openstudio_results/resources/Siz.ModelObject.rb +40 -0
- data/lib/openstudio_results/resources/Siz.PhotovoltaicPerformanceSimple.rb +12 -0
- data/lib/openstudio_results/resources/Siz.PlantComponentTemperatureSource.rb +23 -0
- data/lib/openstudio_results/resources/Siz.PlantLoop.rb +40 -0
- data/lib/openstudio_results/resources/Siz.PumpConstantSpeed.rb +30 -0
- data/lib/openstudio_results/resources/Siz.PumpVariableSpeed.rb +30 -0
- data/lib/openstudio_results/resources/Siz.RefrigerationSecondarySystem.rb +12 -0
- data/lib/openstudio_results/resources/Siz.RefrigerationSystem.rb +12 -0
- data/lib/openstudio_results/resources/Siz.RefrigerationTranscriticalSystem.rb +13 -0
- data/lib/openstudio_results/resources/Siz.SizingSystem.rb +57 -0
- data/lib/openstudio_results/resources/Siz.SolarCollectorFlatPlatePhotovoltaicThermal.rb +23 -0
- data/lib/openstudio_results/resources/Siz.SolarCollectorPerformancePhotovoltaicThermalSimple.rb +12 -0
- data/lib/openstudio_results/resources/Siz.ThermalStorageChilledWaterStratified.rb +30 -0
- data/lib/openstudio_results/resources/Siz.WaterHeaterHeatPump.rb +29 -0
- data/lib/openstudio_results/resources/Siz.WaterHeaterHeatPumpWrappedCondenser.rb +12 -0
- data/lib/openstudio_results/resources/Siz.WaterHeaterMixed.rb +48 -0
- data/lib/openstudio_results/resources/Siz.WaterHeaterStratified.rb +48 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACBaseboardConvectiveElectric.rb +29 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACBaseboardConvectiveWater.rb +28 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACBaseboardRadiantConvectiveElectric.rb +29 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACBaseboardRadiantConvectiveWater.rb +28 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACEnergyRecoveryVentilator.rb +29 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACFourPipeFanCoil.rb +72 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACHighTemperatureRadiant.rb +12 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACIdealLoadsAirSystem.rb +64 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACLowTempRadiantConstFlow.rb +20 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACLowTempRadiantVarFlow.rb +38 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACPackagedTerminalAirConditioner.rb +91 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACPackagedTerminalHeatPump.rb +91 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACTerminalUnitVariableRefrigerantFlow.rb +122 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACUnitHeater.rb +46 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACUnitVentilator.rb +98 -0
- data/lib/openstudio_results/resources/Siz.ZoneHVACWaterToAirHeatPump.rb +91 -0
- data/lib/openstudio_results/resources/Siz.ZoneVentilationDesignFlowRate.rb +13 -0
- data/lib/openstudio_results/resources/bootstrap.min.css +5 -0
- data/lib/openstudio_results/resources/bootstrap.min.js +6 -0
- data/lib/openstudio_results/resources/d3.min.js +5 -0
- data/lib/openstudio_results/resources/dimple.v2.1.2.min.js +3 -0
- data/lib/openstudio_results/resources/jquery.min.js +6 -0
- data/lib/openstudio_results/resources/os_lib_reporting.rb +4891 -0
- data/lib/openstudio_results/resources/report.html.erb +501 -0
- data/lib/view_data/LICENSE.md +13 -0
- data/lib/view_data/README.md +72 -0
- data/lib/view_data/README.md.erb +42 -0
- data/lib/view_data/measure.rb +449 -0
- data/lib/view_data/measure.xml +202 -0
- data/lib/view_data/resources/js/TweenLite.2.1.3.min.js +12 -0
- data/lib/view_data/resources/js/dat.gui.0.7.9.min.js +13 -0
- data/lib/view_data/resources/js/three.orbitcontrols.js +706 -0
- data/lib/view_data/resources/js/three.r98.min.js +964 -0
- data/lib/view_data/resources/report.html.in +1577 -0
- data/lib/view_data/resources/va3c.rb +996 -0
- metadata +227 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::HeaderedPumpsConstantSpeed
|
|
7
|
+
def maxWaterFlowRate
|
|
8
|
+
if totalRatedFlowRate.is_initialized
|
|
9
|
+
totalRatedFlowRate
|
|
10
|
+
else
|
|
11
|
+
autosizedTotalRatedFlowRate
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def maxWaterFlowRateAutosized
|
|
16
|
+
if totalRatedFlowRate.is_initialized
|
|
17
|
+
# Not autosized if hard size field value present
|
|
18
|
+
return OpenStudio::OptionalBool.new(false)
|
|
19
|
+
else
|
|
20
|
+
return OpenStudio::OptionalBool.new(true)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def performanceCharacteristics
|
|
25
|
+
effs = []
|
|
26
|
+
effs << [ratedPumpHead, 'Rated Pump Head']
|
|
27
|
+
effs << [motorEfficiency, 'Motor Efficiency']
|
|
28
|
+
return effs
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::HeaderedPumpsVariableSpeed
|
|
7
|
+
def maxWaterFlowRate
|
|
8
|
+
if totalRatedFlowRate.is_initialized
|
|
9
|
+
totalRatedFlowRate
|
|
10
|
+
else
|
|
11
|
+
autosizedTotalRatedFlowRate
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def maxWaterFlowRateAutosized
|
|
16
|
+
if totalRatedFlowRate.is_initialized
|
|
17
|
+
# Not autosized if hard size field value present
|
|
18
|
+
return OpenStudio::OptionalBool.new(false)
|
|
19
|
+
else
|
|
20
|
+
return OpenStudio::OptionalBool.new(true)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def performanceCharacteristics
|
|
25
|
+
effs = []
|
|
26
|
+
effs << [ratedPumpHead, 'Rated Pump Head']
|
|
27
|
+
effs << [motorEfficiency, 'Motor Efficiency']
|
|
28
|
+
return effs
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::HeatExchangerAirToAirSensibleAndLatent
|
|
7
|
+
def maxAirFlowRate
|
|
8
|
+
if nominalSupplyAirFlowRate.is_initialized
|
|
9
|
+
nominalSupplyAirFlowRate
|
|
10
|
+
else
|
|
11
|
+
autosizedNominalSupplyAirFlowRate
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def maxAirFlowRateAutosized
|
|
16
|
+
if nominalSupplyAirFlowRate.is_initialized
|
|
17
|
+
# Not autosized if hard size field value present
|
|
18
|
+
return OpenStudio::OptionalBool.new(false)
|
|
19
|
+
else
|
|
20
|
+
return OpenStudio::OptionalBool.new(true)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def performanceCharacteristics
|
|
25
|
+
effs = []
|
|
26
|
+
effs << [sensibleEffectivenessat100HeatingAirFlow, 'Sensible Effectivenessat 100 Heating Air Flow']
|
|
27
|
+
effs << [latentEffectivenessat100HeatingAirFlow, 'Latent Effectivenessat 100 Heating Air Flow']
|
|
28
|
+
effs << [sensibleEffectivenessat75HeatingAirFlow, 'Sensible Effectivenessat 75 Heating Air Flow']
|
|
29
|
+
effs << [latentEffectivenessat75HeatingAirFlow, 'Latent Effectivenessat 75 Heating Air Flow']
|
|
30
|
+
effs << [sensibleEffectivenessat100CoolingAirFlow, 'Sensible Effectivenessat 100 Cooling Air Flow']
|
|
31
|
+
effs << [latentEffectivenessat100CoolingAirFlow, 'Latent Effectivenessat 100 Cooling Air Flow']
|
|
32
|
+
effs << [sensibleEffectivenessat75CoolingAirFlow, 'Sensible Effectivenessat 75 Cooling Air Flow']
|
|
33
|
+
effs << [latentEffectivenessat75CoolingAirFlow, 'Latent Effectivenessat 75 Cooling Air Flow']
|
|
34
|
+
return effs
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::HeatExchangerFluidToFluid
|
|
7
|
+
def maxWaterFlowRate
|
|
8
|
+
if loopDemandSideDesignFlowRate.is_initialized
|
|
9
|
+
loopDemandSideDesignFlowRate
|
|
10
|
+
else
|
|
11
|
+
autosizedLoopDemandSideDesignFlowRate
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def maxWaterFlowRateAutosized
|
|
16
|
+
if loopDemandSideDesignFlowRate.is_initialized
|
|
17
|
+
# Not autosized if hard size field value present
|
|
18
|
+
return OpenStudio::OptionalBool.new(false)
|
|
19
|
+
else
|
|
20
|
+
return OpenStudio::OptionalBool.new(true)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::HeatPumpWaterToWaterEquationFitCooling
|
|
7
|
+
def maxCoolingCapacity
|
|
8
|
+
if ratedCoolingCapacity.is_initialized
|
|
9
|
+
ratedCoolingCapacity
|
|
10
|
+
else
|
|
11
|
+
autosizedRatedCoolingCapacity
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def maxWaterFlowRate
|
|
16
|
+
if referenceLoadSideFlowRate.is_initialized
|
|
17
|
+
referenceLoadSideFlowRate
|
|
18
|
+
else
|
|
19
|
+
autosizedReferenceLoadSideFlowRate
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def maxCoolingCapacityAutosized
|
|
24
|
+
if ratedCoolingCapacity.is_initialized
|
|
25
|
+
# Not autosized if hard size field value present
|
|
26
|
+
return OpenStudio::OptionalBool.new(false)
|
|
27
|
+
else
|
|
28
|
+
return OpenStudio::OptionalBool.new(true)
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def maxWaterFlowRateAutosized
|
|
33
|
+
if referenceLoadSideFlowRate.is_initialized
|
|
34
|
+
# Not autosized if hard size field value present
|
|
35
|
+
return OpenStudio::OptionalBool.new(false)
|
|
36
|
+
else
|
|
37
|
+
return OpenStudio::OptionalBool.new(true)
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::HeatPumpWaterToWaterEquationFitHeating
|
|
7
|
+
def maxHeatingCapacity
|
|
8
|
+
if ratedHeatingCapacity.is_initialized
|
|
9
|
+
ratedHeatingCapacity
|
|
10
|
+
else
|
|
11
|
+
autosizedRatedHeatingCapacity
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def maxWaterFlowRate
|
|
16
|
+
if referenceLoadSideFlowRate.is_initialized
|
|
17
|
+
referenceLoadSideFlowRate
|
|
18
|
+
else
|
|
19
|
+
autosizedReferenceLoadSideFlowRate
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def maxHeatingCapacityAutosized
|
|
24
|
+
if ratedHeatingCapacity.is_initialized
|
|
25
|
+
# Not autosized if hard size field value present
|
|
26
|
+
return OpenStudio::OptionalBool.new(false)
|
|
27
|
+
else
|
|
28
|
+
return OpenStudio::OptionalBool.new(true)
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def maxWaterFlowRateAutosized
|
|
33
|
+
if referenceLoadSideFlowRate.is_initialized
|
|
34
|
+
# Not autosized if hard size field value present
|
|
35
|
+
return OpenStudio::OptionalBool.new(false)
|
|
36
|
+
else
|
|
37
|
+
return OpenStudio::OptionalBool.new(true)
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::HumidifierSteamElectric
|
|
7
|
+
def ratedPower
|
|
8
|
+
if ratedPower.is_initialized # SystemStackError: stack level too deep error when this called, disabled in Siz.Model.rb
|
|
9
|
+
ratedPower
|
|
10
|
+
else
|
|
11
|
+
ratedPowerAutosized
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def ratedPowerAutosized
|
|
16
|
+
if ratedPower.is_initialized
|
|
17
|
+
# Not autosized if hard size field value present
|
|
18
|
+
return OpenStudio::OptionalBool.new(false)
|
|
19
|
+
else
|
|
20
|
+
return OpenStudio::OptionalBool.new(true)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
require_relative 'Siz.HVACComponent'
|
|
7
|
+
require_relative 'Siz.ModelObject'
|
|
8
|
+
require_relative 'Siz.AirConditionerVariableRefrigerantFlow'
|
|
9
|
+
require_relative 'Siz.AirLoopHVAC'
|
|
10
|
+
require_relative 'Siz.AirLoopHVACUnitaryHeatCoolVAVChangeoverBypass'
|
|
11
|
+
require_relative 'Siz.AirLoopHVACUnitaryHeatPumpAirToAir'
|
|
12
|
+
require_relative 'Siz.AirLoopHVACUnitaryHeatPumpAirToAirMultiSpeed'
|
|
13
|
+
require_relative 'Siz.AirLoopHVACUnitarySystem'
|
|
14
|
+
require_relative 'Siz.AirTerminalDualDuctVAV'
|
|
15
|
+
require_relative 'Siz.AirTerminalSingleDuctConstantVolumeCooledBeam'
|
|
16
|
+
require_relative 'Siz.AirTerminalSingleDuctConstantVolumeFourPipeInduction'
|
|
17
|
+
require_relative 'Siz.AirTerminalSingleDuctConstantVolumeReheat'
|
|
18
|
+
require_relative 'Siz.AirTerminalSingleDuctParallelPIUReheat'
|
|
19
|
+
require_relative 'Siz.AirTerminalSingleDuctSeriesPIUReheat'
|
|
20
|
+
require_relative 'Siz.AirTerminalSingleDuctUncontrolled'
|
|
21
|
+
require_relative 'Siz.AirTerminalSingleDuctVAVHeatAndCoolNoReheat'
|
|
22
|
+
require_relative 'Siz.AirTerminalSingleDuctVAVHeatAndCoolReheat'
|
|
23
|
+
require_relative 'Siz.AirTerminalSingleDuctVAVNoReheat'
|
|
24
|
+
require_relative 'Siz.AirTerminalSingleDuctVAVReheat'
|
|
25
|
+
require_relative 'Siz.BoilerHotWater'
|
|
26
|
+
require_relative 'Siz.BoilerSteam'
|
|
27
|
+
require_relative 'Siz.ChillerAbsorption'
|
|
28
|
+
require_relative 'Siz.ChillerAbsorptionIndirect'
|
|
29
|
+
require_relative 'Siz.ChillerElectricEIR'
|
|
30
|
+
require_relative 'Siz.ChillerHeaterPerformanceElectricEIR'
|
|
31
|
+
require_relative 'Siz.CoilCoolingDXMultiSpeed'
|
|
32
|
+
require_relative 'Siz.CoilCoolingDXMultiSpeedStageData'
|
|
33
|
+
require_relative 'Siz.CoilCoolingDXSingleSpeed'
|
|
34
|
+
require_relative 'Siz.CoilCoolingDXTwoSpeed'
|
|
35
|
+
require_relative 'Siz.CoilCoolingDXTwoStageWithHumidityControlMode'
|
|
36
|
+
require_relative 'Siz.CoilCoolingDXVariableRefrigerantFlow'
|
|
37
|
+
require_relative 'Siz.CoilCoolingDXVariableSpeed'
|
|
38
|
+
require_relative 'Siz.CoilCoolingDXVariableSpeedSpeedData'
|
|
39
|
+
require_relative 'Siz.CoilCoolingLowTempRadiantVarFlow'
|
|
40
|
+
require_relative 'Siz.CoilCoolingWater'
|
|
41
|
+
require_relative 'Siz.CoilCoolingWaterToAirHeatPumpEquationFit'
|
|
42
|
+
require_relative 'Siz.CoilCoolingWaterToAirHeatPumpVariableSpeedEquationFit'
|
|
43
|
+
require_relative 'Siz.CoilCoolingWaterToAirHeatPumpVariableSpeedEquationFitSpeedData'
|
|
44
|
+
require_relative 'Siz.CoilHeatingDXMultiSpeed'
|
|
45
|
+
require_relative 'Siz.CoilHeatingDXMultiSpeedStageData'
|
|
46
|
+
require_relative 'Siz.CoilHeatingDXSingleSpeed'
|
|
47
|
+
require_relative 'Siz.CoilHeatingDXVariableRefrigerantFlow'
|
|
48
|
+
require_relative 'Siz.CoilHeatingDXVariableSpeed'
|
|
49
|
+
require_relative 'Siz.CoilHeatingDXVariableSpeedSpeedData'
|
|
50
|
+
require_relative 'Siz.CoilHeatingDesuperheater'
|
|
51
|
+
require_relative 'Siz.CoilHeatingElectric'
|
|
52
|
+
require_relative 'Siz.CoilHeatingGas'
|
|
53
|
+
require_relative 'Siz.CoilHeatingGasMultiStage'
|
|
54
|
+
require_relative 'Siz.CoilHeatingGasMultiStageStageData'
|
|
55
|
+
require_relative 'Siz.CoilHeatingLowTempRadiantVarFlow'
|
|
56
|
+
require_relative 'Siz.CoilHeatingWater'
|
|
57
|
+
require_relative 'Siz.CoilHeatingWaterBaseboard'
|
|
58
|
+
require_relative 'Siz.CoilHeatingWaterBaseboardRadiant'
|
|
59
|
+
require_relative 'Siz.CoilHeatingWaterToAirHeatPumpEquationFit'
|
|
60
|
+
require_relative 'Siz.CoilHeatingWaterToAirHeatPumpVariableSpeedEquationFit'
|
|
61
|
+
require_relative 'Siz.CoilHeatingWaterToAirHeatPumpVariableSpeedEquationFitSpeedData'
|
|
62
|
+
require_relative 'Siz.CoilPerformanceDXCooling'
|
|
63
|
+
require_relative 'Siz.CoilSystemCoolingDXHeatExchangerAssisted'
|
|
64
|
+
require_relative 'Siz.CoilSystemCoolingWaterHeatExchangerAssisted'
|
|
65
|
+
require_relative 'Siz.CoilWaterHeatingAirToWaterHeatPump'
|
|
66
|
+
require_relative 'Siz.CoilWaterHeatingAirToWaterHeatPumpWrapped'
|
|
67
|
+
require_relative 'Siz.CoilWaterHeatingDesuperheater'
|
|
68
|
+
require_relative 'Siz.ControllerOutdoorAir'
|
|
69
|
+
require_relative 'Siz.CoolingTowerSingleSpeed'
|
|
70
|
+
require_relative 'Siz.CoolingTowerTwoSpeed'
|
|
71
|
+
require_relative 'Siz.CoolingTowerVariableSpeed'
|
|
72
|
+
require_relative 'Siz.DistrictCooling'
|
|
73
|
+
require_relative 'Siz.DistrictHeating'
|
|
74
|
+
require_relative 'Siz.ElectricLoadCenterInverterLookUpTable'
|
|
75
|
+
require_relative 'Siz.ElectricLoadCenterInverterSimple'
|
|
76
|
+
require_relative 'Siz.ElectricLoadCenterStorageConverter'
|
|
77
|
+
require_relative 'Siz.ElectricLoadCenterStorageSimple'
|
|
78
|
+
require_relative 'Siz.EvaporativeCoolerDirectResearchSpecial'
|
|
79
|
+
require_relative 'Siz.EvaporativeCoolerIndirectResearchSpecial'
|
|
80
|
+
require_relative 'Siz.EvaporativeFluidCoolerSingleSpeed'
|
|
81
|
+
require_relative 'Siz.EvaporativeFluidCoolerTwoSpeed'
|
|
82
|
+
require_relative 'Siz.FanConstantVolume'
|
|
83
|
+
require_relative 'Siz.FanOnOff'
|
|
84
|
+
require_relative 'Siz.FanSystemModel'
|
|
85
|
+
require_relative 'Siz.FanVariableVolume'
|
|
86
|
+
require_relative 'Siz.FanZoneExhaust'
|
|
87
|
+
require_relative 'Siz.FluidCoolerSingleSpeed'
|
|
88
|
+
require_relative 'Siz.FluidCoolerTwoSpeed'
|
|
89
|
+
require_relative 'Siz.GeneratorFuelCellElectricalStorage'
|
|
90
|
+
require_relative 'Siz.GeneratorFuelCellInverter'
|
|
91
|
+
require_relative 'Siz.GeneratorFuelCellPowerModule'
|
|
92
|
+
require_relative 'Siz.GeneratorMicroTurbine'
|
|
93
|
+
require_relative 'Siz.GeneratorMicroTurbineHeatRecovery'
|
|
94
|
+
require_relative 'Siz.HeaderedPumpsConstantSpeed'
|
|
95
|
+
require_relative 'Siz.HeaderedPumpsVariableSpeed'
|
|
96
|
+
require_relative 'Siz.HeatExchangerAirToAirSensibleAndLatent'
|
|
97
|
+
require_relative 'Siz.HeatExchangerFluidToFluid'
|
|
98
|
+
require_relative 'Siz.HeatPumpWaterToWaterEquationFitCooling'
|
|
99
|
+
require_relative 'Siz.HeatPumpWaterToWaterEquationFitHeating'
|
|
100
|
+
# require_relative 'Siz.HumidifierSteamElectric'
|
|
101
|
+
require_relative 'Siz.Model'
|
|
102
|
+
require_relative 'Siz.PhotovoltaicPerformanceSimple'
|
|
103
|
+
require_relative 'Siz.PlantComponentTemperatureSource'
|
|
104
|
+
require_relative 'Siz.PlantLoop'
|
|
105
|
+
require_relative 'Siz.PumpConstantSpeed'
|
|
106
|
+
require_relative 'Siz.PumpVariableSpeed'
|
|
107
|
+
require_relative 'Siz.RefrigerationSecondarySystem'
|
|
108
|
+
require_relative 'Siz.RefrigerationSystem'
|
|
109
|
+
require_relative 'Siz.RefrigerationTranscriticalSystem'
|
|
110
|
+
require_relative 'Siz.SizingSystem'
|
|
111
|
+
require_relative 'Siz.SolarCollectorFlatPlatePhotovoltaicThermal'
|
|
112
|
+
require_relative 'Siz.SolarCollectorPerformancePhotovoltaicThermalSimple'
|
|
113
|
+
require_relative 'Siz.ThermalStorageChilledWaterStratified'
|
|
114
|
+
require_relative 'Siz.WaterHeaterHeatPump'
|
|
115
|
+
require_relative 'Siz.WaterHeaterHeatPumpWrappedCondenser'
|
|
116
|
+
require_relative 'Siz.WaterHeaterMixed'
|
|
117
|
+
require_relative 'Siz.WaterHeaterStratified'
|
|
118
|
+
require_relative 'Siz.ZoneHVACBaseboardConvectiveElectric'
|
|
119
|
+
require_relative 'Siz.ZoneHVACBaseboardConvectiveWater'
|
|
120
|
+
require_relative 'Siz.ZoneHVACBaseboardRadiantConvectiveElectric'
|
|
121
|
+
require_relative 'Siz.ZoneHVACBaseboardRadiantConvectiveWater'
|
|
122
|
+
require_relative 'Siz.ZoneHVACEnergyRecoveryVentilator'
|
|
123
|
+
require_relative 'Siz.ZoneHVACFourPipeFanCoil'
|
|
124
|
+
require_relative 'Siz.ZoneHVACHighTemperatureRadiant'
|
|
125
|
+
require_relative 'Siz.ZoneHVACIdealLoadsAirSystem'
|
|
126
|
+
require_relative 'Siz.ZoneHVACLowTempRadiantConstFlow'
|
|
127
|
+
require_relative 'Siz.ZoneHVACLowTempRadiantVarFlow'
|
|
128
|
+
require_relative 'Siz.ZoneHVACPackagedTerminalAirConditioner'
|
|
129
|
+
require_relative 'Siz.ZoneHVACPackagedTerminalHeatPump'
|
|
130
|
+
require_relative 'Siz.ZoneHVACTerminalUnitVariableRefrigerantFlow'
|
|
131
|
+
require_relative 'Siz.ZoneHVACUnitHeater'
|
|
132
|
+
require_relative 'Siz.ZoneHVACUnitVentilator'
|
|
133
|
+
require_relative 'Siz.ZoneHVACWaterToAirHeatPump'
|
|
134
|
+
require_relative 'Siz.ZoneVentilationDesignFlowRate'
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::ModelObject
|
|
7
|
+
# Convert object to a concrete class if possible
|
|
8
|
+
# @return [Object, nil] returns nil if the object was already
|
|
9
|
+
# of its concrete class, returns the object casted to its concrete
|
|
10
|
+
# class if it was casted successfully.
|
|
11
|
+
def cast_to_concrete_type
|
|
12
|
+
# puts "Casting '#{name}' to concrete type from #{caller_locations(1,1)[0].label}"
|
|
13
|
+
# Get the class type and the IDD object type
|
|
14
|
+
comp_class = self.class.name.to_s.gsub('OpenStudio::Model::', '')
|
|
15
|
+
comp_type = iddObject.type.valueDescription.gsub('OS:', '').delete(':')
|
|
16
|
+
case comp_type
|
|
17
|
+
when 'CoilCoolingLowTemperatureRadiantVariableFlow'
|
|
18
|
+
comp_type = 'CoilCoolingLowTempRadiantVarFlow'
|
|
19
|
+
when 'CoilHeatingLowTemperatureRadiantVariableFlow'
|
|
20
|
+
comp_type = 'CoilHeatingLowTempRadiantVarFlow'
|
|
21
|
+
when 'ZoneHVACLowTemperatureRadiantVariableFlow'
|
|
22
|
+
comp_type = 'ZoneHVACLowTempRadiantVarFlow'
|
|
23
|
+
end
|
|
24
|
+
# If the class type and the IDD object type are identical,
|
|
25
|
+
# this means that the object is already of the concrete class.
|
|
26
|
+
if comp_class == comp_type
|
|
27
|
+
# puts "INFO: #{name} of type #{comp_type} is already concrete"
|
|
28
|
+
return nil
|
|
29
|
+
end
|
|
30
|
+
# Cast the object to its concrete class type
|
|
31
|
+
cast_method = "to_#{comp_type}"
|
|
32
|
+
if respond_to?(cast_method)
|
|
33
|
+
return public_send(cast_method).get
|
|
34
|
+
else
|
|
35
|
+
puts "ERROR: #{name} of type #{comp_type} cannot be made concrete using #{cast_method}"
|
|
36
|
+
# raise "ERROR: #{name} of type #{comp_type} cannot be made concrete using #{cast_method}"
|
|
37
|
+
return nil
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::PhotovoltaicPerformanceSimple
|
|
7
|
+
def performanceCharacteristics
|
|
8
|
+
effs = []
|
|
9
|
+
effs << [fixedEfficiency, 'Fixed Efficiency']
|
|
10
|
+
return effs
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::PlantComponentTemperatureSource
|
|
7
|
+
def maxWaterFlowRate
|
|
8
|
+
if designVolumeFlowRate.is_initialized
|
|
9
|
+
designVolumeFlowRate
|
|
10
|
+
else
|
|
11
|
+
autosizedDesignVolumeFlowRate
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def maxWaterFlowRateAutosized
|
|
16
|
+
if designVolumeFlowRate.is_initialized
|
|
17
|
+
# Not autosized if hard size field value present
|
|
18
|
+
return OpenStudio::OptionalBool.new(false)
|
|
19
|
+
else
|
|
20
|
+
return OpenStudio::OptionalBool.new(true)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::PlantLoop
|
|
7
|
+
def maxAirFlowRate
|
|
8
|
+
if maximumLoopFlowRate.is_initialized
|
|
9
|
+
maximumLoopFlowRate
|
|
10
|
+
else
|
|
11
|
+
autosizedMaximumLoopFlowRate
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def maxWaterFlowRate
|
|
16
|
+
if maximumLoopFlowRate.is_initialized
|
|
17
|
+
maximumLoopFlowRate
|
|
18
|
+
else
|
|
19
|
+
autosizedMaximumLoopFlowRate
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def maxAirFlowRateAutosized
|
|
24
|
+
if maximumLoopFlowRate.is_initialized
|
|
25
|
+
# Not autosized if hard size field value present
|
|
26
|
+
return OpenStudio::OptionalBool.new(false)
|
|
27
|
+
else
|
|
28
|
+
return OpenStudio::OptionalBool.new(true)
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def maxWaterFlowRateAutosized
|
|
33
|
+
if maximumLoopFlowRate.is_initialized
|
|
34
|
+
# Not autosized if hard size field value present
|
|
35
|
+
return OpenStudio::OptionalBool.new(false)
|
|
36
|
+
else
|
|
37
|
+
return OpenStudio::OptionalBool.new(true)
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::PumpConstantSpeed
|
|
7
|
+
def maxWaterFlowRate
|
|
8
|
+
if ratedFlowRate.is_initialized
|
|
9
|
+
ratedFlowRate
|
|
10
|
+
else
|
|
11
|
+
autosizedRatedFlowRate
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def maxWaterFlowRateAutosized
|
|
16
|
+
if ratedFlowRate.is_initialized
|
|
17
|
+
# Not autosized if hard size field value present
|
|
18
|
+
return OpenStudio::OptionalBool.new(false)
|
|
19
|
+
else
|
|
20
|
+
return OpenStudio::OptionalBool.new(true)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def performanceCharacteristics
|
|
25
|
+
effs = []
|
|
26
|
+
effs << [ratedPumpHead, 'Rated Pump Head']
|
|
27
|
+
effs << [motorEfficiency, 'Motor Efficiency']
|
|
28
|
+
return effs
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::PumpVariableSpeed
|
|
7
|
+
def maxWaterFlowRate
|
|
8
|
+
if ratedFlowRate.is_initialized
|
|
9
|
+
ratedFlowRate
|
|
10
|
+
else
|
|
11
|
+
autosizedRatedFlowRate
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def maxWaterFlowRateAutosized
|
|
16
|
+
if ratedFlowRate.is_initialized
|
|
17
|
+
# Not autosized if hard size field value present
|
|
18
|
+
return OpenStudio::OptionalBool.new(false)
|
|
19
|
+
else
|
|
20
|
+
return OpenStudio::OptionalBool.new(true)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def performanceCharacteristics
|
|
25
|
+
effs = []
|
|
26
|
+
effs << [ratedPumpHead, 'Rated Pump Head']
|
|
27
|
+
effs << [motorEfficiency, 'Motor Efficiency']
|
|
28
|
+
return effs
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::RefrigerationSecondarySystem
|
|
7
|
+
def performanceCharacteristics
|
|
8
|
+
effs = []
|
|
9
|
+
effs << [totalPumpHead, 'Total Pump Head']
|
|
10
|
+
return effs
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::RefrigerationSystem
|
|
7
|
+
def performanceCharacteristics
|
|
8
|
+
effs = []
|
|
9
|
+
effs << [shellandCoilIntercoolerEffectiveness, 'Shelland Coil Intercooler Effectiveness']
|
|
10
|
+
return effs
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::RefrigerationTranscriticalSystem
|
|
7
|
+
def performanceCharacteristics
|
|
8
|
+
effs = []
|
|
9
|
+
effs << [receiverPressure, 'Receiver Pressure']
|
|
10
|
+
effs << [subcoolerEffectiveness, 'Subcooler Effectiveness']
|
|
11
|
+
return effs
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::SizingSystem
|
|
7
|
+
def maxHeatingCapacity
|
|
8
|
+
if heatingDesignCapacity.is_initialized
|
|
9
|
+
heatingDesignCapacity
|
|
10
|
+
else
|
|
11
|
+
autosizedHeatingDesignCapacity
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def maxCoolingCapacity
|
|
16
|
+
if coolingDesignCapacity.is_initialized
|
|
17
|
+
coolingDesignCapacity
|
|
18
|
+
else
|
|
19
|
+
autosizedCoolingDesignCapacity
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def maxAirFlowRate
|
|
24
|
+
if designOutdoorAirFlowRate.is_initialized
|
|
25
|
+
designOutdoorAirFlowRate
|
|
26
|
+
else
|
|
27
|
+
autosizedDesignOutdoorAirFlowRate
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def maxHeatingCapacityAutosized
|
|
32
|
+
if heatingDesignCapacity.is_initialized
|
|
33
|
+
# Not autosized if hard size field value present
|
|
34
|
+
return OpenStudio::OptionalBool.new(false)
|
|
35
|
+
else
|
|
36
|
+
return OpenStudio::OptionalBool.new(true)
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def maxCoolingCapacityAutosized
|
|
41
|
+
if coolingDesignCapacity.is_initialized
|
|
42
|
+
# Not autosized if hard size field value present
|
|
43
|
+
return OpenStudio::OptionalBool.new(false)
|
|
44
|
+
else
|
|
45
|
+
return OpenStudio::OptionalBool.new(true)
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def maxAirFlowRateAutosized
|
|
50
|
+
if designOutdoorAirFlowRate.is_initialized
|
|
51
|
+
# Not autosized if hard size field value present
|
|
52
|
+
return OpenStudio::OptionalBool.new(false)
|
|
53
|
+
else
|
|
54
|
+
return OpenStudio::OptionalBool.new(true)
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# *******************************************************************************
|
|
2
|
+
# OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC.
|
|
3
|
+
# See also https://openstudio.net/license
|
|
4
|
+
# *******************************************************************************
|
|
5
|
+
|
|
6
|
+
class OpenStudio::Model::SolarCollectorFlatPlatePhotovoltaicThermal
|
|
7
|
+
def maxWaterFlowRate
|
|
8
|
+
if designFlowRate.is_initialized
|
|
9
|
+
designFlowRate
|
|
10
|
+
else
|
|
11
|
+
autosizedDesignFlowRate
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def maxWaterFlowRateAutosized
|
|
16
|
+
if designFlowRate.is_initialized
|
|
17
|
+
# Not autosized if hard size field value present
|
|
18
|
+
return OpenStudio::OptionalBool.new(false)
|
|
19
|
+
else
|
|
20
|
+
return OpenStudio::OptionalBool.new(true)
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|