Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OpenFAST v3.3.0 #1291

Merged
merged 344 commits into from
Oct 28, 2022
Merged

OpenFAST v3.3.0 #1291

merged 344 commits into from
Oct 28, 2022

Conversation

rafmudaf
Copy link
Collaborator

@rafmudaf rafmudaf commented Oct 18, 2022

Feature or improvement description
Pull request to merge main into dev and create a tagged release for v3.3.0.

See the milestone and project pages for additional information

Test results, if applicable
See GitHub Actions

Release Checklist

  • Update the documentation version in docs/conf.py
  • Update the versions in docs/source/user/api_change.rst
  • Verify readthedocs builds correctly
  • Create a tag in OpenFAST
  • Create a merge commit in r-test and add a corresponding tag
  • Compile executables for Windows builds
    • FAST_SFunc.mexw64
    • OpenFAST-Simulink_x64.dll
    • openfast_x64.exe
    • DISCON.dll

Proposed Change Log

General

#1183 Fix bugs and issues in the online documentation
#1248 OpenFAST Registry: allow pointers

AeroDyn

#1000 Updates of Unsteady Aero (UAMod=4) and DBEMT (DBEMT_Mod=3) for linearization
#1037 Bug fix: BEMT was disabled for negative inflow
#1042 AD: merge more of TwrInfl and TwrInflArray routines
#1061 Fix AeroDyn WriteOutput linearization (and cleanup some code)
#1078 Enable cavitation calculation and outputs using FVW
#1188 AD15 driver: add visualization option for line meshes in addition to surfaces
#1239 AeroAcoustics: fix BL-thickness for heavily-tripped airfoil

HydroDyn

#999 Fix HD added mass on member end (Close #992)
#1230 HD: increase max length of line read from kinematics files

MoorDyn

#1086 MoorDyn v2 + shared moorings + wave propagation in FAST.Farm

MAP++

#1186 MAP: allow keyword fixed and fix

NWTC Library

#1254 NWTC Library and WriteOutput updates

Build System

#1198 Option to disable variable tracking with GNU compiler
#1228 r-test: Remove -m64 in CMAKE_Fortran_FLAG from r-test

Testing System

#1203 Add parallel branches to GitHub Actions
#1217 Consolidate regression test baseline set
#1222 Improvements to regression test python scripts
#1244 Reg-test scripts modification to help avoid race condition and cleanup of caselist
#1264 GitHub Workflow: adding build-all-debug-single to check type errors

C++ API

#1176 Simulink: add documentation of inputs to FAST_Library.h
#1211 Use dt_out when storing OpenFAST outputs in Python interface
#1227 Seg Fault due to hub model and external inflow

Linearization

#1199 Small improvements for -VTKLin visualization outputs

mattEhall and others added 30 commits October 26, 2021 22:28
- Added bending moment calculations in Line::GetStateDeriv.
- Required functions for transmitting moments to attached Rods
  already were in place.
- Adjusted Rod initialization to support zero-length rods.
- Not yet tested!
- See Implemenation Plan Word doc for any theory questions
- Turned on the normal vector output in getDepthFromBathymetry in MoorDyn_Misc
- Added all relevant parameter variables to the Registry
MoorDyn.f90
- Defining parameters in the beginning of MoorDyn.f90
- - Can add/delete friction parameters as needed later
- Read in the friction parameters through the OptString/OptValue process similar to the other Options parameters
- Change each call to getDepthFromBathymetry to include the normal vector option
- - This is done in the Rod source file as well
MoorDyn_Line.f90
- Define all new friction-related parameters used for the calculations
- New implementation that includes the seabed slope and the difference between transverse and axial friction into the calculation of forces on each line node
- - If the line node is below the water depth, then it has a 3D normal force and a 3D friction force, with axial and transverse components
- - These forces then sum into the "bottom contact" variable "B" to be included in the summation of forces
- I don't know what this file means exactly so I'm pushing it here just in case its needed for anything else later, but can also be uncommitted later
- Needed an option to set FkA and FkT to zero when the velocity was zero, rather than divide by a zero velocity magnitude
- Indented all the friction force calculations to be calculated when a line node is below the seabed, rather than calculating a friction force for all line nodes
- Added indices to the tempVector calculation in getDepthFromBathymetry
- Changed the dc_dx and dc_dy calculations to be a double negative (positive), since the c values of the bathymetry grid are positive depths
- Added filtering in MD driver to smooth position inputs and compute
  smooth positions, velocities, and accelerations to drive MoorDyn with.
  (This does not necessarily make much difference.)
- Fixed a but with line outputs where a line break would occur in a row
  of time series data after the node positions.
Resolved some conflicts combining new MDv2-farm meshes with new
ElastoDyn y3 mesh, and a few others related to MD linearization.
This now compiles without error. Not run yet.

Conflicts were:
- .gitignore
- modules/hydrodyn/src/HydroDyn.f90
- modules/hydrodyn/src/HydroDyn.txt
- modules/hydrodyn/src/HydroDyn_Input.f90
 -modules/hydrodyn/src/HydroDyn_Types.f90
- modules/openfast-library/src/FAST_Lin.f90
- modules/openfast-library/src/FAST_Registry.txt
- modules/openfast-library/src/FAST_Solver.f90
- modules/openfast-library/src/FAST_Subs.f90
- modules/openfast-library/src/FAST_Types.f90
- Updates to bring MoorDyn input file format to hopefully its final form.
- BODY section now has separate inputs for ID number and attachment type.
- Body inputs now support single or 3D (separated by "|") values for
  CG, I, CdA, and Ca.
- LINES section has had columns rearranged to the following order:
  ID  LineType  AttachA  AttachB  UnstrLen  NumSegs  Outputs
- Changed input parsing of depth/bathymetry input option to avoid
  potential bug of it seeing an "E" for exponent and then treating
  the number as an input filename. Handling is now more general.
- Updates have not been tested in all conditions (Bodies, bathymetry...)
MoorDyn:
- Increased interp order of MoorDyn Driver to 1. Using 0 caused large tension discrepancies.
- MoorDyn Driver active tensioning inputs are currently disabled.
- Added support for alternative MoorDyn depth keywords: wtrdpth, depth, and waterdepth
- Added acceleration output channels for rods and points.
- Fixed up wave and current kinematics abilities.

FAST.Farm: Commented out timers and print statements in OpenMP option to avoid some compile problems.
32bf56f (Merge remote-tracking branch 'andy/MDv2+SrvDLin' into MDv2)
- Added/adjusted some error handling for Rods
- Added some error handling for WaterKin input files, where
  previously file reading errors were not producing messages.

HydroDyn/Morison: Added a catch to avoid divide be zeros when
calculating centroid of tapered member segments (if somehow
they have zero radius).
This was set to v142, which is not compatible with Visual Studio C++ 2015 that some people are still using.
@rafmudaf
Copy link
Collaborator Author

I've added the proposed change log to the PR comment, so please let me know if there's anything missing.

Copy link
Collaborator

@jjonkman jjonkman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few minor documentation improvements and this should be ready to merge!

docs/source/user/index.rst Outdated Show resolved Hide resolved
docs/source/user/api_change.rst Outdated Show resolved Hide resolved
docs/source/user/api_change.rst Show resolved Hide resolved
@rafmudaf
Copy link
Collaborator Author

I had incorrectly included these pull requests in the release notes, and they have now been removed:
889, 1240, 1110, 1277, 1293, 1283, 957, 1276, 1275, 1263, 1267, 1266

@andrew-platt
Copy link
Collaborator

I think we might be missing notes on #1248

@rafmudaf
Copy link
Collaborator Author

I think we might be missing notes on #1248

It's at the beginning in the "General" section.

Copy link
Collaborator

@jjonkman jjonkman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for addressing my comments!

@rafmudaf rafmudaf merged commit 5f3fb6e into main Oct 28, 2022
@rafmudaf rafmudaf deleted the rc-v3.3 branch October 28, 2022 18:06
@bjonkman
Copy link
Contributor

bjonkman commented Nov 7, 2022

Windows executables here: https://github.com/bjonkman/openfast/releases/tag/v3.3.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

HydroDyn added mass at end of member may not computed properly