• Stars
    star
    120
  • Rank 295,983 (Top 6 %)
  • Language
    C
  • License
    Other
  • Created over 6 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Solver for wind farm simulations targeting exascale computational platforms

Nalu-Wind

Website | Documentation | Nightly test dashboard

Nalu-Wind is a generalized, unstructured, massively parallel, incompressible flow solver for wind turbine and wind farm simulations. The codebase is a wind-focused fork of NaluCFD; NaluCFD is developed and maintained by Sandia National Laboratories. Nalu-Wind is being actively developed and maintained by a dedicated, multi-institutional team from National Renewable Energy Laboratory, Sandia National Laboratories, and Univ. of Texas Austin.

Nalu-Wind is developed as an open-source code with the following objectives:

  • an open, well-documented implementation of the state-of-the-art computational models for modeling wind farm flow physics at various fidelities that are backed by a comprehensive verification and validation (V&V) process;

  • be capable of performing the highest-fidelity simulations of flowfields within wind farms; and

  • be able to leverage the high-performance leadership class computating facilities available at DOE national laboratories.

We hope that this community developed model will be used by research laboratories, academia, and industry to develop the next-generation of wind farm technologies. We welcome the wind energy community to use Nalu-Wind in their research. When disseminating technical work that includes Nalu-Wind simulations please reference the following citation:

Sprague, M. A., Ananthan, S., Vijayakumar, G., Robinson, M., "ExaWind: A multifidelity 
modeling and simulation environment for wind energy", NAWEA/WindTech 2019 Conference, 
Amherst, MA, 2019.

Documentation

Documentation is available online at https://nalu-wind.readthedocs.io/ and is split into the following sections:

  • Theory manual: This section provides a detailed overview of the supported equation sets, the discretization and time-integration schemes, turbulence models available, etc.

  • Verification manual: This section documents the results from verification studies of the spatial and temporal schemes available in Nalu-Wind.

  • User manual: The user manual contains detailed instructions on building the code, along with the required third-party libraries (TPLs) and usage.

All documentation is maintained alongside the source code within the git repository and automatically deployed to ReadTheDocs website upon new commits.

Compilation and usage

Nalu-Wind is primarily built upon the packages provided by the Trilinos project, which in turn depends on several third-party libraries (MPI, HDF5, NetCDF, parallel NetCDF), and YAML-CPP. In addition, it has the following optional dependencies: hypre, TIOGA, and OpenFAST. Detailed build instructions are available in the user manual. We recommend using Spack package manager to install Nalu-Wind on your system.

Testing and quality assurance

Nalu-Wind comes with a comprehensive unit test and regression test suite that exercise almost all major components of the code. The master branch is compiled and run through a regression test suite with different compilers (GCC, LLVM/Clang, and Intel) on Linux and MacOS operating systems, against both the master and develop branches of Trilinos. Tests are performed both using flat MPI and hybrid MPI-GPU hardware configurations. The results of the nightly testing are publicly available on CDash dashboard.

Contributing, reporting bugs, and requesting help

To report issues or bugs please create a new issue on GitHub.

We welcome contributions from the community in form of bug fixes, feature enhancements, documentation updates, etc. All contributions are processed through pull-requests on GitHub. Please follow our contributing guidelines when submitting pull-requests.

License

Nalu-Wind is licensed under BSD 3-clause license. Please see the LICENSE included in the source code repository for more details.

Acknowledgements

Nalu-Wind is currently being developed with funding from Department of Energy's (DOE) Office of Science Exascale Computing Project (ECP) and Energy Efficiency and Renewable Energy (EERE) Wind Energy Technology Office (WETO). Please see authors file for a list of contributors to Nalu-Wind.

More Repositories

1

amr-wind

AMReX-based structured wind solver
C++
104
star
2

openturbine

A flexible multibody structural dynamics code for wind turbines
C++
17
star
3

exawind-driver

Driver for coupled AMR-Wind/Nalu-Wind simulations
C++
8
star
4

tioga

Tioga is a library for overset grid assembly on parallel distributed systems
C
7
star
5

wind-utils

Repository for various utilities for Nalu wind-specific simulations.
C++
4
star
6

build-test

Repository involving automation of building and testing nalu-wind.
Shell
3
star
7

hypre-mini-app

HYPRE mini-app for use with nalu-wind linear systems
C++
3
star
8

exawind-builder

Scripts to help building Exawind codes on various systems
Shell
3
star
9

solver-performance

Benchmark problems for tracking solver performance improvements with the ExaWind project. This repo contains the most up-to-date input files and associated solver settings for momentum and pressure-Poisson solvers.
Assembly
2
star
10

meshes

Repository containing meshes used for nalu-wind regression testing.
1
star
11

iddes

IDDES turbulence model development & validation for ExaWind suite
Jupyter Notebook
1
star
12

amr-wind-frontend

GUI for AMR-Wind
Python
1
star
13

exawind-manager

Dev-Ops tooling and configuration management for ExaWind development
Python
1
star
14

wall_stress_model

Jaegle wall stress model development & validation for ExaWind suite
Jupyter Notebook
1
star
15

exawind-cases

Input files for demonstration simulations of the full ExaWind solver
Fortran
1
star
16

wind-energy

Wind-energy simulations using the ExaWind Simulation Environment
Jupyter Notebook
1
star