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 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
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
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.
Nalu-Wind is licensed under BSD 3-clause license. Please see the LICENSE included in the source code repository for more details.
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.