The Wind-Plant Integrated System Design and Engineering Model (WISDEM®) is a set of models for assessing overall wind plant cost of energy (COE). The models use wind turbine and plant cost and energy production as well as financial models to estimate COE and other wind plant system attributes. WISDEM® is accessed through Python, is built using OpenMDAO, and uses several sub-models that are also implemented within OpenMDAO. These sub-models can be used independently but they are required to use the overall WISDEM® turbine design capability. Please install all of the pre-requisites prior to installing WISDEM® by following the directions below. For additional information about the NWTC effort in systems engineering that supports WISDEM® development, please visit the official NREL systems engineering for wind energy website.
Author: NREL WISDEM Team
See local documentation in the
docs-directory or access the online version at https://wisdem.readthedocs.io/en/master/
WISDEM® is a family of modules. The core modules are:
The core modules draw upon some utility packages, which are typically compiled code with python wrappers:
Installation with Anaconda is the recommended approach because of the ability to create self-contained environments suitable for testing and analysis. WISDEM® requires Anaconda 64-bit. However, the
conda command has begun to show its age and we now recommend the one-for-one replacement with
mamba via the Miniforge distribution, which is much more lightweight and more easily solves for the WISDEM package dependencies.
To use WISDEM's modules as a library for incorporation into other scripts or tools, WISDEM is available via
mamba install wisdem or
pip install wisdem, assuming that you have already setup your python environment. Note that on Windows platforms, we suggest using
These instructions are for interaction with WISDEM directly, the use of its examples, and the direct inspection of its source code.
The installation instructions below use the environment name, "wisdem-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. To setup an environment based on a different Github branch of WISDEM, simply substitute the branch name for
master in the setup line.
Setup and activate the Anaconda environment from a prompt (Anaconda3 Power Shell on Windows or Terminal.app on Mac)
mamba config --add channels conda-forge mamba env create --name wisdem-env -f https://raw.githubusercontent.com/WISDEM/WISDEM/master/environment.yml python=3.10 mamba activate wisdem-env
In order to directly use the examples in the repository and peek at the code when necessary, we recommend all users install WISDEM in developer / editable mode using the instructions here. If you really just want to use WISDEM as a library and lean on the documentation, you can always do
conda install wisdem and be done. Note the differences between Windows and Mac/Linux build systems. For Linux, we recommend using the native compilers (for example, gcc and gfortran in the default GNU suite).
mamba install -y petsc4py mpi4py # (Mac / Linux only) mamba install -y gfortran # (Mac only without Homebrew or Macports compilers) mamba install -y m2w64-toolchain libpython # (Windows only) git clone https://github.com/WISDEM/WISDEM.git cd WISDEM python setup.py develop # Currently more reliable than: pip install -e
NOTE: To use WISDEM again after installation is complete, you will always need to activate the conda environment first with
conda activate wisdem-env
Each package has its own set of unit tests. These can be run in batch with the
test_all.py script located in the top level
For software issues please use https://github.com/WISDEM/WISDEM/issues. For functionality and theory related questions and comments please use the NWTC forum for Systems Engineering Software Questions.