openstudio-standards 0.2.17.rc2 → 0.3.1.rc1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/data/geometry/ASHRAESuperMarket.json +29 -38
- data/data/standards/OpenStudio_Standards-deer-ALL-comstock(space_types).xlsx +0 -0
- data/data/standards/metadata_units_OpenStudio_Standards-deer-ALL-comstockspace_types.csv +172 -0
- data/data/standards/test_performance_expected_dd_results.csv +12 -12
- data/lib/openstudio-standards/btap/analysis.rb +389 -389
- data/lib/openstudio-standards/btap/bridging.rb +2099 -0
- data/lib/openstudio-standards/btap/btap.model.rb +717 -717
- data/lib/openstudio-standards/btap/btap.rb +33 -30
- data/lib/openstudio-standards/btap/economics.rb +1163 -1163
- data/lib/openstudio-standards/btap/envelope.rb +4 -4
- data/lib/openstudio-standards/btap/equest.rb +2524 -2524
- data/lib/openstudio-standards/btap/fileio.rb +9 -0
- data/lib/openstudio-standards/btap/measures.rb +1515 -1515
- data/lib/openstudio-standards/btap/mpc.rb +554 -554
- data/lib/openstudio-standards/btap/reporting.rb +287 -287
- data/lib/openstudio-standards/btap/simmanager.rb +759 -759
- data/lib/openstudio-standards/btap/spaceloads.rb +439 -439
- data/lib/openstudio-standards/btap/spacetypes.rb +113 -113
- data/lib/openstudio-standards/btap/utilities.rb +134 -134
- data/lib/openstudio-standards/hvac_sizing/Siz.AirLoopHVAC.rb +8 -83
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilCoolingWater.rb +3 -99
- data/lib/openstudio-standards/hvac_sizing/Siz.HeatingCoolingFuels.rb +81 -75
- data/lib/openstudio-standards/hvac_sizing/Siz.Model.rb +7 -306
- data/lib/openstudio-standards/hvac_sizing/Siz.ThermalZone.rb +70 -98
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.Model.rb +41 -14
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.Model.rb +40 -14
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SuperMarket.rb +1 -23
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.exterior_lights.rb +7 -7
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.rb +5 -1
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.ServiceWaterHeating.rb +101 -4
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.hvac_systems.rb +16 -1
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.refrigeration.rb +5 -4
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.utilities.rb +24 -4
- data/lib/openstudio-standards/standards/Standards.AirLoopHVAC.rb +18 -2
- data/lib/openstudio-standards/standards/Standards.BoilerHotWater.rb +18 -0
- data/lib/openstudio-standards/standards/Standards.CoilCoolingDXSingleSpeed.rb +13 -10
- data/lib/openstudio-standards/standards/Standards.CoilDX.rb +5 -3
- data/lib/openstudio-standards/standards/Standards.CoilHeatingDXSingleSpeed.rb +11 -8
- data/lib/openstudio-standards/standards/Standards.Construction.rb +1 -1
- data/lib/openstudio-standards/standards/Standards.Model.rb +68 -52
- data/lib/openstudio-standards/standards/Standards.PlantLoop.rb +2 -2
- data/lib/openstudio-standards/standards/Standards.Space.rb +16 -18
- data/lib/openstudio-standards/standards/Standards.ThermalZone.rb +1 -1
- data/lib/openstudio-standards/standards/Standards.WaterHeaterMixed.rb +5 -5
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.ref_cases.json +510 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.refrigeration_compressors.json +18 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.refrigeration_walkins.json +410 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.spc_typ.json +2 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.ref_cases.json +510 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.refrigeration_compressors.json +18 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.refrigeration_walkins.json +410 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.spc_typ.json +2 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.ref_cases.json +510 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.refrigeration_compressors.json +18 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.refrigeration_walkins.json +410 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.spc_typ.json +2 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.ref_cases.json +510 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.refrigeration_compressors.json +18 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.refrigeration_walkins.json +410 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.spc_typ.json +2 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.spc_typ.json +2 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.spc_typ.json +2 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/data/ashrae_90_1.entryways.json +13 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/data/ashrae_90_1.parking.json +11 -2
- data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.AirLoopHVAC.rb +9 -0
- data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.Model.rb +2 -0
- data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.rb +4 -3
- data/lib/openstudio-standards/standards/deer/deer_1985/comstock_deer_1985/data/comstock_deer_1985.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_1996/comstock_deer_1996/data/comstock_deer_1996.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2003/comstock_deer_2003/data/comstock_deer_2003.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2003/deer_2003.ThermalZone.rb +21 -0
- data/lib/openstudio-standards/standards/deer/deer_2007/comstock_deer_2007/data/comstock_deer_2007.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2007/deer_2007.ThermalZone.rb +21 -0
- data/lib/openstudio-standards/standards/deer/deer_2011/comstock_deer_2011/data/comstock_deer_2011.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2011/deer_2011.ThermalZone.rb +21 -0
- data/lib/openstudio-standards/standards/deer/deer_2014/comstock_deer_2014/data/comstock_deer_2014.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2014/deer_2014.ThermalZone.rb +21 -0
- data/lib/openstudio-standards/standards/deer/deer_2015/comstock_deer_2015/data/comstock_deer_2015.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2015/deer_2015.ThermalZone.rb +21 -0
- data/lib/openstudio-standards/standards/deer/deer_2017/comstock_deer_2017/data/comstock_deer_2017.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2017/deer_2017.ThermalZone.rb +21 -0
- data/lib/openstudio-standards/standards/deer/deer_2020/comstock_deer_2020/data/comstock_deer_2020.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2020/deer_2020.AirLoopHVAC.rb +8 -0
- data/lib/openstudio-standards/standards/deer/deer_2020/deer_2020.ThermalZone.rb +21 -0
- data/lib/openstudio-standards/standards/deer/deer_2025/comstock_deer_2025/data/comstock_deer_2025.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2030/comstock_deer_2030/data/comstock_deer_2030.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2035/comstock_deer_2035/data/comstock_deer_2035.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2040/comstock_deer_2040/data/comstock_deer_2040.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2045/comstock_deer_2045/data/comstock_deer_2045.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2050/comstock_deer_2050/data/comstock_deer_2050.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2055/comstock_deer_2055/data/comstock_deer_2055.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2060/comstock_deer_2060/data/comstock_deer_2060.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2065/comstock_deer_2065/data/comstock_deer_2065.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2070/comstock_deer_2070/data/comstock_deer_2070.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_2075/comstock_deer_2075/data/comstock_deer_2075.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/deer/deer_pre_1975/comstock_deer_pre_1975/data/comstock_deer_pre_1975.spc_typ.json +405 -405
- data/lib/openstudio-standards/standards/necb/BTAPPRE1980/btap_pre1980.rb +1 -1
- data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_system_3_and_8_single_speed.rb +3 -1
- data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_system_4.rb +3 -1
- data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_system_6.rb +2 -2
- data/lib/openstudio-standards/standards/necb/ECMS/data/curves.json +233 -0
- data/lib/openstudio-standards/standards/necb/ECMS/data/unitary_acs.json +180 -0
- data/lib/openstudio-standards/standards/necb/ECMS/ecms.rb +6 -1
- data/lib/openstudio-standards/standards/necb/ECMS/hvac_systems.rb +807 -258
- data/lib/openstudio-standards/standards/necb/NECB2011/autozone.rb +102 -66
- data/lib/openstudio-standards/standards/necb/NECB2011/data/fuel_type_sets.json +85 -8
- data/lib/openstudio-standards/standards/necb/NECB2011/data/geometry/HighriseApartment.osm +2483 -992
- data/lib/openstudio-standards/standards/necb/NECB2011/data/geometry/LowriseApartment.osm +4 -336
- data/lib/openstudio-standards/standards/necb/NECB2011/data/geometry/MidriseApartment.osm +228 -231
- data/lib/openstudio-standards/standards/necb/NECB2011/data/heat_pumps_heating.json +12 -18
- data/lib/openstudio-standards/standards/necb/NECB2011/data/space_type_unit_definitions.txt +76 -0
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_1_multi_speed.rb +6 -1
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_1_single_speed.rb +111 -24
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_2_and_5.rb +1 -0
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_3_and_8_multi_speed.rb +3 -1
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_3_and_8_single_speed.rb +64 -16
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_4.rb +61 -17
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_6.rb +128 -0
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_systems.rb +252 -23
- data/lib/openstudio-standards/standards/necb/NECB2011/necb_2011.rb +316 -20
- data/lib/openstudio-standards/standards/necb/NECB2011/qaqc/necb_qaqc.rb +1 -1
- data/lib/openstudio-standards/standards/necb/NECB2011/service_water_heating.rb +4 -6
- data/lib/openstudio-standards/standards/necb/NECB2011/system_fuels.rb +38 -0
- data/lib/openstudio-standards/standards/necb/NECB2015/data/heat_pumps_heating.json +16 -24
- data/lib/openstudio-standards/standards/necb/NECB2015/hvac_systems.rb +48 -25
- data/lib/openstudio-standards/standards/necb/NECB2020/building_envelope.rb +3 -3
- data/lib/openstudio-standards/standards/necb/NECB2020/data/chillers.json +36 -19
- data/lib/openstudio-standards/standards/necb/NECB2020/data/furnaces.json +19 -4
- data/lib/openstudio-standards/standards/necb/NECB2020/data/heat_pumps.json +20 -40
- data/lib/openstudio-standards/standards/necb/NECB2020/data/heat_pumps_heating.json +74 -36
- data/lib/openstudio-standards/standards/necb/NECB2020/necb_2020.rb +0 -2
- data/lib/openstudio-standards/standards/necb/NECB2020/service_water_heating.rb +124 -57
- data/lib/openstudio-standards/standards/necb/common/btap_data.rb +124 -2
- data/lib/openstudio-standards/standards/necb/common/btap_datapoint.rb +15 -2
- data/lib/openstudio-standards/standards/necb/common/necb_reference_runs.csv +1 -1
- data/lib/openstudio-standards/utilities/simulation.rb +1 -1
- data/lib/openstudio-standards/version.rb +1 -1
- data/lib/openstudio-standards/weather/Weather.Model.rb +5 -0
- data/lib/openstudio-standards/weather/Weather.stat_file.rb +33 -1
- data/lib/openstudio-standards.rb +1 -0
- metadata +14 -121
- data/data/standards/OpenStudio_Standards-ashrae_90_1.xlsx +0 -0
- data/data/weather/CAN_ON_Kingston.AP.718200_TMYx.2004-2018.ddy +0 -2342
- data/data/weather/CAN_ON_Kingston.AP.718200_TMYx.2004-2018.epw +0 -8768
- data/data/weather/CAN_ON_Kingston.AP.718200_TMYx.2004-2018.stat +0 -700
- data/data/weather/CAN_ON_Region.of.Waterloo.Intl.AP.713680_TMYx.2004-2018.ddy +0 -2342
- data/data/weather/CAN_ON_Region.of.Waterloo.Intl.AP.713680_TMYx.2004-2018.epw +0 -8768
- data/data/weather/CAN_ON_Region.of.Waterloo.Intl.AP.713680_TMYx.2004-2018.stat +0 -700
- data/data/weather/CAN_ON_Sarnia-Hadfield.AP.717040_TMYx.2004-2018.ddy +0 -2342
- data/data/weather/CAN_ON_Sarnia-Hadfield.AP.717040_TMYx.2004-2018.epw +0 -8768
- data/data/weather/CAN_ON_Sarnia-Hadfield.AP.717040_TMYx.2004-2018.stat +0 -700
- data/data/weather/CAN_QC_Gatineau.AP.716279_TMYx.2004-2018.ddy +0 -276
- data/data/weather/CAN_QC_Gatineau.AP.716279_TMYx.2004-2018.epw +0 -8768
- data/data/weather/CAN_QC_Gatineau.AP.716279_TMYx.2004-2018.stat +0 -611
- data/data/weather/CAN_QC_Granby.710367_TMYx.2004-2018.ddy +0 -276
- data/data/weather/CAN_QC_Granby.710367_TMYx.2004-2018.epw +0 -8768
- data/data/weather/CAN_QC_Granby.710367_TMYx.2004-2018.stat +0 -610
- data/data/weather/CAN_QC_Sherbrooke.AP.716100_TMYx.2004-2018.ddy +0 -2342
- data/data/weather/CAN_QC_Sherbrooke.AP.716100_TMYx.2004-2018.epw +0 -8768
- data/data/weather/CAN_QC_Sherbrooke.AP.716100_TMYx.2004-2018.stat +0 -700
- data/data/weather/CAN_QC_Trois.Rivieres.717240_TMYx.2004-2018.ddy +0 -2342
- data/data/weather/CAN_QC_Trois.Rivieres.717240_TMYx.2004-2018.epw +0 -8768
- data/data/weather/CAN_QC_Trois.Rivieres.717240_TMYx.2004-2018.stat +0 -700
- data/lib/openstudio-standards/hvac_sizing/Siz.AirConditionerVariableRefrigerantFlow.rb +0 -81
- data/lib/openstudio-standards/hvac_sizing/Siz.AirLoopHVACUnitaryHeatCoolVAVChngByp.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.AirLoopHVACUnitaryHeatPumpAirToAir.rb +0 -69
- data/lib/openstudio-standards/hvac_sizing/Siz.AirLoopHVACUnitaryHeatPumpAirToAirMultiSpeed.rb +0 -178
- data/lib/openstudio-standards/hvac_sizing/Siz.AirLoopHVACUnitarySystem.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.AirTermSnglDuctConstVolCooledBeam.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.AirTermSnglDuctConstVolFourPipeInduction.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.AirTermSnglDuctConstVolReheat.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.AirTermSnglDuctParallelPIUReheat.rb +0 -67
- data/lib/openstudio-standards/hvac_sizing/Siz.AirTermSnglDuctSeriesPIUReheat.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.AirTermSnglDuctUncontrolled.rb +0 -30
- data/lib/openstudio-standards/hvac_sizing/Siz.AirTermSnglDuctVAVHeatAndCoolNoReheat.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.AirTermSnglDuctVAVHeatAndCoolReheat.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.AirTermSnglDuctVAVNoReheat.rb +0 -68
- data/lib/openstudio-standards/hvac_sizing/Siz.AirTermSnglDuctVAVReheat.rb +0 -68
- data/lib/openstudio-standards/hvac_sizing/Siz.BoilerHotWater.rb +0 -42
- data/lib/openstudio-standards/hvac_sizing/Siz.BoilerSteam.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.ChillerElectricEIR.rb +0 -58
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilCoolingDXMultiSpeed.rb +0 -171
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilCoolingDXSingleSpeed.rb +0 -56
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilCoolingDXTwoSpeed.rb +0 -89
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilCoolingDXVariableRefrigerantFlow.rb +0 -50
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilCoolingWaterToAirHeatPumpEquationFit.rb +0 -69
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilHeatingDXMultiSpeed.rb +0 -120
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilHeatingDXSingleSpeed.rb +0 -56
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilHeatingDXVariableRefrigerantFlow.rb +0 -41
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilHeatingDesuperheater.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilHeatingElectric.rb +0 -30
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilHeatingGas.rb +0 -30
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilHeatingGasMultiStage.rb +0 -68
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilHeatingWater.rb +0 -61
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilHeatingWaterToAirHeatPumpEquationFit.rb +0 -57
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilWaterHeatingDesuperheater.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.ControllerOutdoorAir.rb +0 -59
- data/lib/openstudio-standards/hvac_sizing/Siz.ControllerWaterCoil.rb +0 -49
- data/lib/openstudio-standards/hvac_sizing/Siz.CoolingTowerSingleSpeed.rb +0 -90
- data/lib/openstudio-standards/hvac_sizing/Siz.CoolingTowerTwoSpeed.rb +0 -83
- data/lib/openstudio-standards/hvac_sizing/Siz.CoolingTowerVariableSpeed.rb +0 -57
- data/lib/openstudio-standards/hvac_sizing/Siz.DistrictCooling.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.DistrictHeating.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.EvaporativeCoolerDirectResearchSpecial.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.EvaporativeCoolerIndirectResearchSpecial.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.EvaporativeFluidCoolerSingleSpeed.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.FanConstantVolume.rb +0 -29
- data/lib/openstudio-standards/hvac_sizing/Siz.FanOnOff.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.FanVariableVolume.rb +0 -29
- data/lib/openstudio-standards/hvac_sizing/Siz.HeaderedPumpsConstantSpeed.rb +0 -55
- data/lib/openstudio-standards/hvac_sizing/Siz.HeaderedPumpsVariableSpeed.rb +0 -55
- data/lib/openstudio-standards/hvac_sizing/Siz.HeatExchangerAirToAirSensibleAndLatent.rb +0 -38
- data/lib/openstudio-standards/hvac_sizing/Siz.HeatExchangerFluidToFluid.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.HumidifierSteamElectric.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.PlantLoop.rb +0 -42
- data/lib/openstudio-standards/hvac_sizing/Siz.PumpConstantSpeed.rb +0 -59
- data/lib/openstudio-standards/hvac_sizing/Siz.PumpVariableSpeed.rb +0 -59
- data/lib/openstudio-standards/hvac_sizing/Siz.SizingSystem.rb +0 -48
- data/lib/openstudio-standards/hvac_sizing/Siz.WaterHeaterMixed.rb +0 -16
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACBaseboardConvectiveElectric.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACBaseboardConvectiveWater.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACFourPipeFanCoil.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACHighTemperatureRadiant.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACIdealLoadsAirSystem.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACLowTempRadiantConstFlow.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACLowTempRadiantVarFlow.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACLowTemperatureRadiantElectric.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACPackagedTerminalAirConditioner.rb +0 -88
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACPackagedTerminalHeatPump.rb +0 -88
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACTerminalUnitVariableRefrigerantFlow.rb +0 -104
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACUnitHeater.rb +0 -27
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACWaterToAirHeatPump.rb +0 -27
@@ -1,554 +1,554 @@
|
|
1
|
-
# *********************************************************************
|
2
|
-
# * Copyright (c) 2008-2015, Natural Resources Canada
|
3
|
-
# * All rights reserved.
|
4
|
-
# *
|
5
|
-
# * This library is free software; you can redistribute it and/or
|
6
|
-
# * modify it under the terms of the GNU Lesser General Public
|
7
|
-
# * License as published by the Free Software Foundation; either
|
8
|
-
# * version 2.1 of the License, or (at your option) any later version.
|
9
|
-
# *
|
10
|
-
# * This library is distributed in the hope that it will be useful,
|
11
|
-
# * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
-
# * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
13
|
-
# * Lesser General Public License for more details.
|
14
|
-
# *
|
15
|
-
# * You should have received a copy of the GNU Lesser General Public
|
16
|
-
# * License along with this library; if not, write to the Free Software
|
17
|
-
# * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
18
|
-
# **********************************************************************/
|
19
|
-
|
20
|
-
|
21
|
-
module BTAP
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
|
376
|
-
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
|
381
|
-
|
382
|
-
|
383
|
-
|
384
|
-
|
385
|
-
|
386
|
-
|
387
|
-
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
|
397
|
-
|
398
|
-
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
|
429
|
-
|
430
|
-
|
431
|
-
|
432
|
-
|
433
|
-
|
434
|
-
|
435
|
-
|
436
|
-
|
437
|
-
|
438
|
-
|
439
|
-
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
475
|
-
|
476
|
-
|
477
|
-
|
478
|
-
|
479
|
-
|
480
|
-
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
|
500
|
-
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
|
518
|
-
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
536
|
-
|
537
|
-
|
538
|
-
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
548
|
-
|
549
|
-
|
550
|
-
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
end
|
1
|
+
# # *********************************************************************
|
2
|
+
# # * Copyright (c) 2008-2015, Natural Resources Canada
|
3
|
+
# # * All rights reserved.
|
4
|
+
# # *
|
5
|
+
# # * This library is free software; you can redistribute it and/or
|
6
|
+
# # * modify it under the terms of the GNU Lesser General Public
|
7
|
+
# # * License as published by the Free Software Foundation; either
|
8
|
+
# # * version 2.1 of the License, or (at your option) any later version.
|
9
|
+
# # *
|
10
|
+
# # * This library is distributed in the hope that it will be useful,
|
11
|
+
# # * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
+
# # * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
13
|
+
# # * Lesser General Public License for more details.
|
14
|
+
# # *
|
15
|
+
# # * You should have received a copy of the GNU Lesser General Public
|
16
|
+
# # * License along with this library; if not, write to the Free Software
|
17
|
+
# # * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
18
|
+
# # **********************************************************************/
|
19
|
+
#
|
20
|
+
#
|
21
|
+
# module BTAP
|
22
|
+
# module MPC
|
23
|
+
# class MPC
|
24
|
+
#
|
25
|
+
# #set hourly setpoint values
|
26
|
+
# #"E:\\Montreal2\\ZonalLevel\\", #analysis folder
|
27
|
+
# #"C:\\osruby\\lib\\basic_ideal_loads.osm", #model file.
|
28
|
+
# #"Z:\\MPC Chipmunk Model\\Weather Files\\CAN_PQ_Montreal.Intl.AP.716270_CWEC\\CAN_PQ_Montreal.Intl.AP.716270_CWEC.epw" #standard_weather_file
|
29
|
+
#
|
30
|
+
# #This method initializes.
|
31
|
+
# #@author phylroy.lopez@nrcan.gc.ca
|
32
|
+
# #@param model_file [OpenStudio::model::Model] A model object
|
33
|
+
# #@param weather_file [String] path to a weather file
|
34
|
+
# #@param analysis_folder [String] path to analysis folder
|
35
|
+
# def initialize (
|
36
|
+
# model_file,
|
37
|
+
# weather_file,
|
38
|
+
# analysis_folder)
|
39
|
+
#
|
40
|
+
# @model_file, @weather_file, @analysis_folder = model_file, weather_file, analysis_folder
|
41
|
+
#
|
42
|
+
#
|
43
|
+
# self.miso_zonal_analysis(@analysis_folder, #analysis folder
|
44
|
+
# @model_file, #model file.
|
45
|
+
# @weather_file #standard_weather_file
|
46
|
+
# )
|
47
|
+
#
|
48
|
+
# self.miso_building_analysis(@analysis_folder, #analysis folder
|
49
|
+
# @model_file, #model file.
|
50
|
+
# @weather_file #standard_weather_file
|
51
|
+
# )
|
52
|
+
#
|
53
|
+
#
|
54
|
+
# end
|
55
|
+
#
|
56
|
+
# #This method creates the schedules.
|
57
|
+
# #@author phylroy.lopez@nrcan.gc.ca
|
58
|
+
# #@param model [OpenStudio::model::Model] A model object
|
59
|
+
# def create_schedules(model)
|
60
|
+
#
|
61
|
+
# #Create cooling temperature schedule
|
62
|
+
#
|
63
|
+
# cool_sched_ruleset = BTAP::Resources::Schedules::create_annual_ruleset_schedule_detailed(model, "mpc_cooling_day", "TEMPERATURE",[
|
64
|
+
# [
|
65
|
+
# ["Jan-01","Dec-31"],["M","T","W","TH","F","S","SN"],
|
66
|
+
# [
|
67
|
+
# [ "5:00", 18.0 ],
|
68
|
+
# [ "9:00", 21.0 ],
|
69
|
+
# [ "15:00", 23.0 ],
|
70
|
+
# [ "18:00", 21.0 ],
|
71
|
+
# [ "24:00", 18.0 ]
|
72
|
+
# ]
|
73
|
+
# ]
|
74
|
+
# ]
|
75
|
+
# )
|
76
|
+
#
|
77
|
+
# #Create cooling temperature schedule
|
78
|
+
# heat_sched_ruleset = BTAP::Resources::Schedules::create_annual_ruleset_schedule_detailed(model, "mpc_cooling_day", "TEMPERATURE",[
|
79
|
+
# [
|
80
|
+
# ["Jan-01","Dec-31"],["M","T","W","TH","F","S","SN"],
|
81
|
+
# [
|
82
|
+
# [ "5:00", 18.0 ],
|
83
|
+
# [ "9:00", 21.0 ],
|
84
|
+
# [ "15:00", 23.0 ],
|
85
|
+
# [ "18:00", 21.0 ],
|
86
|
+
# [ "24:00", 18.0 ]
|
87
|
+
# ]
|
88
|
+
# ]
|
89
|
+
# ]
|
90
|
+
# )
|
91
|
+
#
|
92
|
+
# heat_sched_ruleset21 = BTAP::Resources::Schedules::create_annual_constant_ruleset_schedule(model, "mpc_cooling_day21","TEMPERATURE",21.0)
|
93
|
+
# cool_sched_ruleset21 = BTAP::Resources::Schedules::create_annual_constant_ruleset_schedule(model, "mpc_heating_day21","TEMPERATURE",21.0)
|
94
|
+
#
|
95
|
+
# @hourlyArrayValues21 =
|
96
|
+
# [
|
97
|
+
# Array.new(24){21}, #Weekday
|
98
|
+
# Array.new(24){21}, #Sat
|
99
|
+
# Array.new(24){21}, #Sun
|
100
|
+
# ]
|
101
|
+
#
|
102
|
+
# @hourly_noheatingArrayValues =
|
103
|
+
# [
|
104
|
+
# Array.new(24){-60}, #Weekday
|
105
|
+
# Array.new(24){-60}, #Sat
|
106
|
+
# Array.new(24){-60}, #Sun
|
107
|
+
# ]
|
108
|
+
#
|
109
|
+
# @hourly_nocoolingArrayValues =
|
110
|
+
# [
|
111
|
+
# Array.new(24){200}, #Weekday
|
112
|
+
# Array.new(24){200}, #Sat
|
113
|
+
# Array.new(24){200}, #Sun
|
114
|
+
# ]
|
115
|
+
# #model.add_standard_schedules()
|
116
|
+
#
|
117
|
+
# no_cool_sched_ruleset = BTAP::Resources::Schedules::create_annual_ruleset_schedule(model,"mpc_no_cooling_day","TEMPERATURE",@hourly_nocoolingArrayValues)
|
118
|
+
# no_heat_sched_ruleset = BTAP::Resources::Schedules::create_annual_ruleset_schedule(model,"mpc_no_heating_day","TEMPERATURE",@hourly_noheatingArrayValues)
|
119
|
+
#
|
120
|
+
# @mpc_heat_cool = BTAP::Resources::Schedules::create_annual_thermostat_setpoint_dual_setpoint(model,"mpc_heat_cool_set",heat_sched_ruleset,cool_sched_ruleset)
|
121
|
+
# @mpc_no_cooling = BTAP::Resources::Schedules::create_annual_thermostat_setpoint_dual_setpoint(model,"mpc_no_cooling_set",heat_sched_ruleset,no_cool_sched_ruleset)
|
122
|
+
# @mpc_no_heating = BTAP::Resources::Schedules::create_annual_thermostat_setpoint_dual_setpoint(model,"mpc_no_heating_set",no_heat_sched_ruleset,cool_sched_ruleset)
|
123
|
+
# @mpc_no_heat_cool = BTAP::Resources::Schedules::create_annual_thermostat_setpoint_dual_setpoint(model,"mpc_no_heat_cool_set",no_heat_sched_ruleset,no_cool_sched_ruleset)
|
124
|
+
# @mpc_21C_setpoint = BTAP::Resources::Schedules::create_annual_thermostat_setpoint_dual_setpoint(model,"mpc_21C_setpoint",heat_sched_ruleset21,cool_sched_ruleset21)
|
125
|
+
# end
|
126
|
+
#
|
127
|
+
# #This method sets the output variables.
|
128
|
+
# #@author phylroy.lopez@nrcan.gc.ca
|
129
|
+
# #@param model [OpenStudio::model::Model] A model object
|
130
|
+
# def set_output_variables(model)
|
131
|
+
# output_variable_array =
|
132
|
+
# [
|
133
|
+
#
|
134
|
+
# "Site Outdoor Air Drybulb Temperature",
|
135
|
+
# "Site Outdoor Air Dewpoint Temperature",
|
136
|
+
# "Site Outdoor Air Wetbulb Temperature",
|
137
|
+
# "Site Outdoor Air Humidity Ratio",
|
138
|
+
# "Site Outdoor Air Relative Humidity",
|
139
|
+
# "Site Outdoor Air Barometric Pressure",
|
140
|
+
# "Site Wind Speed",
|
141
|
+
# "Site Wind Direction",
|
142
|
+
# "Site Sky Temperature",
|
143
|
+
# "Site Horizontal Infrared Radiation Rate per Area",
|
144
|
+
# "Site Diffuse Solar Radiation Rate per Area",
|
145
|
+
# "Site Direct Solar Radiation Rate per Area",
|
146
|
+
# "Site Precipitation Depth",
|
147
|
+
# "Site Ground Reflected Solar Radiation Rate per Area",
|
148
|
+
# "Site Ground Temperature",
|
149
|
+
# "Site Surface Ground Temperature",
|
150
|
+
# "Site Deep Ground Temperature",
|
151
|
+
# "Site Simple Factor Model Ground Temperature",
|
152
|
+
# "Site Outdoor Air Enthalpy",
|
153
|
+
# "Site Outdoor Air Density",
|
154
|
+
# "Site Solar Azimuth Angle",
|
155
|
+
# "Site Solar Altitude Angle",
|
156
|
+
# "Site Solar Hour Angle",
|
157
|
+
# "Site Rain Status",
|
158
|
+
# "Site Snow on Ground Status",
|
159
|
+
# "Site Exterior Horizontal Sky Illuminance",
|
160
|
+
# "Site Exterior Horizontal Beam Illuminance",
|
161
|
+
# "Site Exterior Beam Normal Illuminance",
|
162
|
+
# "Site Sky Diffuse Solar Radiation Luminous Efficacy",
|
163
|
+
# "Site Beam Solar Radiation Luminous Efficacy",
|
164
|
+
# "Site Daylighting Model Sky Clearness",
|
165
|
+
# "Site Daylighting Model Sky Brightness",
|
166
|
+
# "Site Daylight Saving Time Status",
|
167
|
+
# "Site Day Type Index",
|
168
|
+
# "Site Mains Water Temperature",
|
169
|
+
# "Zone Operative Temperature",
|
170
|
+
# "Zone Windows Total Transmitted Solar Radiation Energy",
|
171
|
+
# "Zone Ideal Loads Zone Total Heating Energy",
|
172
|
+
# "Zone Ideal Loads Zone Total Cooling Energy",
|
173
|
+
# "Zone Total Internal Total Heating Energy",
|
174
|
+
# "Zone Total Internal Total Heating Rate",
|
175
|
+
# "Zone List Sensible Heating Energy",
|
176
|
+
# "Zone List Sensible Cooling Energy",
|
177
|
+
# "Zone List Sensible Heating Rate",
|
178
|
+
# "Zone List Sensible Cooling Rate",
|
179
|
+
# "Cooling Coil Total Cooling Rate",
|
180
|
+
# "Cooling Coil Total Cooling Energy",
|
181
|
+
# "Cooling Coil Sensible Cooling Rate",
|
182
|
+
# "Cooling Coil Sensible Cooling Energy",
|
183
|
+
# "Cooling Coil Latent Cooling Rate",
|
184
|
+
# "Cooling Coil Latent Cooling Energy",
|
185
|
+
# "Cooling Coil Electric Power",
|
186
|
+
# "Cooling Coil Electric Energy",
|
187
|
+
# "Cooling Coil Runtime Fraction",
|
188
|
+
# "Air System Cooling Coil Total Cooling Energy",
|
189
|
+
# "Air System Total Cooling Energy"
|
190
|
+
#
|
191
|
+
# ]
|
192
|
+
# BTAP::Reports::clear_output_variables(model)
|
193
|
+
# BTAP::Reports::set_output_variables(model, "Timestep", output_variable_array)
|
194
|
+
# end
|
195
|
+
#
|
196
|
+
# #This method creates the weather file.
|
197
|
+
# #@author phylroy.lopez@nrcan.gc.ca
|
198
|
+
# #@param weather_file [String] path to a weather file
|
199
|
+
# def create_weather_files(weather_file)
|
200
|
+
# #no solar file.
|
201
|
+
# @solar_radiation_off_temp_normal = @analysis_folder + "/solar_radiation_off_temp_normal.epw"
|
202
|
+
# @radiation_off_temp_normal = @analysis_folder + "/no_solar.epw"
|
203
|
+
# @solar_radiation_only_temp_constant = @analysis_folder + "/const_temp.epw"
|
204
|
+
# @all_off = @analysis_folder + "/all_off.epw"
|
205
|
+
# @original_file = @analysis_folder + "/orig.epw"
|
206
|
+
# @solar_radiation_off_temp_minus_10C = @analysis_folder + "/solar_radiation_off_temp_minus_10C.epw"
|
207
|
+
#
|
208
|
+
# BTAP::Environment::WeatherFile.new(weather_file).writetofile(@original_file)
|
209
|
+
#
|
210
|
+
# BTAP::Environment::WeatherFile.new(weather_file).
|
211
|
+
# eliminate_percipitation().
|
212
|
+
# eliminate_wind().
|
213
|
+
# eliminate_only_solar_radiation().
|
214
|
+
# writetofile(@solar_radiation_off_temp_normal)
|
215
|
+
#
|
216
|
+
# BTAP::Environment::WeatherFile.new(weather_file).setConstantDryandDewPointTemperatureHumidityAndPressure("-10.0","-17.9","49","102590").
|
217
|
+
# eliminate_percipitation().
|
218
|
+
# eliminate_wind().
|
219
|
+
# eliminate_only_solar_radiation().
|
220
|
+
# writetofile(@solar_radiation_off_temp_minus_10C)
|
221
|
+
#
|
222
|
+
# BTAP::Environment::WeatherFile.new(weather_file).eliminate_all_radiation().
|
223
|
+
# eliminate_percipitation().
|
224
|
+
# eliminate_wind().
|
225
|
+
# writetofile(@radiation_off_temp_normal)
|
226
|
+
#
|
227
|
+
# BTAP::Environment::WeatherFile.new(weather_file).setConstantDryandDewPointTemperatureHumidityAndPressure().
|
228
|
+
# eliminate_percipitation().
|
229
|
+
# eliminate_all_radiation_except_solar().
|
230
|
+
# eliminate_wind.writetofile(@solar_radiation_only_temp_constant)
|
231
|
+
#
|
232
|
+
# BTAP::Environment::WeatherFile.new(weather_file).eliminate_all_radiation().
|
233
|
+
# eliminate_percipitation().
|
234
|
+
# eliminate_wind.setConstantDryandDewPointTemperatureHumidityAndPressure().
|
235
|
+
# writetofile(@all_off)
|
236
|
+
# end
|
237
|
+
#
|
238
|
+
# #This method miso building generation and returns a model array.
|
239
|
+
# #@author phylroy.lopez@nrcan.gc.ca
|
240
|
+
# #@param model [OpenStudio::model::Model] A model object
|
241
|
+
# #@param standard_weather_file [String] path to a weather file
|
242
|
+
# #@return [model_array<String>]
|
243
|
+
# def miso_building_generation(model,standard_weather_file)
|
244
|
+
# self.set_output_variables(model)
|
245
|
+
# self.create_weather_files(standard_weather_file)
|
246
|
+
# self.create_schedules(model)
|
247
|
+
# model_array = Array.new()
|
248
|
+
#
|
249
|
+
#
|
250
|
+
# #Set global charecteristics.
|
251
|
+
# model.getSimulationControl.setMaximumNumberofWarmupDays(100)
|
252
|
+
# model.getSimulationControl.setMinimumNumberofWarmupDays(100)
|
253
|
+
#
|
254
|
+
# # GBase no hvac
|
255
|
+
# gbaseModel = BTAP::FileIO::deep_copy(model)
|
256
|
+
# gbaseModel.building.get.setName("Gbase")
|
257
|
+
# BTAP::Site::set_weather_file(gbaseModel, @original_file)
|
258
|
+
# BTAP::Resources::HVAC::clear_all_hvac_from_model(gbaseModel)
|
259
|
+
# gbaseModel.getThermalZones.sort.each do |thermalzone|
|
260
|
+
# thermalzone.setUseIdealAirLoads(true)
|
261
|
+
# end
|
262
|
+
# ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( gbaseModel.getSurfaces, ["Ground"] )
|
263
|
+
# BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gbaseModel , ground_surfaces, "Adiabatic")
|
264
|
+
# model_array.push(gbaseModel)
|
265
|
+
#
|
266
|
+
#
|
267
|
+
# # Gfloating
|
268
|
+
# gfloatModel = BTAP::FileIO::deep_copy(model)
|
269
|
+
# gfloatModel.building.get.setName("Gfloating")
|
270
|
+
# BTAP::Site::set_weather_file(gfloatModel, @original_file)
|
271
|
+
# BTAP::Resources::HVAC::clear_all_hvac_from_model(gfloatModel)
|
272
|
+
# gfloatModel.getThermalZones.sort.each do |thermalzone|
|
273
|
+
# thermalzone.setThermostatSetpointDualSetpoint(@mpc_no_heat_cool)
|
274
|
+
# thermalzone.setUseIdealAirLoads(true)
|
275
|
+
# end
|
276
|
+
# ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( gfloatModel.getSurfaces, ["Ground"] )
|
277
|
+
# BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gfloatModel , ground_surfaces, "Adiabatic")
|
278
|
+
# model_array.push(gfloatModel)
|
279
|
+
#
|
280
|
+
#
|
281
|
+
#
|
282
|
+
#
|
283
|
+
# # # Gideal
|
284
|
+
# # gidealModel = BTAP::FileIO::deep_copy(model)
|
285
|
+
# # gidealModel.building.get.setName("Gideal")
|
286
|
+
# # BTAP::Site::set_weather_file(gidealModel, @original_file)
|
287
|
+
# # gidealModel.getThermalZones.sort.each do |thermalzone|
|
288
|
+
# # thermalzone.setThermostatSetpointDualSetpoint(@mpc_21C_setpoint)
|
289
|
+
# # end
|
290
|
+
# # ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( gidealModel.getSurfaces, ["Ground"] )
|
291
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gidealModel , ground_surfaces, "Adiabatic")
|
292
|
+
# # model_array.push(gidealModel)
|
293
|
+
#
|
294
|
+
# #
|
295
|
+
# #
|
296
|
+
# # # Gadiabatic
|
297
|
+
# # gadiabaticModel = BTAP::FileIO::deep_copy(model)
|
298
|
+
# # gadiabaticModel.building.get.setName("Gadiabatic")
|
299
|
+
# # BTAP::Site::set_weather_file(gadiabaticModel, @original_file)
|
300
|
+
# # gadiabaticModel.getThermalZones.sort.each { |thermalzone| thermalzone.setThermostatSetpointDualSetpoint(@mpc_21C_setpoint)}
|
301
|
+
# # self.set_internal_gains_to_zero(gadiabaticModel)
|
302
|
+
# # outdoor_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition(gadiabaticModel.getSurfaces, ["Outdoors"])
|
303
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_construction_conductance(outdoor_surfaces, 1/200)
|
304
|
+
# # ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( gadiabaticModel.getSurfaces, ["Ground"] )
|
305
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gadiabaticModel , ground_surfaces, "Adiabatic")
|
306
|
+
# # model_array.push(gadiabaticModel)
|
307
|
+
# #
|
308
|
+
# #
|
309
|
+
# # # Gsteadystate
|
310
|
+
# # gsteadystateModel = BTAP::FileIO::deep_copy(model)
|
311
|
+
# # gsteadystateModel.building.get.setName("Gsteadystate")
|
312
|
+
# # BTAP::Site::set_weather_file(gsteadystateModel, @all_off)
|
313
|
+
# # self.set_internal_gains_to_zero(gsteadystateModel)
|
314
|
+
# # gsteadystateModel.getThermalZones.sort.each { |thermalzone| thermalzone.setThermostatSetpointDualSetpoint(@mpc_21C_setpoint)}
|
315
|
+
# # ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( gsteadystateModel.getSurfaces, ["Ground"] )
|
316
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gsteadystateModel , ground_surfaces, "Adiabatic")
|
317
|
+
# # model_array.push(gsteadystateModel)
|
318
|
+
# #
|
319
|
+
# #
|
320
|
+
# # # Gig
|
321
|
+
# # gigModel = BTAP::FileIO::deep_copy(model)
|
322
|
+
# # gigModel.building.get.setName("Gig")
|
323
|
+
# # BTAP::Site::set_weather_file(gigModel, @all_off)
|
324
|
+
# # gigModel.getThermalZones.sort.each { |thermalzone| thermalzone.setThermostatSetpointDualSetpoint(@mpc_no_heat_cool)}
|
325
|
+
# # ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( gigModel.getSurfaces, ["Ground"] )
|
326
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gigModel , ground_surfaces, "Adiabatic")
|
327
|
+
# # model_array.push(gigModel)
|
328
|
+
# #
|
329
|
+
# #
|
330
|
+
# # # Gsg
|
331
|
+
# # gsgModel = BTAP::FileIO::deep_copy(model)
|
332
|
+
# # gsgModel.building.get.setName("Gsg")
|
333
|
+
# # BTAP::Site::set_weather_file( gsgModel,@solar_radiation_only_temp_constant)
|
334
|
+
# # self.set_internal_gains_to_zero(gsgModel)
|
335
|
+
# # gsgModel.getThermalZones.sort.each { |thermalzone| thermalzone.setThermostatSetpointDualSetpoint(@mpc_no_heat_cool)}
|
336
|
+
# # ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( gsgModel.getSurfaces, ["Ground"] )
|
337
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gsgModel , ground_surfaces, "Adiabatic")
|
338
|
+
# # model_array.push(gsgModel)
|
339
|
+
# #
|
340
|
+
# #
|
341
|
+
# # # Gext
|
342
|
+
# # gextModel = BTAP::FileIO::deep_copy(model)
|
343
|
+
# # gextModel.building.get.setName("Gext")
|
344
|
+
# # BTAP::Site::set_weather_file( gextModel,@solar_radiation_off_temp_normal )
|
345
|
+
# # self.set_internal_gains_to_zero(gextModel)
|
346
|
+
# # gextModel.getThermalZones.sort.each { |thermalzone| thermalzone.setThermostatSetpointDualSetpoint(@mpc_no_heat_cool)}
|
347
|
+
# # ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( gextModel.getSurfaces, ["Ground"] )
|
348
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gextModel , ground_surfaces, "Adiabatic")
|
349
|
+
# # model_array.push(gextModel)
|
350
|
+
# #
|
351
|
+
# # # Gh
|
352
|
+
# # ghModel = BTAP::FileIO::deep_copy(model)
|
353
|
+
# # ghModel.building.get.setName("Gh")
|
354
|
+
# # BTAP::Site::set_weather_file(ghModel,@all_off )
|
355
|
+
# # self.set_internal_gains_to_zero(ghModel)
|
356
|
+
# # ghModel.getThermalZones.sort.each { |thermalzone| thermalzone.setThermostatSetpointDualSetpoint(@mpc_no_cooling)}
|
357
|
+
# # ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( ghModel.getSurfaces, ["Ground"] )
|
358
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( ghModel , ground_surfaces, "Adiabatic")
|
359
|
+
# # model_array.push(ghModel)
|
360
|
+
# #
|
361
|
+
# # # Gc
|
362
|
+
# # gcModel = BTAP::FileIO::deep_copy(model)
|
363
|
+
# # gcModel.building.get.setName("Gc")
|
364
|
+
# # BTAP::Site::set_weather_file(gcModel,@solar_radiation_off_temp_normal)
|
365
|
+
# # self.set_internal_gains_to_zero(gcModel)
|
366
|
+
# # gcModel.getThermalZones.sort.each { |thermalzone| thermalzone.setThermostatSetpointDualSetpoint(@mpc_no_heating)}
|
367
|
+
# # ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( gcModel.getSurfaces, ["Ground"] )
|
368
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gcModel , ground_surfaces, "Adiabatic")
|
369
|
+
# # model_array.push(gcModel)
|
370
|
+
# #
|
371
|
+
# # # Goff
|
372
|
+
# # goffModel = BTAP::FileIO::deep_copy(model)
|
373
|
+
# # goffModel.building.get.setName("Goff")
|
374
|
+
# # BTAP::Site::set_weather_file(goffModel,@all_off)
|
375
|
+
# # self.set_internal_gains_to_zero(goffModel)
|
376
|
+
# # BTAP::Resources::SpaceLoads::ScaleLoads::scale_inflitration_loads(goffModel, 0.0)
|
377
|
+
# # ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( goffModel.getSurfaces, ["Ground"] )
|
378
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( goffModel , ground_surfaces, "Adiabatic")
|
379
|
+
# # goffModel.getThermalZones.sort.each { |thermalzone| thermalzone.setThermostatSetpointDualSetpoint(@mpc_no_heat_cool)}
|
380
|
+
# # model_array.push(goffModel)
|
381
|
+
#
|
382
|
+
#
|
383
|
+
# return model_array
|
384
|
+
# end
|
385
|
+
#
|
386
|
+
# #This method miso building analysis.
|
387
|
+
# #@author phylroy.lopez@nrcan.gc.ca
|
388
|
+
# #@param model_file [OpenStudio::model::Model] A model object
|
389
|
+
# #@param folder_name [String] path to a folder
|
390
|
+
# #@param standard_weather_file [String] path to a weather file
|
391
|
+
# def miso_building_analysis(folder_name,model_file,standard_weather_file)
|
392
|
+
# model = BTAP::FileIO::load_osm(model_file)
|
393
|
+
# BTAP::Geometry::enumerate_spaces_model(model)
|
394
|
+
# BTAP::Geometry::rename_zones_based_on_spaces(model)
|
395
|
+
# BTAP::Geometry::prefix_equipment_with_zone_name(model)
|
396
|
+
# #since this is a one to one relationship of space to zone.Name them the same
|
397
|
+
# model.getSpaces.sort.each do |space|
|
398
|
+
# space.thermalZone.get.setName(space.name.get)
|
399
|
+
# end
|
400
|
+
# #set run period to a week
|
401
|
+
# BTAP::SimulationSettings::set_run_period(model,1,1,12,31)
|
402
|
+
# #create models
|
403
|
+
# miso_building_generation(model,standard_weather_file).each do |new_model|
|
404
|
+
# BTAP::FileIO::get_name(new_model)
|
405
|
+
# save_file_name = "#{folder_name}/#{BTAP::FileIO::get_name(new_model)}.osm"
|
406
|
+
# BTAP::FileIO::save_osm(new_model, save_file_name)
|
407
|
+
# end
|
408
|
+
# end
|
409
|
+
#
|
410
|
+
# #This method miso zonal analysis.
|
411
|
+
# #@author phylroy.lopez@nrcan.gc.ca
|
412
|
+
# #@param model_file [OpenStudio::model::Model] A model object
|
413
|
+
# #@param folder_name [String] path to a folder
|
414
|
+
# #@param standard_weather_file [String] path to a weather file
|
415
|
+
# def miso_zonal_analysis(folder_name,model_file,standard_weather_file)
|
416
|
+
#
|
417
|
+
# model = BTAP::FileIO::load_osm(model_file)
|
418
|
+
# BTAP::Geometry::enumerate_spaces_model(model)
|
419
|
+
# BTAP::Geometry::rename_zones_based_on_spaces(model)
|
420
|
+
# BTAP::Geometry::prefix_equipment_with_zone_name(model)
|
421
|
+
# #since this is a one to one relationship of space to zone.Name them the same
|
422
|
+
# model.getSpaces.sort.each do |space|
|
423
|
+
# space.thermalZone.get.setName(space.name.get)
|
424
|
+
# end
|
425
|
+
# #set run period to a week
|
426
|
+
# BTAP::SimulationSettings::set_run_period(model,1,1,12,31)
|
427
|
+
# miso_zonal_generation(model,standard_weather_file).each do |new_model|
|
428
|
+
# BTAP::FileIO::get_name(new_model)
|
429
|
+
# save_file_name = "#{folder_name}/#{BTAP::FileIO::get_name(new_model)}.osm"
|
430
|
+
# BTAP::FileIO::save_osm(new_model, save_file_name)
|
431
|
+
# end
|
432
|
+
# end
|
433
|
+
#
|
434
|
+
# #This method miso zonal generation and returns a model array.
|
435
|
+
# #@author phylroy.lopez@nrcan.gc.ca
|
436
|
+
# #@param model[OpenStudio::model::Model] A model object
|
437
|
+
# #@param standard_weather_file [String] path to a weather file
|
438
|
+
# #@return [model_array<String>]
|
439
|
+
# def miso_zonal_generation(model,standard_weather_file)
|
440
|
+
# self.create_weather_files(standard_weather_file)
|
441
|
+
# self.create_schedules(model)
|
442
|
+
# model_array = Array.new()
|
443
|
+
#
|
444
|
+
# #model.clear_output_variables()
|
445
|
+
# self.set_output_variables(model)
|
446
|
+
# model.getSimulationControl.setMaximumNumberofWarmupDays(100)
|
447
|
+
# model.getSimulationControl.setMinimumNumberofWarmupDays(100)
|
448
|
+
# #create the array of models to run.
|
449
|
+
# model_array = Array.new()
|
450
|
+
# #get the number of thermal zones in the model
|
451
|
+
# num_of_thermal_zones = model.getThermalZones.size
|
452
|
+
#
|
453
|
+
# #change ground surfaces to adiabatic
|
454
|
+
# ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( model.getSurfaces, ["Ground"] )
|
455
|
+
# BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( model , ground_surfaces, "Adiabatic")
|
456
|
+
#
|
457
|
+
#
|
458
|
+
#
|
459
|
+
# #iterate through each zone.
|
460
|
+
# (0..num_of_thermal_zones-1).each do |zone_number|
|
461
|
+
# #
|
462
|
+
# # # Gsg Solar gains
|
463
|
+
# # gsgModel = BTAP::FileIO::deep_copy(model)
|
464
|
+
# # thermal_zones = gsgModel.getThermalZones
|
465
|
+
# # gsgModel.building.get.setName("Gsg-" + thermal_zones[zone_number].name.get)
|
466
|
+
# # BTAP::Site::set_weather_file(gsgModel,@solar_radiation_only_temp_constant )
|
467
|
+
# # self.set_internal_gains_to_zero(gsgModel)
|
468
|
+
# # thermal_zones[zone_number].setThermostatSetpointDualSetpoint(@mpc_no_heat_cool)
|
469
|
+
# # zone_surfaces = BTAP::Geometry::Surfaces::get_surfaces_from_thermal_zones([thermal_zones[zone_number]])
|
470
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gsgModel ,BTAP::Geometry::Surfaces::filter_by_boundary_condition( zone_surfaces, ["Surface"] ) , "Adiabatic")
|
471
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gsgModel , BTAP::Geometry::Surfaces::filter_by_boundary_condition( gsgModel.getSurfaces, ["Ground"] ) , "Adiabatic")
|
472
|
+
# # model_array.push(gsgModel)
|
473
|
+
# #
|
474
|
+
# #
|
475
|
+
# # # Gig - internal gains
|
476
|
+
# # gigModel = BTAP::FileIO::deep_copy(model)
|
477
|
+
# # thermal_zones = gigModel.getThermalZones
|
478
|
+
# # gigModel.building.get.setName("Gig-" + thermal_zones[zone_number].name.get)
|
479
|
+
# # BTAP::Site::set_weather_file(gigModel,@all_off )
|
480
|
+
# # thermal_zones[zone_number].setThermostatSetpointDualSetpoint(@mpc_no_heat_cool)
|
481
|
+
# # zone_surfaces = BTAP::Geometry::Surfaces::get_surfaces_from_thermal_zones([thermal_zones[zone_number]])
|
482
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gigModel ,BTAP::Geometry::Surfaces::filter_by_boundary_condition( zone_surfaces, ["Surface"] ) , "Adiabatic")
|
483
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gigModel , BTAP::Geometry::Surfaces::filter_by_boundary_condition( gigModel.getSurfaces, ["Ground"] ) , "Adiabatic")
|
484
|
+
# # model_array.push(gigModel)
|
485
|
+
# #
|
486
|
+
# #
|
487
|
+
# # # Gext external gains
|
488
|
+
# # gextModel = BTAP::FileIO::deep_copy(model)
|
489
|
+
# # thermal_zones = gextModel.getThermalZones
|
490
|
+
# # gextModel.building.get.setName("Gext-" + thermal_zones[zone_number].name.get)
|
491
|
+
# # BTAP::Site::set_weather_file(gextModel,@solar_radiation_off_temp_normal )
|
492
|
+
# # self.set_internal_gains_to_zero(gextModel)
|
493
|
+
# # thermal_zones[zone_number].setThermostatSetpointDualSetpoint(@mpc_no_heat_cool)
|
494
|
+
# # zone_surfaces = BTAP::Geometry::Surfaces::get_surfaces_from_thermal_zones([thermal_zones[zone_number]])
|
495
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gextModel ,BTAP::Geometry::Surfaces::filter_by_boundary_condition( zone_surfaces, ["Surface"] ) , "Adiabatic")
|
496
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gextModel , BTAP::Geometry::Surfaces::filter_by_boundary_condition( gextModel.getSurfaces, ["Ground"] ) , "Adiabatic")
|
497
|
+
# # model_array.push(gextModel)
|
498
|
+
# #
|
499
|
+
# # # Gh - no cooling
|
500
|
+
# # ghModel = BTAP::FileIO::deep_copy(model)
|
501
|
+
# # thermal_zones = ghModel.getThermalZones
|
502
|
+
# # ghModel.building.get.setName("Gh-" + thermal_zones[zone_number].name.get)
|
503
|
+
# # BTAP::Site::set_weather_file(ghModel,@all_off )
|
504
|
+
# # self.set_internal_gains_to_zero(ghModel)
|
505
|
+
# # thermal_zones[zone_number].setThermostatSetpointDualSetpoint(@mpc_no_cooling)
|
506
|
+
# # zone_surfaces = BTAP::Geometry::Surfaces::get_surfaces_from_thermal_zones([thermal_zones[zone_number]])
|
507
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( ghModel ,BTAP::Geometry::Surfaces::filter_by_boundary_condition( zone_surfaces, ["Surface"] ) , "Adiabatic")
|
508
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( ghModel , BTAP::Geometry::Surfaces::filter_by_boundary_condition( ghModel.getSurfaces, ["Ground"] ) , "Adiabatic")
|
509
|
+
# # model_array.push(ghModel)
|
510
|
+
# #
|
511
|
+
# # # Gc no heating
|
512
|
+
# # gcModel = BTAP::FileIO::deep_copy(model)
|
513
|
+
# # thermal_zones = gcModel.getThermalZones
|
514
|
+
# # gcModel.building.get.setName("Gc-" + thermal_zones[zone_number].name.get)
|
515
|
+
# # BTAP::Site::set_weather_file(gcModel, @solar_radiation_off_temp_normal)
|
516
|
+
# # self.set_internal_gains_to_zero(gcModel)
|
517
|
+
# # thermal_zones[zone_number].setThermostatSetpointDualSetpoint(@mpc_no_heating)
|
518
|
+
# # zone_surfaces = BTAP::Geometry::Surfaces::get_surfaces_from_thermal_zones([thermal_zones[zone_number]])
|
519
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gcModel ,BTAP::Geometry::Surfaces::filter_by_boundary_condition( zone_surfaces, ["Surface"] ) , "Adiabatic")
|
520
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gcModel , BTAP::Geometry::Surfaces::filter_by_boundary_condition( gcModel.getSurfaces, ["Ground"] ) , "Adiabatic")
|
521
|
+
# # model_array.push(gcModel)
|
522
|
+
#
|
523
|
+
# # # Gideal
|
524
|
+
# # gidealModel = BTAP::FileIO::deep_copy(model)
|
525
|
+
# # thermal_zones = gidealModel.getThermalZones
|
526
|
+
# # gidealModel.building.get.setName("Gideal-" + thermal_zones[zone_number].name.get)
|
527
|
+
# # BTAP::Site::set_weather_file( gidealModel, @original_file )
|
528
|
+
# # thermal_zones[zone_number].setThermostatSetpointDualSetpoint(@mpc_21C_setpoint)
|
529
|
+
# # zone_surfaces = BTAP::Geometry::Surfaces::get_surfaces_from_thermal_zones([thermal_zones[zone_number]])
|
530
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gidealModel ,BTAP::Geometry::Surfaces::filter_by_boundary_condition( zone_surfaces, ["Surface"] ) , "Adiabatic")
|
531
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gidealModel , BTAP::Geometry::Surfaces::filter_by_boundary_condition( gidealModel.getSurfaces, ["Ground"] ) , "Adiabatic")
|
532
|
+
# # model_array.push(gidealModel)
|
533
|
+
# #
|
534
|
+
# # # Gfloating
|
535
|
+
# # gfloatModel = BTAP::FileIO::deep_copy(model)
|
536
|
+
# # thermal_zones = gfloatModel.getThermalZones
|
537
|
+
# # gfloatModel.building.get.setName("Gfloating-" + thermal_zones[zone_number].name.get)
|
538
|
+
# # BTAP::Site::set_weather_file(gfloatModel, @original_file)
|
539
|
+
# # thermal_zones[zone_number].setThermostatSetpointDualSetpoint(@mpc_no_heat_cool)
|
540
|
+
# # ground_surfaces = BTAP::Geometry::Surfaces::filter_by_boundary_condition( gfloatModel.getSurfaces, ["Ground"] )
|
541
|
+
# # BTAP::Geometry::Surfaces::set_surfaces_boundary_condition( gfloatModel , ground_surfaces, "Adiabatic")
|
542
|
+
# # model_array.push(gfloatModel)
|
543
|
+
#
|
544
|
+
# end
|
545
|
+
# return model_array
|
546
|
+
# end
|
547
|
+
#
|
548
|
+
# def set_internal_gains_to_zero(model)
|
549
|
+
# BTAP::Resources::SpaceLoads::remove_all_casual_loads(model)
|
550
|
+
# end
|
551
|
+
# end
|
552
|
+
#
|
553
|
+
# end
|
554
|
+
# end
|