Releases: NREL/REopt_API
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
Add CHP, /chp_defaults, and /simulated_load end to /dev for v3
v2.4.0
Minor Updates
Added
- In
job/models.py
:- add CHPInputs model
- add CHPOutputs model
- In
job/process_results.py
add CHPOutputs - In
job/validators.py
add new input models - In
job/views.py
:- add new input/output models to properly save the inputs/outputs
- add
/chp_defaults
endpoint which calls the http.jl chp_defaults endpoint - add
/simulated_load
endpoint which calls the http.jl simulated_load endpoint
What's Changed
- add capability to job/ app (API v3 using REopt.jl backend) to handle CHP by @hdunham in #340
- Add CHP, /chp_defaults, and /simulated_load end to /dev for v3 by @Bill-Becker in #382
Full Changelog: v2.3.1...v2.4.0
Fix Lookback
Fix lookback parameter naming and timesteps, see #379.
/job REopt.jl version update, incl name changes (e.g. pct -> fraction), add Boiler, and SteamTurbine
v2.3.0
Minor Updates
Changed
The following name changes were made in the job/
endpoint and julia_src/http.jl
:
- Change "_pct" to "_rate_fraction" for input and output names containing "discount", "escalation", and "tax_pct" (financial terms)
- Change "pct" to "fraction" for all other input and output names (e.g., "min_soc", "min_turndown")
- Change prod_factor_series to production_factor_series
- Updated the version of REopt.jl in /julia_src to v0.20.0 which includes the addition of:
- Boiler tech from the REopt_API (known as NewBoiler in API)
- SteamTurbine tech from the REopt_API
See PR #367.
Deployment updates and dev/job/v3 additions
Kubernetes deployment updates and memory allocation adjustments to mitigate memory overload on servers, as well as:
From CHANGELOG.md:
Minor Updates
Fixed
- Require ElectricTariff key in inputs when Settings.off_grid_flag is false
- Create and save ElectricUtilityInputs model if ElectricUtility key not provided in inputs when Settings.off_grid_flag is false, in order to use the default inputs in
job/models.py
- Added message to
messages()
to alert user if valid ElectricUtility input is provided when Settings.off_grid_flag is true - Register
- Make all urls available from stable/ also available from v2/. Includes registering
OutageSimJob()
andGHPGHXJob()
to the 'v2' API and adding missing paths to urlpatterns inurls.py
.
Changed
job/models.py
:- remove Generator
fuel_slope_gal_per_kwh
andfuel_intercept_gal_per_hr
defaults based on size, keep defaults independent of size - changed
get_input_dict_from_run_uuid
to accomodate new models - changed ElectricLoadInputs.wholesale_rate to use
scalar_to_vector
function
- remove Generator
job/validators.py
: Align PV tilt and aziumth defaults with API v2 behavior, based on location and PV type
Added
0005_boilerinputs....
file used to add new models to the dbjob/
endpoint: Add inputs and validation to model off-grid wind
Injob/models.py
:- added ExistingBoilerInputs model
- added ExistingBoilerOutputs model
- added SpaceHeatingLoadInputs model
- added
scalar_to_vector
to convert scalars of vector of 12 elements to 8760 elements - GeneratorInputs (must add to CHP and Boiler when implemented in v3)
- added
emissions_factor_lb_<pollutant>_per_gal
for CO2, NOx, SO2, and PM25 - add
fuel_renewable_energy_pct
- added
- ElectricUtilityInputs
- add
emissions_factor_series_lb_<pollutant>_per_kwh
for CO2, NOx, SO2, and PM25
- add
- Settings
- add
include_climate_in_objective
andinclude_health_in_objective
- add
- SiteInputs
- add
renewable_electricity_min_pct
,renewable_electricity_max_pct
, andinclude_exported_renewable_electricity_in_total
- add
CO2_emissions_reduction_min_pct
,CO2_emissions_reduction_max_pct
, andinclude_exported_elec_emissions_in_total
- add
- FinancialInputs
- add
CO2_cost_per_tonne
,CO2_cost_escalation_pct
- add
<pollutant>_grid_cost_per_tonne
,<pollutant>_onsite_fuelburn_cost_per_tonne
, and<pollutant>_cost_escalation_pct
for NOx, SO2, and PM25
- add
- FinancialOutputs
- add lifecycle_fuel_costs_after_tax
- SiteOutputs
- add
renewable_electricity_pct
,total_renewable_energy_pct
- add
year_one_emissions_tonnes_<pollutant>
,year_one_emissions_from_fuelburn_tonnes_<pollutant>
,lifecycle_emissions_tonnes_<pollutant>
, andlifecycle_emissions_from_fuelburn_tonnes_<pollutant>
for CO2, NOx, SO2, and PM25
- add
- FinancialOutputs
- add
breakeven_cost_of_emissions_reduction_per_tonnes_CO2
Injob/process_results.py
:
- add
- add ExistingBoilerOutputs
Injob/test/test_job_endpoint.py
: - test that AVERT and EASIUR defaults for emissions inputs not provided by user are passed back from REopt.jl and saved in database
- add a testcase to validate that API is accepting/returning fields related to new models.
In'job/validators.py
: - add new input models
Injob/views.py
: - Added SiteInputs to
help
endpoint - Added SiteOutputs to
outputs
endpoint - add new input/output models to properly save the inputs/outputs
Point /stable/job to v2 of reo app
The /stable/job
endpoint was erroneously pointing to v1
of the reo
app still, and it was meant to point to v2
(new default values for some inputs).
Also, many updates to the in-development job endpoint (/dev/job
URL) which integrates the REopt Julia Package (REopt.jl).
See PR #342 for more details and links to other PRs that are part of this merge.
See CHANGELOG.md for more details of changes made.
v2.0.3 Bug fixes for fuel_slope, sub-hourly scenarios, international PV
See CHANGELOG.md v2.0.1, v2.0.2, and v2.0.3 (PRs #323, #326, #327) for more information.
v2.0 default updates
Merge pull request #317 from NREL/develop master<-dev 22.04.22 API v2 default updates