WecOptTool
Allows users to perform wave energy converter device design optimization studies with constrained optimal control.
https://github.com/sandialabs/WecOptTool
Category: Renewable Energy
Sub Category: Hydro Energy
Keywords
scr-2490 snl-applications
Keywords from Contributors
marine-renewable-energy boundary-element-method hydrodynamics potential-flow water-wave wave-energy mhkit
Last synced: about 2 hours ago
JSON representation
Repository metadata
WEC Design Optimization Toolbox
- Host: GitHub
- URL: https://github.com/sandialabs/WecOptTool
- Owner: sandialabs
- License: gpl-3.0
- Created: 2021-06-08T17:44:46.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2025-04-18T19:27:37.000Z (9 days ago)
- Last Synced: 2025-04-21T10:04:15.001Z (6 days ago)
- Topics: scr-2490, snl-applications
- Language: Python
- Homepage: https://sandialabs.github.io/WecOptTool/
- Size: 104 MB
- Stars: 17
- Watchers: 5
- Forks: 24
- Open Issues: 41
- Releases: 20
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
- Security: .github/SECURITY.md
README.md
WecOptTool
The Wave Energy Converter Design Optimization Toolbox (WecOptTool) allows users to perform wave energy converter (WEC) device design optimization studies with constrained optimal control.
NOTE: If you are looking for the WecOptTool code used in previous published work (MATLAB version) please see WecOptTool-MATLAB.
Project Information
Refer to WecOptTool documentation for more information, including project overview, tutorials, theory, and API documentation.
Getting started
If you are brand new to Python and/or want detailed installation instructions, click here.
WecOptTool requires Python >= 3.8. Python 3.10 & 3.11 are supported.
It is strongly recommended you create a dedicated virtual environment (e.g., using conda
, mamba
, venv
, etc.) before installing WecOptTool.
From your dedicated environment, you can install WecOptTool via conda
, pip
, or mamba
:
Option 1 - using Conda
:
conda install -c conda-forge wecopttool
Option 2 - using pip
(requires Fortran compilers on your system):
pip install wecopttool
Option 3 - using Mamba
:
mamba install wecopttool
Geometry module and tutorials
To use our geometry examples, including for running the tutorials, you will need to install some additional dependencies.
For the tutorials you will also need to install jupyter
.
pip install wecopttool[geometry] jupyter
or on a Mac (Zsh
shell)
pip install wecopttool\[geometry] jupyter
Tutorials
The tutorials can be found in the examples
directory and are written as Jupyter Notebooks.
To run the tutorials, first download the notebook files and then, from the directory containing the notebooks, run jupyter notebook
.
Using git
to obtain the notebooks this can be done by running
git clone https://github.com/sandialabs/WecOptTool.git
cd WecOptTool/examples
jupyter notebook
Getting help
To report bugs, use WecOptTool's issues page.
For general discussion, use WecOptTool's discussion page
Contributing
If you are interested in contributing to WecOptTool, see our contribution guidelines.
Owner metadata
- Name: Sandia National Laboratories
- Login: sandialabs
- Email:
- Kind: organization
- Description: Exceptional service in the national interest.
- Website: https://software.sandia.gov
- Location: United States
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/4993680?v=4
- Repositories: 123
- Last ynced at: 2023-03-13T13:51:28.478Z
- Profile URL: https://github.com/sandialabs
GitHub Events
Total
- Issues event: 41
- Watch event: 3
- Delete event: 1
- Issue comment event: 93
- Push event: 45
- Pull request review comment event: 9
- Pull request review event: 19
- Pull request event: 60
- Fork event: 3
- Create event: 1
Last Year
- Issues event: 41
- Watch event: 3
- Delete event: 1
- Issue comment event: 93
- Push event: 45
- Pull request review comment event: 9
- Pull request review event: 19
- Pull request event: 60
- Fork event: 3
- Create event: 1
Committers metadata
Last synced: 5 days ago
Total Commits: 267
Total Committers: 8
Avg Commits per committer: 33.375
Development Distribution Score (DDS): 0.483
Commits in past year: 8
Committers in past year: 4
Avg Commits per committer in past year: 2.0
Development Distribution Score (DDS) in past year: 0.625
Name | Commits | |
---|---|---|
Carlos A. Michelén Ströfer | c****l@s****v | 138 |
Michael Devin | m****n@o****m | 68 |
Ryan Coe | r****e@s****v | 36 |
jtgrasb | 8****b | 10 |
dtgaebe | 8****e | 9 |
ssolson | s****n | 4 |
akeow | 9****w | 1 |
Mark Bruggemann | m****k@b****k | 1 |
Committer domains:
- sandia.gov: 2
- bruggemann.co.uk: 1
Issue and Pull Request metadata
Last synced: 1 day ago
Total issues: 137
Total pull requests: 140
Average time to close issues: 4 months
Average time to close pull requests: 26 days
Total issue authors: 18
Total pull request authors: 10
Average comments per issue: 2.88
Average comments per pull request: 1.61
Merged pull request: 116
Bot issues: 0
Bot pull requests: 0
Past year issues: 34
Past year pull requests: 62
Past year average time to close issues: 3 months
Past year average time to close pull requests: 17 days
Past year issue authors: 10
Past year pull request authors: 6
Past year average comments per issue: 1.62
Past year average comments per pull request: 1.58
Past year merged pull request: 49
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- michaelcdevin (33)
- cmichelenstrofer (29)
- ryancoe (24)
- dtgaebe (12)
- rebeccamccabe (9)
- jtgrasb (8)
- degoeden (3)
- rgcoe (3)
- riasatmorshed (3)
- akeow (3)
- smallduan (2)
- En-Lo (2)
- NicolasBarbarin (1)
- jwills801 (1)
- BinoBK (1)
Top Pull Request Authors
- michaelcdevin (49)
- jtgrasb (40)
- cmichelenstrofer (19)
- ryancoe (16)
- dtgaebe (8)
- rgcoe (4)
- kevmoor (1)
- akeow (1)
- RageTechDev (1)
- jorgeypcb (1)
Top Issue Labels
- enhancement (31)
- documentation (29)
- bug (24)
- upstream (15)
- CI (14)
- clean-up (10)
- good first issue (5)
- testing (5)
- question (3)
- help wanted (1)
Top Pull Request Labels
- documentation (22)
- clean-up (15)
- bug (8)
- enhancement (8)
- CI (8)
- upstream (5)
- testing (1)
Package metadata
- Total packages: 2
-
Total downloads:
- pypi: 657 last-month
- Total dependent packages: 0 (may contain duplicates)
- Total dependent repositories: 1 (may contain duplicates)
- Total versions: 27
- Total maintainers: 1
pypi.org: wecopttool
WEC Design Optimization Toolbox
- Homepage:
- Documentation: https://sandialabs.github.io/WecOptTool/
- Licenses: GNU General Public License v3 (GPLv3)
- Latest release: 3.0.2 (published 9 months ago)
- Last Synced: 2025-04-26T12:33:49.236Z (1 day ago)
- Versions: 26
- Dependent Packages: 0
- Dependent Repositories: 1
- Downloads: 657 Last month
-
Rankings:
- Dependent packages count: 9.973%
- Average: 19.155%
- Dependent repos count: 21.754%
- Downloads: 25.739%
- Maintainers (1)
conda-forge.org: wecopttool
The Wave Energy Converter Design Optimization Toolbox (WecOptTool) allows users to perform wave energy converter (WEC) device design optimization studies with constrained optimal control.
- Homepage: https://github.com/sandialabs/WecOptTool
- Licenses: GPL-3.0-only
- Latest release: 2.0.1a1 (published over 2 years ago)
- Last Synced: 2025-04-02T02:56:47.692Z (26 days ago)
- Versions: 1
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent repos count: 34.025%
- Forks count: 40.923%
- Average: 44.899%
- Dependent packages count: 51.175%
- Stargazers count: 53.471%
Dependencies
- actions/checkout v3 composite
- github/codeql-action/analyze v2 composite
- github/codeql-action/autobuild v2 composite
- github/codeql-action/init v2 composite
- actions/cache v3 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- conda-incubator/setup-miniconda v2 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- peaceiris/actions-gh-pages v3 composite
- pypa/gh-action-pypi-publish release/v1 composite
- autograd *
- capytaine *
- joblib *
- numpy >=1.20
- scipy *
- wavespectra >=3.13
- xarray *
Score: 12.630608086728762