Closed BecMax closed 1 year ago
Hi,
Thank you for your report. The tailfin aerodynamics have been reintroduced recently but the feature is still being worked on, so we appreciate your patience.
You'll find the code of the aerodynamic calculation around these lines:
https://github.com/OpenFAST/openfast/blob/6b8706b75698cb1c97c6a8e3e9f42538a63fa71b/modules/aerodyn/src/AeroDyn.f90#L4344
It should match what is present in the (scarce) documentation. The chord is mostly used for the aerodynamic moment calculation and to estimate the Reynolds number.
Unfortunately, there is small bug. The chord is somehow present in the Fy force (on this line: https://github.com/OpenFAST/openfast/blob/main/modules/aerodyn/src/AeroDyn.f90#L4356C31-L4356C31). You would need to remove this, or use a chord of 1m.
Your testcase is likely a bit too complex for me to dive into it, but here are some things that can help debugging:
TFinRefP_n
can have a strong influence on the results. TailFurl
(initial condition) and TFrlSpr
, making sure you get the desired frequency and therefore inertia. We tested this implementation using a one degree of freedom yawing system, exited only by the tailfin aerodynamic force (lift only). The results matched our predictions. But maybe there is another bug somewhere.
Thanks again for testing this out.
TFAlpha Angle of attack of tailfin
TFMach Mach number of tailfin flow
TFRe Reynolds number of tailfin flow
TFVrel Orthogonal relative velocity norm at the tailfin reference point
TFVundxi Undisturbed wind velocity at the tailfin reference point in the inertial system (x-direction)
TFVundyi Undisturbed wind velocity at the tailfin reference point in the inertial system (y-direction)
TFVundzi Undisturbed wind velocity at the tailfin reference point in the inertial system (z-direction)
TFVindxi Induced velocity at the tailfin reference point in the inertial system (x-direction)
TFVindyi Induced velocity at the tailfin reference point in the inertial system (y-direction)
TFVindzi Induced velocity at the tailfin reference point in the inertial system (z-direction)
TFVrelxi Relative velocity at the tailfin reference point in the inertial system (x-direction)
TFVrelyi Relative velocity at the tailfin reference point in the inertial system (y-direction)
TFVrelzi Relative velocity at the tailfin reference point in the inertial system (z-direction)
TFSTVxi Structural velocity at the tailfin reference point in the inertial system (x-direction)
TFSTVyi Structural velocity at the tailfin reference point in the inertial system (y-direction)
TFSTVzi Structural velocity at the tailfin reference point in the inertial system (z-direction)
TFFxi Force at the tailfin reference point in the inertial system (x-direction)
TFFyi Force at the tailfin reference point in the inertial system (y-direction)
TFFzi Force at the tailfin reference point in the inertial system (z-direction)
TFMxi Moment at the tailfin reference point in the inertial system (x-direction)
TFMyi Moment at the tailfin reference point in the inertial system (y-direction)
TFMzi Moment at the tailfin reference point in the inertial system (z-direction)
Hi, thank you for the quick and comprehensive response.
We have now investigated this further based on the mentioned approach and inertial properties were matching perfect. To summarize there was an error in the provided FAST 7 model of our turbine, which accidentally has utilized a blade root airfoil as tail airfoil.
A simple test case with only yaw degree of freedom with initial yaw of 30 degrees and aerodynamic loads now results in nearly a perfect match for both the yaw position and tail loads (Orange is FAST 7, Blue OpenFAST):
The more complex wind ramp, which we have previously simulated, now also agrees very well in yaw, except for a strange peak in FAST 7 at the start. We do think the differences may be attributed to the control influence and deviations in rpm and pitch.
Moreover, the SWRT results, which I have accidentally misinterpreted above, also do agree much better:
Thanks again for the great support!
Kind regards, Max
Hi Max , Thanks for the update, it's good to hear that there is a better agreement now! Emmanuel
Dear all,
after updating a FAST 7 model of a small wind turbine to OpenFAST, which uses a tail fin for yawing, we see relatively large deviations in the predicted yaw behavior. Both the FAST7 and OpenFAST version are custom compiled due to usage of adjusted PitchCntrl_ACH (for passive pitch control), UserVSCont_KP ( for variable-speed torque control) and addition of a simple yaw friction model based on a friction coefficient, adding up to the yaw moment. As OpenFAST version we are using as basis version 3.4.1, which includes the tail fin aerodynamics (https://github.com/OpenFAST/openfast/pull/1277) and for FAST 7 version (v7.02.00d-bjj).
In the update process, we tried to keep the model parameters to be matching as close as possible between the different codes. In OpenFAST we are now using the elastodyn furl input file, where both rotor and tail furl DOF are disabled and additionally the tail fin aerodynamics input file. The only new parameter, which cannot be directly derived from the FAST 7 model, seems to be the tail fin chord (TFinChord). Unfortunately, this parameter is not described in the documentation, but we assumed it to be equal to some kind of mean aerodynamic chord of the tail fin, which we estimated from the drawings. Can you please explain, how we should define this parameter exactly?
Anyway, we would expect the yaw behavior to be approximately similar, but after simulating a wind ramp with both codes we find that the yaw angle in FAST 7 is about 10 times higher compared to OpenFAST simulation, compare with Figure below:
The implemented pitch and torque control behavior is approximately similar, except some stronger deviations at high wind speeds:
Moreover, the rotor furl and tail furl bearing moments, which I understand from the code are main components to determine the yaw angle, are also approximately equal (except for very high winds):
The implemented friction moment is approximately similar as well (Orange is OpenFAST; shown in Nm):
The resulting yaw bearing moments follow this behavior too (Orange is OpenFAST):
We are not directly able to tell the cause of this discepancy due to the large number of components in the code affecting the yaw angle. We do not think that the friction model is causing these issues here, as similar offset in yaw angles is obtained without any friction.
We realized that we could increase the magnitude of yaw angle by a few degrees by including a bank angle. However, the turbine has no tail angles, but it is interesting that this influences yaw angle in OpenFAST, whereas it did not have any major effect in FAST 7.
Unfortunately, we may not be able to share the model as the FAST 7 model originates from a customer. For testing purposes, we did a similar comparison with the small wind research turbine model until medium wind speeds due to the furling. Therefore, we adapted SWRT_YFree_VS_WTurb from OpenFAST regression tests including a tail fin chord of 0.5 m, estimated from report 38550 (https://www.nrel.gov/docs/fy06osti/38550.pdf). We run the tests with unchanged OpenFAST 3.4.1 and FAST v7.02.00d-bjj (adapted Test17). Here the yaw angle magnitude is again lower for OpenFAST, the match is better but a difference of about 10 degrees remains:
For this comparison, the pitch angle has been set to the same value of 11.44 deg. The rotor speed according to the torque control is deviating slightly, but due to the fact that the yaw angle magnitude in OpenFAST seems not to be increasing above certain values, we think this influence is small:
Do you have any ideas how these differences in yaw angle can be explained? Is this related to the aerodynamic overhaul and updates in AeroDyn 15? Is there any suggestion how we could better investigate this problem?
This is the compile info of the adjusted OpenFAST version, which we are using:
OpenFAST-v3.4.1-3-g004a102d-dirty Compile Info:
Kind Regards, Max Becker