Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/WISDEM/WEIS
Wind Energy with Integrated Servo-controls Toolset
https://github.com/WISDEM/WEIS
Last synced: 3 months ago
JSON representation
Wind Energy with Integrated Servo-controls Toolset
- Host: GitHub
- URL: https://github.com/WISDEM/WEIS
- Owner: WISDEM
- License: apache-2.0
- Created: 2020-08-21T16:54:28.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2024-06-09T12:08:52.000Z (5 months ago)
- Last Synced: 2024-06-11T14:45:21.119Z (5 months ago)
- Language: Roff
- Homepage: https://weis.readthedocs.io/en/latest/
- Size: 159 MB
- Stars: 49
- Watchers: 15
- Forks: 39
- Open Issues: 22
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- open-sustainable-technology - WEIS - WEIS is a framework that combines multiple tools to enable design optimization of floating offshore wind turbines. (Renewable Energy / Wind Energy)
README
# WEIS
[![Coverage Status](https://coveralls.io/repos/github/WISDEM/WEIS/badge.svg?branch=develop)](https://coveralls.io/github/WISDEM/WEIS?branch=develop)
[![Actions Status](https://github.com/WISDEM/WEIS/workflows/CI_WEIS/badge.svg?branch=develop)](https://github.com/WISDEM/WEIS/actions)
[![Documentation Status](https://readthedocs.org/projects/weis/badge/?version=develop)](https://weis.readthedocs.io/en/develop/?badge=develop)
[![DOI](https://zenodo.org/badge/289320573.svg)](https://zenodo.org/badge/latestdoi/289320573)WEIS, Wind Energy with Integrated Servo-control, performs multifidelity co-design of wind turbines. WEIS is a framework that combines multiple NREL-developed tools to enable design optimization of floating offshore wind turbines.
Author: [NREL WISDEM & OpenFAST & Control Teams](mailto:[email protected])
## Documentation
See local documentation in the `docs`-directory or access the online version at
## Packages
WEIS integrates in a unique workflow four models:
* [WISDEM](https://github.com/WISDEM/WISDEM) is a set of models for assessing overall wind plant cost of energy (COE).
* [OpenFAST](https://github.com/OpenFAST/openfast) is the community model for wind turbine simulation to be developed and used by research laboratories, academia, and industry.
* [TurbSim](https://www.nrel.gov/docs/fy09osti/46198.pdf) is a stochastic, full-field, turbulent-wind simulator.
* [ROSCO](https://github.com/NREL/ROSCO) provides an open, modular and fully adaptable baseline wind turbine controller to the scientific community.In addition, three external libraries are added:
* [pCrunch](https://github.com/NREL/pCrunch) is a collection of tools to ease the process of parsing large amounts of OpenFAST output data and conduct loads analysis.
* [pyOptSparse](https://github.com/mdolab/pyoptsparse) is a framework for formulating and efficiently solving nonlinear constrained optimization problems.The core WEIS modules are:
* _aeroelasticse_ is a wrapper to call [OpenFAST](https://github.com/OpenFAST/openfast)
* _control_ contains the routines calling [ROSCO](https://github.com/NREL/ROSCO) and the routines supporting distributed aerodynamic control devices, such trailing edge flaps
* _gluecode_ contains the scripts glueing together all models and libraries
* _multifidelity_ contains the codes to run multifidelity design optimizations
* _optimization_drivers_ contains various optimization drivers
* _schema_ contains the YAML files and corresponding schemas representing the input files to WEIS## Installation
On laptop and personal computers, installation with [Anaconda](https://www.anaconda.com) is the recommended approach because of the ability to create self-contained environments suitable for testing and analysis. WEIS requires [Anaconda 64-bit](https://www.anaconda.com/distribution/). However, the `conda` command has begun to show its age and we now recommend the one-for-one replacement with the [Miniforge3 distribution](https://github.com/conda-forge/miniforge?tab=readme-ov-file#miniforge3), which is much more lightweight and more easily solves for the package dependencies. Sometimes, using `mamba` in place of `conda` with this distribution speeds up the installation process. WEIS is currently supported on Linux, MAC and Windows Sub-system for Linux (WSL). Installing WEIS on native Windows is not yet supported, but planned in 2024.
The installation instructions below use the environment name, "weis-env," but any name is acceptable. For those working behind company firewalls, you may have to change the conda authentication with `conda config --set ssl_verify no`. Proxy servers can also be set with `conda config --set proxy_servers.http http://id:pw@address:port` and `conda config --set proxy_servers.https https://id:pw@address:port`.
0. On the DOE HPC system eagle, make sure to start from a clean setup and type
module purge
module load conda1. Setup and activate the Anaconda environment from a prompt (WSL terminal on Windows or Terminal.app on Mac)
conda config --add channels conda-forge
conda install git
git clone https://github.com/WISDEM/WEIS.git
cd WEIS
git checkout branch_name # (Only if you want to switch branches, say "develop")
conda env create --name weis-env -f environment.yml
conda activate weis-env # (if this does not work, try source activate weis-env)2. Add in final packages and install the software
conda install -y petsc4py mpi4py pyoptsparse # (Mac / Linux only)
pip install -e .3. Instructions specific for DOE HPC system Eagle. Before executing the setup script, do:
module load comp-intel intel-mpi mkl
module unload gcc
pip install --no-deps -e . -v**NOTE:** To use WEIS again after installation is complete, you will always need to activate the conda environment first with `conda activate weis-env` (or `source activate weis-env`). On Eagle, make sure to reload the necessary modules
For Windows users, we recommend installing `git` and the `m264` packages in separate environments as some of the libraries appear to conflict such that WISDEM cannot be successfully built from source. The `git` package is best installed in the `base` environment.
## Developer guide
If you plan to contribute code to WEIS, please first consult the [developer guide](https://weis.readthedocs.io/en/latest/how_to_contribute_code.html).
## Feedback
For software issues please use .