Changelog (from 4.1.0)
Overview
This release includes several bug fixes and improvements for OpenFAST, GitHub actions, and the C++ interface.
General
CMake build system
#2910 CMake: update location of external lapack (@andrew-platt)
GitHub actions
#2883 Gh actions debug (@deslaughter)
Conda deployment
#2891 Minor fixes for v4.1 for smoother conda deployment (@gbarter)
Python packages
pyOpenFAST
#2907 pyOpenFAST: remove unnecessary files, move examples (@andrew-platt)
Module changes
HydroDyn
#2880 HD bug fix: avoid division by zero with MHstLMod=2 (@luwang00)
ServoDyn
#2908 SrvD: add numbering to StC echo files (@andrew-platt)
Code API changes
CPP interface
#2881 Fix FAST_CreateCheckpoint in c++ interface (@marchdf)
HydroDyn c-binding library interface
#2894 Fix segfault when SeaState OutSwitch=2 and no output channels (@andrew-platt)
Testing
Updated driver_utilities.py
to allow testing to run in current build directory which might not be build
(included in #2894 above)
Input file changes
No input file changes since v4.1.0
Known issues
There are several issues that have not been addressed in this release due to time constraints, but will be addressed in future releases. These include:
- No visualization of rectangular members from HydroDyn or SubDyn through the VTK output options
- Missing and broken features from several c-binding library interfaces:
- the AeroDyn_Inflow_c-binding library interface does not allow for coupling to the tower. This will require an interface update.
- the HydroDyn_c-binding library interface does not currently support vizualization. This will require an interface update.
- the
InitNodePositions
input to HydroDyn_c-binding library interface does not currently work with any non-zerox
ory
coordinates (non-zeroz
is ok) - the MoorDyn_c-binding library interface does not currently support vizualization. This will require an interface update.
- error messages from c-binding library interfaces will get truncated to 1024 characters. A fix is nearly ready, but will have to wait until the next release.
- A
glue-codes/labview/src/WaveTank.f90
file is included in this release, but it is incomplete and untested. This is a placeholder for internal development work that may be released in complete form at a later date. - The GitHub
deploy
action to build Windows executables does not currently catch failed builds. This might be addressed at a later date. We are manually checking these builds for now. - Documentation on the new pyOpenFAST module is incomplete. Partial documentation exists on how to use it in regression testing, but no documentation or examples exist on using it to call c-bindings modules from Python.
- Documentation is incomplete for HydroDyn, SubDyn, and a few other modules.
Precompiled Windows 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.12 (
p_oneAPI_2024.1.0.595
) with Microsoft Visual Studio 2022 - Microsoft Visual C++ 2022 (C), for build in Matlab
- MATLAB Version: 2024.2.999 (R2024b)
- Executables with
_OpenMP
or_OMP
in the name are built with OpenMP libraries and linked with dynamic libraries.- You will need this Intel Fortran redistributable package installed to use these executables if you do not already have Intel Fortran OneAPI 2024 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.