welib
Wind energy library, python and matlab tools for wind turbines analyses
Science Score: 49.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 2 DOI reference(s) in README -
○Academic publication links
-
✓Committers with academic emails
1 of 6 committers (16.7%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.2%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
Wind energy library, python and matlab tools for wind turbines analyses
Basic Info
Statistics
- Stars: 91
- Watchers: 4
- Forks: 35
- Open Issues: 1
- Releases: 0
Topics
Metadata Files
README.md
Wind Energy Library - welib
Wind energy library: suite of python and matlab tools for aero-servo-hydro-elasticity (aerodynanmics, controls, hydrodynamics, structure/elasticity) and wind energy.
Installation and testing
Installing the latest release:
bash
pip install --upgrade welib
Installing the latest dev version and running the unittests:
bash
git clone http://github.com/ebranlard/welib -b dev
cd welib
python -m pip install -r requirements.txt
python -m pip install -e .
pytest
Gallery of example scripts
A sample of the figures generated by the examples in this repository are given below.
Additional examples can be found in the examples and tests folders of the different subpackages.
Click on the links to access the corresponding scripts. Click on the figures to enlarge the figures.
| | | | | |
| :-------------------------: | :-------------------------: | :-------------------------: | :-------------------------: | :-------------------------: |
| Airfoils - 3D correction | Airfoils - MGH dynamic stall model | Airfoils - Oye dynamic stall model | Airfoils - Wagner function | Beam - Analytical mode shapes of a beam |
|
|
|
|
|
|
| Beam - Analytical mode shapes different BC | BEM Steady - High thrust correction | BEM Steady - Performance curve | BEM Steady - CP-lambda-pitch | BEM Theory - Ideal rotor planform |
|
|
|
|
|
|
| BEM Unsteady - Prescribed surge motion | Dynamic Inflow (Oye) - induction step | FAST - interpolate radial time series | FAST - Average radial outputs | FEM - mode shapes of tower |
|
|
|
|
|
|
| FEM - mode shapes of a beam | Hydro - Wave kinematics | Hydro - Jonswap spectrum | Hydro - wave generation | Hydro - Morison loads on monopile |
|
|
|
|
|
|
| Plot - 3D blades | IEC Standards - Turbulence classes | IEC Standards - Extreme operating gusts | System - Lorenz attractor | System - 2nd order - forced vibrations |
|
|
|
|
|
|
| System - LTI Bode plot - 2nd order mass spring damper | System - 3D pendulum - motion | System - 2nd order - Responses | Signal - Correlation coefficient | Signal - FFT |
|
|
|
|
|
|
| Vortilib - Elliptical Coordinates | Vortilib - Inviscid Vorticity Patch | Vortilib - Flow about an Ellipsoid | Vortilib - Vortex helix lifting line velocity | Vortilib - Vortex particle regularization |
|
|
|
|
|
|
| Vortilib - 2D vorticity patch discretized with vortex points | Vortilib - Vortex segment regularization | Vortilib - Flow about an axisymmetric vorticity surface | Wind - wind generation at point | WT Theory - Wake Expansion Models |
|
|
|
|
|
|
| WT Theory - Induced velocity vs Wake length | PartDyn - Gravitational and spring interactions | PartDyn - Gravitational interaction - Moon Orbit | | |
|
|
|
| | |
Examples of application
You can have a look at the example gallery below for direct links to examples and associated plots.
Aerodynamic applications (package
airfoils,BEM):- Manipulation of airfoil curves, find slopes, interpolate (see airfoils)
- Run different dynamic stall models (e.g Oye or MHH/HGM model) (see airfoils/DS)
Hydrodynamics applications (package
hydro):Structural dynamics and system dynamics applications (packages
FEM,system,yams):- Setup the equation of motions for a multibody system with flexible members analytically or numerically (see yams)
- Linearize a non-linear system defined by a state and output equation (implicit or explicit) (see system)
- Perform 2d/3d FEM analyses using beam/frame elements (see FEM)
- Craig-Bampton / Guyan reduction of a structure (see FEM)
- Perform time integration of mechanical systems (see system)
Controls applications (packages
ctrl,kalman):- Run a kalman filter to estimate states of a system (see kalman)
Wind energy applications:
- Run steady state BEM simulations (see BEM/steady 1-2
- Run unsteady BEM simulations (see BEM/unsteady 1-2
- Read and write common wind energy file formats (see weio, a clone of weio)
- Generate stochastic wind and waves times series
- Estimate wind speed (see 'welib\ws_estimator`))
- Theory of optimal circulation
- Standards
Other (packages
tools,ode):- Spectral analyses, signal processing, time integration, vector analyses
See also:
- pyDatView: GUI to visualize files (supported by weio) and perform analyses on the data
Libraries
The repository contains a set of small packages, for aerodynamics, structure, control and more:
- airfoils: polar manipulations, dynamic stall models
- beams: analytical results for beams
- BEM: steady and unsteady bem code
- ctrl: control tools
- dyninflow: dynamic inflow models
- fastlib: tools to handle OpenFAST models (run simulations, postprocess, linear model)
- FEM: Finite Element Method tools (beams)
- hydro: hydrodynamic tools
- kalman: kalman filter
- mesh: meshing tools
- ode: tools for time integration of ODE
- standards: some formulae and scripts useful for the IEC standards
- system: tools for dynamic systems (e.g. LTI, state space) and mechanical systems (M,C,K matrices), eigenvalue analysis, time integration
- tools: mathematical tools, signal processing
- weio: library to read and write files used in wind energy, clone of weio
- wt_theory: scripts implementing some wind turbine aerodynamic theory
- ws_estimator: wind speed estimator for wind energy based on tabulated Cp Ct
- yams: multibody analyses
References and how to cite
If you find some of this repository useful and use it in your research, thank you for using the following citations.
- General wind turbine scripts and aerodynamics:
bibtex @book{Branlard:book, author = {E. Branlard}, title = {Wind Turbine Aerodynamics and Vorticity-Based Methods: Fundamentals and Recent Applications}, year = {2017}, publisher= {Springer International Publishing}, doi={10.1007/978-3-319-55164-7}, isbn={ 978-3-319-55163-0} } - Structural dynamics:
bibtex @article{Branlard:2019, title = {{Flexible multibody dynamics using joint coordinates and the Rayleigh-Ritz approximation: The general framework behind and beyond Flex}}, author = {E. Branlard}, journal = {Wind Energy}, volume = {22}, number = {7}, pages = {877-893}, year = {2019}, doi = {10.1002/we.2327} }
Contributing
Any contributions to this project are welcome! If you find this project useful, you can also buy me a coffee (donate a small amount) with the link below:
Owner
- Name: E. Branlard
- Login: ebranlard
- Kind: user
- Repositories: 60
- Profile: https://github.com/ebranlard
GitHub Events
Total
- Issues event: 3
- Watch event: 22
- Issue comment event: 2
- Push event: 29
- Pull request event: 2
- Fork event: 4
- Create event: 1
Last Year
- Issues event: 3
- Watch event: 22
- Issue comment event: 2
- Push event: 29
- Pull request event: 2
- Fork event: 4
- Create event: 1
Committers
Last synced: 6 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Emmanuel Branlard | e****d@n****v | 566 |
| Emmanuel Branlard | e****.@g****m | 20 |
| Branlard | e****r@n****v | 5 |
| SimonHH | 3****H | 1 |
| Jeffrey Harris | c****5@g****m | 1 |
| Veronica Liverud Krathe | v****k@n****o | 1 |
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 3
- Total pull requests: 8
- Average time to close issues: 3 months
- Average time to close pull requests: 11 days
- Total issue authors: 3
- Total pull request authors: 4
- Average comments per issue: 1.33
- Average comments per pull request: 0.5
- Merged pull requests: 8
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 2
- Pull requests: 1
- Average time to close issues: 6 months
- Average time to close pull requests: 5 minutes
- Issue authors: 2
- Pull request authors: 1
- Average comments per issue: 1.5
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- Chiaraginko (1)
- Antoine-HENRY-setec (1)
- verlivkra (1)
Pull Request Authors
- ebranlard (6)
- jcharris (2)
- SimonHH (1)
- verlivkra (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 2
-
Total downloads:
- pypi 101 last-month
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 1
(may contain duplicates) - Total versions: 6
- Total maintainers: 1
proxy.golang.org: github.com/ebranlard/welib
- Documentation: https://pkg.go.dev/github.com/ebranlard/welib#section-documentation
- License: mit
-
Latest release: v3.5.0+incompatible
published 9 months ago
Rankings
pypi.org: welib
Wind Energy Library
- Homepage: http://github.com/ebranlard/welib/
- Documentation: https://welib.readthedocs.io/
- License: MIT
-
Latest release: 3.5.0
published 9 months ago
Rankings
Maintainers (1)
Dependencies
- chardet *
- future *
- matplotlib *
- numpy *
- numpy >=1.16.5
- pandas >=1.0.1
- pandas *
- scipy *
- sympy *
- xlrd *
- chardet *
- future *
- matplotlib *
- numpy *
- pandas *
- scipy *
- sympy *
- xlrd *
- deap *
- future *
- matplotlib *
- numpy *
- pandas *
- screeninfo *
- actions/checkout main composite
- actions/setup-python v2 composite