Skip to content

Commit 56f79ad

Browse files
mbkuhnmarchdf
andauthored
OpenFAST 4.1.0: changes to ExtInfw (#1665)
--------- Co-authored-by: Marc Henry de Frahan <[email protected]>
1 parent fd44654 commit 56f79ad

File tree

4 files changed

+16
-22
lines changed

4 files changed

+16
-22
lines changed

CMakeLists.txt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,11 +180,14 @@ if(AMR_WIND_ENABLE_OPENFAST)
180180

181181
set(AMR_WIND_OPENFAST_VERSION "3" CACHE STRING "OpenFAST major version")
182182
if((AMR_WIND_OPENFAST_VERSION STREQUAL "master") OR (AMR_WIND_OPENFAST_VERSION STREQUAL "main") OR (AMR_WIND_OPENFAST_VERSION STREQUAL "develop"))
183-
set(AMR_WIND_OPENFAST_VERSION "4.0")
183+
set(AMR_WIND_OPENFAST_VERSION "4.1")
184184
endif()
185185
if(NOT AMR_WIND_OPENFAST_VERSION VERSION_LESS "5")
186186
message(FATAL_ERROR "AMR_WIND_OPENFAST_VERSION must be less than 5.")
187187
endif()
188+
if(AMR_WIND_OPENFAST_VERSION VERSION_GREATER_EQUAL "4" AND AMR_WIND_OPENFAST_VERSION VERSION_LESS "4.1")
189+
message(FATAL_ERROR "AMR-Wind does not support OpenFAST version 4.0. Either update to 4.1 or revert to 3.")
190+
endif()
188191
string(REPLACE "." ";" OPENFAST_VERSION_LIST ${AMR_WIND_OPENFAST_VERSION})
189192
list(LENGTH OPENFAST_VERSION_LIST OPENFAST_VERSION_LIST_LENGTH)
190193
if(OPENFAST_VERSION_LIST_LENGTH GREATER_EQUAL 1)

amr-wind/wind_energy/actuator/turbine/fast/FastIface.cpp

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -224,12 +224,10 @@ void FastIface::fast_init_turbine(FastTurbine& fi)
224224
char out_file[fast_strlen()];
225225
fast_func(
226226
FAST_ExtInfw_Init, &fi.tid_local, &fi.stop_time, inp_file.begin(),
227-
&fi.tid_global, out_file, &m_num_sc_inputs_glob, &m_num_sc_inputs,
228-
&m_num_sc_outputs, &m_init_sc_inputs_glob, &m_init_sc_inputs_turbine,
229-
&fi.num_pts_blade, &fi.num_pts_tower, fi.base_pos.begin(), &abort_lev,
230-
&fi.dt_cfd, &fi.dt_fast, &m_inflow_type, &fi.num_blades,
231-
&fi.num_blade_elem, &fi.num_tower_elem, &fi.chord_cluster_type,
232-
&fi.to_cfd, &fi.from_cfd, &fi.to_sc, &fi.from_sc);
227+
&fi.tid_global, out_file, &fi.num_pts_blade, &fi.num_pts_tower,
228+
fi.base_pos.begin(), &abort_lev, &fi.dt_cfd, &fi.dt_fast,
229+
&m_inflow_type, &fi.num_blades, &fi.num_blade_elem, &fi.num_tower_elem,
230+
&fi.chord_cluster_type, &fi.to_cfd, &fi.from_cfd);
233231
#else
234232
fast_func(
235233
FAST_OpFM_Init, &fi.tid_local, &fi.stop_time, inp_file.begin(),
@@ -337,7 +335,7 @@ void FastIface::fast_restart_turbine(FastTurbine& fi)
337335
fast_func(
338336
FAST_ExtInfw_Restart, &fi.tid_local, chkpt_file.begin(), &abort_lev,
339337
&fi.dt_fast, &fi.num_blades, &fi.num_blade_elem, &fi.num_tower_elem,
340-
&fi.time_index, &fi.to_cfd, &fi.from_cfd, &fi.to_sc, &fi.from_sc);
338+
&fi.time_index, &fi.to_cfd, &fi.from_cfd);
341339
#else
342340
fast_func(
343341
FAST_OpFM_Restart, &fi.tid_local, chkpt_file.begin(), &abort_lev,

amr-wind/wind_energy/actuator/turbine/fast/fast_types.H

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,8 +94,10 @@ struct FastTurbine
9494
exw_fast::OfInputType to_cfd;
9595
exw_fast::OfOutputType from_cfd;
9696

97+
#if OPENFAST_VERSION_MAJOR != 4
9798
exw_fast::SC_DX_InputType to_sc;
9899
exw_fast::SC_DX_OutputType from_sc;
100+
#endif
99101
};
100102

101103
} // namespace exw_fast

amr-wind/wind_energy/actuator/turbine/fast/fast_wrapper.H

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,6 @@ inline constexpr int fast_strlen() { return INTERFACE_STRING_LENGTH; }
2020
#define ErrID_Severe 3
2121
#define ErrID_Fatal 4
2222

23-
struct SC_DX_InputType
24-
{};
25-
struct SC_DX_OutputType
26-
{};
27-
2823
inline constexpr int fast_strlen() { return 1025; }
2924

3025
inline void exw_fast_output_redirect(char* /*unused*/) {}
@@ -68,11 +63,6 @@ inline void FAST_ExtInfw_Init(
6863
const char* /*unused*/,
6964
int* /*unused*/,
7065
int* /*unused*/,
71-
int* /*unused*/,
72-
float* /*unused*/,
73-
float* /*unused*/,
74-
int* /*unused*/,
75-
int* /*unused*/,
7666
float* /*unused*/,
7767
int* /*unused*/,
7868
double* /*unused*/,
@@ -83,8 +73,6 @@ inline void FAST_ExtInfw_Init(
8373
int* /*unused*/,
8474
OpFM_InputType* /*unused*/,
8575
OpFM_OutputType* /*unused*/,
86-
SC_DX_InputType* /*unused*/,
87-
SC_DX_OutputType* /*unused*/,
8876
int* /*unused*/,
8977
char* /*unused*/)
9078
{}
@@ -99,8 +87,6 @@ inline void FAST_ExtInfw_Restart(
9987
int* /*unused*/,
10088
OpFM_InputType* /*unused*/,
10189
OpFM_OutputType* /*unused*/,
102-
SC_DX_InputType* /*unused*/,
103-
SC_DX_OutputType* /*unused*/,
10490
int* /*unused*/,
10591
char* /*unused*/)
10692
{}
@@ -112,6 +98,11 @@ struct OpFM_InputType
11298
struct OpFM_OutputType
11399
{};
114100

101+
struct SC_DX_InputType
102+
{};
103+
struct SC_DX_OutputType
104+
{};
105+
115106
inline void
116107
FAST_OpFM_Solution0(int* /*unused*/, int* /*unused*/, char* /*unused*/)
117108
{}

0 commit comments

Comments
 (0)