Releases: NatLabRockies/hercules
v2
Hercules v2 brings major changes in the Hercules interface and wind simulation modules which enable much faster simulation and flexible logging. The Hercules interface now exists fully in Python. The wind simulator has four options, based on wake handling, which also enables comparison with SCADA data. Hercules v2 also brings in functionality that downloads and upsamples wind and solar data from WTK and OpenMeteo for wind and the NSRDB for solar data. This streamlines the workflow of the tool and enables Hercules to be applied to more locations. Finally, a grid price module was added to enable the downloading and use of grid prices to simulate the interaction of hybrid plants with energy markets.
What's Changed
- Hercules v2 beta by @misi9170 in #160
- allow extrapolation in
find_time_utc_valueby @paulf81 in #163 - Allow wind input to specify mean wind speed by @misi9170 in #166
- Wind and solar resource downloading and upsampling by @ejsimley in #164
- Reorganize logging in Hercules by @paulf81 in #167
- Refactor to use UTC based inputs by @paulf81 in #168
- Refactor code to use HerculesModel by @paulf81 in #169
- Doc/docstring by @paulf81 in #171
- [BUGFIX] Hercules input yaml loader by @misi9170 in #174
- Add grid status tool by @paulf81 in #165
- Resolve doc warnings by @paulf81 in #175
- Add external data logging selection by @paulf81 in #176
- Fix deprecation and warning generating code by @paulf81 in #178
- Updating the electrolyzer plant model for v2 and new electrolyzer code release by @genevievestarke in #180
- external data to signals name by @paulf81 in #179
- Feature/clean up logging by @paulf81 in #177
- Clean up by @paulf81 in #181
- [BUGFIX] Hydrogen tracking example by @misi9170 in #182
- Update names by @misi9170 in #186
- Feature/update_100 by @paulf81 in #187
- apply dtype to missed locations by @paulf81 in #188
- Dtypes and linting by @paulf81 in #191
- Reconfigure wind models by @paulf81 in #173
- Improve controller for 1dof wind model by @abhineet-gupta in #158
- Hercules v2.0 by @genevievestarke in #194
New Contributors
Full Changelog: v1.3...v2
v2_beta
Beta version of Hercules v2. This version contains all structural changes intended for Hercules v2, but precedes the official release of version 2.0 as there are still some features that need to be ported over from v1 and may still be some minor changes to the user interface.
Change from v1 to v2
v1.3
What's Changed
- Minor PySAM speed-up improvements by @brookeslawski in #145
- adding weto stack to readme by @gbarter in #148
- Simplify WHOC imports in examples by @misi9170 in #147
- Provide options for grid charging and charging commands for batteries, electrolyzers by @misi9170 in #149
- [BUGFIX] Check whether PySims exist before calculating outputs by @misi9170 in #153
- Hercules v1.3 by @misi9170 in #152
New Contributors
Full Changelog: v1.2...v1.3
v1.2
V1.2 brings improvements to battery and energy storage modeling, dynamic PV system sizing, bug fixes, and package updates, such as example and documentation updates.
New Features
- Add dynamic PV system sizing by @mjprilliman in #141
- SimpleBattery parameterized for simple LDES modeling by @ZackTully in #136
Bug Fixes
- Feature/power tracking update by @genevievestarke in #118
- [BUGFIX] Specify previous OS for ubuntu tests. by @misi9170 in #125
- Bug: Numpy type represented as "np.float64(1.234)" instead of "1.234" by @ZackTully in #121
- fix electrolyzer import by @paulf81 in #142
Package Improvements
- Move all metadata into pyproject by @paulf81 in #120
- Add regression testing by @misi9170 in #129
- Standardize Examples by @paulf81 in #123
- Feature/minor cleanup by @paulf81 in #134
- Enhance use of batch scripts by @paulf81 in #133
- Update installation instructions by @paulf81 in #132
- Switch from Apache-2.0 to BSD-3-Clause license by @misi9170 in #137
- Update numpy requirement to 2.0 by @misi9170 in #138
- Update PySAM to v6.0.0 by @brookeslawski in #139
New Contributors
- @mjprilliman made their first contribution in #141
Full Changelog: v1.1...v1.2
v1.1
Hercules v1.1 adds various new features and improvements, as described below.
New features
- Add alternative standin for AMR-wind that runs FLORIS by @misi9170 in #63
- Enable passing power setpoints to wind simulators by @misi9170 in #76
- Feature/battery cell model by @ZackTully in #91
- Feature/floris electrolyzer example by @genevievestarke in #77
- Enable heterogeneous inflow in
FlorisStandinby @misi9170 in #112
Improvements and bug fixes
- Update README.md by @genevievestarke in #65
- [BUG] Hotfix: track floris v4 change in input file "turbulence_intensities" by @misi9170 in #66
- simple_battery unit tests by @ZackTully in #64
- Fix sync issue by @genevievestarke in #74
- [BUGFIX] Update FlorisStandin to use set() run() paradigm introduced in FLORIS v4 by @misi9170 in #83
- Updating installation documentation by @genevievestarke in #81
- [BUGFIX] Reenable AMR-Wind by setting up empty power_setpoints by @misi9170 in #85
- Feature/update example 6 by @paulf81 in #84
- Adding PV module unit tests and documentation by @brookeslawski in #79
- Refactor example 7 by @paulf81 in #87
- Smooth output of FlorisStandin to prevent oscilations in closed-loop response by @misi9170 in #90
- [BUGFIX] Create outputs folder in examples to avoid error when output file does not exist by @misi9170 in #93
- Add external controls for solar PySAM module by @misi9170 in #107
- [BUGFIX] Force
yaw_anglesto zero inFlorisStandinwhenpower_setpointspassed by @misi9170 in #109 - Improving indexing of solar weather file based on dt in input .yaml file by @brookeslawski in #111
- Change FLORIS to a "regular" requirement by @misi9170 in #103
- Adding solar controller and replacing AMR-Wind standin with FLORIS standin in example 07 by @brookeslawski in #104
- Added AMR-Wind+OpenFAST example (including batch script) by @jfrederik-nrel in #89
- updated installation docs by @achenry in #106
- Fix solar pysam bug for when an external signal is defined by @genevievestarke in #115
- Bugfix/floris standin by @brookeslawski in #101
New Contributors
- @jfrederik-nrel made their first contribution in #89
- @achenry made their first contribution in #106
Full Changelog: v1.0...v1.1
V1.0
What's Changed
- Dv/seas by @dvaidhyn in #6
- Feature/recursive log by @paulf81 in #8
- Update example eagle with mb input by @paulf81 in #7
- Feature/move to letter precursors by @paulf81 in #9
- Adding simple battery model to py_sims by @genevievestarke in #10
- Feature/update dummy amr by @paulf81 in #13
- Updating README in preparation for April sprint by @misi9170 in #15
- Update for global HELICS_PORT by @dvaidhyn in #16
- rename to hercules by @paulf81 in #17
- Feature/reorganize examples by @paulf81 in #19
- Feature/electrolyzer by @genevievestarke in #22
- Catch up main to develop by @paulf81 in #28
- Feature/update docs by @paulf81 in #27
- Feature/update reqs and add simple test by @paulf81 in #36
- Updating controller to align with WHOC by @misi9170 in #41
- Update to public seas by @paulf81 in #39
- Update to public seas (#39) (Bring develop up to date with main) by @misi9170 in #43
- Feature/battery example by @ZackTully in #30
- Stand-in AMR-wind uses stop time defined in amr_input.inp by @misi9170 in #47
- Improved PV solar model by @brookeslawski in #58
- Feature/rename dummyamr by @genevievestarke in #48
- Add WHOC installation instructions to Hercules documentation by @genevievestarke in #59
- Add ruff linting, formatting and pre-commit hooks by @paulf81 in #46
- Feature/add ruff by @genevievestarke in #60
- Hercules V1.0 Release by @genevievestarke in #61
Full Changelog: v0.1.0...v1.0
Initial Kafka Version
Merge pull request #3 from NREL/develop Merge main to develop