Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1014 commits
Select commit Hold shift + click to select a range
e0f807f
Merge branch 'dev-tc' into f/WvCrnt
luwang00 Aug 18, 2025
2431608
GH actions: fix mistake in deploy batch file`
andrew-platt Aug 18, 2025
7aa871c
Update openfast_io with the new WvCrntMod input for SeaState and upda…
luwang00 Aug 18, 2025
f188437
Quick fix for gcc build
luwang00 Aug 18, 2025
e3ddb62
GH actions: change message in build .bat for readability
andrew-platt Aug 18, 2025
55e5182
GH workflow deploy: split exec testing into script
andrew-platt Aug 19, 2025
7e74a3e
GH workflow deploy: fix typo in testing .bat file
andrew-platt Aug 20, 2025
d69517b
Allow upto MaxStC outputs
mayankchetan Aug 21, 2025
4aa9c39
Merge pull request #2970 from mayankchetan/fix/stc-output-limit
andrew-platt Aug 21, 2025
d31e050
Add in missing passing of SS pointer to MD during FAST init
RyanDavies19 Aug 21, 2025
f7fe65e
Merge pull request #2964 from andrew-platt/b/dev-tc_VSbuild
andrew-platt Aug 22, 2025
01f3d55
Merge pull request #2972 from RyanDavies19/tc-bugfix
deslaughter Aug 22, 2025
4a97b3b
Merge branch 'dev-tc' into f/WvCrnt
luwang00 Aug 22, 2025
93c7d43
ED: Start implementing blade-pitch DoF
luwang00 Aug 24, 2025
cf1d746
SeaState: Quick bug fix to the wave dispersion relation
luwang00 Aug 25, 2025
bdb6b57
Used incorrect variable in FAST_GetOP for CalcSteady
deslaughter Jul 1, 2025
ea4d483
Used incorrect variable in FAST_GetOP for CalcSteady
deslaughter Jul 2, 2025
ec2cc3c
Add ability to exclude module variables from linearization
deslaughter Jul 3, 2025
054e13c
Update r-test pointer
deslaughter Aug 26, 2025
7b6b6e1
SeaState: Added a warning message for the iterative dispersion relati…
luwang00 Aug 26, 2025
1a528e8
SeaState: Correct subroutine name for error messages
luwang00 Aug 27, 2025
8ec131c
SeaState: simplify the checks for current-related inputs
luwang00 Aug 27, 2025
dd12e1b
SeaState: Continue implementing improved wave-current modeling
luwang00 Aug 27, 2025
9447467
Update r-test
luwang00 Aug 29, 2025
e483e08
Update SeaState input documentation for the new WvCrntMod setting
luwang00 Aug 29, 2025
2b222bf
Update api_change.rst with the new WvCrntMod input in SeaState
luwang00 Aug 29, 2025
821b36a
Docs: Add the implementation plan for improved wave-current modeling …
luwang00 Sep 2, 2025
f09d82e
Merge pull request #2978 from luwang00/f/WvCrnt
andrew-platt Sep 3, 2025
782461d
ED: cleanup
luwang00 Sep 4, 2025
3160fa6
ED: Correct and streamline blade pitch DoF implementation
luwang00 Sep 5, 2025
6e11250
Add complete strain calculation in BeamDyn
deslaughter Sep 8, 2025
de4dd34
Simplify reaction force calculation in BD
deslaughter Jul 30, 2025
5282693
Multiple prescribed force timeseries files for BStC
andrew-platt Jul 8, 2025
a8f6cf0
Fix linearization variable indexing for beamdyn states
deslaughter Sep 8, 2025
0496a11
Don't include HubMotion in BD_InitVars
deslaughter Sep 8, 2025
731d8ac
Add some more useful quat functions in ModVar
deslaughter Sep 8, 2025
9f654c8
Fix #2553: enable VTK Mode Shape generation from different directory …
deslaughter Sep 8, 2025
0a99295
ED: Continue implementing blade-pitch DoF
luwang00 Sep 8, 2025
e58bf0e
ED: Constrained blade pitch angles to [-pi,pi) for tight coupling
luwang00 Sep 9, 2025
9473a4e
Merge remote-tracking branch 'andy/f/Individ_Blade_StC_Force-example'…
deslaughter Sep 10, 2025
586b9ba
Fix linearization visualization when using CalcSteady
deslaughter Sep 11, 2025
2154368
Update r-test pointer
deslaughter Sep 11, 2025
f57892a
Merge remote-tracking branch 'upstream/dev' into dev-tc-fixes
deslaughter Sep 11, 2025
e7759e3
update r-test pointer
deslaughter Sep 11, 2025
0df34c0
Update r-test pointer
deslaughter Sep 11, 2025
9879372
Update visual studio projects, they need to be tested
deslaughter Sep 11, 2025
d236e4d
ED: Update blade root angular velocity and acceleration to account fo…
luwang00 Sep 11, 2025
7c5ca1d
ED: Separate pitch bearing and blade pitch inertias in the input file…
luwang00 Sep 11, 2025
7c23d90
Update r-test pointer
deslaughter Sep 11, 2025
39e0a4f
Merge remote-tracking branch 'upstream/dev-tc' into dev-tc-fixes
deslaughter Sep 11, 2025
d5b7803
Update r-test pointer
deslaughter Sep 11, 2025
65f8e83
ED: Reenable direct blade pitch control as in previous versions of Op…
luwang00 Sep 12, 2025
8cb44b4
ED: Shortened the blade pitch and pitch bearing inertia input names
luwang00 Sep 16, 2025
9cbfcd9
Merge branch 'dev-tc' into f/BldPitch
luwang00 Sep 16, 2025
dd6de0f
Update openfast_io and r-test pointer for ED blade pitch DOF
luwang00 Sep 16, 2025
c26180f
Merge pull request #2990 from deslaughter/dev-tc-fixes
deslaughter Sep 19, 2025
18da468
SrvD: Implemented a simple spring-damper blade-pitch actuator model
luwang00 Oct 10, 2025
9f05f51
SrvD: Fix pitch neutral position
luwang00 Oct 10, 2025
3949690
Update r-test pointer
luwang00 Oct 10, 2025
4258556
Update openfast_io with new SrvD inputs for blade pitch actuation and…
luwang00 Oct 11, 2025
0d2d37a
Update r-test pointer
luwang00 Oct 11, 2025
e1234fd
Add multi-rotor test cases and fix a couple of loose ends for lineari…
deslaughter Oct 22, 2025
1e6b578
Update r-test pointer
deslaughter Oct 22, 2025
afe0442
Update reg_tests/CTestList.cmake
deslaughter Oct 23, 2025
cef4cc7
Set lower bound of AllOuts to 0 in SeaState to fix indexing bug for i…
deslaughter Oct 28, 2025
bf32fae
Add test 5MW_MRSemi_DLL_WSt_WavesIrr
deslaughter Oct 28, 2025
66d0aec
Added blade pitch rate commands for DLL controllers
luwang00 Oct 29, 2025
1305761
SD: Implement additional blade pitch rate command outputs and blade p…
luwang00 Oct 29, 2025
bc14a48
Split out multirotor tests since they take much longer
deslaughter Oct 29, 2025
237e4fa
ED: Add output channels for blade pitch rates and accelerations
luwang00 Oct 29, 2025
e8d6c6b
Update r-test pointer
deslaughter Oct 29, 2025
b51fe5e
Update r-test pointer
deslaughter Oct 30, 2025
cd1f190
docs: update ElastoDyn and ServoDyn input documentation with the new …
luwang00 Oct 31, 2025
0d97994
docs: fix typo
luwang00 Oct 31, 2025
009f4e4
Update r-test pointer
luwang00 Nov 2, 2025
b78e5fb
Remove use of Fortran 2008 implicit list in ModVar, this was causing …
deslaughter Nov 3, 2025
d9ca264
Update r-test pointer again
luwang00 Nov 3, 2025
964c6fa
Update reg_tests/CTestList.cmake
deslaughter Nov 5, 2025
51c9b6c
Merge pull request #3041 from deslaughter/rm1_mhk_mr
deslaughter Nov 6, 2025
b701549
Add KdTree implementation
deslaughter Nov 7, 2025
259aed4
Use K-d Tree in AWAE for high-res grid
deslaughter Nov 7, 2025
da7327b
Revert "Use K-d Tree in AWAE for high-res grid"
deslaughter Nov 7, 2025
8ae60e0
Reapply "Use K-d Tree in AWAE for high-res grid"
deslaughter Nov 7, 2025
322ff4d
Revert "Reapply "Use K-d Tree in AWAE for high-res grid""
deslaughter Nov 7, 2025
db5e864
Reapply "Reapply "Use K-d Tree in AWAE for high-res grid""
deslaughter Nov 7, 2025
442a839
Tests passing for high-res grid calc output with KdTree
deslaughter Nov 10, 2025
bb7af88
Add calculation of maximum wake point separation and use for search r…
deslaughter Nov 10, 2025
b33ee70
Remove ErrTxt from SmllRotTrans calls in ED SetCoordSy as it caused a…
deslaughter Nov 11, 2025
796483c
Fix some bad
deslaughter Nov 11, 2025
46f61cd
Reorganize grid structures in AWAE
deslaughter Nov 12, 2025
520b353
Added chunking and kd-tree filtering to low-res grid. need to enable …
deslaughter Nov 13, 2025
c94555e
Complete low-res grid k-d tree implementation with chunking
deslaughter Nov 14, 2025
2c85bbe
Increase target chunk size
deslaughter Nov 14, 2025
9b4fb95
Exit from interp_planes_2_point as soon as bounding planes are found
deslaughter Nov 14, 2025
4de93f3
Add OMP to wake interaction loops in AWAE
deslaughter Nov 14, 2025
0158864
Move Vdist_low update inside if statement in LowResGridCalcOutput
deslaughter Nov 14, 2025
b5665bc
FAST.Farm: Changed the handling of rotor wakes
luwang00 Nov 15, 2025
9abbae5
Merged in deslaughter/fastfarm_kdtree and removed NumPlanes from AWAE…
luwang00 Nov 16, 2025
19238a3
Update r-test pointer
luwang00 Nov 17, 2025
6e2db65
Use C++ to read VTK files in AWAE
deslaughter Nov 17, 2025
55cefc1
Making progress
deslaughter Nov 17, 2025
0ced93f
Fixed c++ vtk reading
deslaughter Nov 17, 2025
22503f8
Add fast_float library
deslaughter Nov 18, 2025
5ca04cf
handle whitespace in VTK files
deslaughter Nov 18, 2025
b0ec505
Read entire vtk in AWAE
deslaughter Nov 18, 2025
e1661f2
Append c_null_char directly when creating FileName in ReadHighResWind…
deslaughter Nov 18, 2025
bec9b7b
Force ReadHighResWindFile and ReadLowResWindFile to only take contigu…
deslaughter Nov 18, 2025
0da22a7
Move fast_float to nwtc-library and convert to single header file bas…
deslaughter Nov 18, 2025
ebd593e
Fix warning in CMakeList.txt from fast_float library. Let fast_float …
deslaughter Nov 18, 2025
c28aaba
Adjust OMP directive aroudn ReadHighResWindFile
deslaughter Nov 18, 2025
8a9f707
Update modules/awae/src/vtk.cpp
deslaughter Nov 18, 2025
a8dd2ee
Update modules/awae/src/AWAE.f90
deslaughter Nov 18, 2025
4910756
Remove unused InflowWind DDTs from AWAE and do some cleanup
deslaughter Nov 19, 2025
a326b65
Merge pull request #3066 from deslaughter/fastfarm_kdtree
deslaughter Nov 19, 2025
52beb5a
Merge branch 'dev-tc' into fastfarm_cpp_vtk
deslaughter Nov 19, 2025
b37b534
Merge pull request #3074 from deslaughter/fastfarm_cpp_vtk
andrew-platt Nov 20, 2025
9f6e419
Merge remote-tracking branch 'OpenFAST/dev-tc' into f/Wake_merge_desl…
andrew-platt Nov 20, 2025
d95334f
Merge pull request #3071 from luwang00/f/Wake_merge_deslaughter
andrew-platt Nov 20, 2025
2d461d8
Update r-test pointer
deslaughter Nov 21, 2025
d240ea1
Change the target of BeamDyn blade-root load mapping from the HubPtLo…
luwang00 Nov 21, 2025
ad48b0f
Merge pull request #3079 from deslaughter/add-missing-mr-files
andrew-platt Nov 24, 2025
9e6f22d
Update r-test pointer
luwang00 Nov 26, 2025
10f0c46
ED: Correct the LinNames of blade-pitch DOF
luwang00 Dec 2, 2025
9cccc81
Merge branch 'dev-tc' into f/BldPitch
luwang00 Dec 10, 2025
7df491f
Update r-test pointer
luwang00 Dec 10, 2025
8e497f2
Update r-test pointer
luwang00 Dec 10, 2025
93d7424
Update r-test pointer
luwang00 Dec 10, 2025
5495559
Update r-test pointer to dev-tc after merging in f/BldPitch
deslaughter Dec 10, 2025
94dace8
Update r-test pointer
deslaughter Dec 10, 2025
e5c4aa0
Merge pull request #3039 from luwang00/f/BldPitch
deslaughter Dec 10, 2025
ba72e6d
Start removing pitch actuator implementation from BeamDyn
luwang00 Dec 12, 2025
fe7aa89
Remove some unused local variables in BeamDyn
luwang00 Dec 12, 2025
18a1193
Remove u%HubMotion from BeamDyn
luwang00 Dec 12, 2025
a1f9aa6
Update OutListParameters.xlsx to remove pitch actuator output channel…
luwang00 Dec 12, 2025
6b5eee3
Remove m%u2 from BeamDyn
luwang00 Dec 12, 2025
b98ecb0
Remove unused blade PitchAxis input from ElastoDyn
luwang00 Dec 12, 2025
2ddee1e
Remove ElastoDyn blade PitchAxis from openfast_io
luwang00 Dec 12, 2025
da4502a
Merge pull request #3105 from luwang00/f/BldPitch
deslaughter Dec 16, 2025
69d34c2
SP: update of documentation
ebranlard Dec 18, 2025
f2d72e1
SP: adding acknowledgements
ebranlard Dec 18, 2025
808981f
Merge branch 'dev-tc' into f/srcPanels
ebranlard Dec 19, 2025
5dabe9b
Update of r-test for test case
ebranlard Dec 19, 2025
66acdf2
Update r-test pointer
deslaughter Dec 19, 2025
45796c8
Merge pull request #2945 from ebranlard/f/srcPanels
deslaughter Dec 19, 2025
f2ab506
Collect K-d tree calculations into one function
deslaughter Dec 22, 2025
a2809d9
Call AWAE_UpdateStates directly before AWAE_CalcOutput. Change Update…
deslaughter Dec 22, 2025
9a757d5
Update r-test pointer
deslaughter Dec 22, 2025
ade2235
Use only step number, n, in AWAE_UpdateStates instead of time.
deslaughter Dec 23, 2025
6d3ba82
Merge pull request #3112 from deslaughter/mv_ff_kdtree
deslaughter Dec 23, 2025
39aa76c
Add regression tests for IceDyn and IceFloe modules
deslaughter Dec 23, 2025
367e3a7
Update modules/icefloe/src/interfaces/FAST/IceFloe.f90
deslaughter Dec 23, 2025
99ddcaa
Merge pull request #3113 from deslaughter/add_ice_tests
deslaughter Dec 23, 2025
81bf64d
ED: Added an error check for incorrect number of columns in the ED bl…
luwang00 Dec 23, 2025
7e1ee84
Update api_change.rst and BeamDyn input_files.rst
luwang00 Dec 23, 2025
8547c41
Merge pull request #3114 from luwang00/b/EDInput
andrew-platt Dec 23, 2025
4066f16
Add loose coupling option, add fixed jacobian update tight-coupling o…
deslaughter Dec 23, 2025
39e62ef
Fix parameter after rename
deslaughter Dec 24, 2025
a19ced5
Update modules/openfast-library/src/FAST_Funcs.f90
deslaughter Dec 24, 2025
6643a4e
Apply suggestions from code review
deslaughter Dec 24, 2025
0577052
Update SD NPropSets to NPropSetsCyl and NPropSetsRec to match HydroDy…
luwang00 Dec 24, 2025
12d6303
Update SD input file documentation
luwang00 Dec 24, 2025
82dc830
Merge pull request #3117 from luwang00/SD_NPropSet
andrew-platt Dec 26, 2025
52c4877
Forgot that modules can appear in multiple solver categories so neede…
deslaughter Dec 29, 2025
47e364a
Merge remote-tracking branch 'remotes/upstream/dev-tc' into mr_revers…
deslaughter Dec 29, 2025
e5cb010
Add ModCoupling field to openfast_io and change MirrorRotor to bool
deslaughter Dec 29, 2025
2002cf7
Merge pull request #3115 from deslaughter/mr_reverse_rotor
deslaughter Dec 29, 2025
73173d0
Remove unused error handling from DCM_logmap
deslaughter Dec 30, 2025
92441db
Add optional flag to Morison_CalcOutput to skip expensive hydrostatic…
deslaughter Dec 30, 2025
dade1a0
Modified SetErrStat to overwrite contents of ErrMess if ErrStat is Er…
deslaughter Dec 30, 2025
228d47e
Remove some instances of ErrMsg = ""
deslaughter Dec 30, 2025
3721499
Restructure getWaterKin in attempt to be more performant
deslaughter Dec 30, 2025
682224b
Fix bad refactored logic in getWaterKin
deslaughter Dec 31, 2025
dea020b
Minor optimization in FVW ui_seg (~6%)
deslaughter Dec 31, 2025
eddeb74
Remove recursion from Morison RefineElementHstLds_Cyl
deslaughter Dec 31, 2025
9715b1e
Minor performance improvements in OLAF
deslaughter Dec 31, 2025
a50f2cf
Apply suggestions from code review
deslaughter Dec 31, 2025
d14cdf4
Add stack size check in RefineElementHstLds_Cyl
deslaughter Dec 31, 2025
71e6d48
Merge remote-tracking branch 'origin/f/SoilDyn' into SoilDynTC
deslaughter Dec 31, 2025
33cc876
Add SoilDyn tab to OutListParameters.xlsx
deslaughter Jan 2, 2026
6406c32
Integrate SoilDyn into new glue code
deslaughter Jan 2, 2026
cc851ba
Update r-test pointer
deslaughter Jan 2, 2026
ce9f3d6
Add SoilDyn to openfast_io
deslaughter Jan 5, 2026
885c2f5
Add SoilDyn to simulink library
deslaughter Jan 5, 2026
f0ea605
Add CompSoil to api_change.rst
deslaughter Jan 5, 2026
e7c9b50
Update r-test pointer
deslaughter Jan 5, 2026
11b4878
Remove recursion from RefineElementHstLds_Rec
deslaughter Jan 5, 2026
f5e4547
Update ED theory manual with information on the new blade pitch DoF
luwang00 Jan 8, 2026
4dbad59
Update ED theory manual on blade pitch dynamics based on comments
luwang00 Jan 8, 2026
89b4960
Merge pull request #3132 from luwang00/d/BldPitch
deslaughter Jan 14, 2026
fd6b7d8
Update visual studio projects for dev-tc
deslaughter Jan 23, 2026
384afa5
Merge remote-tracking branch 'origin/dev-tc-perf' into dev-tc_vs_updates
deslaughter Jan 23, 2026
8c78132
Disable MATLAB in GH actions Windows deploy temporarily
deslaughter Jan 23, 2026
508a798
Fix missing include path in AWAE-C for release builds
deslaughter Jan 23, 2026
723b5a7
temporarily disable test on windows build
deslaughter Jan 23, 2026
e0b3abf
Merge remote-tracking branch 'upstream/dev' into dev_to_dev-tc
deslaughter Jan 26, 2026
8c1b3c8
Merge pull request #3125 from deslaughter/dev-tc-perf
andrew-platt Jan 26, 2026
5acb613
Merge pull request #3126 from deslaughter/SoilDynTC
deslaughter Jan 26, 2026
93376b6
Merge remote-tracking branch 'upstream/dev-tc' into dev_to_dev-tc
deslaughter Jan 26, 2026
8ce743d
Rework visual studio projects
deslaughter Jan 27, 2026
f075331
Merge branch 'dev-tc_vs_updates' of github.com:deslaughter/openfast i…
deslaughter Jan 27, 2026
08768c9
Tidy up Windows build GH action
deslaughter Jan 27, 2026
f2b7c88
Fix Simulink build from VS
deslaughter Jan 27, 2026
ff0b515
Add controllers to VS solution
deslaughter Jan 27, 2026
5a1f0d3
Copy BAR_Baseline to aerodyn module test via CMake. Update r-test poi…
deslaughter Jan 27, 2026
40b7346
Remove OpenFAST from Simulink build in VS projects. Fix dependency on…
deslaughter Jan 27, 2026
482527f
Add SoilDyn tests to r-test
deslaughter Jan 27, 2026
2bb1a15
Update create_FAST_SFunc.m, use intel-fortran-essentials in deploy.ym…
deslaughter Jan 27, 2026
79acc30
Update r-test pointer
deslaughter Jan 27, 2026
1f21188
Fix renaming in build_windows_executables.bat
deslaughter Jan 27, 2026
b7874d2
Convert windows build script to powershell
deslaughter Jan 27, 2026
82cd9f4
Try again
deslaughter Jan 27, 2026
69a8eea
Almost have simulink build working with VS
deslaughter Jan 27, 2026
0589eac
Windows deploy will work this time
deslaughter Jan 27, 2026
3526912
Update r-test pointer
deslaughter Jan 28, 2026
117c402
Revert "Windows deploy will work this time"
deslaughter Jan 28, 2026
fae9a99
Remove bad line from morison
deslaughter Jan 28, 2026
6d757b6
Update r-test pointer
deslaughter Jan 28, 2026
e02e3ed
Update r-test pointer
deslaughter Jan 28, 2026
acb4628
Merge remote-tracking branch 'upstream/dev-tc' into dev-tc_vs_updates
deslaughter Jan 28, 2026
d7d92d2
update r-test pointer
deslaughter Jan 28, 2026
21f6995
Add SoilDyn to VS projects, fix LinDyn project, Update VS solution
deslaughter Jan 28, 2026
2628e9d
Merge remote-tracking branch 'origin/dev-tc_vs_updates' into dev-tc_v…
deslaughter Jan 28, 2026
740dcfe
Update r-test pointer
deslaughter Jan 28, 2026
e802f81
update r-test pointer
deslaughter Jan 28, 2026
d209d1d
Don't build soildyn driver when doing matlab build
deslaughter Jan 28, 2026
28bf160
Update r-test pointer
deslaughter Jan 29, 2026
a04ed74
Update r-test pointer
deslaughter Jan 29, 2026
2a8c5a0
update r-test pointer
deslaughter Jan 29, 2026
1224f46
Update r-test pointer
deslaughter Feb 4, 2026
0f1355b
Update r-test pointer
deslaughter Feb 4, 2026
b18933c
Merge remote-tracking branch 'upstream/dev-tc' into dev-tc_vs_updates
deslaughter Feb 4, 2026
72d272a
Merge pull request #3169 from deslaughter/dev-tc_vs_updates
deslaughter Feb 4, 2026
33c85a8
awae: correction to wake out of bounds logic post merge
andrew-platt Feb 5, 2026
352d8cb
Preemptively copy WAT_MannBoxDB directory to test directory
deslaughter Feb 5, 2026
0054ef1
Update r-test pointer
deslaughter Feb 5, 2026
992b2f0
Merge remote-tracking branch 'upstream/dev-tc' into dev_to_dev-tc
deslaughter Feb 5, 2026
0193d95
Update r-test pointer
deslaughter Feb 5, 2026
6a62b4b
Update r-test pointer
deslaughter Feb 5, 2026
cd3de6e
Update r-test pointer
deslaughter Feb 5, 2026
a229d53
Disable some SeaState + MHK current checks, need to review
deslaughter Feb 5, 2026
cafff17
Update NWTC-Library.vfproj for GridInterp module
deslaughter Feb 6, 2026
ddc7c00
Fix OMP directive in TSsubs.f90 and disable building some drivers in …
deslaughter Feb 6, 2026
1f37451
Remove unused SoilDyn project from vs-build
deslaughter Feb 6, 2026
9a5855e
Merge pull request #3191 from deslaughter/dev_to_dev-tc
deslaughter Feb 6, 2026
3489071
Merge remote-tracking branch 'upstream/dev' into dev_to_dev-tc2
deslaughter Feb 6, 2026
95e184b
Update r-test pointer
deslaughter Feb 6, 2026
1c605d5
move copy of seastate_wr_kin1 reg test to the CMakeLists file so it d…
deslaughter Feb 6, 2026
604167e
Merge pull request #3193 from deslaughter/dev_to_dev-tc2
deslaughter Feb 6, 2026
fc2e21c
cmake: remove option ORCA_DLL_LOAD
andrew-platt Feb 10, 2026
629eda7
cmake: remove option ORCA_DLL_LOAD
andrew-platt Feb 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
104 changes: 69 additions & 35 deletions .github/scripts/build_windows_executables.bat
Original file line number Diff line number Diff line change
Expand Up @@ -7,38 +7,72 @@ for /f "tokens=* usebackq" %%f in (`dir /b "C:\Program Files (x86)\Intel\oneAPI\
@REM since building the Visual Studio projects modifies files
powershell -command "(Get-Content -Path '.\vs-build\CreateGitVersion.bat') -replace '--dirty', '' | Set-Content -Path '.\vs-build\CreateGitVersion.bat'"

echo on

@REM Build all solutions
devenv vs-build/AeroDisk/AeroDisk_Driver.sln /Build "Release|x64"
devenv vs-build/AeroDyn/AeroDyn_Driver.sln /Build "Release|x64"
devenv vs-build/AeroDyn/AeroDyn_Driver.sln /Build "Release_OpenMP|x64"
devenv vs-build/AeroDyn_Inflow_c_binding/AeroDyn_Inflow_c_binding.sln /Build "Release|x64"
devenv vs-build/AeroDyn_Inflow_c_binding/AeroDyn_Inflow_c_binding.sln /Build "Release_OpenMP|x64"
devenv vs-build/BeamDyn/BeamDyn-w-registry.sln /Build "Release|x64"
devenv vs-build/Discon/Discon.sln /Build "Release|x64"
devenv vs-build/FAST-farm/FAST-Farm.sln /Build "Release|x64"
devenv vs-build/FAST-farm/FAST-Farm.sln /Build "Release_OpenMP|x64"
devenv vs-build/HydroDyn/HydroDynDriver.sln /Build "Release|x64"
devenv vs-build/HydroDyn_c_binding/HydroDyn_c_binding.sln /Build "Release|x64"
devenv vs-build/InflowWind_c_binding/InflowWind_c_binding.sln /Build "Release|x64"
devenv vs-build/InflowWind/InflowWind_driver.sln /Build "Release|x64"
devenv vs-build/InflowWind/InflowWind_driver.sln /Build "Release_OpenMP|x64"
devenv vs-build/MoorDyn/MoorDynDriver.sln /Build "Release|x64"
devenv vs-build/MoorDyn_c_binding/MoorDyn_c_binding.sln /Build "Release|x64"
devenv vs-build/FAST/FAST.sln /Build "Release|x64"
devenv vs-build/SeaState/SeaStateDriver.sln /Build "Release|x64"
devenv vs-build/SeaState_c_binding/SeaState_c_binding.sln /Build "Release|x64"
devenv vs-build/SimpleElastoDyn/SimpleElastoDyn_Driver.sln /Build "Release|x64"
devenv vs-build/SubDyn/SubDyn.sln /Build "Release|x64"
devenv vs-build/TurbSim/TurbSim.vfproj /Build "Release|x64"
devenv vs-build/UnsteadyAero/UnsteadyAero.sln /Build "Release|x64"

@REM Build MATLAB solution last
rd /s /q .\build\lib
devenv vs-build/FAST/FAST.sln /Build "Release_Matlab|x64"

@REM Copy controllers to bin directory
xcopy .\reg_tests\r-test\glue-codes\openfast\5MW_Baseline\ServoData\*.dll .\build\bin\ /y

exit /b %ERRORLEVEL%
setlocal enabledelayedexpansion

:: Initialize a variable to store failed solutions
set "FailedSolutions="
set "OverallErrorLevel=0"


echo "Build all projects (Release|64)"
devenv vs-build/OpenFAST.sln /Build "Release|x64"
if %ERRORLEVEL% NEQ 0 (
set "FailedSolutions=!FailedSolutions!Release "
set "OverallErrorLevel=1"
echo Build of OpenFAST.sln Release failed!
)


echo "Build all OpenMP projects (OpenMP_Release|64)"
devenv vs-build/OpenFAST.sln /Build "OpenMP_Release|x64"
if %ERRORLEVEL% NEQ 0 (
set "FailedSolutions=!FailedSolutions!OpenMP_Release "
set "OverallErrorLevel=1"
echo Build of OpenFAST.sln OpenMP_Release failed!
)


echo "Build OpenFAST-Simulink shared library (Matlab_Release|x64)"
devenv vs-build/OpenFAST.sln /Build "Matlab_Release|x64"
if %ERRORLEVEL% NEQ 0 (
set "FailedSolutions=!FailedSolutions!Matlab_Release "
set "OverallErrorLevel=1"
echo Build of OpenFAST.sln Matlab_Release failed!
)


echo "Build Summary:"
if defined FailedSolutions (
echo The following solutions failed to build:
echo %FailedSolutions%
) else (
echo All solutions built successfully.
)

@echo off
setlocal enabledelayedexpansion

cd /d build\bin || exit /b 1

for %%F in (*_Release*) do (
set "name=%%~nxF"
set "newname=!name:_Release=!"
if not "!name!"=="!newname!" (
ren "%%F" "!newname!"
)
)
for %%F in (*_Matlab*) do (
set "name=%%~nxF"
set "newname=!name:_Matlab=!"
if not "!name!"=="!newname!" (
ren "%%F" "!newname!"
)
)

endlocal

echo "List executables in build\bin"
dir build\bin

:: Set the final error level based on the overall build status
exit /b %OverallErrorLevel%
66 changes: 66 additions & 0 deletions .github/scripts/test_windows_executables.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
@call "C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat" %VS_VER%

for /f "tokens=* usebackq" %%f in (`dir /b "C:\Program Files (x86)\Intel\oneAPI\compiler\" ^| findstr /V latest ^| sort`) do @set "LATEST_VERSION=%%f"
@call "C:\Program Files (x86)\Intel\oneAPI\compiler\%LATEST_VERSION%\env\vars.bat"

echo off
setlocal enabledelayedexpansion

:: Initialize a variable to store failed solutions
set "FailedExecs="
set "OverallErrorLevel=0"

echo "Directory listing of executables"
dir build\bin
echo.

:: test OpenFAST
echo on
build\bin\OpenFAST.exe -h
echo off
if %ERRORLEVEL% NEQ 0 (
set "FailedExecs=!FailedExecs!OpenFAST "
set "OverallErrorLevel=1"
echo OpenFAST failed to run!
)
echo on


:: test TurbSim
echo on
build\bin\TurbSim.exe -h
echo off
if %ERRORLEVEL% NEQ 0 (
set "FailedExecs=!FailedExecs!TurbSim "
set "OverallErrorLevel=1"
echo TurbSim failed to run!
)
echo on


:: test FAST.Farm
echo on
build\bin\FAST.Farm.exe -h
echo off
if %ERRORLEVEL% NEQ 0 (
set "FailedExecs=!FailedExecs!FAST.Farm "
set "OverallErrorLevel=1"
echo FAST.Farm failed to run!
)
echo on



echo.
echo Test Summary:
echo off
if defined FailedExecs (
echo The following executables failed to run:
echo %FailedExecs%
) else (
echo All executables ran successfully.
)
echo on

:: Set the final error level based on the overall build status
exit /b %OverallErrorLevel%
102 changes: 73 additions & 29 deletions .github/workflows/automated-dev-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,13 @@ on:
# paths-ignore:

env:
FORTRAN_COMPILER: gfortran-12
CXX_COMPILER: g++-12
C_COMPILER: gcc-12
GCOV_EXE: gcov-12
FORTRAN_COMPILER: gfortran-14
CXX_COMPILER: g++-14
C_COMPILER: gcc-14
GCOV_EXE: gcov-14
CMAKE_BUILD_PARALLEL_LEVEL: 8
CTEST_PARALLEL_LEVEL: 4
OMP_NUM_THREADS: 1

jobs:

Expand All @@ -33,7 +34,7 @@ jobs:
# Tests compiling in debug mode with single precision.
# This workspace is not used by any other subtests, it checks type errors of the type ReKi/R8Ki
# Debug speeds up the build.
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -66,9 +67,8 @@ jobs:
run: |
cmake --build . --target all


build-all-release:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -132,7 +132,7 @@ jobs:
# Tests compiling in debug mode.
# Also compiles the Registry and generates new types files.
# Debug more speeds up the build.
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -209,7 +209,7 @@ jobs:


build-test-OF-simulink:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -256,7 +256,7 @@ jobs:
#-----------------------------------------------------------------------------

rtest-module-drivers:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
needs: build-all-release
steps:
- name: Restore workspace from artifact
Expand Down Expand Up @@ -319,10 +319,8 @@ jobs:


rtest-interfaces:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
needs: build-all-release
env:
OMP_NUM_THREADS: 1
steps:
- name: Restore workspace from artifact
uses: actions/download-artifact@v4
Expand Down Expand Up @@ -378,10 +376,8 @@ jobs:


rtest-OF:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
needs: build-all-release
env:
OMP_NUM_THREADS: 1
steps:
- name: Restore workspace from artifact
uses: actions/download-artifact@v4
Expand Down Expand Up @@ -436,7 +432,7 @@ jobs:


rtest-OF-offshore:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
needs: build-all-release
steps:
- name: Restore workspace from artifact
Expand Down Expand Up @@ -475,7 +471,7 @@ jobs:
run: |
ctest -VV \
-L openfast -L offshore \
-LE "cpp|linear|python|fastlib"
-LE "cpp|linear|python|fastlib|multirotor"
- name: Failing test artifacts
uses: actions/upload-artifact@v4
if: failure()
Expand All @@ -490,12 +486,64 @@ jobs:
!${{github.workspace}}/build/reg_tests/glue-codes/openfast/UAE_VI
!${{github.workspace}}/build/reg_tests/glue-codes/openfast/WP_Baseline


rtest-OF-multirotor:
runs-on: ubuntu-24.04
needs: build-all-release
steps:
- name: Restore workspace from artifact
uses: actions/download-artifact@v4
with:
name: build-all-release
- name: Untar workspace
run: |
tar -xf workspace.tar -C${{github.workspace}}
rm workspace.tar
- name: List files in workspace
run: ls
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install dependencies
working-directory: ${{github.workspace}}
run: |
pip install -r requirements.txt
pip install glue-codes/python/. # Installs the interface library
sudo apt-get update -y
sudo apt-get install -y libopenblas-dev libopenblas-openmp-dev
sudo apt-get install -y libhdf5-dev libnetcdf-dev libopenmpi-dev libyaml-cpp-dev
- name: Configure Tests
working-directory: ${{github.workspace}}/build
run: |
cmake \
-DPython_ROOT_DIR:PATH=${{env.pythonLocation}} \
-DBUILD_TESTING:BOOL=ON \
-DCTEST_PLOT_ERRORS:BOOL=ON \
${GITHUB_WORKSPACE}
cmake --build . --target regression_test_controllers
- name: Run 5MW tests
working-directory: ${{github.workspace}}/build
run: |
ctest -VV \
-L openfast -L multirotor \
-LE "cpp|linear|python|fastlib"
- name: Failing test artifacts
uses: actions/upload-artifact@v4
if: failure()
with:
name: rtest-OF-multirotor
path: |
${{github.workspace}}/build/reg_tests/glue-codes/openfast
!${{github.workspace}}/build/reg_tests/glue-codes/openfast/5MW_Baseline
!${{github.workspace}}/build/reg_tests/glue-codes/openfast/AOC
!${{github.workspace}}/build/reg_tests/glue-codes/openfast/AWT27
!${{github.workspace}}/build/reg_tests/glue-codes/openfast/SWRT
!${{github.workspace}}/build/reg_tests/glue-codes/openfast/UAE_VI
!${{github.workspace}}/build/reg_tests/glue-codes/openfast/WP_Baseline

rtest-OF-linearization:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
needs: build-all-release
env:
OMP_NUM_THREADS: 1
steps:
- name: Restore workspace from artifact
uses: actions/download-artifact@v4
Expand Down Expand Up @@ -546,10 +594,8 @@ jobs:
!${{github.workspace}}/build/reg_tests/glue-codes/openfast/WP_Baseline

rtest-OF-aeromap:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
needs: build-all-release
env:
OMP_NUM_THREADS: 1
steps:
- name: Restore workspace from artifact
uses: actions/download-artifact@v4
Expand Down Expand Up @@ -601,10 +647,8 @@ jobs:


rtest-openfast_io:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
needs: build-all-release
env:
OMP_NUM_THREADS: 1
steps:
- name: Restore workspace from artifact
uses: actions/download-artifact@v4
Expand Down Expand Up @@ -655,7 +699,7 @@ jobs:


rtest-FF:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
needs: build-all-release
env:
OMP_NUM_THREADS: 2
Expand Down
Loading