@@ -2843,17 +2843,17 @@ def self.apply_hvac_sizing(hpxml_bldg, weather, cfa)
2843
2843
tol = 10 # Btuh
2844
2844
2845
2845
# Assign heating design loads to HPXML object
2846
- hvacpl . hdl_total = bldg_design_loads . Heat_Tot . round
2847
- hvacpl . hdl_walls = bldg_design_loads . Heat_Walls . round
2848
- hvacpl . hdl_ceilings = bldg_design_loads . Heat_Ceilings . round
2849
- hvacpl . hdl_roofs = bldg_design_loads . Heat_Roofs . round
2850
- hvacpl . hdl_floors = bldg_design_loads . Heat_Floors . round
2851
- hvacpl . hdl_slabs = bldg_design_loads . Heat_Slabs . round
2852
- hvacpl . hdl_windows = bldg_design_loads . Heat_Windows . round
2853
- hvacpl . hdl_skylights = bldg_design_loads . Heat_Skylights . round
2854
- hvacpl . hdl_doors = bldg_design_loads . Heat_Doors . round
2855
- hvacpl . hdl_infilvent = bldg_design_loads . Heat_InfilVent . round
2856
- hvacpl . hdl_ducts = bldg_design_loads . Heat_Ducts . round
2846
+ hvacpl . hdl_total = Float ( bldg_design_loads . Heat_Tot . round )
2847
+ hvacpl . hdl_walls = Float ( bldg_design_loads . Heat_Walls . round )
2848
+ hvacpl . hdl_ceilings = Float ( bldg_design_loads . Heat_Ceilings . round )
2849
+ hvacpl . hdl_roofs = Float ( bldg_design_loads . Heat_Roofs . round )
2850
+ hvacpl . hdl_floors = Float ( bldg_design_loads . Heat_Floors . round )
2851
+ hvacpl . hdl_slabs = Float ( bldg_design_loads . Heat_Slabs . round )
2852
+ hvacpl . hdl_windows = Float ( bldg_design_loads . Heat_Windows . round )
2853
+ hvacpl . hdl_skylights = Float ( bldg_design_loads . Heat_Skylights . round )
2854
+ hvacpl . hdl_doors = Float ( bldg_design_loads . Heat_Doors . round )
2855
+ hvacpl . hdl_infilvent = Float ( bldg_design_loads . Heat_InfilVent . round )
2856
+ hvacpl . hdl_ducts = Float ( bldg_design_loads . Heat_Ducts . round )
2857
2857
hdl_sum = ( hvacpl . hdl_walls + hvacpl . hdl_ceilings + hvacpl . hdl_roofs +
2858
2858
hvacpl . hdl_floors + hvacpl . hdl_slabs + hvacpl . hdl_windows +
2859
2859
hvacpl . hdl_skylights + hvacpl . hdl_doors + hvacpl . hdl_infilvent +
@@ -2863,18 +2863,18 @@ def self.apply_hvac_sizing(hpxml_bldg, weather, cfa)
2863
2863
end
2864
2864
2865
2865
# Assign cooling sensible design loads to HPXML object
2866
- hvacpl . cdl_sens_total = bldg_design_loads . Cool_Sens . round
2867
- hvacpl . cdl_sens_walls = bldg_design_loads . Cool_Walls . round
2868
- hvacpl . cdl_sens_ceilings = bldg_design_loads . Cool_Ceilings . round
2869
- hvacpl . cdl_sens_roofs = bldg_design_loads . Cool_Roofs . round
2870
- hvacpl . cdl_sens_floors = bldg_design_loads . Cool_Floors . round
2866
+ hvacpl . cdl_sens_total = Float ( bldg_design_loads . Cool_Sens . round )
2867
+ hvacpl . cdl_sens_walls = Float ( bldg_design_loads . Cool_Walls . round )
2868
+ hvacpl . cdl_sens_ceilings = Float ( bldg_design_loads . Cool_Ceilings . round )
2869
+ hvacpl . cdl_sens_roofs = Float ( bldg_design_loads . Cool_Roofs . round )
2870
+ hvacpl . cdl_sens_floors = Float ( bldg_design_loads . Cool_Floors . round )
2871
2871
hvacpl . cdl_sens_slabs = 0.0
2872
- hvacpl . cdl_sens_windows = bldg_design_loads . Cool_Windows . round
2873
- hvacpl . cdl_sens_skylights = bldg_design_loads . Cool_Skylights . round
2874
- hvacpl . cdl_sens_doors = bldg_design_loads . Cool_Doors . round
2875
- hvacpl . cdl_sens_infilvent = bldg_design_loads . Cool_InfilVent_Sens . round
2876
- hvacpl . cdl_sens_ducts = bldg_design_loads . Cool_Ducts_Sens . round
2877
- hvacpl . cdl_sens_intgains = bldg_design_loads . Cool_IntGains_Sens . round
2872
+ hvacpl . cdl_sens_windows = Float ( bldg_design_loads . Cool_Windows . round )
2873
+ hvacpl . cdl_sens_skylights = Float ( bldg_design_loads . Cool_Skylights . round )
2874
+ hvacpl . cdl_sens_doors = Float ( bldg_design_loads . Cool_Doors . round )
2875
+ hvacpl . cdl_sens_infilvent = Float ( bldg_design_loads . Cool_InfilVent_Sens . round )
2876
+ hvacpl . cdl_sens_ducts = Float ( bldg_design_loads . Cool_Ducts_Sens . round )
2877
+ hvacpl . cdl_sens_intgains = Float ( bldg_design_loads . Cool_IntGains_Sens . round )
2878
2878
cdl_sens_sum = ( hvacpl . cdl_sens_walls + hvacpl . cdl_sens_ceilings +
2879
2879
hvacpl . cdl_sens_roofs + hvacpl . cdl_sens_floors +
2880
2880
hvacpl . cdl_sens_slabs + hvacpl . cdl_sens_windows +
@@ -2886,10 +2886,10 @@ def self.apply_hvac_sizing(hpxml_bldg, weather, cfa)
2886
2886
end
2887
2887
2888
2888
# Assign cooling latent design loads to HPXML object
2889
- hvacpl . cdl_lat_total = bldg_design_loads . Cool_Lat . round
2890
- hvacpl . cdl_lat_ducts = bldg_design_loads . Cool_Ducts_Lat . round
2891
- hvacpl . cdl_lat_infilvent = bldg_design_loads . Cool_InfilVent_Lat . round
2892
- hvacpl . cdl_lat_intgains = bldg_design_loads . Cool_IntGains_Lat . round
2889
+ hvacpl . cdl_lat_total = Float ( bldg_design_loads . Cool_Lat . round )
2890
+ hvacpl . cdl_lat_ducts = Float ( bldg_design_loads . Cool_Ducts_Lat . round )
2891
+ hvacpl . cdl_lat_infilvent = Float ( bldg_design_loads . Cool_InfilVent_Lat . round )
2892
+ hvacpl . cdl_lat_intgains = Float ( bldg_design_loads . Cool_IntGains_Lat . round )
2893
2893
cdl_lat_sum = ( hvacpl . cdl_lat_ducts + hvacpl . cdl_lat_infilvent +
2894
2894
hvacpl . cdl_lat_intgains )
2895
2895
if ( cdl_lat_sum - hvacpl . cdl_lat_total ) . abs > tol
@@ -2906,14 +2906,14 @@ def self.apply_hvac_sizing(hpxml_bldg, weather, cfa)
2906
2906
2907
2907
# Heating capacities
2908
2908
if htg_sys . heating_capacity . nil? || ( ( htg_sys . heating_capacity - hvac_sizing_values . Heat_Capacity ) . abs >= 1.0 )
2909
- scaling_factor = hvac_sizing_values . Heat_Capacity . round / htg_sys . heating_capacity unless htg_sys . heating_capacity . nil?
2909
+ scaling_factor = Float ( hvac_sizing_values . Heat_Capacity . round ) / htg_sys . heating_capacity unless htg_sys . heating_capacity . nil?
2910
2910
# Heating capacity @ 17F
2911
2911
if htg_sys . is_a? HPXML ::HeatPump
2912
2912
if ( not htg_sys . heating_capacity . nil? ) && ( not htg_sys . heating_capacity_17F . nil? )
2913
2913
# Fixed value entered; scale w/ heating_capacity in case allow_increased_fixed_capacities=true
2914
2914
htg_cap_17f = htg_sys . heating_capacity_17F * scaling_factor
2915
2915
if ( htg_sys . heating_capacity_17F - htg_cap_17f ) . abs >= 1.0
2916
- htg_sys . heating_capacity_17F = htg_cap_17f . round
2916
+ htg_sys . heating_capacity_17F = Float ( htg_cap_17f . round )
2917
2917
htg_sys . heating_capacity_17F_isdefaulted = true
2918
2918
end
2919
2919
end
@@ -2923,20 +2923,20 @@ def self.apply_hvac_sizing(hpxml_bldg, weather, cfa)
2923
2923
htg_sys . heating_detailed_performance_data . each do |dp |
2924
2924
htg_cap_dp = dp . capacity * scaling_factor
2925
2925
if ( dp . capacity - htg_cap_dp ) . abs >= 1.0
2926
- dp . capacity = htg_cap_dp . round
2926
+ dp . capacity = Float ( htg_cap_dp . round )
2927
2927
dp . capacity_isdefaulted = true
2928
2928
end
2929
2929
end
2930
2930
end
2931
- htg_sys . heating_capacity = hvac_sizing_values . Heat_Capacity . round
2931
+ htg_sys . heating_capacity = Float ( hvac_sizing_values . Heat_Capacity . round )
2932
2932
htg_sys . heating_capacity_isdefaulted = true
2933
2933
end
2934
2934
if htg_sys . is_a? HPXML ::HeatPump
2935
2935
if htg_sys . backup_type . nil?
2936
2936
htg_sys . backup_heating_capacity = 0.0
2937
2937
elsif htg_sys . backup_type == HPXML ::HeatPumpBackupTypeIntegrated
2938
2938
if htg_sys . backup_heating_capacity . nil? || ( ( htg_sys . backup_heating_capacity - hvac_sizing_values . Heat_Capacity_Supp ) . abs >= 1.0 )
2939
- htg_sys . backup_heating_capacity = hvac_sizing_values . Heat_Capacity_Supp . round
2939
+ htg_sys . backup_heating_capacity = Float ( hvac_sizing_values . Heat_Capacity_Supp . round )
2940
2940
htg_sys . backup_heating_capacity_isdefaulted = true
2941
2941
end
2942
2942
end
@@ -2946,7 +2946,7 @@ def self.apply_hvac_sizing(hpxml_bldg, weather, cfa)
2946
2946
if not ( htg_sys . is_a? ( HPXML ::HeatingSystem ) &&
2947
2947
[ HPXML ::HVACTypeBoiler ,
2948
2948
HPXML ::HVACTypeElectricResistance ] . include? ( htg_sys . heating_system_type ) )
2949
- htg_sys . heating_airflow_cfm = hvac_sizing_values . Heat_Airflow . round
2949
+ htg_sys . heating_airflow_cfm = Float ( hvac_sizing_values . Heat_Airflow . round )
2950
2950
htg_sys . heating_airflow_cfm_isdefaulted = true
2951
2951
end
2952
2952
@@ -2965,32 +2965,32 @@ def self.apply_hvac_sizing(hpxml_bldg, weather, cfa)
2965
2965
# Cooling capacities
2966
2966
if clg_sys . cooling_capacity . nil? || ( ( clg_sys . cooling_capacity - hvac_sizing_values . Cool_Capacity ) . abs >= 1.0 )
2967
2967
if not clg_sys . cooling_detailed_performance_data . empty?
2968
- scaling_factor = hvac_sizing_values . Cool_Capacity . round / clg_sys . cooling_capacity unless clg_sys . cooling_capacity . nil?
2968
+ scaling_factor = Float ( hvac_sizing_values . Cool_Capacity . round ) / clg_sys . cooling_capacity unless clg_sys . cooling_capacity . nil?
2969
2969
# Fixed values entered; Scale w/ cooling_capacity in case allow_increased_fixed_capacities=true
2970
2970
clg_sys . cooling_detailed_performance_data . each do |dp |
2971
2971
clg_cap_dp = dp . capacity * scaling_factor
2972
2972
if ( dp . capacity - clg_cap_dp ) . abs >= 1.0
2973
- dp . capacity = clg_cap_dp . round
2973
+ dp . capacity = Float ( clg_cap_dp . round )
2974
2974
dp . capacity_isdefaulted = true
2975
2975
end
2976
2976
end
2977
2977
end
2978
- clg_sys . cooling_capacity = hvac_sizing_values . Cool_Capacity . round
2978
+ clg_sys . cooling_capacity = Float ( hvac_sizing_values . Cool_Capacity . round )
2979
2979
clg_sys . cooling_capacity_isdefaulted = true
2980
2980
end
2981
2981
# Integrated heating system capacities
2982
2982
if ( clg_sys . is_a? HPXML ::CoolingSystem ) && clg_sys . has_integrated_heating
2983
2983
if clg_sys . integrated_heating_system_capacity . nil? || ( ( clg_sys . integrated_heating_system_capacity - hvac_sizing_values . Heat_Capacity ) . abs >= 1.0 )
2984
- clg_sys . integrated_heating_system_capacity = hvac_sizing_values . Heat_Capacity . round
2984
+ clg_sys . integrated_heating_system_capacity = Float ( hvac_sizing_values . Heat_Capacity . round )
2985
2985
clg_sys . integrated_heating_system_capacity_isdefaulted = true
2986
2986
end
2987
- clg_sys . integrated_heating_system_airflow_cfm = hvac_sizing_values . Heat_Airflow . round
2987
+ clg_sys . integrated_heating_system_airflow_cfm = Float ( hvac_sizing_values . Heat_Airflow . round )
2988
2988
clg_sys . integrated_heating_system_airflow_cfm_isdefaulted = true
2989
2989
end
2990
- clg_sys . additional_properties . cooling_capacity_sensible = hvac_sizing_values . Cool_Capacity_Sens . round
2990
+ clg_sys . additional_properties . cooling_capacity_sensible = Float ( hvac_sizing_values . Cool_Capacity_Sens . round )
2991
2991
2992
2992
# Cooling airflow
2993
- clg_sys . cooling_airflow_cfm = hvac_sizing_values . Cool_Airflow . round
2993
+ clg_sys . cooling_airflow_cfm = Float ( hvac_sizing_values . Cool_Airflow . round )
2994
2994
clg_sys . cooling_airflow_cfm_isdefaulted = true
2995
2995
end
2996
2996
end
0 commit comments