Schema Version: 0.0.23
Mandatory Rule: True
Rule ID: 10-13A
Rule Description: For HVAC systems designed, mechanical heating equipment efficiencies shall be adjusted to remove the supply fan energy from the efficiency rating.
Rule Assertion: P-RMR = expected value
Appendix G Section: Table G3.1 Section 10 b.
Appendix G Section Reference: None
Data Lookup: None
Evaluation Context: Evaluate each HeatingVentilatingAirConditioningSystem
Applicability Checks:
- HVAC with heat pump heating.
Function Call: None
Manual Check: None
Applicability Check 1:
- For each hvac system in the P_RMR:
for hvac_p in P_RMR...HeatingVentilatingAirConditioningSystem:
- For each heating system in the HVAC system:
for heating_system_p in hvac_p.heating_system:
-
Check that heating system type is equal to heat_pump::
if heating_system_p.heating_system_type == "HEAT_PUMP":
- Reset no_fan_eff_entered boolean variable:
no_fan_eff_entered = FALSE
- loop through each of the efficiency_metric_types associated with the heating system until HEAT_PUMP_COEFFICIENT_OF_PERFORMANCE_HIGH_TEMPERATURE_NO_FAN is found (this is the metric in 90.1 2019 used for heat pump performance per table 6.8.1.4). Get the associated value of the efficiency from the list of efficiency_metric_values associated with the heating_system_p:
for x in range(len(heating_system_p.efficiency_metric_values)):
- check if the efficiency_metric_type equals HEAT_PUMP_COEFFICIENT_OF_PERFORMANCE_HIGH_TEMPERATURE_NO_FAN:
if heating_system_p.efficiency_metric_types[x] == "HEAT_PUMP_COEFFICIENT_OF_PERFORMANCE_HIGH_TEMPERATURE_NO_FAN":
- Check that the no fan full load heating efficiency does not equal Null:
if heating_system_p.efficiency_metric_values[x] != Null: no_fan_eff_entered = TRUE
- Check that the no fan full load heating efficiency does not equal Null:
- Else:
Else: no_fan_eff_entered = FALSE
- check if the efficiency_metric_type equals HEAT_PUMP_COEFFICIENT_OF_PERFORMANCE_HIGH_TEMPERATURE_NO_FAN:
Rule Assertion:
- Case 1: For each applicable heating system, if no_fan_eff_entered = TRUE then pass:
if no_fan_eff_entered == TRUE: outcome == "PASS"
- Case 2: For each applicable heating system, else (no_fan_eff_entered = FALSE) then fail:
Else: outcome == "FAIL" and raise_message "Per Table G3.1 section 10 b heating efficiency is required to be adjusted to remove the supply fan energy from the efficiency rating. A no fan full load heating efficiency does not appear to have been modeled for this heating system."
- Reset no_fan_eff_entered boolean variable:
-
- For each heating system in the HVAC system: