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

Updated Grid RE and Emissions #628

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

Updated Grid RE and Emissions #628

wants to merge 22 commits into from

Conversation

adfarth
Copy link
Collaborator

@adfarth adfarth commented Jan 30, 2025

Inputs and outputs from:

Added

  • Added the following inputs to account for the clean or renewable energy fraction of grid-purchased electricity:
    • ElectricUtility cambium_cef_metric to utilize clean energy data from NREL's Cambium database
    • renewable_energy_fraction_series to supply a custom grid clean or renewable energy scalar or series
    • Site include_grid_renewable_fraction_in_RE_constraints - to allow user to choose whether to include grid RE in min max constraints
  • Added the following outputs:
    • ElectricUtility annual_renewable_electricity_supplied_kwh
    • Site onsite_and_grid_renewable_electricity_fraction_of_elec_load
    • Site onsite_and_grid_renewable_energy_fraction_of_elec_and_thermal_load
  • Added input option optimize_soc_init_fraction (defaults to false) to ElectricStorage, which makes the optimization choose the inital SOC (equal to final SOC) instead of using soc_init_fraction. The initial SOC is also constrained to equal the final SOC, which eliminates the "free energy" issue. We currently do not fix SOC when soc_init_fraction is used because this has caused infeasibility.

Changed

  • Changed name of the following inputs:
    • ElectricUtility input cambium_metric_col changed to cambium_co2_metric, to distinguish between the CO2 and clean energy fraction metrics
  • Changed name of the following outputs:
    • ElectricUtility cambium_emissions_region changed to cambium_region
    • Site annual_renewable_electricity_kwh changed to annual_onsite_renewable_electricity_kwh
    • Site renewable_electricity_fraction changed to onsite_renewable_electricity_fraction_of_elec_load
    • Site total_renewable_energy_fraction changed to onsite_renewable_energy_fraction_of_total_load
  • Changed v3 endpoint "cambium_emissions_profile" to "cambium_profile"
  • In REopt.jl: Updated Cambium API call to Cambium 2023 dataset, Updated AVERT emissions data to v4.3, which uses Regional Data Files for year 2023 for CONUS. For Alaska and Hawaii (regions AKGD, HIMS, HIOA), updated eGRID data to eGRID2022 datafile, adjusted to CO2e values.

@adfarth adfarth requested a review from hdunham January 30, 2025 17:44
@@ -597,7 +598,7 @@ HTTP.register!(ROUTER, "POST", "/erp", erp)
HTTP.register!(ROUTER, "POST", "/ghpghx", ghpghx)
HTTP.register!(ROUTER, "GET", "/chp_defaults", chp_defaults)
HTTP.register!(ROUTER, "GET", "/avert_emissions_profile", avert_emissions_profile)
HTTP.register!(ROUTER, "GET", "/cambium_emissions_profile", cambium_emissions_profile)
Copy link
Collaborator

@hdunham hdunham Feb 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's the reason for changing this url? Would be better to avoid changing if not necessary

null=True, blank=True,
help_text=(
"Electricity consumption (incl. electric heating/cooling loads) that is derived from on-site renewable resource generation."
"Calculated as total annual RE electric generation, minus storage losses and curtailment, with the user selecting whether exported renewable generation is included). "
)
)
renewable_electricity_fraction = models.FloatField(
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

did you want to remove that from the help text before merging?

onsite_and_grid_renewable_electricity_fraction_of_elec_load_bau = models.FloatField(
null=True, blank=True,
help_text=(
"Calculation is the same as onsite_renewable_electricity_fraction_of_elec_load, but additionally includes the renewable energy"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe these help texts should reference the bau versions instead, i.e. onsite_renewable_electricity_fraction_of_elec_load_bau here and onsite_renewable_energy_fraction_of_total_load_bau below

@@ -145,7 +145,8 @@
"emissions_factor_CO2_decrease_fraction": 0.01174,
"emissions_factor_NOx_decrease_fraction": 0.01174,
"emissions_factor_SO2_decrease_fraction": 0.01174,
"emissions_factor_PM25_decrease_fraction": 0.01174
"emissions_factor_PM25_decrease_fraction": 0.01174,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add other new inputs (renewable_energy_fraction_series and include_grid_renewable_fraction_in_RE_constraints) to this post too?

@@ -53,7 +53,12 @@
"tess_ghx_minimum_timesteps_per_hour": 1,
"max_sizing_iterations": 10,
"init_sizing_factor_ft_per_peak_ton": 300.0,
"heat_pump_configuration": "WWHP"
"heat_pump_configuration": "WWHP",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what does this ghp stuff have to do with this PR?

validators=[
MinValueValidator(2023),
MinValueValidator(2025),
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we really not allow users to give a past year for this? What if we want to model a system that already exists to validate or something?

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.

2 participants