v3.5.0
Overview of v3.5.0
This release includes several new features, bugfixes, and improvements.
New Features
New features include Lidar simulation within the InflowWind module, the ability to simulate a marine hydro-kinetic turbine (MHK) on a floating platform with an downward pointing tower, VTK based visualization with the BeamDyn driver, and a non-uniform point distribution in the OpenFOAM module for improved coupling fidelity to CFD with actuator lines.
Bugfixes
There were several bugfixes in SubDyn, AeroDyn, and HydroDyn. See below for details.
Improvements
AeroDyn received a minor update to the BEM solver to better model cone and prebend.
The QuKi
(quad kind, 128 bit reals) was removed from OpenFAST allowing for building with on architectures that don't support 128 bit reals, and compilers that could not use it.
The build system was completely overhauled to improve general usability. This includes support for the Flang compiler in addition to the GCC and Intel compilers, the ability to install LAPACK and BLAS from source with CMake (USE_LOCAL_STATIC_LAPACK
option), improved support for Ninja on all platforms, the option to directly build FAST_SFunc
from CMake for linking OpenFAST with Simulink, and some minor cleanup for better readability.
Input file changes
The InflowWind input file has a new section for the Lidar simulator. There are also some minor changes to the C++ interface. See the end of the Changelog below for a summary, or see https://openfast.readthedocs.io/en/main/source/user/api_change.html. For sample input files, take a look at the regression tests at https://github.com/OpenFAST/r-test/tree/v3.5.0 in the r-test submodule for OpenFAST.
Changelog
General
Build systems
#1010 Use Cmake OBJECT libraries to create openfastlib and add option to use downloaded reference lapack and blas sources (USE_LOCAL_STATIC_LAPACK
option in CMake) @reos-rcozier
#1427 Improve CMake's FindMKL
to avoid rutime issues and preloading libraries @gbarter
#1506 Fix compilation issue, using Intel OneAPI on Linux (missing -fPIC
flag) @pablo-benito
#1530 Add missing objects from #1010
#1535 [BugFix] CMake build on Windows and Ninja build on all platforms
#1538, #1542 Add support for Flang (Classic) compiler
#1555, #1566 Modernize CMake, remove object libraries, build Simulink MEX
#1561 [BugFix] typo in souce file list for Visual Studio build of AeroDyn driver @bjonkman
Documentation
#1419 update manual regression testing syntax for Windows
#1559 [BugFix] Limit urllib3 version so that readthedocs builds
Solvers
OpenFAST
#1453, #1560 Remove QuKi (quad-precision) from OpenFAST
FAST.Farm
#1504 Increase number of VTK output planes from 9 to 99
TurbSim
#1550 [BugFix] fix index into Z array for text grid files @bjonkman
Module changes
AeroDyn
#1477 Allow tower, hub, nacelle, and rotor below platform for MHK turbines
#1509 Improved coning and prebend modeling in future BEM
#1541 AeroDyn_Inflow minor updates
#1567 fix some divide by zero issues
BeamDyn
#1474 BeamDyn driver visualization, and driver bugfix
#1482 Fix convergence issue at initialization
ElastoDyn
#1477 Allow tower, hub, nacelle, and rotor below platform for MHK turbines.
HydroDyn
#1480 [BugFix] NBody>1 && NBodyMod==1 bug in WAMIT2
InflowWind
#1464 Add LIDAR simulation within InflowWind with control channels passed to controller @Russell9798
#1534 [BugFix] potential error when requesting wind below the ground (also fix build issue with SD syntax) @bjonkman
#1516, #1543, #1549 InflowWind restructure
OpenFOAM
#1493 Allow Non-Uniform Force Point Distribution on Blades @mchurchf
SubDyn
#1413 Implementing directional cosine matrices and section properties for rectangular members
#1526 Remove static improvement method (SIM) from the SubDyn elastic output mesh (y3mesh)
#1531 BugFix - diameter not set properly for rectangular beams
API changes
#1493 C++ interface for OpenFOAM module includes NodeClusterType_c
argument
Input file changes
#1464 New section in InflowWind input file for LIDAR inputs
Full list of changes: https://openfast.readthedocs.io/en/main/source/user/api_change.html
Full input file sets: https://github.com/OpenFAST/r-test/tree/v3.5.0 (example input files from the regression testing)
Precompiled Binaries
The binary files in this release were built with the Visual Studio solution files distributed with OpenFAST (not using cmake), using
- Intel Fortran compiler 2021 (Update 2,
w_oneAPI_2021.2.0.243
) with Microsoft Visual Studio Community 2019 - Microsoft Visual C++ 2019 (C), for build in Matlab
- MATLAB Version: 9.9.0.1857802 (R2020b) Update 7
- FAST.Farm_x64_OMP.exe is built with OpenMP libraries and linked with dynamic libraries.
- You will need this Intel Fortran redistributable package installed to run FAST.Farm_x64_OMP.exe if you do not already have Intel Fortran OneAPI 2021 installed. See the installation instructions here.
- You may also need a redistributable library for Visual Studio installed. See instructions here.
The other OpenFAST executables DO NOT require these redistributable libraries to be installed. Instead, they were built with static libraries.