Coder Social home page Coder Social logo

dongjukim-79 / weis Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wisdem/weis

0.0 0.0 0.0 162.36 MB

Wind Energy with Integrated Servo-controls Toolset

Home Page: https://weis.readthedocs.io/en/latest/

License: Apache License 2.0

Shell 0.01% Scheme 0.20% Python 16.81% Roff 82.89% F* 0.10%

weis's Introduction

WEIS

Coverage Status Actions Status Documentation Status DOI

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

Documentation

See local documentation in the docs-directory or access the online version at https://weis.readthedocs.io/en/latest/

Packages

WEIS integrates in a unique workflow four models:

  • WISDEM is a set of models for assessing overall wind plant cost of energy (COE).
  • OpenFAST is the community model for wind turbine simulation to be developed and used by research laboratories, academia, and industry.
  • TurbSim is a stochastic, full-field, turbulent-wind simulator.
  • ROSCO provides an open, modular and fully adaptable baseline wind turbine controller to the scientific community.

In addition, three external libraries are added:

  • pCrunch is a collection of tools to ease the process of parsing large amounts of OpenFAST output data and conduct loads analysis.
  • 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
  • control contains the routines calling 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 is the recommended approach because of the ability to create self-contained environments suitable for testing and analysis. WEIS requires Anaconda 64-bit. However, the conda command has begun to show its age and we now recommend the one-for-one replacement with the Miniforge3 distribution, 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.

  1. On the DOE HPC system eagle, make sure to start from a clean setup and type

    module purge
    module load conda        
    
  2. 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 env create --name weis-env -f https://raw.githubusercontent.com/WISDEM/WEIS/develop/environment.yml
    conda activate weis-env                          # (if this does not work, try source activate weis-env)
    conda install -y petsc4py mpi4py                 # (Mac / Linux only)   
    
  3. Clone the repository and install the software

     git clone https://github.com/WISDEM/WEIS.git
     cd WEIS
     git checkout branch_name                         # (Only if you want to switch branches, say "develop")
     pip install --no-deps -e . -v
    
  4. 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

Developer guide

If you plan to contribute code to WEIS, please first consult the developer guide.

Feedback

For software issues please use https://github.com/WISDEM/WEIS/issues.

weis's People

Contributors

nikhar-abbas avatar dzalkind avatar gbarter avatar johnjasa avatar ptrbortolotti avatar rafmudaf avatar jakenunemaker avatar paulf81 avatar ewquon avatar dakotaramos avatar mayankchetan avatar yonghoonlee avatar athulkrishnasundarrajan avatar cfrontin avatar evan-gaertner avatar ebranlard avatar spmulders avatar akey7 avatar davidheff avatar deepfriedderp avatar jennirinker avatar pe-meunier avatar seager1989 avatar amoratoc avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.