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.4.0 #1386

Merged
merged 171 commits into from
Jan 11, 2023
Merged

OpenFAST v3.4.0 #1386

merged 171 commits into from
Jan 11, 2023

Conversation

rafmudaf
Copy link
Collaborator

@rafmudaf rafmudaf commented Dec 19, 2022

Feature or improvement description
Pull request to merge main into dev and create a tagged release for v3.4.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

#889 Add a super-controller library target to CMake
#1303 Small reorganization and clean up FAST.Farm r-test input files, upload of artifact
#1311 NWTC_IO: nullifying DLL (on restart) if not present when packing
#1318 Allow Registry to generate extrap/interp routines for types without module nickname
#1327 add version info to c-binding libraries
#1332 Documentation fixes
#1357 CI: exclude bokeh 3.0.[0-3] -- broken plots
#1376 Add regression_tests to the ALL target.

Documentation

#1267 OLAF: documentation: updated guidelines and using nFWPanels instead of WakeLength

Visualization

#1319 Cleanup OpenFAST VTK output for HydroDyn
#1321 Add safety checks to VTK output
#1330 VTKLin: being more forgiving with number of modes
#1333 NWTC_Lib: Adding Yaml and VTK to library (moved from SD and AD)

FAST.Farm

#931 Implementation of the curled-wake model in FAST.Farm
#1263 FAST.Farm WriteOutput: fix for Windows Intel OMP build
#1304 API changes for future curl wake implementation, WD restructuring (Cq, OMP, skew filt)
#1305 FF: Cartesian grid for AWAE and WD outputs
#1310 FF: additional OpenMP parallelizations in FAST.Farm
#1328 FF: update of guidelines for Curled wake dr and DT_low

OpenFAST

#1275 Linear Trim Solution Improvements (Linearization)

AeroDyn

#957 Calculate buoyancy for an MHK turbine
#1110 New AeroDynInflow module with c-bindings interface
#1276 Bug Fix: OLAF: particles are NaN when vortex segments have zero length
#1277 Reactivating rotor furling and tailfin aerodynamics (ElastoDyn also)
#1283 Add new projection method and BEM methods
#1293 Minor error handling and code cleanup (OLAF)
#1317 Fix for Visual Studio builds with ADI
#1347 AeroDyn/UnsteadyAero_Driver: Fix for bug #1346
#1355 OLAF: Adding free near wake panels
#1356 AeroDyn/UnsteadyAero_Driver: Fix for bug #1346
#1369 UA: adding UA_Driver outputs, fix separation function for UAMod=6, and adding r-tests

BeamDyn

#1335 BeamDyn: output summary file in yaml format

InflowWind

#1240 Improvements to the InflowWind disk averaged velocity calculations
#1266 Temporarily removing InflowWind parallelization

MoorDyn

#848 MoorDyn v2 C-bindings interface
#1371 MoorDyn bending bugfix and message updates for v2

OpenFOAM

#1324 CFD coupling to use AD15 mesh only
#1365 OpFM: [bugfix] test for warning condition was broken
#1372 [BugFix] the DEBUG_OPENFOAM preprocessor directive was never updated for multiple AD15 rotors

TurbSim

#1361 TurbSim: User-defined time series updates

hkross and others added 30 commits December 23, 2020 15:50
…ancy and resolve merge conflict in AeroDyn_IO
nrmendoza and others added 3 commits December 13, 2022 11:21
MoorDyn_C_Binding.f90
* Memory storage for all MoorDyn related parameters, inputs, outputs, etc that are normally stored by the OpenFAST glue code
* Mesh mappings from externally passed coordinates to MD meshes
* Passing of input file as a string option
* VersionInfo displayed at Init (includes git info)
* Visual Studio project for interface
* Interface routines
   * MD_C_Init interface routine to MD_Init -- also sets initial meshes and memory storage in the library
   * MD_C_CalcOutput interface to MD_CalcOutput -- also converts points passed in to the mesh pass to MD
   * MD_C_UpdateStates interface to MD_UpdateStates -- also converts points passed in to the mesh pass to MD
   * MD_C_End interface to MD_End -- also clears memory the library uses.

Python library interface
* Example interface from Python to the library

MoorDyn updates
* driver: bug with unallocated var, simplify file reading (errors on GCC with the REWIND setup)
* add version info to driver output file
* modify output format to follow standard OF output file (6 header lines)
*change text from 'alpha' designation
* increase precision of driver output
* driver: incorrect motions passed at T=0
* fix vs-build project for MD -- missing build combinations

Testing:
* add module regression tests
* python interface library test (matches standalone MD driver case)
* add test cases to github actions

Co-authored-by: andrew-platt <andy.platt@nrel.gov>
Co-authored-by: Matt Hall <5151457+mattEhall@users.noreply.github.com>
* Add `regression_tests` to the ALL target.

Fixes issue #1325

* Add `regression_test_module_drivers` to the ALL target.
@andrew-platt
Copy link
Collaborator

andrew-platt commented Dec 19, 2022

A few PR's possibly missing from the above list (dev progressed after rc-3.3.0, but before 3.3.0 release):

#889
#957
#1110
#1240
#1263
#1266
#1267
#1275
#1276
#1277
#1283
#1293
#1303
#1304

Edit (12/21/2022): added these PR links above.

andrew-platt and others added 6 commits December 20, 2022 09:35
GitHub actions was failing as np.float is evidently not supported in latest numpy on GH.
As of GCC 4.5 and Ifort ~10, the maximum allowed unit number is 2**31-1.
We are setting this to 16384, which is the limit on Eagle.

However, the OS may impose a limit:
- macos -- 256 (change with ulimit -n)
- linux -- 1024 typically (change with ulimit -n -- may require elevated permissions on clusters)
- windows -- probably 255 (`_setmaxstdio` to change)
@andrew-platt andrew-platt merged commit e8ec53f into main Jan 11, 2023
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.

7 participants