-
Notifications
You must be signed in to change notification settings - Fork 64
Updating for v3.4.0 #506
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
Merged
Updating for v3.4.0 #506
Conversation
This file contains hidden or 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
* 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
* 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
…y 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 <[email protected]>
* 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 <[email protected]>
- Added different ways to define site boundaries; square, circle, etc - Expanded docs and tests accordingly --------- Co-authored-by: bayc <[email protected]>
* update deprecated methods * H to h * update RELEASE.md * update wave resource docstring * fix docstring spacing * wave resource doc * fix doc build
* 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 <[email protected]>
* 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 <[email protected]>
* 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 <[email protected]>
…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 <[email protected]> Co-authored-by: bayc <[email protected]>
* 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 <[email protected]>
* 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
* 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 <[email protected]> * reduce logic Co-authored-by: John Jasa <[email protected]> * check identity with is not None * update path handling * fixing docs * fix description * clean up readthedoc warnings * fix typo --------- Co-authored-by: John Jasa <[email protected]>
* 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 <[email protected]>
* add tidal dispatch * add tidal battery example --------- Co-authored-by: John Jasa <[email protected]>
…ions (#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 <[email protected]>
* 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 <[email protected]>
* Version bump for release * Update RELEASE.md
* 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
* Made turbine rating check +/- 10% * Loosened strictness of wind turbine rating comparison and added tests
…d.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 README.md to not specify `coin-or-cbc` version. --------- Co-authored-by: John Jasa <[email protected]>
* 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 <[email protected]>
* 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 <[email protected]> * updated doc string in site_info.py Co-authored-by: John Jasa <[email protected]> * updated doc string in site_info.py Co-authored-by: John Jasa <[email protected]> * 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 <[email protected]>
* 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 <[email protected]> Co-authored-by: John Jasa <[email protected]>
* WIP: updating for pysam 7 * Updates for pysam 7 * Updated release.md * Updated test_hybrid based on tidal changes in pysam
* 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 <[email protected]> * reduce logic Co-authored-by: John Jasa <[email protected]> * check identity with is not None * update path handling * fixing docs * fix description * clean up readthedoc warnings * fix typo --------- Co-authored-by: John Jasa <[email protected]> * 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 <[email protected]> * Add Tidal Dispatch (#448) * add tidal dispatch * add tidal battery example --------- Co-authored-by: John Jasa <[email protected]> * minor progress * test_battery_ldes.py tests are passing * remove init import and debug statements * include duration --------- Co-authored-by: kbrunik <[email protected]> Co-authored-by: John Jasa <[email protected]> * Feature/ldes framework (#450) * include duration * bug fix --------- Co-authored-by: kbrunik <[email protected]> Co-authored-by: John Jasa <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * 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 <[email protected]> Co-authored-by: John Jasa <[email protected]> * 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 <[email protected]> Co-authored-by: John Jasa <[email protected]> Co-authored-by: bayc <[email protected]> Co-authored-by: Genevieve Starke <[email protected]>
* 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 <[email protected]>
* Bugfix for flicker mismatch * Updated test_flicker_mismatch test
* update ldes example * change fin file * note on model limitation --------- Co-authored-by: John Jasa <[email protected]>
adding WETO stack blurb to readme (#485)
* Bumped python versions * python 3.14 isn't out yet * Updated AEP comparison to use approx
#491) * move overwrite_fin_values to hopp from h2integrate * update pysam version to 7.0.0
* updated workflow for user-provided turbine file for pysam * updated handling user input wind model parameters if using pysam * added tests for user provided wind turbine parameters * updated RELEASE.md * Apply suggestions from code review --------- Co-authored-by: John Jasa <[email protected]>
* remove tidal_resource since no longer required for SSC sim
…defunct conda build (#500) * Removing timezonefinder * Consolidate utilities; rename MHKWaveConfig * Pinned timezonefinder * Removed defunct conda build * Fixed import
* Change API URL * Updated release notes --------- Co-authored-by: John Jasa <[email protected]>
* 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 <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * 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 <[email protected]> Co-authored-by: bayc <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * reduce logic Co-authored-by: John Jasa <[email protected]> * check identity with is not None * update path handling * fixing docs * fix description * clean up readthedoc warnings * fix typo --------- Co-authored-by: John Jasa <[email protected]> * 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 <[email protected]> * Add Tidal Dispatch (#448) * add tidal dispatch * add tidal battery example --------- Co-authored-by: John Jasa <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * updated doc string in site_info.py Co-authored-by: John Jasa <[email protected]> * updated doc string in site_info.py Co-authored-by: John Jasa <[email protected]> * 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 <[email protected]> * 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 <[email protected]> Co-authored-by: John Jasa <[email protected]> * 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 <[email protected]> * reduce logic Co-authored-by: John Jasa <[email protected]> * check identity with is not None * update path handling * fixing docs * fix description * clean up readthedoc warnings * fix typo --------- Co-authored-by: John Jasa <[email protected]> * 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 <[email protected]> * Add Tidal Dispatch (#448) * add tidal dispatch * add tidal battery example --------- Co-authored-by: John Jasa <[email protected]> * minor progress * test_battery_ldes.py tests are passing * remove init import and debug statements * include duration --------- Co-authored-by: kbrunik <[email protected]> Co-authored-by: John Jasa <[email protected]> * Feature/ldes framework (#450) * include duration * bug fix --------- Co-authored-by: kbrunik <[email protected]> Co-authored-by: John Jasa <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * 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 <[email protected]> Co-authored-by: John Jasa <[email protected]> * 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 <[email protected]> Co-authored-by: John Jasa <[email protected]> Co-authored-by: bayc <[email protected]> Co-authored-by: Genevieve Starke <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * Bumped version and changelog (#482) --------- Co-authored-by: elenya-grant <[email protected]> Co-authored-by: genevievestarke <[email protected]> Co-authored-by: bayc <[email protected]> Co-authored-by: kbrunik <[email protected]> Co-authored-by: Jared Thomas <[email protected]> Co-authored-by: Dakota Sky Ramos <[email protected]> Co-authored-by: Genevieve Starke <[email protected]> * Fix typos (#487) * Update README.md (#489) * Bumping version for release --------- Co-authored-by: elenya-grant <[email protected]> Co-authored-by: genevievestarke <[email protected]> Co-authored-by: bayc <[email protected]> Co-authored-by: kbrunik <[email protected]> Co-authored-by: Jared Thomas <[email protected]> Co-authored-by: Dakota Sky Ramos <[email protected]> Co-authored-by: Genevieve Starke <[email protected]> Co-authored-by: omahs <[email protected]> Co-authored-by: Olexandr88 <[email protected]>
|
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
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.
Updating for v3.4.0
PR Checklist
RELEASE.mdhas been updated to describe the changes made in this PRdocs/files are up-to-date, or added when necessaryRelated issues
Impacted areas of the software
path/to/file.extensionmethod1: What and why something was changed in one sentence or less.Additional supporting information
Test results, if applicable