Skip to content

Commit 6149b27

Browse files
johnjasaelenya-grantgenevievestarkebayckbrunik
authored
v3.3.0 develop -> main (#483)
* minor clean-ups to floris.py (#419) * removed writing wind data to file in floris.py and added verbose as attr * minor clean up to applying losses in floris execute function * added floris clean-up to RELEASE.md * patch for readthedocs build using sphinx * fixed typo in config filepath from previous commit * fixed typo in config filepath from previous commit again * feature: option to load wind and solar resource data from HPC (#414) * added ability to grab wind and solar resource data off the HPC and updated upstream functions * updated doc strings and comments for wtk_data and nsrdb_data scripts * added comments to site_info for added options, fixed bug of resource year being set to 2012 * updated formatting and docstrings for previous commit * updated RELEASE.md with recent changes * changed input variable name in HPCWindData to align with WindResource and updated doc strings * added high level test for hpc resource data * added sphinx config path in readthedocs to fix build * updated doc strings and minor updates to hpc resource functions * updated docstrings and added valid year check and tests for hpc resource data * changed site_info api doc file to markdown * added doc files for wind and solar resource * minor updates to doc strings in hpc resource classes * updated string formatting * added tests for wtk and nsrdb resource if filepath is provided * split long comments into multiple lines * Bugfix: Load following heuristic method for variable load signals only using the beginning of the load signal (#421) * Fixing bug in heuristic method that affects variable load following * Updating release notes * Updated test for varied heuristics --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * feature: option to initialize site_info with resource data (#415) * added ability to grab wind and solar resource data off the HPC and updated upstream functions * updated doc strings and comments for wtk_data and nsrdb_data scripts * added comments to site_info for added options, fixed bug of resource year being set to 2012 * updated formatting and docstrings for previous commit * updated RELEASE.md with recent changes * changed input variable name in HPCWindData to align with WindResource and updated doc strings * added high level test for hpc resource data * added ability to supply preloaded and formatted resource data to site_info and updated doc strings * added tests for using preloaded resource data and updated RELEASE.md * tried to improve the site_info documentation but it aint much better * added elevation as site_info attribute and updated with solar resource elevation if called * added sphinx config path in readthedocs to fix build * updated doc strings and minor updates to hpc resource functions * split out tests for initializing site_info with resource data * updated docstrings and added valid year check and tests for hpc resource data * added sphinx config path in readthedocs to fix build * updated doc strings and minor updates to hpc resource functions * updated docstrings and added valid year check and tests for hpc resource data * changed site_info api doc file to markdown * added doc files for wind and solar resource * minor updates to doc strings in hpc resource classes * resolved merge conflict in doc string of wind_resource.py * updated some formatting in resource files for readthedocs build * updated string formatting * added tests for wtk and nsrdb resource if filepath is provided * split long comments into multiple lines * minor clean ups to wind and solar resource functions * now passing tests --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Feature add: alternative to define site boundaries (#426) - Added different ways to define site boundaries; square, circle, etc - Expanded docs and tests accordingly --------- Co-authored-by: bayc <christopher.j.bay@gmail.com> * Remove Wave Resource Deprecated Methods (#430) * update deprecated methods * H to h * update RELEASE.md * update wave resource docstring * fix docstring spacing * wave resource doc * fix doc build * PySAM 6.0.1 (#425) * update pysam to 6.0.0 * update grid default json to CustomGenerationProfile json * update wave plant loading resource file to handle 1hr timesteps by default * Updated for pysam 6.0.0 * wave cost model updates. update test values add additional test for costs. * Update regression test values based on updates to wind and solar pysam default jsons and updates to singleowner model. * Reopt test: update default json and financial value for wind * update test values in test_capacity_credit. changes due to json defaults and impact on battery optimization * CSP update. Update lcoe value because of changes to SingleOwner financial model * WIP; updating test values for detailed PV * Bringing tests back for detailed PV * update regression test results * update RELEASE.md * update example default fin config * remove outdated comments * update docstrings to google format * update RELEASE.md with PR number. Force update for NREL-PySAM dependency * remove commented code * update detailed pv attribute for pysam 6.0.1 * update release notes --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Feature add: option to adjust air density for site elevation (#427) * added site shape tools script * updated site_info for new option of site boundary definition * updated doc strings for site info and site shape tool functions * added tests for site shape tools functions * added site shape tools to documentation * added another optional input for site_details if using circle as shape * removed checking vertices so tests pass * added function to rotate site * added site boundary buffer for verts back in * added site polygon buffer as optional input to site info * added wind resource tools script * added test for air density adjustment for elevation calc * integrated adjusting for elevation in wind models * added weighted parser, updated tests, updated wind_resource.py * minor docstring updates to wind resource tools * minor fix to wind_plant and made regression test for elevation adjustment option * removed unnecessary lines and comments * integrated weighted parse resource data method into wind plant --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Intermediate: update to wind layout and floris functions (1/2) (#429) * added site shape tools script * updated site_info for new option of site boundary definition * updated doc strings for site info and site shape tool functions * added tests for site shape tools functions * added site shape tools to documentation * added another optional input for site_details if using circle as shape * updated RELEASE.md with new feature * removed checking vertices so tests pass * added function to rotate site * added site boundary buffer for verts back in * added site polygon buffer as optional input to site info * added wind resource tools script * added test for air density adjustment for elevation calc * integrated adjusting for elevation in wind models * updated doc strings for recent changes * updated release file * fixed bug in make_grid_lines * fixed input to create_grid to be in degrees instead of radians * added new wind layout tools and fixed doc strings related to bug fix * updated call to wind layout tools and fixed inputs for test_custom_financial * adding in option for basicgrid layout option * renamed test_layout test * added weighted parser, updated tests, updated wind_resource.py * added plot function to site_shape_tools * added new wind layout tools function and cleaned up wind_layout a bit * added more functionality to floris.py and added some optional parameters to windconfig * added layout test for basicgrid layout * added doc strings to wind layout files and wind plant files * added warning if user inputs incorrect turbine rating with floris * updated tests that were failing because of floris update * minor fix to wind_plant and made regression test for elevation adjustment option * added in integrated of weighted average resource data from v3/elevated_wind --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Feature add: integrated wind layout methods when using Floris (2/2) (#431) * added site shape tools script * updated site_info for new option of site boundary definition * updated doc strings for site info and site shape tool functions * added tests for site shape tools functions * added site shape tools to documentation * added another optional input for site_details if using circle as shape * updated RELEASE.md with new feature * removed checking vertices so tests pass * added function to rotate site * added site boundary buffer for verts back in * added site polygon buffer as optional input to site info * added wind resource tools script * added test for air density adjustment for elevation calc * integrated adjusting for elevation in wind models * updated doc strings for recent changes * updated release file * fixed bug in make_grid_lines * fixed input to create_grid to be in degrees instead of radians * added new wind layout tools and fixed doc strings related to bug fix * updated call to wind layout tools and fixed inputs for test_custom_financial * adding in option for basicgrid layout option * renamed test_layout test * added weighted parser, updated tests, updated wind_resource.py * added plot function to site_shape_tools * added new wind layout tools function and cleaned up wind_layout a bit * added more functionality to floris.py and added some optional parameters to windconfig * updated example 05 input file so it wont cause a warning * added layout test for basicgrid layout * added comments to tests that will fail because of floris update * updated tests that were failing because of floris update * minor fix to wind_plant and made regression test for elevation adjustment option * adjusted basic grid to center layout on site center and integrated layout with floris * integrated wind layout with floris and updated wind layout mode in floris test in test_hybrid * updated tests for floris because of recent feature-adds * added in integrated of weighted average resource data from v3/elevated_wind --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> Co-authored-by: bayc <christopher.j.bay@gmail.com> * Wind Layout Clean-up (#433) * added site shape tools script * updated site_info for new option of site boundary definition * updated doc strings for site info and site shape tool functions * added tests for site shape tools functions * added site shape tools to documentation * added another optional input for site_details if using circle as shape * updated RELEASE.md with new feature * removed checking vertices so tests pass * added function to rotate site * added site boundary buffer for verts back in * added site polygon buffer as optional input to site info * added wind resource tools script * added test for air density adjustment for elevation calc * integrated adjusting for elevation in wind models * updated doc strings for recent changes * updated release file * fixed bug in make_grid_lines * fixed input to create_grid to be in degrees instead of radians * added new wind layout tools and fixed doc strings related to bug fix * updated call to wind layout tools and fixed inputs for test_custom_financial * adding in option for basicgrid layout option * renamed test_layout test * added weighted parser, updated tests, updated wind_resource.py * added plot function to site_shape_tools * added new wind layout tools function and cleaned up wind_layout a bit * added more functionality to floris.py and added some optional parameters to windconfig * updated example 05 input file so it wont cause a warning * added layout test for basicgrid layout * added test that shows how floris breaks - other floris tests will fail * added comments to tests that will fail because of floris update * added doc strings to wind layout files and wind plant files * added minor comment to floris.py * updated README with recent changes * added warning if user inputs incorrect turbine rating with floris * updated tests that were failing because of floris update * added some extra asserts to floris test in test_hybrid * minor docstring updates to wind resource tools * minor fix to wind_plant and made regression test for elevation adjustment option * removed unnecessary lines and comments * added some property and setters to floris * bug fix in test_hybrid for floris run * fixed failing test in test_hybrid * adjusted basic grid to center layout on site center and integrated layout with floris * fixed typo in floris.py * integrated wind layout with floris and updated wind layout mode in floris test in test_hybrid * updated tests for floris because of recent feature-adds * updated RELEASE.md with feature-add description * minor clean ups to scripts * cleaned up wind layout script * added function to modify layout params in wind_plant * minor update to wind_layout.py set_layout_params function * bug fix for failing tests * added in integrated of weighted average resource data from v3/elevated_wind * updated RELEASE.md * updated release.md * made changes based on review feedback * updated release file and removed unnecessary comments in some scripts * further workflow and comment clean-up from feedback * updated doc string and comments in make_grid_lines() * updated some doc strings in floris.py * updated handling if layout_params is None for wind * Minor docstring update * Fixed merge bug * Modifications based on Rob's PR * Fixed validators call * Updated spacing calls --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Missed load (#432) * update print/save statements to not multiply missed load by 100 since it is already a percentage and not a decimal * correct setting and printing of 'schedule_curtailed_percentage' with removing extra 100 multiples at print and including brackets for clarification * add clarifying parentheses * update RELEASE.md * MHK Tidal Plant (#444) * update pysam to 6.0.0 * update grid default json to CustomGenerationProfile json * update wave plant loading resource file to handle 1hr timesteps by default * Updated for pysam 6.0.0 * wave cost model updates. update test values add additional test for costs. * Update regression test values based on updates to wind and solar pysam default jsons and updates to singleowner model. * Reopt test: update default json and financial value for wind * update test values in test_capacity_credit. changes due to json defaults and impact on battery optimization * CSP update. Update lcoe value because of changes to SingleOwner financial model * WIP; updating test values for detailed PV * Bringing tests back for detailed PV * update regression test results * update RELEASE.md * update example default fin config * remove outdated comments * update docstrings to google format * update deprecated methods * H to h * update RELEASE.md * initial tidal model * update RELEASE.md with PR number. Force update for NREL-PySAM dependency * update tidal model with tests * add ability to interpolate resource data * add validators back * update documentation * Converted tabs to spaces * change resource import * update docstrings and documentation * update description of tidal resource * reduce attrs logic Co-authored-by: John Jasa <johnjasa11@gmail.com> * reduce logic Co-authored-by: John Jasa <johnjasa11@gmail.com> * check identity with is not None * update path handling * fixing docs * fix description * clean up readthedoc warnings * fix typo --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Integrate Tidal into Hybrid Simulation (#446) * integrate mhk_tidal into HybridSimulation * update tidal and wave docs * add tidal test to test_hybrid.py * add robust_approx method Co-authored-by: John Jasa <johnjasa11@gmail.com> * Add Tidal Dispatch (#448) * add tidal dispatch * add tidal battery example --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Feature add: integration with turbine-models library for wind simulations (#435) * Added initial functionality for integrating turbine-models library * Integrated with turbine-models library and FLORIS and made integration test * Integrated turbine-models library with PySAM simulation and made integration test * Replaced UserWarning about wind turbine hub-height and site info discrepancy with ability to redownload wind resource data * Added initialize_pysam_turbine() function * Made turbine_rating_kw an optional input to WindConfig * Updated README.md, RELEASE.md, and pyproject.toml * Updated wind resource parsing methods to work if more than 2 resource heights are input * Changed UserWarnings to ValueErrors in wind_plant.py and floris.py * Added turbine_group as optional input to check_turbine_library_for_turbine function in turbine_library_tools.py * Updated Ct function in power_curve_tools.py to not fail if multiple roots --------- Co-authored-by: Gen Starke and John Jasa <johnjasa11@gmail.com> * Distributed wind-hybrid examples (#452) * updated examples for battery is actually used * updated RELEASE.md for new examples * Minor typographical edits * updated example 9 and minor update to plot_generation_profile function * updated tick labelsize in plot_generation_profile for bottom subplot * updated example 9 with feedback from kbrunik --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Update README.md * Version bump for 3.2.0 release (#453) * Version bump for release * Update RELEASE.md * Update doc book deployment * Update wind tests for floats (#460) * Loosened wind turbine property checks * Loosened wind turbine property checks and fixed wind initialization logic * Added to release.md * Removed unnecessary logic for assigning financial values * Hotfix for GreenHEART plotting (#462) * Loosen turbine rating check (#464) * Made turbine rating check +/- 10% * Loosened strictness of wind turbine rating comparison and added tests * Added coke_supply_EI to greet_data.py parsing and greet_2023_processed.yaml. Updated test_cost_calculator.py > test_bos_calculate_bos_cost_interpolate assertions failing locally because of floating point precision issues, changed assert X == Y == Z to 3 separate assert X == pytest.approx(Y) statements (#466) * Update pyproject.toml * Update README.md to not specify `coin-or-cbc` version. (#470) * Update README.md to not specify `coin-or-cbc` version. --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Bug-fix: WindPlant update for checking inputs (#469) * fixed issues for pysam related to specifying the turbine hub-height * updated pysam wind turbine initialization steps * updated default value in windplant --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Feature add: Download wind resource for Alaska (#461) * added alaska wind resource download tools and class * updated alaska wind filel and resource.py for handling non alphanumeric characters * updated parsing methods in case pressure or temperature data is given for other resource heights * updated pysam wind resource tools to be flexible whether pressure is provided or not * integrated alaska wind into workflow * updated RELEASE.md * added tests for AK wind and updated site_info and alaska_wind file * added new resource file for alaska wind resource data used for new tests * updated doc strings and added documentation for Alaska wind API call * actually added alaska documentation file * fixed latitude for alaska test site * remove whitespace in resource.py Co-authored-by: John Jasa <johnjasa11@gmail.com> * updated doc string in site_info.py Co-authored-by: John Jasa <johnjasa11@gmail.com> * updated doc string in site_info.py Co-authored-by: John Jasa <johnjasa11@gmail.com> * updated pysam_wind_tools.py for docstrings and handling resource year * updated wind_resource.py combine_files function to use function in pysam_wind_tools.py * added missing return value in combine_wind_files --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Feature add: Download wind data from Bias-Corrected HRRR Dataset (#474) * added alaska wind resource download tools and class * updated alaska wind filel and resource.py for handling non alphanumeric characters * updated parsing methods in case pressure or temperature data is given for other resource heights * updated pysam wind resource tools to be flexible whether pressure is provided or not * integrated alaska wind into workflow * updated RELEASE.md * added tests for AK wind and updated site_info and alaska_wind file * added new resource file for alaska wind resource data used for new tests * updated doc strings and added documentation for Alaska wind API call * actually added alaska documentation file * fixed latitude for alaska test site * Add BC-HRRR dataset to HOPP * Upate docs * Finish updating docs * Add testing * Make dataset title shorter for docs * BCHRRR file cleanup * Debugging adding precipitation rate * Add precipitation rate back into the data * Update doc strings * Apply suggestions from code review * Approximate surface to 100m pressure * Updated the test_wind BCHRRR test * Updated BCHRRR test * Update after pressure conversion * Enable running pysam again --------- Co-authored-by: elenya-grant <116225007+elenya-grant@users.noreply.github.com> Co-authored-by: John Jasa <johnjasa11@gmail.com> * Updates for pySAM 7.0.0 (#477) * WIP: updating for pysam 7 * Updates for pysam 7 * Updated release.md * Updated test_hybrid based on tidal changes in pysam * Add long duration energy storage (LDES) (#471) * Feature/ldes framework (#443) * rename pysam battery model from BatteryModel to PySAMBatteryModel to make room for LDES * create space for LDES system model integration * switch from LDES to AEF * isolate assert statements in subtests * start tests for LDES and start LDES initialization * work on integrating LDES * ldes initial tests passing * add comments/TODO * Feature/ldes framework working framework, need to fill in execute (#449) * rename pysam battery model from BatteryModel to PySAMBatteryModel to make room for LDES * create space for LDES system model integration * switch from LDES to AEF * isolate assert statements in subtests * start tests for LDES and start LDES initialization * work on integrating LDES * ldes initial tests passing * add comments/TODO * Missed load (#432) * update print/save statements to not multiply missed load by 100 since it is already a percentage and not a decimal * correct setting and printing of 'schedule_curtailed_percentage' with removing extra 100 multiples at print and including brackets for clarification * add clarifying parentheses * update RELEASE.md * MHK Tidal Plant (#444) * update pysam to 6.0.0 * update grid default json to CustomGenerationProfile json * update wave plant loading resource file to handle 1hr timesteps by default * Updated for pysam 6.0.0 * wave cost model updates. update test values add additional test for costs. * Update regression test values based on updates to wind and solar pysam default jsons and updates to singleowner model. * Reopt test: update default json and financial value for wind * update test values in test_capacity_credit. changes due to json defaults and impact on battery optimization * CSP update. Update lcoe value because of changes to SingleOwner financial model * WIP; updating test values for detailed PV * Bringing tests back for detailed PV * update regression test results * update RELEASE.md * update example default fin config * remove outdated comments * update docstrings to google format * update deprecated methods * H to h * update RELEASE.md * initial tidal model * update RELEASE.md with PR number. Force update for NREL-PySAM dependency * update tidal model with tests * add ability to interpolate resource data * add validators back * update documentation * Converted tabs to spaces * change resource import * update docstrings and documentation * update description of tidal resource * reduce attrs logic Co-authored-by: John Jasa <johnjasa11@gmail.com> * reduce logic Co-authored-by: John Jasa <johnjasa11@gmail.com> * check identity with is not None * update path handling * fixing docs * fix description * clean up readthedoc warnings * fix typo --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * working on fixing setters * save comments from discussion with gen * include tests for battery with ldes * Integrate Tidal into Hybrid Simulation (#446) * integrate mhk_tidal into HybridSimulation * update tidal and wave docs * add tidal test to test_hybrid.py * add robust_approx method Co-authored-by: John Jasa <johnjasa11@gmail.com> * Add Tidal Dispatch (#448) * add tidal dispatch * add tidal battery example --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * minor progress * test_battery_ldes.py tests are passing * remove init import and debug statements * include duration --------- Co-authored-by: kbrunik <102193481+kbrunik@users.noreply.github.com> Co-authored-by: John Jasa <johnjasa11@gmail.com> * Feature/ldes framework (#450) * include duration * bug fix --------- Co-authored-by: kbrunik <102193481+kbrunik@users.noreply.github.com> Co-authored-by: John Jasa <johnjasa11@gmail.com> * Feature/ldes framework (#451) * resolve merge * Feature/ldes framework (#459) * debugging * add ldes dispatch tests * re-set up instantiation * updates to LDES initialization * get to execute * ldes basically working - no degradation or cycle counting * remove unused code * generally working * add efficiency test for ldes * remove debug statements --------- Co-authored-by: bayc <christopher.j.bay@gmail.com> * Fix code syntax * Initial cycle counting for ldes * Fix typo in power_storage_dispatch.py lifecyle count for min operating cost objective * Updating tests and remove print statements * Update soc modeling and fix plot_tools.py error * Fix tests * Pinning floris version * Feature/ldes framework (#468) * add ldes dispatch tests * updates to LDES initialization * add efficiency test for ldes * Update pyproject.toml * include subtests * soc test for ldes * add test for battery replacement schedule with custom financial model --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * adding battery test with replacement schedule for custom financial model * fix logic in batt replacement list length check * update tests * fix battery replacement schedule function with custom financial model * LDES tests and remove AEF chemistry option --------- Co-authored-by: bayc <christopher.j.bay@gmail.com> Co-authored-by: John Jasa <johnjasa11@gmail.com> * update release.md * add LDES example * remove commented option * remove commented option * remove outdated comment * remove unnecessary inputs and notes * clarify logic and purpose * address minor comments * correct grammar: * clarify the purpose of the battery_om_per_kw zero value in the LDES example * Update release notes with bugfix * Remove commented out test from ldes battery tests * Updated LDES and batt replacement tests due to pysam 7.0.0 * Small cleanup --------- Co-authored-by: kbrunik <102193481+kbrunik@users.noreply.github.com> Co-authored-by: John Jasa <johnjasa11@gmail.com> Co-authored-by: bayc <christopher.j.bay@gmail.com> Co-authored-by: Genevieve Starke <genevieve.starke@nrel.gov> * Feature add: Generic Plant (#472) * added simulate_power function to hopp interfacing objects * added ghost plant and integrated physics model * small update to grid.py and power_source.py * updated test for ghost plant * updated ghost plant * added ghost_multi system model * updated generation_profile_wo_battery setter * updated test_ghost for ghost_multi * updated round_digits in dispatch.py to 8 * changed round_digits update to power_source_dispatch instead of dispatch.py * added docstrings and updated some function names in ghost_plant and ghost_multi * udpated generation_profile_wo_battery setter in grid.py so compatible with CustomFinancialModel simulations * updated test_ghost.py * renamed ghost to generic * updated RELEASE.md * updated docstrings and other minor changes to generic plant stuff based on feedback * fixed AttributeError that occurs when initializing generation profile if system capacity hasnt been set * updated RELEASE.md * minor updates to generic plant * update generic_plant * updated generic config so tests pass --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Bugfix for flicker mismatch (#479) * Bugfix for flicker mismatch * Updated test_flicker_mismatch test * Update LDES Example (#480) * update ldes example * change fin file * note on model limitation --------- Co-authored-by: John Jasa <johnjasa11@gmail.com> * Bumped version and changelog (#482) --------- Co-authored-by: elenya-grant <116225007+elenya-grant@users.noreply.github.com> Co-authored-by: genevievestarke <103534902+genevievestarke@users.noreply.github.com> Co-authored-by: bayc <christopher.j.bay@gmail.com> Co-authored-by: kbrunik <102193481+kbrunik@users.noreply.github.com> Co-authored-by: Jared Thomas <jaredthomas68@users.noreply.github.com> Co-authored-by: Dakota Sky Ramos <85905407+dakotaramos@users.noreply.github.com> Co-authored-by: Genevieve Starke <genevieve.starke@nrel.gov>
1 parent 1dfebdb commit 6149b27

File tree

70 files changed

+21828
-307
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+21828
-307
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ solar and storage.
4545
4. Install HOPP and its dependencies:
4646

4747
```bash
48-
conda install -y -c conda-forge coin-or-cbc=2.10.8 glpk
48+
conda install -y -c conda-forge coin-or-cbc glpk
4949
```
5050

5151
Note if you are on Windows, you will have to manually install Cbc: https://github.com/coin-or/Cbc.

RELEASE.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,22 @@
11
# Release Notes
22

3+
4+
## Version 3.3.0, April 30, 2025
5+
6+
* Added GenericPlant model ([PR #472](https://github.com/NREL/HOPP/pull/472)) which may be used to:
7+
- simulate grid and battery performance without resimulating generation of other technologies
8+
- represent the physics-based performance of a generation technology that is not included in HOPP
9+
* Loosened strictness of comparison for wind turbine config checking and added tests
10+
* Loosened strictness of comparison for wind turbine hub-height and wind resource hub-height
11+
* Updated workflow for specifying wind turbine parameters without specifying a turbine name with PySAM.
12+
* Added ability to download wind resource data from WTK-LED for Alaska ([PR #461](https://github.com/NREL/HOPP/pull/461))
13+
* Added ability to download wind resource data from BC-HRRR CONUS 60-minute (NOAA + NREL) for 2015-2023 ([PR #474](https://github.com/NREL/HOPP/pull/474))
14+
* Updated HOPP for pySAM 7.0.0 release ([PR #477](https://github.com/NREL/HOPP/pull/477))
15+
* Add long-duration energy storage (LDES) ([PR #471](https://github.com/NREL/HOPP/pull/471))
16+
* Bugfix for cycle counting in the minimum operating cost objective function - no longer throws an error
17+
* Bugfix for flicker mismatch; cases with a single `Point` now correctly work
18+
19+
320
## Version 3.2.0, March 21, 2025
421

522
* Updates related to PySAM:

docs/_toc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ parts:
1919
sections:
2020
- file: api/resource/solar_api
2121
- file: api/resource/wind_api
22+
- file: api/resource/alaska_wind
23+
- file: api/resource/bc-hrrr_wind
2224
- file: api/resource/solar_hpc
2325
- file: api/resource/wind_hpc
2426
- file: api/resource/wave_data

docs/api/resource/alaska_wind.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
(resource:ak-wind-resource)=
2+
# Wind Resource for Alaska (API)
3+
4+
Wind resource data can downloaded for Alaska from the NREL Developer Network hosted Wind Integration National Dataset (WIND) Toolkit dataset [Wind Toolkit Data - Alaska V1.0.0](https://developer.nrel.gov/docs/wind/wind-toolkit/wtk-alaska-v1-0-0-download/). Using this functionality requires an NREL API key.
5+
6+
Wind resource data for Alaska can only be downloaded for wind resource years 2018-2020 and is only downloaded if the `wind_resource_region` input to [SiteInfo](../site_info.md) is set to "ak". For example:
7+
8+
```yaml
9+
site:
10+
wind_resource_region: "ak"
11+
```
12+
13+
```{eval-rst}
14+
.. autoclass:: hopp.simulation.technologies.resource.alaska_wind.AlaskaWindData
15+
:members:
16+
:exclude-members: _abc_impl, check_download_dir
17+
```

docs/api/resource/bc-hrrr_wind.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
(resource:bc-hrrr-wind-resource)=
2+
# Wind Resource from the BC-HRRR Dataset (API)
3+
4+
Wind resource data can be downloaded from the NREL-processed bias-corrected High-Resolution Rapid Refresh (HRRR) dataset from the National Oceanic and Atmospheric Administration (NOAA) for the years 2015-2023. This data is available as an hourly operational forecast product. The data is bias-corrected so that it can be used in continuity with the legacy WIND toolkit data (2007-2013). The data is available over CONUS from the NREL Developer Network hosted Wind Integration National Dataset (WIND) Toolkit dataset [Wind Toolkit Data - BC-HRRR CONUS 60-minute (NOAA + NREL)](https://developer.nrel.gov/docs/wind/wind-toolkit/wtk-bchrrr-v1-0-0-download/). Using this functionality requires an NREL API key.
5+
6+
Wind resource data from the BC-HRRR dataset can only be downloaded for wind resource years 2015-2023 and is only downloaded if the `wind_resource_origin` input to [SiteInfo](../site_info.md) is set to "BC-HRRR". For example:
7+
8+
```yaml
9+
site:
10+
wind_resource_origin: "BC-HRRR"
11+
```
12+
13+
```{eval-rst}
14+
.. autoclass:: hopp.simulation.technologies.resource.alaska_wind.BCHRRRWindData
15+
:members:
16+
:exclude-members: _abc_impl, check_download_dir
17+
```

docs/api/resource/index.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
These are the primary methods for accessing wind and solar resource data.
44

55
- [Solar Resource (API)](resource:solar-resource)
6-
- [Wind Resource (API)](resource:wind-resource)
6+
- [Conus Wind Resource (API)](resource:wind-resource)
7+
- [Alaska Wind Resource (API)](resource:ak-wind-resource)
8+
- [BC-HRRR Dataset Wind Resource (API)](resource:bc-hrrr-wind-resource)
79
- [Solar Resource (NSRDB Dataset on NREL HPC)](resource:nsrdb-data)
810
- [Wind Resource (Wind Toolkit Dataset on NREL HPC)](resource:wtk-data)
911
- [Wave Resource (Data)](resource:wave-resource)

docs/api/resource/wind_api.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
(resource:wind-resource)=
2-
# Wind Resource (API)
2+
# Wind Resource for Continental U.S. (API)
33

4-
By default, wind resource data is downloaded from the NREL Developer Network hosted Wind Integration National Dataset (WIND) Toolkit dataset [Wind Toolkit Data - SAM format (srw)](https://developer.nrel.gov/docs/wind/wind-toolkit/wtk-srw-download/). Using this functionality requires an NREL API key.
4+
By default, wind resource data is downloaded from the NREL Developer Network hosted Wind Integration National Dataset (WIND) Toolkit dataset [Wind Toolkit Data - SAM format (srw)](https://developer.nrel.gov/docs/wind/wind-toolkit/wtk-srw-download/).
5+
6+
Wind resource data for the continental U.S. can be downloaded from Wind Toolkit for wind resource years 2007 - 2014. Using this functionality requires an NREL API key.
7+
8+
Wind data for the continental U.S. for wind resource years 2015 - 2023 can be downloaded from the BC-HRRR dataset, see [BC-HRRR Dataset Wind Resource (API)](resource:bc-hrrr-wind-resource).
59

610
```{eval-rst}
711
.. autoclass:: hopp.simulation.technologies.resource.wind_resource.WindResource

0 commit comments

Comments
 (0)