From 40b37b2404d3d9461e61ce8a002b8f4da7c19249 Mon Sep 17 00:00:00 2001 From: Yueyue Zhou Date: Tue, 4 May 2021 18:00:35 -0600 Subject: [PATCH 1/9] preconditioned to setpoint instead of room temperature --- HPXMLtoOpenStudio/resources/airflow.rb | 56 ++++++++++++++++++-------- 1 file changed, 39 insertions(+), 17 deletions(-) diff --git a/HPXMLtoOpenStudio/resources/airflow.rb b/HPXMLtoOpenStudio/resources/airflow.rb index 8d56d39835..877abe092c 100644 --- a/HPXMLtoOpenStudio/resources/airflow.rb +++ b/HPXMLtoOpenStudio/resources/airflow.rb @@ -1486,6 +1486,8 @@ def self.calculate_fan_loads(model, infil_program, vent_mech_erv_hrv_tot, hrv_er # Calculate mass flow rate based on outdoor air density # Address load with flow-weighted combined effectiveness infil_program.addLine("Set Fan_MFR = #{q_var} * OASupRho") + infil_program.addLine('Set ZoneInEnth = OASupInEnth') + infil_program.addLine('Set ZoneInTemp = OASupInTemp') if not vent_mech_erv_hrv_tot.empty? # ERV/HRV EMS load model # E+ ERV model is using standard density for MFR calculation, caused discrepancy with other system types. @@ -1502,14 +1504,12 @@ def self.calculate_fan_loads(model, infil_program, vent_mech_erv_hrv_tot, hrv_er infil_program.addLine('Set ERVTotalHeatTrans = Fan_MFR * (ERVSupOutEnth - OASupInEnth)') infil_program.addLine('Set ERVLatHeatTrans = ERVTotalHeatTrans - ERVSensHeatTrans') # ERV/HRV Load calculation - infil_program.addLine('Set FanTotalToLv = Fan_MFR * (ERVSupOutEnth - ZoneAirEnth)') - infil_program.addLine('Set FanSensToLv = Fan_MFR * ZoneCp * (ERVSupOutTemp - ZoneTemp)') - infil_program.addLine('Set FanLatToLv = FanTotalToLv - FanSensToLv') - else - infil_program.addLine('Set FanTotalToLv = Fan_MFR * (OASupInEnth - ZoneAirEnth)') - infil_program.addLine('Set FanSensToLv = Fan_MFR * ZoneCp * (OASupInTemp - ZoneTemp)') - infil_program.addLine('Set FanLatToLv = FanTotalToLv - FanSensToLv') + infil_program.addLine('Set ZoneInEnth = ERVSupOutEnth') + infil_program.addLine('Set ZoneInTemp = ERVSupOutTemp') end + infil_program.addLine('Set FanTotalToLv = Fan_MFR * (ZoneInEnth - ZoneAirEnth)') + infil_program.addLine('Set FanSensToLv = Fan_MFR * ZoneCp * (ZoneInTemp - ZoneTemp)') + infil_program.addLine('Set FanLatToLv = FanTotalToLv - FanSensToLv') # Actuator, # If preconditioned, handle actuators later in calculate_precond_loads @@ -1522,8 +1522,20 @@ def self.calculate_fan_loads(model, infil_program, vent_mech_erv_hrv_tot, hrv_er def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_mech_precool, hrv_erv_effectiveness_map, fan_sens_load_actuator, fan_lat_load_actuator, hvac_map) # Preconditioning # Assume introducing no sensible loads to zone if preconditioned + if not vent_mech_preheat.empty? + htg_stp_sensor = OpenStudio::Model::EnergyManagementSystemSensor.new(model, 'Zone Thermostat Heating Setpoint Temperature') + htg_stp_sensor.setName("#{Constants.ObjectNameAirflow} htg stp s") + htg_stp_sensor.setKeyName(@living_zone.name.to_s) + infil_program.addLine("Set HtgStp = #{htg_stp_sensor.name}") # heating thermostat setpoint + end + if not vent_mech_precool.empty? + clg_stp_sensor = OpenStudio::Model::EnergyManagementSystemSensor.new(model, 'Zone Thermostat Cooling Setpoint Temperature') + clg_stp_sensor.setName("#{Constants.ObjectNameAirflow} clg stp s") + clg_stp_sensor.setKeyName(@living_zone.name.to_s) + infil_program.addLine("Set ClgStp = #{clg_stp_sensor.name}") # cooling thermostat setpoint + end vent_mech_preheat.each_with_index do |f_preheat, i| - infil_program.addLine('If OASupInTemp < ZoneTemp') + infil_program.addLine('If OASupInTemp < HtgStp') htg_energy_actuator = create_other_equipment_object_and_actuator(model: model, name: "shared mech vent preheating energy #{i}", space: @living_space, frac_lat: 0.0, frac_lost: 1.0, hpxml_fuel_type: f_preheat.preheating_fuel, end_use: Constants.ObjectNameMechanicalVentilationPreconditioning) hvac_map["#{f_preheat.id}_preheat"] = [htg_energy_actuator.actuatedComponent.get] infil_program.addLine(" Set Qpreheat = #{UnitConversions.convert(f_preheat.average_oa_unit_flow_rate, 'cfm', 'm^3/s').round(4)}") @@ -1534,16 +1546,21 @@ def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_m end calculate_fan_loads(model, infil_program, vent_mech_erv_hrv_tot, hrv_erv_effectiveness_map, fan_sens_load_actuator, fan_lat_load_actuator, 'Qpreheat', true) - infil_program.addLine(" Set PreHeatingEnergy = (-FanSensToLv) * #{f_preheat.preheating_fraction_load_served}") - infil_program.addLine(" Set #{fan_sens_load_actuator.name} = #{fan_sens_load_actuator.name} + PreHeatingEnergy") - infil_program.addLine(" Set #{fan_lat_load_actuator.name} = #{fan_lat_load_actuator.name} - FanLatToLv") - infil_program.addLine(" Set #{htg_energy_actuator.name} = PreHeatingEnergy / #{f_preheat.preheating_efficiency_cop}") + infil_program.addLine(' If ZoneInTemp < HtgStp') + infil_program.addLine(' Set FanSensToSpt = Fan_MFR * ZoneCp * (ZoneInTemp - HtgStp)') + infil_program.addLine(" Set PreHeatingEnergy = (-FanSensToSpt) * #{f_preheat.preheating_fraction_load_served}") + infil_program.addLine(" Set #{fan_sens_load_actuator.name} = #{fan_sens_load_actuator.name} + PreHeatingEnergy") + infil_program.addLine(" Set #{fan_lat_load_actuator.name} = #{fan_lat_load_actuator.name} - FanLatToLv") # Fixme:Does this assumption still apply? + infil_program.addLine(" Set #{htg_energy_actuator.name} = PreHeatingEnergy / #{f_preheat.preheating_efficiency_cop}") + infil_program.addLine(' Else') + infil_program.addLine(" Set #{htg_energy_actuator.name} = 0.0") + infil_program.addLine(' EndIf') infil_program.addLine('Else') infil_program.addLine(" Set #{htg_energy_actuator.name} = 0.0") infil_program.addLine('EndIf') end vent_mech_precool.each_with_index do |f_precool, i| - infil_program.addLine('If OASupInTemp > ZoneTemp') + infil_program.addLine('If OASupInTemp > ClgStp') clg_energy_actuator = create_other_equipment_object_and_actuator(model: model, name: "shared mech vent precooling energy #{i}", space: @living_space, frac_lat: 0.0, frac_lost: 1.0, hpxml_fuel_type: f_precool.precooling_fuel, end_use: Constants.ObjectNameMechanicalVentilationPreconditioning) hvac_map["#{f_precool.id}_precool"] = [clg_energy_actuator.actuatedComponent.get] infil_program.addLine(" Set Qprecool = #{UnitConversions.convert(f_precool.average_oa_unit_flow_rate, 'cfm', 'm^3/s').round(4)}") @@ -1554,10 +1571,15 @@ def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_m end calculate_fan_loads(model, infil_program, vent_mech_erv_hrv_tot, hrv_erv_effectiveness_map, fan_sens_load_actuator, fan_lat_load_actuator, 'Qprecool', true) - infil_program.addLine(" Set PreCoolingEnergy = FanSensToLv * #{f_precool.precooling_fraction_load_served}") - infil_program.addLine(" Set #{fan_sens_load_actuator.name} = #{fan_sens_load_actuator.name} - PreCoolingEnergy") - infil_program.addLine(" Set #{fan_lat_load_actuator.name} = #{fan_lat_load_actuator.name} - FanLatToLv") - infil_program.addLine(" Set #{clg_energy_actuator.name} = PreCoolingEnergy / #{f_precool.precooling_efficiency_cop}") + infil_program.addLine(' If ZoneInTemp > ClgStp') + infil_program.addLine(' Set FanSensToSpt = Fan_MFR * ZoneCp * (ZoneInTemp - ClgStp)') + infil_program.addLine(" Set PreCoolingEnergy = FanSensToSpt * #{f_precool.precooling_fraction_load_served}") + infil_program.addLine(" Set #{fan_sens_load_actuator.name} = #{fan_sens_load_actuator.name} - PreCoolingEnergy") + infil_program.addLine(" Set #{fan_lat_load_actuator.name} = #{fan_lat_load_actuator.name} - FanLatToLv") # Fixme:Does this assumption still apply? + infil_program.addLine(" Set #{clg_energy_actuator.name} = PreCoolingEnergy / #{f_precool.precooling_efficiency_cop}") + infil_program.addLine(' Else') + infil_program.addLine(" Set #{clg_energy_actuator.name} = 0.0") + infil_program.addLine(' EndIf') infil_program.addLine('Else') infil_program.addLine(" Set #{clg_energy_actuator.name} = 0.0") infil_program.addLine('EndIf') From 6f9515dbf134e5a253ff5fc1e99637619ee4c10d Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Wed, 5 May 2021 00:48:45 +0000 Subject: [PATCH 2/9] Latest results. --- workflow/tests/base_results/results.csv | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/workflow/tests/base_results/results.csv b/workflow/tests/base_results/results.csv index f7261fd281..37b8e3b9cf 100644 --- a/workflow/tests/base_results/results.csv +++ b/workflow/tests/base_results/results.csv @@ -39,8 +39,8 @@ base-bldgtype-multifamily-shared-cooling-tower-only-water-loop-heat-pump.xml,26. base-bldgtype-multifamily-shared-generator.xml,25.47,22.63,0.79,0.0,14.17,0.0,0.0,0.0,0.0,0.02,2.28,0.42,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-2.84,0.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.17,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.75,6.56,9.52,0.58,0.0,0.0,0.0,0.01,6188.0,6180.0,8.64,7.04,0.0,-0.01,2.62,0.0,0.0,0.41,1.49,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.6,0.0,-0.0,-0.85,0.0,0.0,-0.04,3.42,0.0,-0.0,0.0,-0.33,-0.65,-3.12,-0.17,0.0,0.0,8.4,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-ground-loop-ground-to-air-heat-pump.xml,27.5,27.5,0.0,0.0,0.0,0.0,0.0,0.0,0.21,1.95,1.28,1.3,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.75,6.55,9.52,0.58,0.0,0.0,0.0,0.01,6362.0,6267.0,8.64,7.04,0.0,-0.01,2.62,0.0,0.0,0.41,1.49,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.6,0.0,-0.0,-0.85,0.0,0.0,-0.04,3.42,0.0,-0.0,0.0,-0.33,-0.65,-3.12,-0.17,0.0,0.0,8.4,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-laundry-room.xml,15.71,15.71,13.34,0.0,0.0,0.0,0.0,0.0,0.0,0.02,2.21,0.4,0.0,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.83,12.51,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.78,6.24,9.54,0.57,0.0,0.0,0.0,0.01,2882.0,2947.0,3.78,7.07,0.0,-0.01,2.64,0.0,0.0,0.41,1.47,0.0,-0.01,0.0,-0.33,2.08,0.0,0.0,0.0,0.0,-5.47,0.0,-0.0,-0.81,0.0,0.0,-0.03,3.44,0.0,-0.0,0.0,-0.32,-0.8,-3.09,0.0,0.0,0.0,7.93,1355.0,998.0,11403.0,3157.0 -base-bldgtype-multifamily-shared-mechvent-multiple.xml,30.68,30.68,23.76,0.0,0.0,0.0,0.0,0.0,0.0,0.16,2.05,0.34,9.69,0.0,0.0,2.03,0.0,0.21,3.77,1.42,0.17,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6.0,0.0,0.0,0.0,17.76,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,5.67,5.4,9.52,0.61,0.0,0.0,0.0,0.0,6412.0,6397.0,7.85,8.54,0.0,-0.01,2.75,0.0,0.0,0.38,0.6,0.0,-0.01,0.0,-0.16,0.15,0.0,9.31,0.0,0.0,-7.22,0.0,-0.0,-0.3,0.0,0.0,0.01,3.19,0.0,-0.0,0.0,-0.15,-0.02,-2.49,-1.68,0.0,0.0,6.81,1354.0,998.0,11593.0,3210.0 -base-bldgtype-multifamily-shared-mechvent-preconditioning.xml,26.94,26.94,7.55,0.0,0.0,0.0,0.0,0.0,0.0,0.04,2.21,0.39,9.68,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.05,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.44,0.0,0.0,0.0,6.11,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.36,6.16,9.52,0.59,0.0,0.0,0.0,0.01,6242.0,6253.0,8.8,7.29,0.0,-0.01,2.71,0.0,0.0,0.41,1.26,0.0,-0.01,0.0,-0.29,1.67,0.0,1.8,0.0,0.0,-6.19,0.0,-0.0,-0.66,0.0,0.0,-0.02,3.36,0.0,-0.0,0.0,-0.28,-0.53,-3.01,-0.43,0.0,0.0,7.82,1354.0,998.0,11593.0,3210.0 +base-bldgtype-multifamily-shared-mechvent-multiple.xml,30.14,30.14,21.25,0.0,0.0,0.0,0.0,0.0,0.0,0.17,1.82,0.28,9.7,0.0,0.0,2.03,0.0,0.21,3.79,1.13,0.17,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6.52,0.0,0.0,0.0,14.73,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6.17,4.38,9.52,0.61,0.0,0.0,0.0,0.0,6412.0,6373.0,7.85,8.47,0.0,-0.0,2.77,0.0,0.0,0.37,0.42,0.0,-0.01,0.0,-0.11,0.15,0.0,10.26,0.0,0.0,-7.53,0.0,-0.0,-0.15,0.0,0.0,0.03,3.23,0.0,-0.0,0.0,-0.1,-0.02,-1.85,-3.42,0.0,0.0,6.51,1354.0,998.0,11593.0,3210.0 +base-bldgtype-multifamily-shared-mechvent-preconditioning.xml,26.77,26.77,6.34,0.0,0.0,0.0,0.0,0.0,0.0,0.04,2.08,0.36,9.68,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.05,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.53,0.0,0.0,0.0,4.81,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.44,5.56,9.52,0.59,0.0,0.0,0.0,0.01,6242.0,6242.0,8.8,7.28,0.0,-0.01,2.76,0.0,0.0,0.41,1.17,0.0,-0.01,0.0,-0.26,1.7,0.0,2.22,0.0,0.0,-6.53,0.0,-0.0,-0.56,0.0,0.0,-0.01,3.36,0.0,-0.0,0.0,-0.25,-0.47,-2.82,-1.09,0.0,0.0,7.48,1354.0,998.0,11593.0,3210.0 base-bldgtype-multifamily-shared-mechvent.xml,26.71,26.71,4.12,0.0,0.0,0.0,0.0,0.0,0.0,0.11,2.0,0.33,9.69,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,4.12,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.9,5.24,9.52,0.6,0.0,0.0,0.0,0.01,6254.0,6243.0,10.43,7.94,0.0,-0.01,2.75,0.0,0.0,0.38,0.72,0.0,-0.01,0.0,-0.17,1.65,0.0,5.71,0.0,0.0,-7.04,0.0,-0.0,-0.37,0.0,0.0,-0.0,3.21,0.0,-0.0,0.0,-0.17,-0.38,-2.59,-1.43,0.0,0.0,6.99,1354.0,998.0,11593.0,3210.0 base-bldgtype-multifamily-shared-pv.xml,25.47,1.02,0.79,0.0,0.0,0.0,0.0,0.0,0.0,0.02,2.28,0.42,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,-24.45,0.0,0.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.75,6.56,9.52,0.58,0.0,0.0,0.0,0.01,6188.0,6180.0,8.64,7.04,0.0,-0.01,2.62,0.0,0.0,0.41,1.49,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.6,0.0,-0.0,-0.85,0.0,0.0,-0.04,3.42,0.0,-0.0,0.0,-0.33,-0.65,-3.12,-0.17,0.0,0.0,8.4,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-water-heater-recirc.xml,16.81,16.81,13.49,0.0,0.0,0.0,0.0,0.0,0.0,0.03,2.21,0.4,0.0,1.1,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.98,12.51,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.93,6.27,9.54,0.57,0.0,0.0,0.0,0.01,2931.0,3069.0,8.79,7.07,0.0,-0.01,2.66,0.0,0.0,0.41,1.42,0.0,-0.01,0.0,-0.33,2.0,0.0,0.51,0.0,0.0,-5.75,0.0,-0.0,-0.77,0.0,0.0,-0.03,3.41,0.0,-0.0,0.0,-0.32,-0.73,-3.07,-0.17,0.0,0.0,8.05,1355.0,998.0,11403.0,3157.0 From 822bbd661fed7cfaa621336dc197b02fb360921c Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Wed, 5 May 2021 01:56:21 +0000 Subject: [PATCH 3/9] Latest results. --- workflow/tests/base_results/results.csv | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/workflow/tests/base_results/results.csv b/workflow/tests/base_results/results.csv index 33158c3af2..675fce948d 100644 --- a/workflow/tests/base_results/results.csv +++ b/workflow/tests/base_results/results.csv @@ -39,8 +39,8 @@ base-bldgtype-multifamily-shared-cooling-tower-only-water-loop-heat-pump.xml,26. base-bldgtype-multifamily-shared-generator.xml,25.45,22.6,0.78,0.0,14.17,0.0,0.0,0.0,0.0,0.02,2.26,0.41,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-2.84,0.78,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.17,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.74,6.49,9.52,0.58,0.0,0.0,0.0,0.01,6188.0,6177.0,8.63,6.98,0.0,-0.01,2.61,0.0,0.0,0.41,1.46,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.57,0.0,-0.0,-0.86,0.0,0.0,-0.04,3.33,0.0,-0.0,0.0,-0.33,-0.65,-3.11,-0.17,0.0,0.0,8.44,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-ground-loop-ground-to-air-heat-pump.xml,27.48,27.48,0.0,0.0,0.0,0.0,0.0,0.0,0.21,1.95,1.27,1.3,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.74,6.49,9.52,0.58,0.0,0.0,0.0,0.01,6362.0,6265.0,8.63,6.98,0.0,-0.01,2.61,0.0,0.0,0.41,1.46,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.57,0.0,-0.0,-0.86,0.0,0.0,-0.04,3.33,0.0,-0.0,0.0,-0.33,-0.65,-3.11,-0.17,0.0,0.0,8.44,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-laundry-room.xml,15.69,15.69,13.33,0.0,0.0,0.0,0.0,0.0,0.0,0.02,2.19,0.4,0.0,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.81,12.51,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.77,6.18,9.54,0.57,0.0,0.0,0.0,0.01,2882.0,2943.0,3.78,7.01,0.0,-0.01,2.64,0.0,0.0,0.41,1.44,0.0,-0.01,0.0,-0.33,2.08,0.0,0.0,0.0,0.0,-5.45,0.0,-0.0,-0.82,0.0,0.0,-0.03,3.34,0.0,-0.0,0.0,-0.32,-0.8,-3.07,0.0,0.0,0.0,7.95,1355.0,998.0,11403.0,3157.0 -base-bldgtype-multifamily-shared-mechvent-multiple.xml,30.65,30.65,23.73,0.0,0.0,0.0,0.0,0.0,0.0,0.15,2.03,0.34,9.69,0.0,0.0,2.03,0.0,0.21,3.77,1.42,0.17,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,5.96,0.0,0.0,0.0,17.77,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,5.63,5.32,9.52,0.61,0.0,0.0,0.0,0.0,6412.0,6394.0,7.85,8.48,0.0,-0.01,2.75,0.0,0.0,0.38,0.55,0.0,-0.01,0.0,-0.16,0.15,0.0,9.31,0.0,0.0,-7.2,0.0,-0.0,-0.31,0.0,0.0,0.01,3.09,0.0,-0.0,0.0,-0.16,-0.03,-2.48,-1.68,0.0,0.0,6.83,1354.0,998.0,11593.0,3210.0 -base-bldgtype-multifamily-shared-mechvent-preconditioning.xml,26.91,26.91,7.53,0.0,0.0,0.0,0.0,0.0,0.0,0.04,2.19,0.39,9.68,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.05,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.42,0.0,0.0,0.0,6.11,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.35,6.09,9.52,0.59,0.0,0.0,0.0,0.01,6241.0,6250.0,8.8,7.23,0.0,-0.01,2.7,0.0,0.0,0.41,1.25,0.0,-0.01,0.0,-0.31,1.67,0.0,1.8,0.0,0.0,-6.17,0.0,-0.0,-0.67,0.0,0.0,-0.02,3.29,0.0,-0.0,0.0,-0.3,-0.53,-2.99,-0.43,0.0,0.0,7.84,1354.0,998.0,11593.0,3210.0 +base-bldgtype-multifamily-shared-mechvent-multiple.xml,30.11,30.11,21.21,0.0,0.0,0.0,0.0,0.0,0.0,0.17,1.8,0.27,9.7,0.0,0.0,2.03,0.0,0.21,3.79,1.13,0.17,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6.49,0.0,0.0,0.0,14.72,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6.14,4.3,9.52,0.61,0.0,0.0,0.0,0.0,6412.0,6371.0,7.85,8.41,0.0,-0.0,2.77,0.0,0.0,0.37,0.36,0.0,-0.01,0.0,-0.11,0.15,0.0,10.29,0.0,0.0,-7.53,0.0,-0.0,-0.14,0.0,0.0,0.03,3.12,0.0,-0.0,0.0,-0.11,-0.02,-1.84,-3.4,0.0,0.0,6.51,1354.0,998.0,11593.0,3210.0 +base-bldgtype-multifamily-shared-mechvent-preconditioning.xml,26.75,26.75,6.32,0.0,0.0,0.0,0.0,0.0,0.0,0.04,2.06,0.35,9.68,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.05,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.51,0.0,0.0,0.0,4.81,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.43,5.48,9.52,0.59,0.0,0.0,0.0,0.01,6242.0,6239.0,8.8,7.22,0.0,-0.01,2.75,0.0,0.0,0.41,1.14,0.0,-0.01,0.0,-0.27,1.69,0.0,2.22,0.0,0.0,-6.5,0.0,-0.0,-0.57,0.0,0.0,-0.01,3.27,0.0,-0.01,0.0,-0.26,-0.47,-2.81,-1.1,0.0,0.0,7.51,1354.0,998.0,11593.0,3210.0 base-bldgtype-multifamily-shared-mechvent.xml,26.68,26.68,4.09,0.0,0.0,0.0,0.0,0.0,0.0,0.11,1.98,0.33,9.69,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,4.09,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.87,5.16,9.52,0.6,0.0,0.0,0.0,0.01,6254.0,6240.0,10.43,7.88,0.0,-0.01,2.75,0.0,0.0,0.38,0.68,0.0,-0.01,0.0,-0.18,1.65,0.0,5.71,0.0,0.0,-7.03,0.0,-0.0,-0.37,0.0,0.0,-0.0,3.1,0.0,-0.0,0.0,-0.17,-0.38,-2.57,-1.43,0.0,0.0,7.0,1354.0,998.0,11593.0,3210.0 base-bldgtype-multifamily-shared-pv.xml,25.45,1.01,0.78,0.0,0.0,0.0,0.0,0.0,0.0,0.02,2.26,0.41,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,-24.43,0.0,0.78,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.74,6.49,9.52,0.58,0.0,0.0,0.0,0.01,6188.0,6177.0,8.63,6.98,0.0,-0.01,2.61,0.0,0.0,0.41,1.46,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.57,0.0,-0.0,-0.86,0.0,0.0,-0.04,3.33,0.0,-0.0,0.0,-0.33,-0.65,-3.11,-0.17,0.0,0.0,8.44,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-water-heater-recirc.xml,16.79,16.79,13.48,0.0,0.0,0.0,0.0,0.0,0.0,0.03,2.19,0.39,0.0,1.1,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.97,12.51,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.92,6.2,9.54,0.57,0.0,0.0,0.0,0.01,2931.0,3065.0,8.78,7.01,0.0,-0.01,2.65,0.0,0.0,0.41,1.4,0.0,-0.01,0.0,-0.34,2.0,0.0,0.51,0.0,0.0,-5.71,0.0,-0.0,-0.79,0.0,0.0,-0.03,3.33,0.0,-0.0,0.0,-0.33,-0.74,-3.05,-0.17,0.0,0.0,8.09,1355.0,998.0,11403.0,3157.0 From 136c413d90b5230eae743360f4fa60aaa74961b1 Mon Sep 17 00:00:00 2001 From: Yueyue Zhou Date: Wed, 5 May 2021 17:11:46 -0600 Subject: [PATCH 4/9] Add seasons for precond logic --- HPXMLtoOpenStudio/resources/airflow.rb | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/HPXMLtoOpenStudio/resources/airflow.rb b/HPXMLtoOpenStudio/resources/airflow.rb index 877abe092c..46e46dae69 100644 --- a/HPXMLtoOpenStudio/resources/airflow.rb +++ b/HPXMLtoOpenStudio/resources/airflow.rb @@ -2,7 +2,7 @@ class Airflow def self.apply(model, runner, weather, spaces, hpxml, cfa, nbeds, - ncfl_ag, duct_systems, nv_clg_ssn_sensor, hvac_map, eri_version, + ncfl_ag, duct_systems, clg_ssn_sensor, hvac_map, eri_version, frac_windows_operable, apply_ashrae140_assumptions) # Global variables @@ -106,10 +106,10 @@ def self.apply(model, runner, weather, spaces, hpxml, cfa, nbeds, vented_crawl = foundation end - apply_natural_ventilation_and_whole_house_fan(model, weather, hpxml.site, vent_fans_whf, open_window_area, nv_clg_ssn_sensor) + apply_natural_ventilation_and_whole_house_fan(model, weather, hpxml.site, vent_fans_whf, open_window_area, clg_ssn_sensor) apply_infiltration_and_ventilation_fans(model, weather, hpxml.site, vent_fans_mech, vent_fans_kitchen, vent_fans_bath, vented_dryers, hpxml.building_construction.has_flue_or_chimney, hpxml.air_infiltration_measurements, - vented_attic, vented_crawl, hvac_map) + vented_attic, vented_crawl, hvac_map, clg_ssn_sensor) end def self.get_default_fraction_of_windows_operable() @@ -1519,7 +1519,7 @@ def self.calculate_fan_loads(model, infil_program, vent_mech_erv_hrv_tot, hrv_er end end - def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_mech_precool, hrv_erv_effectiveness_map, fan_sens_load_actuator, fan_lat_load_actuator, hvac_map) + def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_mech_precool, hrv_erv_effectiveness_map, fan_sens_load_actuator, fan_lat_load_actuator, hvac_map, clg_ssn_sensor) # Preconditioning # Assume introducing no sensible loads to zone if preconditioned if not vent_mech_preheat.empty? @@ -1535,7 +1535,7 @@ def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_m infil_program.addLine("Set ClgStp = #{clg_stp_sensor.name}") # cooling thermostat setpoint end vent_mech_preheat.each_with_index do |f_preheat, i| - infil_program.addLine('If OASupInTemp < HtgStp') + infil_program.addLine("If (OASupInTemp < HtgStp) && (#{clg_ssn_sensor.name} < 1)") htg_energy_actuator = create_other_equipment_object_and_actuator(model: model, name: "shared mech vent preheating energy #{i}", space: @living_space, frac_lat: 0.0, frac_lost: 1.0, hpxml_fuel_type: f_preheat.preheating_fuel, end_use: Constants.ObjectNameMechanicalVentilationPreconditioning) hvac_map["#{f_preheat.id}_preheat"] = [htg_energy_actuator.actuatedComponent.get] infil_program.addLine(" Set Qpreheat = #{UnitConversions.convert(f_preheat.average_oa_unit_flow_rate, 'cfm', 'm^3/s').round(4)}") @@ -1560,7 +1560,7 @@ def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_m infil_program.addLine('EndIf') end vent_mech_precool.each_with_index do |f_precool, i| - infil_program.addLine('If OASupInTemp > ClgStp') + infil_program.addLine("If (OASupInTemp > ClgStp) && (#{clg_ssn_sensor.name} > 0)") clg_energy_actuator = create_other_equipment_object_and_actuator(model: model, name: "shared mech vent precooling energy #{i}", space: @living_space, frac_lat: 0.0, frac_lost: 1.0, hpxml_fuel_type: f_precool.precooling_fuel, end_use: Constants.ObjectNameMechanicalVentilationPreconditioning) hvac_map["#{f_precool.id}_precool"] = [clg_energy_actuator.actuatedComponent.get] infil_program.addLine(" Set Qprecool = #{UnitConversions.convert(f_precool.average_oa_unit_flow_rate, 'cfm', 'm^3/s').round(4)}") @@ -1587,7 +1587,7 @@ def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_m end def self.apply_infiltration_and_mechanical_ventilation(model, site, vent_fans_mech, living_ach50, living_const_ach, weather, vent_fans_kitchen, vent_fans_bath, vented_dryers, - range_sch_sensors_map, bath_sch_sensors_map, dryer_exhaust_sch_sensors_map, has_flue_chimney, hvac_map) + range_sch_sensors_map, bath_sch_sensors_map, dryer_exhaust_sch_sensors_map, has_flue_chimney, hvac_map, clg_ssn_sensor) # Categorize fans into different types vent_mech_preheat = vent_fans_mech.select { |vent_mech| (not vent_mech.preheating_efficiency_cop.nil?) } vent_mech_precool = vent_fans_mech.select { |vent_mech| (not vent_mech.precooling_efficiency_cop.nil?) } @@ -1662,7 +1662,7 @@ def self.apply_infiltration_and_mechanical_ventilation(model, site, vent_fans_me calculate_fan_loads(model, infil_program, vent_mech_erv_hrv_tot, hrv_erv_effectiveness_map, fan_sens_load_actuator, fan_lat_load_actuator, 'Qload') # Address preconditioning - calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_mech_precool, hrv_erv_effectiveness_map, fan_sens_load_actuator, fan_lat_load_actuator, hvac_map) + calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_mech_precool, hrv_erv_effectiveness_map, fan_sens_load_actuator, fan_lat_load_actuator, hvac_map, clg_ssn_sensor) program_calling_manager = OpenStudio::Model::EnergyManagementSystemProgramCallingManager.new(model) program_calling_manager.setName("#{infil_program.name} calling manager") @@ -1671,7 +1671,7 @@ def self.apply_infiltration_and_mechanical_ventilation(model, site, vent_fans_me end def self.apply_infiltration_and_ventilation_fans(model, weather, site, vent_fans_mech, vent_fans_kitchen, vent_fans_bath, vented_dryers, - has_flue_chimney, air_infils, vented_attic, vented_crawl, hvac_map) + has_flue_chimney, air_infils, vented_attic, vented_crawl, hvac_map, clg_ssn_sensor) # Get living space infiltration living_ach50 = nil living_const_ach = nil @@ -1709,7 +1709,7 @@ def self.apply_infiltration_and_ventilation_fans(model, weather, site, vent_fans # Get mechanical ventilation apply_infiltration_and_mechanical_ventilation(model, site, vent_fans_mech, living_ach50, living_const_ach, weather, vent_fans_kitchen, vent_fans_bath, vented_dryers, - range_sch_sensors_map, bath_sch_sensors_map, dryer_exhaust_sch_sensors_map, has_flue_chimney, hvac_map) + range_sch_sensors_map, bath_sch_sensors_map, dryer_exhaust_sch_sensors_map, has_flue_chimney, hvac_map, clg_ssn_sensor) end def self.apply_infiltration_to_living(site, living_ach50, living_const_ach, infil_program, weather, has_flue_chimney) From a47f8e5fd3fade9b53ac5e71e813ce17a94b269b Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Thu, 6 May 2021 00:12:26 +0000 Subject: [PATCH 5/9] Latest results. --- workflow/tests/base_results/results.csv | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/workflow/tests/base_results/results.csv b/workflow/tests/base_results/results.csv index 675fce948d..f3f5b710d1 100644 --- a/workflow/tests/base_results/results.csv +++ b/workflow/tests/base_results/results.csv @@ -39,8 +39,8 @@ base-bldgtype-multifamily-shared-cooling-tower-only-water-loop-heat-pump.xml,26. base-bldgtype-multifamily-shared-generator.xml,25.45,22.6,0.78,0.0,14.17,0.0,0.0,0.0,0.0,0.02,2.26,0.41,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-2.84,0.78,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.17,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.74,6.49,9.52,0.58,0.0,0.0,0.0,0.01,6188.0,6177.0,8.63,6.98,0.0,-0.01,2.61,0.0,0.0,0.41,1.46,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.57,0.0,-0.0,-0.86,0.0,0.0,-0.04,3.33,0.0,-0.0,0.0,-0.33,-0.65,-3.11,-0.17,0.0,0.0,8.44,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-ground-loop-ground-to-air-heat-pump.xml,27.48,27.48,0.0,0.0,0.0,0.0,0.0,0.0,0.21,1.95,1.27,1.3,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.74,6.49,9.52,0.58,0.0,0.0,0.0,0.01,6362.0,6265.0,8.63,6.98,0.0,-0.01,2.61,0.0,0.0,0.41,1.46,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.57,0.0,-0.0,-0.86,0.0,0.0,-0.04,3.33,0.0,-0.0,0.0,-0.33,-0.65,-3.11,-0.17,0.0,0.0,8.44,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-laundry-room.xml,15.69,15.69,13.33,0.0,0.0,0.0,0.0,0.0,0.0,0.02,2.19,0.4,0.0,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.81,12.51,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.77,6.18,9.54,0.57,0.0,0.0,0.0,0.01,2882.0,2943.0,3.78,7.01,0.0,-0.01,2.64,0.0,0.0,0.41,1.44,0.0,-0.01,0.0,-0.33,2.08,0.0,0.0,0.0,0.0,-5.45,0.0,-0.0,-0.82,0.0,0.0,-0.03,3.34,0.0,-0.0,0.0,-0.32,-0.8,-3.07,0.0,0.0,0.0,7.95,1355.0,998.0,11403.0,3157.0 -base-bldgtype-multifamily-shared-mechvent-multiple.xml,30.11,30.11,21.21,0.0,0.0,0.0,0.0,0.0,0.0,0.17,1.8,0.27,9.7,0.0,0.0,2.03,0.0,0.21,3.79,1.13,0.17,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6.49,0.0,0.0,0.0,14.72,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6.14,4.3,9.52,0.61,0.0,0.0,0.0,0.0,6412.0,6371.0,7.85,8.41,0.0,-0.0,2.77,0.0,0.0,0.37,0.36,0.0,-0.01,0.0,-0.11,0.15,0.0,10.29,0.0,0.0,-7.53,0.0,-0.0,-0.14,0.0,0.0,0.03,3.12,0.0,-0.0,0.0,-0.11,-0.02,-1.84,-3.4,0.0,0.0,6.51,1354.0,998.0,11593.0,3210.0 -base-bldgtype-multifamily-shared-mechvent-preconditioning.xml,26.75,26.75,6.32,0.0,0.0,0.0,0.0,0.0,0.0,0.04,2.06,0.35,9.68,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.05,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.51,0.0,0.0,0.0,4.81,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.43,5.48,9.52,0.59,0.0,0.0,0.0,0.01,6242.0,6239.0,8.8,7.22,0.0,-0.01,2.75,0.0,0.0,0.41,1.14,0.0,-0.01,0.0,-0.27,1.69,0.0,2.22,0.0,0.0,-6.5,0.0,-0.0,-0.57,0.0,0.0,-0.01,3.27,0.0,-0.01,0.0,-0.26,-0.47,-2.81,-1.1,0.0,0.0,7.51,1354.0,998.0,11593.0,3210.0 +base-bldgtype-multifamily-shared-mechvent-multiple.xml,29.85,29.85,20.36,0.0,0.0,0.0,0.0,0.0,0.0,0.21,1.73,0.25,9.71,0.0,0.0,2.03,0.0,0.21,3.75,0.95,0.17,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,8.18,0.0,0.0,0.0,12.17,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,7.74,4.01,9.52,0.62,0.0,0.0,0.0,0.0,6412.0,6364.0,8.45,8.37,0.0,-0.01,2.83,0.0,0.0,0.4,0.44,0.0,-0.01,0.0,-0.25,0.15,0.0,12.34,0.0,0.0,-7.97,0.0,-0.0,-0.01,0.0,0.0,0.07,3.31,0.0,-0.01,0.0,-0.24,-0.01,-1.57,-3.77,0.0,0.0,6.08,1354.0,998.0,11593.0,3210.0 +base-bldgtype-multifamily-shared-mechvent-preconditioning.xml,26.71,26.71,5.6,0.0,0.0,0.0,0.0,0.0,0.0,0.04,2.02,0.34,9.68,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.05,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.64,0.0,0.0,0.0,3.95,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.55,5.3,9.52,0.59,0.0,0.0,0.0,0.01,6242.0,6237.0,8.8,7.21,0.0,-0.01,2.78,0.0,0.0,0.41,1.19,0.0,-0.01,0.0,-0.27,1.71,0.0,2.35,0.0,0.0,-6.6,0.0,-0.0,-0.5,0.0,0.0,0.0,3.37,0.0,-0.01,0.0,-0.26,-0.43,-2.57,-1.68,0.0,0.0,7.42,1354.0,998.0,11593.0,3210.0 base-bldgtype-multifamily-shared-mechvent.xml,26.68,26.68,4.09,0.0,0.0,0.0,0.0,0.0,0.0,0.11,1.98,0.33,9.69,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,4.09,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.87,5.16,9.52,0.6,0.0,0.0,0.0,0.01,6254.0,6240.0,10.43,7.88,0.0,-0.01,2.75,0.0,0.0,0.38,0.68,0.0,-0.01,0.0,-0.18,1.65,0.0,5.71,0.0,0.0,-7.03,0.0,-0.0,-0.37,0.0,0.0,-0.0,3.1,0.0,-0.0,0.0,-0.17,-0.38,-2.57,-1.43,0.0,0.0,7.0,1354.0,998.0,11593.0,3210.0 base-bldgtype-multifamily-shared-pv.xml,25.45,1.01,0.78,0.0,0.0,0.0,0.0,0.0,0.0,0.02,2.26,0.41,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,-24.43,0.0,0.78,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.74,6.49,9.52,0.58,0.0,0.0,0.0,0.01,6188.0,6177.0,8.63,6.98,0.0,-0.01,2.61,0.0,0.0,0.41,1.46,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.57,0.0,-0.0,-0.86,0.0,0.0,-0.04,3.33,0.0,-0.0,0.0,-0.33,-0.65,-3.11,-0.17,0.0,0.0,8.44,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-water-heater-recirc.xml,16.79,16.79,13.48,0.0,0.0,0.0,0.0,0.0,0.0,0.03,2.19,0.39,0.0,1.1,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.97,12.51,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.92,6.2,9.54,0.57,0.0,0.0,0.0,0.01,2931.0,3065.0,8.78,7.01,0.0,-0.01,2.65,0.0,0.0,0.41,1.4,0.0,-0.01,0.0,-0.34,2.0,0.0,0.51,0.0,0.0,-5.71,0.0,-0.0,-0.79,0.0,0.0,-0.03,3.33,0.0,-0.0,0.0,-0.33,-0.74,-3.05,-0.17,0.0,0.0,8.09,1355.0,998.0,11403.0,3157.0 From 598e23528d81fc275acd8e2083e4d1fc1009e579 Mon Sep 17 00:00:00 2001 From: Yueyue Zhou Date: Tue, 11 May 2021 16:17:34 -0600 Subject: [PATCH 6/9] load reporting for preconditioning --- HPXMLtoOpenStudio/measure.rb | 26 +++++++++++++++++++++++--- HPXMLtoOpenStudio/resources/airflow.rb | 24 ++++++++++++++---------- 2 files changed, 37 insertions(+), 13 deletions(-) diff --git a/HPXMLtoOpenStudio/measure.rb b/HPXMLtoOpenStudio/measure.rb index 861ed183f2..f8fceed894 100644 --- a/HPXMLtoOpenStudio/measure.rb +++ b/HPXMLtoOpenStudio/measure.rb @@ -2096,7 +2096,7 @@ def self.add_total_loads_output(runner, model, living_zone) tot_load_sensors[:clg] = OpenStudio::Model::EnergyManagementSystemSensor.new(model, 'Cooling:EnergyTransfer') tot_load_sensors[:clg].setName('clg_load_tot') - # Need to adjusted E+ EnergyTransfer meters for dehumidifiers + # Need to adjust E+ EnergyTransfer meters for dehumidifiers intgain_dehumidifier = nil model.getZoneHVACDehumidifierDXs.each do |e| next unless e.thermalZone.get.name.to_s == living_zone.name.to_s @@ -2113,14 +2113,25 @@ def self.add_total_loads_output(runner, model, living_zone) program.setName(Constants.ObjectNameTotalLoadsProgram) program.addLine('Set loads_htg_tot = 0') program.addLine('Set loads_clg_tot = 0') + # Need to adjust E+ EnergyTransfer meters for mech vent preconditioning + # Fixme: is it possible to have cooling in hvac but heating in mech vent preconditioning? How to report load in that case? + # Fixme: Proceed reporting both + model.getEnergyManagementSystemGlobalVariables.sort.each do |ems_var| + next unless ems_var.name.to_s.start_with? 'Precond_' + if ems_var.name.to_s.start_with? 'Precond_HeatingLoad' + program.addLine("Set loads_htg_tot = loads_htg_tot + #{ems_var.name.get}") + else + program.addLine("Set loads_clg_tot = loads_clg_tot + #{ems_var.name.get}") + end + end program.addLine("If #{liv_load_sensors[:htg].name} > 0") - s = " Set loads_htg_tot = #{tot_load_sensors[:htg].name} - #{tot_load_sensors[:clg].name}" + s = " Set loads_htg_tot = loads_htg_tot + #{tot_load_sensors[:htg].name} - #{tot_load_sensors[:clg].name}" if not intgain_dehumidifier.nil? s += " - #{intgain_dehumidifier.name}" end program.addLine(s) program.addLine("ElseIf #{liv_load_sensors[:clg].name} > 0") - s = " Set loads_clg_tot = #{tot_load_sensors[:clg].name} - #{tot_load_sensors[:htg].name}" + s = " Set loads_clg_tot = loads_clg_tot + #{tot_load_sensors[:clg].name} - #{tot_load_sensors[:htg].name}" if not intgain_dehumidifier.nil? s += " + #{intgain_dehumidifier.name}" end @@ -2491,6 +2502,15 @@ def self.add_component_loads_output(runner, model, living_zone, liv_load_sensors mechvent_sensors.each do |sensor| program.addLine("Set hr_mechvent = hr_mechvent - #{sensor.name}") end + # Adjust component load reporting for preconditioning + model.getEnergyManagementSystemGlobalVariables.sort.each do |ems_var| + next unless ems_var.name.to_s.start_with? 'Precond_' + if ems_var.name.to_s.start_with? 'Precond_HeatingLoad' + program.addLine("Set hr_mechvent = hr_mechvent - #{ems_var.name.get}") + else + program.addLine("Set hr_mechvent = hr_mechvent + #{ems_var.name.get}") + end + end program.addLine('Set hr_ducts = 0') ducts_sensors.each do |duct_sensors| s = 'Set hr_ducts = hr_ducts' diff --git a/HPXMLtoOpenStudio/resources/airflow.rb b/HPXMLtoOpenStudio/resources/airflow.rb index 46e46dae69..20e8067e2e 100644 --- a/HPXMLtoOpenStudio/resources/airflow.rb +++ b/HPXMLtoOpenStudio/resources/airflow.rb @@ -1537,6 +1537,7 @@ def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_m vent_mech_preheat.each_with_index do |f_preheat, i| infil_program.addLine("If (OASupInTemp < HtgStp) && (#{clg_ssn_sensor.name} < 1)") htg_energy_actuator = create_other_equipment_object_and_actuator(model: model, name: "shared mech vent preheating energy #{i}", space: @living_space, frac_lat: 0.0, frac_lost: 1.0, hpxml_fuel_type: f_preheat.preheating_fuel, end_use: Constants.ObjectNameMechanicalVentilationPreconditioning) + htg_load_var = OpenStudio::Model::EnergyManagementSystemGlobalVariable.new(model, "Precond_HeatingLoad_#{i}") hvac_map["#{f_preheat.id}_preheat"] = [htg_energy_actuator.actuatedComponent.get] infil_program.addLine(" Set Qpreheat = #{UnitConversions.convert(f_preheat.average_oa_unit_flow_rate, 'cfm', 'm^3/s').round(4)}") if [HPXML::MechVentTypeERV, HPXML::MechVentTypeHRV].include? f_preheat.fan_type @@ -1548,20 +1549,22 @@ def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_m infil_program.addLine(' If ZoneInTemp < HtgStp') infil_program.addLine(' Set FanSensToSpt = Fan_MFR * ZoneCp * (ZoneInTemp - HtgStp)') - infil_program.addLine(" Set PreHeatingEnergy = (-FanSensToSpt) * #{f_preheat.preheating_fraction_load_served}") - infil_program.addLine(" Set #{fan_sens_load_actuator.name} = #{fan_sens_load_actuator.name} + PreHeatingEnergy") + infil_program.addLine(" Set PreHeatingWatt = (-FanSensToSpt) * #{f_preheat.preheating_fraction_load_served}") + infil_program.addLine(" Set #{fan_sens_load_actuator.name} = #{fan_sens_load_actuator.name} + PreHeatingWatt") infil_program.addLine(" Set #{fan_lat_load_actuator.name} = #{fan_lat_load_actuator.name} - FanLatToLv") # Fixme:Does this assumption still apply? - infil_program.addLine(" Set #{htg_energy_actuator.name} = PreHeatingEnergy / #{f_preheat.preheating_efficiency_cop}") infil_program.addLine(' Else') - infil_program.addLine(" Set #{htg_energy_actuator.name} = 0.0") + infil_program.addLine(" Set PreHeatingWatt = 0.0") infil_program.addLine(' EndIf') infil_program.addLine('Else') - infil_program.addLine(" Set #{htg_energy_actuator.name} = 0.0") + infil_program.addLine(" Set PreHeatingWatt = 0.0") infil_program.addLine('EndIf') + infil_program.addLine("Set #{htg_load_var.name.get} = PreHeatingWatt * ZoneTimeStep*3600") + infil_program.addLine("Set #{htg_energy_actuator.name} = PreHeatingWatt / #{f_preheat.preheating_efficiency_cop}") end vent_mech_precool.each_with_index do |f_precool, i| infil_program.addLine("If (OASupInTemp > ClgStp) && (#{clg_ssn_sensor.name} > 0)") clg_energy_actuator = create_other_equipment_object_and_actuator(model: model, name: "shared mech vent precooling energy #{i}", space: @living_space, frac_lat: 0.0, frac_lost: 1.0, hpxml_fuel_type: f_precool.precooling_fuel, end_use: Constants.ObjectNameMechanicalVentilationPreconditioning) + clg_load_var = OpenStudio::Model::EnergyManagementSystemGlobalVariable.new(model, "Precond_CoolingLoad_#{i}") hvac_map["#{f_precool.id}_precool"] = [clg_energy_actuator.actuatedComponent.get] infil_program.addLine(" Set Qprecool = #{UnitConversions.convert(f_precool.average_oa_unit_flow_rate, 'cfm', 'm^3/s').round(4)}") if [HPXML::MechVentTypeERV, HPXML::MechVentTypeHRV].include? f_precool.fan_type @@ -1573,16 +1576,17 @@ def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_m infil_program.addLine(' If ZoneInTemp > ClgStp') infil_program.addLine(' Set FanSensToSpt = Fan_MFR * ZoneCp * (ZoneInTemp - ClgStp)') - infil_program.addLine(" Set PreCoolingEnergy = FanSensToSpt * #{f_precool.precooling_fraction_load_served}") - infil_program.addLine(" Set #{fan_sens_load_actuator.name} = #{fan_sens_load_actuator.name} - PreCoolingEnergy") + infil_program.addLine(" Set PreCoolingWatt = FanSensToSpt * #{f_precool.precooling_fraction_load_served}") + infil_program.addLine(" Set #{fan_sens_load_actuator.name} = #{fan_sens_load_actuator.name} - PreCoolingWatt") infil_program.addLine(" Set #{fan_lat_load_actuator.name} = #{fan_lat_load_actuator.name} - FanLatToLv") # Fixme:Does this assumption still apply? - infil_program.addLine(" Set #{clg_energy_actuator.name} = PreCoolingEnergy / #{f_precool.precooling_efficiency_cop}") infil_program.addLine(' Else') - infil_program.addLine(" Set #{clg_energy_actuator.name} = 0.0") + infil_program.addLine(" Set PreCoolingWatt = 0.0") infil_program.addLine(' EndIf') infil_program.addLine('Else') - infil_program.addLine(" Set #{clg_energy_actuator.name} = 0.0") + infil_program.addLine(" Set PreCoolingWatt = 0.0") infil_program.addLine('EndIf') + infil_program.addLine("Set #{clg_load_var.name.get} = PreCoolingWatt * ZoneTimeStep*3600") + infil_program.addLine("Set #{clg_energy_actuator.name} = PreCoolingWatt / #{f_precool.precooling_efficiency_cop}") end end From d6abddee966d9c55dc7bc2f376f31ca8e2d1a7ac Mon Sep 17 00:00:00 2001 From: Yueyue Zhou Date: Tue, 11 May 2021 16:28:37 -0600 Subject: [PATCH 7/9] bugfix + format --- HPXMLtoOpenStudio/measure.rb | 4 ++-- HPXMLtoOpenStudio/resources/airflow.rb | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/HPXMLtoOpenStudio/measure.rb b/HPXMLtoOpenStudio/measure.rb index f8fceed894..ddd8fac7fc 100644 --- a/HPXMLtoOpenStudio/measure.rb +++ b/HPXMLtoOpenStudio/measure.rb @@ -2506,9 +2506,9 @@ def self.add_component_loads_output(runner, model, living_zone, liv_load_sensors model.getEnergyManagementSystemGlobalVariables.sort.each do |ems_var| next unless ems_var.name.to_s.start_with? 'Precond_' if ems_var.name.to_s.start_with? 'Precond_HeatingLoad' - program.addLine("Set hr_mechvent = hr_mechvent - #{ems_var.name.get}") - else program.addLine("Set hr_mechvent = hr_mechvent + #{ems_var.name.get}") + else + program.addLine("Set hr_mechvent = hr_mechvent - #{ems_var.name.get}") end end program.addLine('Set hr_ducts = 0') diff --git a/HPXMLtoOpenStudio/resources/airflow.rb b/HPXMLtoOpenStudio/resources/airflow.rb index 20e8067e2e..e868a263bf 100644 --- a/HPXMLtoOpenStudio/resources/airflow.rb +++ b/HPXMLtoOpenStudio/resources/airflow.rb @@ -1553,10 +1553,10 @@ def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_m infil_program.addLine(" Set #{fan_sens_load_actuator.name} = #{fan_sens_load_actuator.name} + PreHeatingWatt") infil_program.addLine(" Set #{fan_lat_load_actuator.name} = #{fan_lat_load_actuator.name} - FanLatToLv") # Fixme:Does this assumption still apply? infil_program.addLine(' Else') - infil_program.addLine(" Set PreHeatingWatt = 0.0") + infil_program.addLine(' Set PreHeatingWatt = 0.0') infil_program.addLine(' EndIf') infil_program.addLine('Else') - infil_program.addLine(" Set PreHeatingWatt = 0.0") + infil_program.addLine(' Set PreHeatingWatt = 0.0') infil_program.addLine('EndIf') infil_program.addLine("Set #{htg_load_var.name.get} = PreHeatingWatt * ZoneTimeStep*3600") infil_program.addLine("Set #{htg_energy_actuator.name} = PreHeatingWatt / #{f_preheat.preheating_efficiency_cop}") @@ -1580,10 +1580,10 @@ def self.calculate_precond_loads(model, infil_program, vent_mech_preheat, vent_m infil_program.addLine(" Set #{fan_sens_load_actuator.name} = #{fan_sens_load_actuator.name} - PreCoolingWatt") infil_program.addLine(" Set #{fan_lat_load_actuator.name} = #{fan_lat_load_actuator.name} - FanLatToLv") # Fixme:Does this assumption still apply? infil_program.addLine(' Else') - infil_program.addLine(" Set PreCoolingWatt = 0.0") + infil_program.addLine(' Set PreCoolingWatt = 0.0') infil_program.addLine(' EndIf') infil_program.addLine('Else') - infil_program.addLine(" Set PreCoolingWatt = 0.0") + infil_program.addLine(' Set PreCoolingWatt = 0.0') infil_program.addLine('EndIf') infil_program.addLine("Set #{clg_load_var.name.get} = PreCoolingWatt * ZoneTimeStep*3600") infil_program.addLine("Set #{clg_energy_actuator.name} = PreCoolingWatt / #{f_precool.precooling_efficiency_cop}") From ac6c95f2dec57b62e9c2f56bf49d245916ddde55 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 11 May 2021 23:29:40 +0000 Subject: [PATCH 8/9] Latest results. --- workflow/tests/base_results/results.csv | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/workflow/tests/base_results/results.csv b/workflow/tests/base_results/results.csv index b147b56da3..c9746b4d4c 100644 --- a/workflow/tests/base_results/results.csv +++ b/workflow/tests/base_results/results.csv @@ -39,8 +39,8 @@ base-bldgtype-multifamily-shared-cooling-tower-only-water-loop-heat-pump.xml,26. base-bldgtype-multifamily-shared-generator.xml,25.45,22.6,0.78,0.0,14.17,0.0,0.0,0.0,0.0,0.02,2.26,0.41,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-2.84,0.78,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.17,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.74,6.49,9.52,0.58,0.0,0.0,0.0,0.01,6188.0,6177.0,8.63,6.98,0.0,-0.01,2.61,0.0,0.0,0.41,1.46,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.57,0.0,-0.0,-0.86,0.0,0.0,-0.04,3.33,0.0,-0.0,0.0,-0.33,-0.65,-3.11,-0.17,0.0,0.0,8.44,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-ground-loop-ground-to-air-heat-pump.xml,27.48,27.48,0.0,0.0,0.0,0.0,0.0,0.0,0.21,1.95,1.27,1.3,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.74,6.49,9.52,0.58,0.0,0.0,0.0,0.01,6362.0,6265.0,8.63,6.98,0.0,-0.01,2.61,0.0,0.0,0.41,1.46,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.57,0.0,-0.0,-0.86,0.0,0.0,-0.04,3.33,0.0,-0.0,0.0,-0.33,-0.65,-3.11,-0.17,0.0,0.0,8.44,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-laundry-room.xml,15.69,15.69,13.33,0.0,0.0,0.0,0.0,0.0,0.0,0.02,2.19,0.4,0.0,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.81,12.51,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.77,6.18,9.54,0.57,0.0,0.0,0.0,0.01,2882.0,2943.0,3.78,7.01,0.0,-0.01,2.64,0.0,0.0,0.41,1.44,0.0,-0.01,0.0,-0.33,2.08,0.0,0.0,0.0,0.0,-5.45,0.0,-0.0,-0.82,0.0,0.0,-0.03,3.34,0.0,-0.0,0.0,-0.32,-0.8,-3.07,0.0,0.0,0.0,7.95,1355.0,998.0,11403.0,3157.0 -base-bldgtype-multifamily-shared-mechvent-multiple.xml,29.85,29.85,20.36,0.0,0.0,0.0,0.0,0.0,0.0,0.21,1.73,0.25,9.71,0.0,0.0,2.03,0.0,0.21,3.75,0.95,0.17,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,8.18,0.0,0.0,0.0,12.17,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,7.74,4.01,9.52,0.62,0.0,0.0,0.0,0.0,6412.0,6364.0,8.45,8.37,0.0,-0.01,2.83,0.0,0.0,0.4,0.44,0.0,-0.01,0.0,-0.25,0.15,0.0,12.34,0.0,0.0,-7.97,0.0,-0.0,-0.01,0.0,0.0,0.07,3.31,0.0,-0.01,0.0,-0.24,-0.01,-1.57,-3.77,0.0,0.0,6.08,1354.0,998.0,11593.0,3210.0 -base-bldgtype-multifamily-shared-mechvent-preconditioning.xml,26.71,26.71,5.6,0.0,0.0,0.0,0.0,0.0,0.0,0.04,2.02,0.34,9.68,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.05,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.64,0.0,0.0,0.0,3.95,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.55,5.3,9.52,0.59,0.0,0.0,0.0,0.01,6242.0,6237.0,8.8,7.21,0.0,-0.01,2.78,0.0,0.0,0.41,1.19,0.0,-0.01,0.0,-0.27,1.71,0.0,2.35,0.0,0.0,-6.6,0.0,-0.0,-0.5,0.0,0.0,0.0,3.37,0.0,-0.01,0.0,-0.26,-0.43,-2.57,-1.68,0.0,0.0,7.42,1354.0,998.0,11593.0,3210.0 +base-bldgtype-multifamily-shared-mechvent-multiple.xml,29.85,29.85,20.36,0.0,0.0,0.0,0.0,0.0,0.0,0.21,1.73,0.25,9.71,0.0,0.0,2.03,0.0,0.21,3.75,0.95,0.17,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,8.18,0.0,0.0,0.0,12.17,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,22.34,4.67,9.52,0.62,0.0,0.0,0.0,0.0,6412.0,6364.0,8.45,8.37,0.0,-0.01,2.83,0.0,0.0,0.4,0.44,0.0,-0.01,0.0,-0.25,0.15,0.0,26.92,0.0,0.0,-7.97,0.0,-0.0,-0.01,0.0,0.0,0.07,3.31,0.0,-0.01,0.0,-0.24,-0.01,-1.57,-3.13,0.0,0.0,6.08,1354.0,998.0,11593.0,3210.0 +base-bldgtype-multifamily-shared-mechvent-preconditioning.xml,26.71,26.71,5.6,0.0,0.0,0.0,0.0,0.0,0.0,0.04,2.02,0.34,9.68,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.05,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.64,0.0,0.0,0.0,3.95,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,5.19,5.48,9.52,0.59,0.0,0.0,0.0,0.01,6242.0,6237.0,8.8,7.21,0.0,-0.01,2.78,0.0,0.0,0.41,1.19,0.0,-0.01,0.0,-0.27,1.71,0.0,5.86,0.0,0.0,-6.6,0.0,-0.0,-0.5,0.0,0.0,0.0,3.37,0.0,-0.01,0.0,-0.26,-0.43,-2.57,-1.64,0.0,0.0,7.42,1354.0,998.0,11593.0,3210.0 base-bldgtype-multifamily-shared-mechvent.xml,26.68,26.68,4.09,0.0,0.0,0.0,0.0,0.0,0.0,0.11,1.98,0.33,9.69,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,4.09,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.87,5.16,9.52,0.6,0.0,0.0,0.0,0.01,6254.0,6240.0,10.43,7.88,0.0,-0.01,2.75,0.0,0.0,0.38,0.68,0.0,-0.01,0.0,-0.18,1.65,0.0,5.71,0.0,0.0,-7.03,0.0,-0.0,-0.37,0.0,0.0,-0.0,3.1,0.0,-0.0,0.0,-0.17,-0.38,-2.57,-1.43,0.0,0.0,7.0,1354.0,998.0,11593.0,3210.0 base-bldgtype-multifamily-shared-pv.xml,25.45,1.01,0.78,0.0,0.0,0.0,0.0,0.0,0.0,0.02,2.26,0.41,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,-24.43,0.0,0.78,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.74,6.49,9.52,0.58,0.0,0.0,0.0,0.01,6188.0,6177.0,8.63,6.98,0.0,-0.01,2.61,0.0,0.0,0.41,1.46,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.57,0.0,-0.0,-0.86,0.0,0.0,-0.04,3.33,0.0,-0.0,0.0,-0.33,-0.65,-3.11,-0.17,0.0,0.0,8.44,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-water-heater-recirc.xml,16.79,16.79,13.48,0.0,0.0,0.0,0.0,0.0,0.0,0.03,2.19,0.39,0.0,1.1,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.97,12.51,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.92,6.2,9.54,0.57,0.0,0.0,0.0,0.01,2931.0,3065.0,8.78,7.01,0.0,-0.01,2.65,0.0,0.0,0.41,1.4,0.0,-0.01,0.0,-0.34,2.0,0.0,0.51,0.0,0.0,-5.71,0.0,-0.0,-0.79,0.0,0.0,-0.03,3.33,0.0,-0.0,0.0,-0.33,-0.74,-3.05,-0.17,0.0,0.0,8.09,1355.0,998.0,11403.0,3157.0 From 216b73de7337457b95810a24a2d80b815fe980ab Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 14 May 2021 19:29:50 +0000 Subject: [PATCH 9/9] Latest results. --- workflow/tests/base_results/results.csv | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/workflow/tests/base_results/results.csv b/workflow/tests/base_results/results.csv index 7964bcb39f..321120546f 100644 --- a/workflow/tests/base_results/results.csv +++ b/workflow/tests/base_results/results.csv @@ -39,8 +39,8 @@ base-bldgtype-multifamily-shared-cooling-tower-only-water-loop-heat-pump.xml,26. base-bldgtype-multifamily-shared-generator.xml,25.45,22.6,0.78,0.0,14.17,0.0,0.0,0.0,0.0,0.02,2.26,0.41,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-2.84,0.78,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.17,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.74,6.49,9.52,0.58,0.0,0.0,0.0,0.01,6188.0,6177.0,8.63,6.98,0.0,-0.01,2.61,0.0,0.0,0.41,1.46,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.57,0.0,-0.0,-0.86,0.0,0.0,-0.04,3.33,0.0,-0.0,0.0,-0.33,-0.65,-3.11,-0.17,0.0,0.0,8.44,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-ground-loop-ground-to-air-heat-pump.xml,27.48,27.48,0.0,0.0,0.0,0.0,0.0,0.0,0.21,1.95,1.27,1.3,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.74,6.49,9.52,0.58,0.0,0.0,0.0,0.01,6362.0,6265.0,8.63,6.98,0.0,-0.01,2.61,0.0,0.0,0.41,1.46,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.57,0.0,-0.0,-0.86,0.0,0.0,-0.04,3.33,0.0,-0.0,0.0,-0.33,-0.65,-3.11,-0.17,0.0,0.0,8.44,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-laundry-room.xml,15.69,15.69,13.33,0.0,0.0,0.0,0.0,0.0,0.0,0.02,2.19,0.4,0.0,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.81,12.51,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.77,6.18,9.54,0.57,0.0,0.0,0.0,0.01,2882.0,2943.0,3.78,7.01,0.0,-0.01,2.64,0.0,0.0,0.41,1.44,0.0,-0.01,0.0,-0.33,2.08,0.0,0.0,0.0,0.0,-5.45,0.0,-0.0,-0.82,0.0,0.0,-0.03,3.34,0.0,-0.0,0.0,-0.32,-0.8,-3.07,0.0,0.0,0.0,7.95,1355.0,998.0,11403.0,3157.0 -base-bldgtype-multifamily-shared-mechvent-multiple.xml,29.85,29.85,20.36,0.0,0.0,0.0,0.0,0.0,0.0,0.21,1.73,0.25,9.71,0.0,0.0,2.03,0.0,0.21,3.75,0.95,0.17,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,8.18,0.0,0.0,0.0,12.17,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,7.74,4.01,9.52,0.62,0.0,0.0,0.0,0.0,6412.0,6364.0,8.45,8.37,0.0,-0.01,2.83,0.0,0.0,0.4,0.44,0.0,-0.01,0.0,-0.25,0.15,0.0,12.34,0.0,0.0,-7.97,0.0,-0.0,-0.01,0.0,0.0,0.07,3.31,0.0,-0.01,0.0,-0.24,-0.01,-1.57,-3.77,0.0,0.0,6.08,1354.0,998.0,11593.0,3210.0 -base-bldgtype-multifamily-shared-mechvent-preconditioning.xml,26.71,26.71,5.6,0.0,0.0,0.0,0.0,0.0,0.0,0.04,2.02,0.34,9.68,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.05,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.64,0.0,0.0,0.0,3.95,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.55,5.3,9.52,0.59,0.0,0.0,0.0,0.01,6242.0,6237.0,8.8,7.21,0.0,-0.01,2.78,0.0,0.0,0.41,1.19,0.0,-0.01,0.0,-0.27,1.71,0.0,2.35,0.0,0.0,-6.6,0.0,-0.0,-0.5,0.0,0.0,0.0,3.37,0.0,-0.01,0.0,-0.26,-0.43,-2.57,-1.68,0.0,0.0,7.42,1354.0,998.0,11593.0,3210.0 +base-bldgtype-multifamily-shared-mechvent-multiple.xml,29.85,29.85,20.36,0.0,0.0,0.0,0.0,0.0,0.0,0.21,1.73,0.25,9.71,0.0,0.0,2.03,0.0,0.21,3.75,0.95,0.17,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,8.18,0.0,0.0,0.0,12.17,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,22.34,4.67,9.52,0.62,0.0,0.0,0.0,0.0,6412.0,6364.0,8.45,8.37,0.0,-0.01,2.83,0.0,0.0,0.4,0.44,0.0,-0.01,0.0,-0.25,0.15,0.0,26.92,0.0,0.0,-7.97,0.0,-0.0,-0.01,0.0,0.0,0.07,3.31,0.0,-0.01,0.0,-0.24,-0.01,-1.57,-3.13,0.0,0.0,6.08,1354.0,998.0,11593.0,3210.0 +base-bldgtype-multifamily-shared-mechvent-preconditioning.xml,26.71,26.71,5.6,0.0,0.0,0.0,0.0,0.0,0.0,0.04,2.02,0.34,9.68,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.05,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.64,0.0,0.0,0.0,3.95,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,5.19,5.48,9.52,0.59,0.0,0.0,0.0,0.01,6242.0,6237.0,8.8,7.21,0.0,-0.01,2.78,0.0,0.0,0.41,1.19,0.0,-0.01,0.0,-0.27,1.71,0.0,5.86,0.0,0.0,-6.6,0.0,-0.0,-0.5,0.0,0.0,0.0,3.37,0.0,-0.01,0.0,-0.26,-0.43,-2.57,-1.64,0.0,0.0,7.42,1354.0,998.0,11593.0,3210.0 base-bldgtype-multifamily-shared-mechvent.xml,26.68,26.68,4.09,0.0,0.0,0.0,0.0,0.0,0.0,0.11,1.98,0.33,9.69,0.0,0.0,2.03,0.0,0.21,1.49,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,4.09,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.87,5.16,9.52,0.6,0.0,0.0,0.0,0.01,6254.0,6240.0,10.43,7.88,0.0,-0.01,2.75,0.0,0.0,0.38,0.68,0.0,-0.01,0.0,-0.18,1.65,0.0,5.71,0.0,0.0,-7.03,0.0,-0.0,-0.37,0.0,0.0,-0.0,3.1,0.0,-0.0,0.0,-0.17,-0.38,-2.57,-1.43,0.0,0.0,7.0,1354.0,998.0,11593.0,3210.0 base-bldgtype-multifamily-shared-pv.xml,25.45,1.01,0.78,0.0,0.0,0.0,0.0,0.0,0.0,0.02,2.26,0.41,9.67,0.0,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,-24.43,0.0,0.78,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.74,6.49,9.52,0.58,0.0,0.0,0.0,0.01,6188.0,6177.0,8.63,6.98,0.0,-0.01,2.61,0.0,0.0,0.41,1.46,0.0,-0.01,0.0,-0.34,1.64,0.0,0.51,0.0,0.0,-5.57,0.0,-0.0,-0.86,0.0,0.0,-0.04,3.33,0.0,-0.0,0.0,-0.33,-0.65,-3.11,-0.17,0.0,0.0,8.44,1354.0,998.0,11594.0,3210.0 base-bldgtype-multifamily-shared-water-heater-recirc.xml,16.79,16.79,13.48,0.0,0.0,0.0,0.0,0.0,0.0,0.03,2.19,0.39,0.0,1.1,0.0,2.03,0.0,0.21,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.32,0.37,1.51,1.53,0.0,2.11,2.79,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.97,12.51,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.92,6.2,9.54,0.57,0.0,0.0,0.0,0.01,2931.0,3065.0,8.78,7.01,0.0,-0.01,2.65,0.0,0.0,0.41,1.4,0.0,-0.01,0.0,-0.34,2.0,0.0,0.51,0.0,0.0,-5.71,0.0,-0.0,-0.79,0.0,0.0,-0.03,3.33,0.0,-0.0,0.0,-0.33,-0.74,-3.05,-0.17,0.0,0.0,8.09,1355.0,998.0,11403.0,3157.0