Releases: NREL/REopt_API
Releases · NREL/REopt_API
Bug fixes to /v2, minor updates to /dev
What's Changed
- Add stable easiur_costs endpoint to job by @indu-manogaran in #454
- ERP/multiple outages - various minor changes/fixes by @hdunham in #453
- Add AbsorptionChiller models, absorption_chiller_defaults/ endpoint to job/ app by @zolanaj in #424
- Fix: merge migrations by @zolanaj in #458
- Create v3 easuir_costs endpoint by @hdunham in #457
- 427 summary endpoint for job app by @Bill-Becker in #464
- Fix simulated_load error when supplying monthly energy by @hdunham in #456
- Erp fixes by @hdunham in #465
- absorption chiller; minor multiple outages changes/fixes; ERP calculation fixes; v3/easiur_costs; v3/summary; simulated_load bug by @hdunham in #455
- Fix PV tilt defaulting for rooftop fixed by @hdunham in #466
- ERP BESS SOC discretization improvement; peak_load_outage_times bug fix by @hdunham in #467
- ERP BESS SOC discretization improvement; peak_load_outage_times bug fix; PV tilt default fix by @hdunham in #468
- replace develop with new version num by @hdunham in #470
- Fuel loads profile input fix by @Bill-Becker in #469
- Hot fix: Fuel loads profile input by @Bill-Becker in #471
Full Changelog: v2.11.0...v2.11.1
Add Hybrid GHP
What's Changed
- Update ERP PrimeGen Input Types by @indu-manogaran in #447
- ERP inputs fix by @Bill-Becker in #448
- Increase julia mem and empty! model by @Bill-Becker in #449
- Increase JuliaMemoryLimit and empty!(model) by @Bill-Becker in #450
- Ghp hybrid by @lixiangk1 in #451
- Add hybrid GHX functionality by @lixiangk1 in #452
New Contributors
- @lixiangk1 made their first contribution in #451
Full Changelog: v2.10.1...v2.11.0
v2.11.0
Minor Updates
Added
- Enabled hybrid GHX sizing within the GHP model through the hybrid_ghx_sizing_method variable
- User is able to select "Automatic" (REopt sizes GHX based on the smaller of the heating or cooling load), "Fractional" (GHX size is a user-defined fraction of the non-hybrid GHX size), or "None" (non-hybrid)
- Auxiliary heater and cooler are both currently only electric
- Outputs added to track the thermal production, electrical consumption, and size of the auxiliary unit
Changed
- Updated default value init_sizing_factor_ft_per_peak_ton from 246.1 to 75 for the
/ghpghx
endpoint
hot fix: ERP max_outage_duration bug
What's Changed
Full Changelog: v2.10.0...v2.10.1
Stochastic/Multi-Outages: add Outages outputs and CHP; CHP defaults fixes
What's Changed
- Integrate missing outages outputs from REopt.jl by @hdunham in #442
- default ERP max_outage_duration to max in outage_durations by @hdunham in #444
- Stochastic/Multi-Outages: add Outages outputs and CHP; CHP defaults fixes; by @Bill-Becker in #443
Full Changelog: v2.9.1...v2.10.0
Add v3 emissions_profile endpoint
What's Changed
- add v3 emissions_profile endpoint by @hdunham in #416
- Add /emissions_profile endpoint to /dev by @Bill-Becker in #441
Full Changelog: v2.9.0...v2.9.1
Added
- In job/ app (v3): emissions_profile endpoint and view function that returns the emissions data for a location
Energy Resilience Performance tool, IRA defaults updates, CHP defaults, other minor
What's Changed
- Add db index for MessageModel and PVModel by @Bill-Becker in #420
- change ubuntu-18.04 to ubuntu-latest in github actions by @hdunham in #433
- Multiple outages by @hdunham in #381
- TES MACRS by @adfarth in #432
- IRA tax updates to PV, WIND, CHP, ELECTRIC STORAGE, & THERMAL STORAGE by @bpulluta in #434
- Return has_stacktrace true/false value by @rathod-b in #429
- Add /dev/schedule_stats endpoint by @Bill-Becker in #436
- Energy Performance and Reliability Tool by @hdunham in #365
- Chp defaults mods; add and change outputs (v3); bug fix (v2) by @Bill-Becker in #440
- add and change outputs (v3); bug fix (v2) by @adfarth in #435
- Energy Resilience Performance tool, IRA defaults updates, CHP defaults, other minor by @Bill-Becker in #438
New Contributors
Full Changelog: v2.8.0...v2.9.0
From CHANGELOG.md:
v2.9.0
Minor Updates
Added
- Energy Resilience and Performance Tool:
- Uses functionality added to the REopt Julia package in v0.27.0 to calculate outage survival reliability metrics for a DER scenario, which can be based on the results of a REopt optimization
- Django models ERPMeta, ERPGeneratorInputs, ERPPrimeGeneratorInputs, ERPElectricStorageInputs, ERPPVInputs, ERPOutageInputs, ERPOutputs
/erp
endpoint to which users POST ERP inputs (callsERPJob()
)/erp/<run_uuid>/results
endpoint that GETs the results of an ERP job (callserp_results()
)/erp/help
endpoint that GETs the ERP input field info (callserp_help()
)/erp/chp_defaults
endpoint that GETs ERP CHP/prime generator input defaults based on parametersprime_mover
,is_chp
, andsize_kw
(callserp_chp_prime_gen_defaults()
)- Tests in
resilience+stats/tests/test_erp.py
- In job/ app (v3), added Financial year_one_om_costs_before_tax_bau, lifecycle_om_costs_after_tax_bau
- Added field production_factor_series to Django models WindOutputs and PVOutputs
- In REoptjlMessageOutputs added a has_stacktrace field to denote if response has a stacktrace error or not. Default is False.
- Added access to the multiple outage stochastic/robust modeling capabilities in REopt.jl. Not all inputs and outputs are exposed, but the following are:
- SiteInputs: min_resil_time_steps
- ElectricUtilityInputs: outage_start_time_steps, outage_durations, outage_probabilities
- OutageOutputs: expected_outage_cost, max_outage_cost_per_outage_duration, unserved_load_series, unserved_load_per_outage, microgrid_upgrade_capital_cost, generator_fuel_used_per_outage
- Added test using multiple outage modeling
- Add /dev/schedule_stats endpoint
Changed
- Update REopt.jl to v0.28.0 for job app (/dev -> v3)
/job/chp_defaults
endpoint updated to take optional electric load metrics for non-heating CHP (Prime Generator in UI)- Changed
/chp_defaults
input ofexisting_boiler_production_type
tohot_water_or_steam
CHP.size_class
starting at 0 for average of other size_classesCHP.max_size
calculated based on heating load or electric load
- Changed
- In job/ app (v3), changed Financial breakeven_cost_of_emissions_reduction_per_tonnes_CO2 to breakeven_cost_of_emissions_reduction_per_tonne_CO2
- In job/ app (v3), changed default ElectricLoad year to 2022 if user provides load data and 2017 if using CRBD
- Changed
scalar_to_vector
helper function toscalar_or_monthly_to_8760
- Changed GeneratorInputs fields fuel_slope_gal_per_kwh and fuel_intercept_gal_per_hr to electric_efficiency_full_load and electric_efficiency_half_load to represent the same fuel burn curve in a different way consistent with CHPInputs
- Updated the following default values to job/ app (v3):
- federal_itc_fraction to 0.3 (30%) in models PVInputs, WindInputs, and CHPInputs
- total_itc_fraction to 0.3 (30%) in models HotWaterStorageInputs, ColdWaterStorageInputs, and ElectricStorageInputs
- *macrs_bonus_fraction to 0.8 (80%) in models PVInputs, WindInputs, CHPInputs, PV, HotWaterStorageInputs, ColdWaterStorageInputs, and ElectricStorageInputs
- macrs_option_years to 7 years in models HotWaterStorageInputs and ColdWaterStorageInputs
- In
reo/nested_inputs.py
v2 inputs (defaults_dict[2]
), updated the following default values in models ColdThermalStorageInputs, HotThermalStorageInputs- macrs_option_years to 7 (years)
- macrs_bonus_pct to 0.8 (80%)
- In
reo/nested_inputs.py
v2 inputs (defaults_dict[2]
), updated the following default values:- ColdTES, HotTES: macrs_option_years to 7 (years)
- ColdTES, HotTES: *macrs_bonus_pct to 0.8 (80%)
- Updated the following default values to job/ app (v3):
- PV, Wind, Storage, CHP, Hot Water Storage, Cold Water Storage, Electric Storage: federal_itc_fraction(PV,Wind,CHP) and total_itc_fraction(Hot Water Storage, Cold Water Storage, Electric Storage) to 0.3 (30%)
- PV, Wind, Storage, CHP, Hot Water Storage, Cold Water Storage, Electric Storage: *macrs_bonus_fraction to 0.8 (80%)
- Hot Water Storage and Cold Water Storage: macrs_option_years to 7 years
Use TransactionTestCase instead of TestCase (this avoids whole test being wrapped in a transaction which leads to a TransactionManagementError when doing a database query in the middle)
- Updated ubuntu-18.04 to ubuntu-latest in GitHub push/pull tests because 18.04 was deprecated in GitHub Actions
Fixed
- In reo (v2), calculation of
net_capital_costs_plus_om
was previously missing addition sign for fuel charges. Corrected this equation.
v2.8.0: IRA tax incentive and GhpGhx.jl updates
What's Changed
- Use GhpGhx.jl in v2 by @Bill-Becker in #411
- Tax incentives updates from passage of Inflation Reduction Act in v2 by @adfarth in #404
- master <- dev: IRA incentives and GhpGhx.jl updates to v2 by @adfarth in #412
Full Changelog: v2.7.1...v2.8.0
v2.7.1
What's Changed
- endpoints edits for v3 by @indu-manogaran in #401
- Year one name changes by @adfarth in #396
- master<-dev v3 name changes by @adfarth in #403
- Add addressable_load_fraction to HeatingLoads by @Bill-Becker in #398
- Redis memory tweak by @Bill-Becker in #400
- Change Redis memory setting, add Heating input by @Bill-Becker in #405
New Contributors
- @indu-manogaran made their first contribution in #401
Full Changelog: v2.6.0...v2.7.1
Error passing from REopt.jl and Add Thermal Storages to job app (/dev)
What's Changed
- Fix /futurecosts urls by @Bill-Becker in #389
- Fix /futurecost endpoint URL routing issue by @Bill-Becker in #390
- Add code to job/ app to accept Hot & Cold Thermal Storage by @zolanaj in #357
- Return REopt errors warns back to user by @rathod-b in #370
- Error passing from Julia and Add Thermal Storages to job app (/dev) by @Bill-Becker in #397
Full Changelog: v2.5.0...v2.6.0
v2.6.0
Minor Updates
Added
- REoptjlMessageOutputs model to capture errors and warnings returned by REoptjl during input processing and post optimization
- Missing output fields for ExistingBoilerOutputs model
- API test
job\test\posts\all_inputs_test.json
to include all input models in a single API test
- added HotThermalStorageInputs model
- added HotThermalStorageOutputs model
- added ColdThermalStorageInputs model
- added ColdThermalStorageOutputs model
- add HotThermalStorageOutputs
- add ColdThermalStorageOutputs
0012_coldthermalstorageinputs....
file used to add new models to the db
Changed
- Default values for the following fields were changed to align them with REopt API v2 (i.e. stable, and REopt.jl) defaults. As-is, these values are aligned with REopt v1 defaults. Units were unchanged.
- FinancialInputs.elec_cost_escalation_rate_fraction from 0.023 to 0.019
- FinancialInputs.offtaker_discount_rate_fraction from 0.083 to 0.0564
- FinancialInputs.owner_discount_rate_fraction from 0.083 to 0.0564
- PVInputs.installed_cost_per_kw from 1600 to 1592
- PVInputs.om_cost_per_kw from 16 to 17
- WindInputs.om_cost_per_kw from 16 to 35
- ElectricStorageInputs.installed_cost_per_kw from 840 to 775
- ElectricStorageInputs.installed_cost_per_kwh from 420 to 388
- ElectricStorageInputs.replace_cost_per_kw from 410 to 440
- ElectricStorageInputs.replace_cost_per_kwh from 200 to 220
- Modified
julia_src\http.jl
andjulia_src\cbc\http.jl
to return status 400 when REopt responds with an error - Updated
r["Messages"]
inviews.py
to include REoptjlMessageOutputs errors and warnings
Add Cooling and Heating Load Outputs to job app (/dev -> /v3)
What's Changed
- Bump protobuf from 3.19.3 to 3.19.5 by @dependabot in #369
- Pip Updates Suggested by Git Bot by @Bill-Becker in #383
- Add CoolingLoads model to job app by @rathod-b in #329
- Cooling Load into Job app, for /dev -> /v3 by @Bill-Becker in #388
Full Changelog: v2.4.0...v2.5.0
v2.5.0
Minor Updates
Added
0011_coolingloadinputs....
file used to add new models to the db
Injob/models.py
:- added ExistingChillerInputs model
- added ExistingChillerOutputs model
- added CoolingLoadInputs model
- added CoolingLoadOutputs model
- added HeatingLoadOutputs model
Injob/process_results.py
: - add ExistingChillerOutputs
- add CoolingLoadOutputs
- add HeatingLoadOutputs
In `job/validators.py: - add time series length validation on CoolingLoadInputs->thermal_loads_ton and CoolingLoadInputs->per_time_step_fractions_of_electric_load
Injob/views.py
: - add new input/output models to properly save the inputs/outputs