Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Normalize and scale load profile, refactor (mostly heating) load code #454

Open
wants to merge 20 commits into
base: develop
Choose a base branch
from

Conversation

Bill-Becker
Copy link
Collaborator

@Bill-Becker Bill-Becker commented Oct 26, 2024

  • Add new input for each load called normalize_and_scale_load_profile_input which takes the input custom load profile (e.g. ElectricLoad.loads_kw), normalizes it to timestep_energy/yearly_energy for each timestep, and then applies and scales that normalized profile to the input annual monthly energy values.
    • Before, we could only scale annual or monthly energy inputs to the CRB profiles.
    • This leverages the CRB calculations for applying and scaling annual and monthly energy to the load profile.
    • This will be especially helpful to use along with the upcoming Load Profile Builder feature in the web tool
  • Put all of the default annual_[energy] data for CRBs by city/zone into .json files in the data/load_profiles folder, and then load that data within the load profile constructor functions (BuiltIn[Load]) where they lived before (hard to navigate those load file with all that data).
  • Consolidate all of the duplicate code for processing the inputs and building structs for the three different types of heating loads into a single HeatingLoad and BuiltInHeatingLoad functions (3x2=6 functions down to 2) with a new argument of (heating_)load_type.
  • Update the simulated_load function for improved validation flow and adding the normalize_and_scale_load_profile_input option

…r monthly energy

REopt will normalize kWh_ts/kWh_annual, just like the CRB data is, and then apply that normalized profile to the user-input annual or monthly energy value
Valid for load_type=[space_heating, dhw, process_heat]

Not applicable for load_type=heating, which assumes the user wants separated space and DHW heating loads from a single load input
Instead of large data dump in the source code files which makes navigating the files cumbersome
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.

1 participant