Skip to content

Conversation

@yingli-NREL
Copy link
Collaborator

@yingli-NREL yingli-NREL commented Nov 18, 2025

related issue: #535

This PR will update the current thermal load components data to the latest ComStock data.
There is a big difference between ComStock and Current Scout Data. The current Scout component load was based on very old DOE-2 models, with some inputs derived from the 1989 and 1992 CBECS. However, Comstock is pegged to 2018. Over the past ~30 years, commercial building efficiency has improved significantly. This likely explains much of the discrepancy we observe between the ComStock and Scout component load results. Back then, the solvers being used in the old DOE-2 models were of necessity quite a bit simpler.

In Scout, EQUIP_ELEC represents equipment gains, while EQUIP_NELEC represents other heat gain. The corresponding components in ComStock are equipment gains (equip_gain) and refrigeration gains (ref_equip_gain). Therefore, this PR change the Scout componnet load name EQUIP_ELEC to EQUIP and EQUIP_NELEC to REFRIG

Key notes:

  1. Current Scout data has extreme high (>1) and low values (<-1), as shown in the following stacked bar figure.
  2. Heating Window Conduction Load: High values in current Scout data (average absolute difference = 0.5). Some building types (e.g., large office) show component loads >1 in the current Scout data. Window insulation has improved significantly over the past ~30 years, greatly reducing heat loss through windows.
  3. Heating Light: Low values in current Scout data (average absolute difference = 0.59). some building types (e.g., food sales) show component loads <-1 in the current Scout data. Lighting efficiency has improved significantly over the past ~30 years, greatly reducing the amount of heat released by lighting.
  4. Floor component load: All values are zero in ComStock. Floor is floor with outdoor air exterior boundary condition. ComStock models don't have any outdoor air exterior boundary conditions for floors, so it's zero throughout.
  5. Heating Ground has the large sign differences observed, only 98% samples have mismatched signs. High values in current Scout data (>0.5), while negative values in ComStock data. Because ComStock represents ground temperatures as constant monthly values with a three-month lag from average air temperatures, the ground may remain relatively warm during the heating season, reducing heating demand.
  6. Cooling loads generally show smaller absolute differences compared to heating loads.

Scatter plots:

  1. Color shows heating vs cooling.
  2. Number shows building type.
  3. Sign change happens in quadrants II and IV.
  4. A large distance from the diagonal line means there was a large difference between new and old data.
  5. Components are normalized values and can be negative or <1.
component_comparision

More stats:
HEATING

Variable Mean_Difference MAE Sign_Agree_% Correlation
WIND_COND -0.48 0.50 100 0.12
WIND_SOL 0.37 0.37 100 0.11
ROOF -0.15 0.16 100 0.29
WALL -0.33 0.35 100 -0.07
INFIL -0.02 0.17 91 0.36
PEOPLE 0.09 0.10 100 0.12
GRND -0.23 0.23 2 -0.73
EQUIP 0.16 0.17 68 0.32
REFRIG 0.09 0.09 27 -0.12
FLOOR -0.06 0.06 39 NaN
LIGHTS 0.58 0.59 99 0.25
VENT -0.02 0.32 100 0.23

COOLING

Variable Mean_Difference MAE Sign_Agree_% Correlation
WIND_COND 0.12 0.12 14 -0.36
WIND_SOL -0.28 0.28 100 0.55
ROOF 0.05 0.07 72 0.79
WALL 0.10 0.10 36 0.82
INFIL 0.03 0.05 70 -0.04
PEOPLE 0.01 0.04 100 0.75
GRND 0.12 0.13 33 -0.12
EQUIP 0.01 0.10 100 0.50
REFRIG -0.04 0.04 27 0.06
FLOOR 0.03 0.03 36 NaN
LIGHTS -0.45 0.45 100 0.55
VENT 0.29 0.29 6 -0.32

Calculation methods:
Mean diff = (ComStock-ScoutCurrentData).mean()
MAE = (|ComStock-ScoutCurrentData|).mean()
Sign Agree = (if sign_ComStock == sign_ScoutCurrentData).mean() to percentage
Correlation = ComStock.corr(ScoutCurrentData)

Stacked Bar Plots:
stacked_bldg_cdiv

@yingli-NREL

This comment was marked as resolved.

jmythms

This comment was marked as resolved.

@jmythms
Copy link
Collaborator

jmythms commented Jan 8, 2026

Apart from the comments above, things look good to me. The new plots also look great! Let's wait for @rHorsey's approval before merge.

@yingli-NREL yingli-NREL self-assigned this Jan 15, 2026
@jtlangevin jtlangevin linked an issue Jan 22, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update commercial thermal load components from ComStock

5 participants