-
Notifications
You must be signed in to change notification settings - Fork 9
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
Hercules v1.1 #116
Merged
Hercules v1.1 #116
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Setting up example to work through. * bugfix: fix old dummy name. * Constructs fi object. * appears to run as expected. * Various updates for smoother running. * Ruff. * Remove gch yaml in favor of a default dictionary defined in floris_standin.py * Undo ruff format, which fights with ruff. * Tests for FlorisStandin. * ruff * Adding correct floris branch to github workflow for testing. * try again... * and again. * ready to test external data. * Test for external data built out and passing. * ruff. * Remove obselete handling. * match reconfiguration of turbine package. * add pip install instructions. * ruff :( * Standin power specified in kW; emulator uses correct actuator. * Update test to reflect kW units. * remove unused JoukowskyDisk information. * Adding a comment explaining units in Floris power calculation * Adjusting to meet Ruff standards * Line shortened. --------- Co-authored-by: Genevieve Starke <[email protected]>
Co-authored-by: jfrederik-nrel <[email protected]>
* simple battery unit tests * update WHOC WindBatteryController name * Add alternative standin for AMR-wind that runs FLORIS (#63) * Setting up example to work through. * bugfix: fix old dummy name. * Constructs fi object. * appears to run as expected. * Various updates for smoother running. * Ruff. * Remove gch yaml in favor of a default dictionary defined in floris_standin.py * Undo ruff format, which fights with ruff. * Tests for FlorisStandin. * ruff * Adding correct floris branch to github workflow for testing. * try again... * and again. * ready to test external data. * Test for external data built out and passing. * ruff. * Remove obselete handling. * match reconfiguration of turbine package. * add pip install instructions. * ruff :( * Standin power specified in kW; emulator uses correct actuator. * Update test to reflect kW units. * remove unused JoukowskyDisk information. * Adding a comment explaining units in Floris power calculation * Adjusting to meet Ruff standards * Line shortened. --------- Co-authored-by: Genevieve Starke <[email protected]> * Update README.md (#65) Co-authored-by: jfrederik-nrel <[email protected]> * Bugfix -- track floris v4 change in input file. (#66) --------- Co-authored-by: Zachary <[email protected]> Co-authored-by: misi9170 <[email protected]> Co-authored-by: Genevieve Starke <[email protected]> Co-authored-by: genevievestarke <[email protected]> Co-authored-by: jfrederik-nrel <[email protected]> Co-authored-by: misi9170 <[email protected]>
* Update README.md * fix deltat error * Fixing wind direction setting in amr_wind_standin --------- Co-authored-by: jfrederik-nrel <[email protected]> Co-authored-by: Vaidhynathan <[email protected]>
* Running with null power setpoints. * Ruff. * power_setpoints test. * tests built out; units consistently kW. * Note for pwoer_setpoints being sent to AMRWind. * Enable a no value float for yaw angles. * Provide external data to Emulator. * ruff * test output filename * Add test data; consistent with csv file appends. * minor key name change; untested. * Fixing key error in emulator.py * Temp demo scripts. * Minor demo updates. * merging changes. * Ensure time for external signals matches absolute_helics_time, even if simulation does not start at expected start_time * Remove demo code. * Cleanup. * cleanup 2. * remove unneeded print statements. --------- Co-authored-by: Genevieve Starke <[email protected]>
…in FLORIS v4 (#83) * Update FlorisStandin to use set() run() paradigm * Improve retained yaw misalignments test.
* Updating installation documentation * Fixing typo * Update commands * Fix typo in Kestrel instructions * Kestral instructions edit * Another typo fix
* Handling to allow variable length control signal to *optionally* pass power_setpoints. * Fix comment.
* created dummy example for amr wind dummy + solar * final commit before creating feature branch * standalone solar pysam example * working standalone example of solar pysam model * removed time as explicit input in step * working example of solar pysam and hercules (but pysam has a bug) * changing hardcoded stoptime of 100 s to 1000 s to demo solar module * cleaning before pull request review of misha's changes * working solar pysam example with test amr wind * adding updated results in jupyter notebook * trying to run after git pull of develop * solar model runs successfully, but there is a time issue * correcting irradiance field and removing unnecessary comments * removing unnecessary files * removing test amr wind and solar example, saving for separate PR * adding environment yaml file needed for pysam * updating setup and docs to include pysam and restrict python version * adding missing csv weather file * Minor changes for running the code * Minor cleanup in example. * remove environment.yml * adding solar module unit tests * adding relative path for pytest functionality * correcting ruff formatting and except * more ruff formatting * adding skeleton files for solar pv * adding solar pysam description * removing documentation changes, saving for a separate PR * removing documentation changes, saving for a separate PR * removing documentation changes, saving for a separate PR * adding comments to the tests * fix comments for PV * adding documentation, moving lat long to input file, correcting irradiance output * doc updates, code clean up * docs updates * minor cleanup * ruff formatting and minor cleanup --------- Co-authored-by: Genevieve Starke <[email protected]> Co-authored-by: misi9170 <[email protected]>
* Add README * Update batch script * Update deploy pages * Update toc * fixing solar_pysam UnicodeDecodeError bug * Update README * Back update example 6 script --------- Co-authored-by: brookeslawski <[email protected]>
…response (#90) * Rough implementation for output filter. * Port over to v4 FlorisModel changes; tests failing now due to output filter. * Enable setting smoothing_coefficient on instantiation. * Specificy smoothing_coefficient as zero to restablish previous operation for testing. * Tests for smoothing output added.
… file does not exist (#93) * Create outputs folder on calling amr_wind_standin.py, to avoid bug when outputs folder not already present. * Missed one
* created file for battery documentation * Battery doc started * Separate simple and LI battery * LIB troubleshooting * comments and tests * tests * tests * ruff formatting details * fix emulatore main dict logging bug * reformatting for ruff * fixed FlorisStandin testing bug * relax test requirements slightly * first pass battery documentation * minor changes to comments, tests, .gitignore * Updating example to use 5 MW NREL Reference turbine and adding a jupyter notebook to look at the outputs --------- Co-authored-by: Zachary <[email protected]> Co-authored-by: Genevieve Starke <[email protected]>
* bug fix for operation model name * Add enable_active_wake_mixing flag to default_floris_dict. --------- Co-authored-by: misi9170 <[email protected]>
* Fix amr input file format * Updating Ex05 with electrolyzer plant to run with Floris * Commiting changes for example, example needs deeper Elec debugging * Updated floris-electrolyzer example * Taking out print statements * Adding supporting files for example, example documentation, and renaming folder to represent new example * Adjusting input files to match * Updating Ex 05 analysis script
* Add FLORIS to requirements list; remove special installation instructions." * require floris > 4/ * Change to compatible release clause.
…andin in example 07 (#104) * created dummy example for amr wind dummy + solar * final commit before creating feature branch * standalone solar pysam example * working standalone example of solar pysam model * removed time as explicit input in step * working example of solar pysam and hercules (but pysam has a bug) * changing hardcoded stoptime of 100 s to 1000 s to demo solar module * cleaning before pull request review of misha's changes * working solar pysam example with test amr wind * adding updated results in jupyter notebook * trying to run after git pull of develop * solar model runs successfully, but there is a time issue * correcting irradiance field and removing unnecessary comments * removing unnecessary files * removing test amr wind and solar example, saving for separate PR * adding environment yaml file needed for pysam * updating setup and docs to include pysam and restrict python version * adding missing csv weather file * Minor changes for running the code * Minor cleanup in example. * remove environment.yml * adding solar module unit tests * adding relative path for pytest functionality * correcting ruff formatting and except * more ruff formatting * adding skeleton files for solar pv * adding solar pysam description * removing documentation changes, saving for a separate PR * removing documentation changes, saving for a separate PR * removing documentation changes, saving for a separate PR * adding comments to the tests * fix comments for PV * adding documentation, moving lat long to input file, correcting irradiance output * doc updates, code clean up * docs updates * minor cleanup * ruff formatting and minor cleanup * saving files before switching branches * adding default inputs - not working yet * calc max power for controls feedback optimization * cleaning up code * more code cleanup * refactored to remove nested for loop, but no speed up * fixing github vis * starting setpoints feature, not working yet * working initial pv plant controller * first attempt at feeding in setpoints via external_data_file * replacing amr wind standin with floris standin due to error in amrwind * trying to run without external_data_file but getting zeros and floris is hanging * hercules is hanging * working version of floris and solar example * working but messy version of solar controller * adding the external data file * cleaning up emulator.py * cleaning up emulator.py * working floris stand in and pv plant controller * cleanup * Ruff compatibility. * cleaning up files * fixing errors in tests * fixing standalone example * ruff changes * removing amr_wind standin run script * adding external_data_file solar_power_reference.csv * clarifing controller input in README and fixing dc_power_mw error in test_read_output.ipynb * Handling for when power_setpoints not available. * Remove & on second call so that script terminates as expected. * Updating units for results plots * Make ruff compliant * Make ruff compliant 2 --------- Co-authored-by: Genevieve Starke <[email protected]> Co-authored-by: misi9170 <[email protected]>
* Added example using AMR-Wind with OpenFAST turbine * Added batch script and amr input file * Adding changes for kestrel and diameter definition * Adding documentation for this example --------- Co-authored-by: Joeri Frederik <[email protected]> Co-authored-by: Genevieve Starke <[email protected]> Co-authored-by: Genevieve Starke <[email protected]>
* Allow external power setpoints to be passed in; move handling of None setpoint to control() method. * Add handling for possibility that py_sims not on the input dict. * Add test for control setpoint passed. * AMR wind speed collected in main_dict.
…tpoints` passed (#109) * Switch to zero yaw misalignments when valid power setpoints are passed to avoid FLORIS error. * Raise warning, update test. * More complex handling to check pairwise combos of power_setpoints and yaw_angles. * Remove unneeded local floris install. * Add check to ruff statement * try forcing matplotlib version * try 2.0 * set it back * try 3.7 * Add verbosity to output * Add alternative os * take out verbose tests --------- Co-authored-by: Paul <[email protected]>
…ile (#111) * created dummy example for amr wind dummy + solar * final commit before creating feature branch * preparing inputs for running hercules using ARM solar data * running OK ARM solar data * running hercules using solar data from ARM in OK * minor cleanup * improving how solar pysim grabs data from solar weather file based on simulation time * removing unnecessary files * minor cleanup * more minor cleanup * cleanup * ruff fixes * ruff formatting * adding input solar data * adding verbose flag to turn on and off debugging print statements
* Example code. * Handling for heterogeneous inflows. * Minor documentation updates. * Add tests for heterogeneous inflow feature. * Add exclusion for input data file to gitignore and add file to repo. * Another needed input excluded in gitignore...
Co-authored-by: Starke <[email protected]>
Note that tests are failing for unclear reasons (they pass locally), see discussion n #109 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hercules v1.1 adds various new features and improvements, as described below.
New features
FlorisStandin
by @misi9170 in Enable heterogeneous inflow inFlorisStandin
#112Improvements and bug fixes
yaw_angles
to zero inFlorisStandin
whenpower_setpoints
passed by @misi9170 in [BUGFIX] Forceyaw_angles
to zero inFlorisStandin
whenpower_setpoints
passed #109New Contributors
Full Changelog: v1.0...v1.1