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. It is built in OpenMDAO and uses several sub-models that are also designed as OpenMDAO plugin-ins. These sub-models can be used independently but they are required to use the overall WISDEM® capability. Please install all of the pre-requisites prior to installing WISDEM®. 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 http://wisdem.github.io/WISDEM/
WISDEM® is a family of modules. The core modules are:
- AeroelasticSE provides multi-fidelity capability for rotor analysis by calling [OpenFAST]https://github.com/OpenFAST/openfast
- CommonSE includes several libraries shared among modules
- DrivetrainSE sizes the drivetrain and generator systems (formerly DriveSE and GeneratorSE)
- FloatingSE works with the floating platforms
- OffshoreBOS sizes the balance of systems for offshore plants
- Plant_FinanceSE runs the financial analysis of a wind plant
- RotorSE is a tool for rotor design
- TowerSE is a tool for tower (and monopile) design
- Turbine_CostsSE is a turbine cost model
- NREL CSM is the old cost-and-scaling model
- WISDEM provides the interface between models
The core modules draw upon some utility packages, which are typically compiled code with python wrappers:
- Airfoil Preppy is a tool to handle airfoil polar data
- CCBlade is the BEM module of WISDEM
- pBEAM provides a basic beam model
- pyFrame3DD brings libraries to handle various coordinate transformations
- pyMAP provides a python interface to MAP++, a quasi-static mooring line model
- pyoptsparse provides some additional optimization algorithms to OpenMDAO
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.
The installation instructions below use the environment name, "wisdem-env," but any name is acceptable.
-
Setup and activate the Anaconda environment from a prompt (Anaconda3 Power Shell on Windows or Terminal.app on Mac)
conda config --add channels conda-forge conda create -y --name wisdem-env python=3.7 conda activate wisdem-env
Note that older versions of anaconda on MacOS and Linux may require
source activate wisdem-env
-
FOR USERS (NOT DEVELOPERS): Install WISDEM and its dependencies
conda install -y wisdem pip install simpy marmot-agents
-
To open up the WISDEM tutorials, navigate to a directory where you want to place WISDEM and all of its files.
conda install -y git jupyter git clone https://github.com/WISDEM/WISDEM.git cd WISDEM/tutorial-notebooks jupyter notebook
-
FOR DEVELOPERS (NOT USERS): Use conda to install the build dependencies, but then install WISDEM from source. Not the differences between Windows and Mac/Linux build systems
conda install -y wisdem git jupyter conda remove --force wisdem conda install compilers # (Mac / Linux only) conda install m2w64-toolchain libpython # (Windows only) pip install simpy marmot-agents git clone https://github.com/WISDEM/WISDEM.git cd WISDEM python setup.py develop
-
OPTIONAL: Install pyOptSparse, an package that provides a handful of additional optimization solvers and has OpenMDAO support:
git clone https://github.com/evan-gaertner/pyoptsparse.git cd pyoptsparse python setup.py install cd ..
Each package has its own set of unit tests, some of which are more comprehensive than others.
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.