NREL / SOWFA-6

34 stars 35 forks source link

Compiler error when coupling with OpenFAST #49

Closed koodlyakshay closed 1 year ago

koodlyakshay commented 2 years ago

Hello,

I am facing the following error when I try to link the latest version of OpenFAST to SOWFA-6

horizontalAxisWindTurbinesALMOpenFAST/horizontalAxisWindTurbinesALMOpenFAST.C: In member function ‘void Foam::turbineModels::horizontalAxisWindTurbinesALMOpenFAST::sendInput()’: horizontalAxisWindTurbinesALMOpenFAST/horizontalAxisWindTurbinesALMOpenFAST.C:444:6: error: ‘class fast::fastInputs’ has no member named ‘numScInputs’ 444 | fi.numScInputs = numSuperControllerOutputs ; | ^~~~~~~~~~~ horizontalAxisWindTurbinesALMOpenFAST/horizontalAxisWindTurbinesALMOpenFAST.C:445:6: error: ‘class fast::fastInputs’ has no member named ‘numScOutputs’ 445 | fi.numScOutputs = numSuperControllerInputs ;

I have also attached the log file with the full output when I try to build SOWFA-6.

log_sowfa_build_error.txt.

Steps I have done so far - Installed OpenFOAM-6 ( not sure if relevant, but I had to use c++=14 standard instead of default because CGAL would give errors otherwise), master branch of OpenFAST with the same compilers and then tried to build SOWFA-6. Other executables build properly.

OS: Ubuntu 18 Compilers: gcc 11.2.0

Thanks for the help.

koodlyakshay commented 2 years ago

I see that line 74 in Allwmake which builds the executable superDeliciousvanilla.turbine was commented out in the recent PR (#48). Is there a different executable now?

rthedin commented 1 year ago

Dear Akshay, The reason such line was commented out is that the turbine modeling capabilities present in the solver superDeliciousVanilla.turbine are being ported to the single unified solver superDeliciousVanilla. I recommend getting what is currently PR https://github.com/NREL/SOWFA-6/pull/50 (soon to be merged into dev) and give that a shot. I believe it will fix your error.

svv73 commented 1 year ago

Hello,

I am too facing the following error when I try to link the latest version of OpenFAST to SOWFA-6

horizontalAxisWindTurbinesALMOpenFAST/horizontalAxisWindTurbinesALMOpenFAST.C: In member function ‘void Foam::turbineModels::horizontalAxisWindTurbinesALMOpenFAST::sendInput()’:
horizontalAxisWindTurbinesALMOpenFAST/horizontalAxisWindTurbinesALMOpenFAST.C:482:31: error: ‘__gnu_cxx::__alloc_traits<std::allocator<fast::globTurbineDataType> >::value_type {aka struct fast::globTurbineDataType}’ has no member named ‘forcePtsBladeDistributionType’
     fi.globTurbineData[iTurb].forcePtsBladeDistributionType = bladePointDistType[iTurb];

There really is no such variable in the OpenFAST.H file.

yisehakabreham commented 1 year ago

Dear @rthedin,

I am facing similar SOWFA-6 compilation errors while compiling with OpenFAST-3.3. I am using Ubuntu 18.04 OS and gcc-7.5.0. SOWFA-2.4.x works fine on the machine, but i am not sure about the requirements for SOWFA-6. Would you please take a look at the log.Allwmake file attached here.

Thank you for your guidance.

log_Allwmake.txt

Yisehak

koodlyakshay commented 1 year ago

Hi Yisehak,

We realized those errors are due to the OpenFAST. From v3, the super controller stuff has apparently changed in OpenFAST. You will have to use older versions i.e anything older than 3. We managed to get it working with v2.4.

Akshay

rthedin commented 1 year ago

Closing this. Feel free to re-open if there are further questions.