Eigenanalysis FAST

Dear Jacob,

You must put the name(s) into a cell array. In your case, set:

FileNames={‘test18.1.lin’};

Best regards,

Dear Jason,

Sorry, to bother you with this, but I now defined the filename in an array, which then yielded the following message:

[i]>> clear

FileNames={‘test18.1.lin’}

FileNames =

'test18.1.lin'

GetMats_f8
Undefined function ‘ReadFASTLinear’ for input arguments of type ‘char’.

Error in GetMats_f8 (line 24)
data(NAzimStep) = ReadFASTLinear(FileNames{1}); %we’ll read this twice so we can allocate space first; putting it at
NAzimStep saves some reallocation later[/i]

Dear Jacob,

You need that function and other ones to run GetMats_f8.m.

You will find them in the folders located in Utilities\MatlabToolbox.

Best regards

Dear Matteo,

Thanks a lot for your response.

Dear Matteo,

Maybe you can help me:

I have installed the toolbox downloaded from the FAST website and now I can run GetMats_f8. When I then enter mbc3, I get the following message:

[i]>> FileNames={‘test18.1.lin’};

GetMats_f8

GetMats_f8.m completed
Type “who” to list available variables

who

Your variables are:

AMat CMat NAzimStep RotTripletIndicesCntrlInpt
AvgAMat DMat NDisturbs RotTripletIndicesOutput
AvgBMat DescCntrlInpt NInputs RotTripletIndicesStates
AvgCMat DescOutput NRotTripletCntrlInpt data
AvgDMat DescStates NRotTripletOutput xdop
Avgxdop FileNames NRotTripletStates xop
Avgxop MdlOrder NumOuts
Azimuth N Omega
BMat NActvDOF OmegaDot

mbc3

Running mbc3 (v1.00.00a-gbir, 15-Oct-2008)

**ERROR: the number of colmn vectors in RotTripletIndicesOutput must equal 3, the num of blades
[/i]
Do you know how to deal with this?

Dear Jacob,

I’m sorry but I can’t help you in resolving this error.

Best regards

Dear Jacob,

What is size(RotTripletIndicesOutput)? What is DescOutput?

Best regards,

Dear Jason,

I have posted the results from Matlab after running GetMats_f8 below:

[i]>> FileNames={‘test18.1.lin’}

FileNames =

'test18.1.lin'

GetMats_f8

GetMats_f8.m completed
Type “who” to list available variables

who

Your variables are:

AMat CMat NAzimStep RotTripletIndicesCntrlInpt
AvgAMat DMat NDisturbs RotTripletIndicesOutput
AvgBMat DescCntrlInpt NInputs RotTripletIndicesStates
AvgCMat DescOutput NRotTripletCntrlInpt data
AvgDMat DescStates NRotTripletOutput xdop
Avgxdop FileNames NRotTripletStates xop
Avgxop MdlOrder NumOuts
Azimuth N Omega
BMat NActvDOF OmegaDot

size(RotTripletIndicesOutput)

ans =

 0     0

size(DescOutput)

ans =

38     1

[/i]

Dear Jacob,

It doesn’t look like your model has any outputs in the rotating frame, so you can eliminate variable RotTripletIndicesOutput before running mbc3 by typing:
clear RotTripletIndicesOutput

Best regards,

Hello everbody,

i try to linearize Test18 with FASTv8.16. by switching off my GenDOF the linearization is working well, but the Rotor speed and generator speed are zero. now i swith on the GenDOF and i get a rotor speed but non stable linearization. my generator speed is increasing and can not stabilise at ratet speed. what can i do to get a stable speed?

her is my imput file. Maybe somebody can help me.

Thank you in advance
Damba

------- FAST v8.16.* INPUT FILE ------------------------------------------------
FAST Certification Test #18: NREL 5.0 MW Baseline Wind Turbine (Onshore)
---------------------- SIMULATION CONTROL --------------------------------------
False Echo - Echo input data to .ech (flag)
“FATAL” AbortLevel - Error level when simulation should abort (string) {“WARNING”, “SEVERE”, “FATAL”}
60 TMax - Total run time (s)
0.00625 DT - Recommended module time step (s)
2 InterpOrder - Interpolation order for input/output time history (-) {1=linear, 2=quadratic}
0 NumCrctn - Number of correction iterations (-) {0=explicit calculation, i.e., no corrections}
99999 DT_UJac - Time between calls to get Jacobians (s)
1E+06 UJacSclFact - Scaling factor used in Jacobians (-)
---------------------- FEATURE SWITCHES AND FLAGS ------------------------------
1 CompElast - Compute structural dynamics (switch) {1=ElastoDyn; 2=ElastoDyn + BeamDyn for blades}
1 CompInflow - Compute inflow wind velocities (switch) {0=still air; 1=InflowWind; 2=external from OpenFOAM}
2 CompAero - Compute aerodynamic loads (switch) {0=None; 1=AeroDyn v14; 2=AeroDyn v15}
1 CompServo - Compute control and electrical-drive dynamics (switch) {0=None; 1=ServoDyn}
0 CompHydro - Compute hydrodynamic loads (switch) {0=None; 1=HydroDyn}
0 CompSub - Compute sub-structural dynamics (switch) {0=None; 1=SubDyn}
0 CompMooring - Compute mooring system (switch) {0=None; 1=MAP++; 2=FEAMooring; 3=MoorDyn; 4=OrcaFlex}
0 CompIce - Compute ice loads (switch) {0=None; 1=IceFloe; 2=IceDyn}
---------------------- INPUT FILES ---------------------------------------------
“NRELOffshrBsline5MW_Onshore_ElastoDyn.dat” EDFile - Name of file containing ElastoDyn input parameters (quoted string)
“NRELOffshrBsline5MW_BeamDyn.dat” BDBldFile(1) - Name of file containing BeamDyn input parameters for blade 1 (quoted string)
“NRELOffshrBsline5MW_BeamDyn.dat” BDBldFile(2) - Name of file containing BeamDyn input parameters for blade 2 (quoted string)
“NRELOffshrBsline5MW_BeamDyn.dat” BDBldFile(3) - Name of file containing BeamDyn input parameters for blade 3 (quoted string)
“NRELOffshrBsline5MW_InflowWind_12mps.dat” InflowFile - Name of file containing inflow wind input parameters (quoted string)
“NRELOffshrBsline5MW_Onshore_AeroDyn15.dat” AeroFile - Name of file containing aerodynamic input parameters (quoted string)
“NRELOffshrBsline5MW_Onshore_ServoDyn_Linearisation.dat” ServoFile - Name of file containing control and electrical-drive input parameters (quoted string)
“unused” HydroFile - Name of file containing hydrodynamic input parameters (quoted string)
“unused” SubFile - Name of file containing sub-structural input parameters (quoted string)
“unused” MooringFile - Name of file containing mooring system input parameters (quoted string)
“unused” IceFile - Name of file containing ice input parameters (quoted string)
---------------------- OUTPUT --------------------------------------------------
True SumPrint - Print summary data to “.sum” (flag)
5 SttsTime - Amount of time between screen status messages (s)
99999 ChkptTime - Amount of time between creating checkpoint files for potential restart (s)
“default” DT_Out - Time step for tabular output (s) (or “default”)
0 TStart - Time to begin tabular output (s)
3 OutFileFmt - Format for tabular (time-marching) output file (switch) {1: text file [.out], 2: binary file [.outb], 3: both}
True TabDelim - Use tab delimiters in text tabular output file? (flag) {uses spaces if false}
“ES10.3E2” OutFmt - Format used for text tabular output, excluding the time channel. Resulting field should be 10 characters. (quoted string)
---------------------- LINEARIZATION -------------------------------------------
True Linearize - Linearization analysis (flag)
3 NLinTimes - Number of times to linearize (-) [>=1] [unused if Linearize=False]
40, 50, 60 LinTimes - List of times at which to linearize (s) [1 to NLinTimes] [unused if Linearize=False]
1 LinInputs - Inputs included in linearization (switch) {0=none; 1=standard; 2=all module inputs (debug)} [unused if Linearize=False]
1 LinOutputs - Outputs included in linearization (switch) {0=none; 1=from OutList(s); 2=all module outputs (debug)} [unused if Linearize=False]
False LinOutJac - Include full Jacobians in linearization output (for debug) (flag) [unused if Linearize=False; used only if LinInputs=LinOutputs=2]
False LinOutMod - Write module-level linearization output files in addition to output for full system? (flag) [unused if Linearize=False]
---------------------- VISUALIZATION ------------------------------------------
0 WrVTK - VTK visualization data output: (switch) {0=none; 1=initialization data only; 2=animation}
1 VTK_type - Type of VTK visualization data: (switch) {1=surfaces; 2=basic meshes (lines/points); 3=all meshes (debug)} [unused if WrVTK=0]
true VTK_fields - Write mesh fields to VTK data files? (flag) {true/false} [unused if WrVTK=0]
15 VTK_fps - Frame rate for VTK output (frames per second){will use closest integer multiple of DT} [used only if WrVTK=2]

Dear Damba,

My guess is that, while you’ve enabled ServoDyn, you’ve disabled the controller that is regulating the generator speed. You’ll likely need to enable some type of torque control e.g. VSContrl = 1 or GenModel = 1 or 2 with appropriate parameters set.

Best regards,

Dear all:
I tried to study the soil-structure interaction using AF model in FAST v8.16. I know linearization is not implemented for the SubDyn module. Then I wonder which is the best way to get the natural frequency of the whole structure considering SSI. Would you please give some suggestions?
Another question, if I change the subdyn model, is it needed to change the modal shape in ElastoDyn?
Best regards.

Dear Yuqi,

I agree that it is difficult to identify the natural frequencies of an offshore FAST model without linearization functionality. But one way to identify the natural frequencies of an offshore FAST model is by computing the PSD (or FFT) of FAST time series and identifying the frequency peaks. It is best if you can excite the structure with white noise (e.g., broadband turbulence and/or waves). However, it may be difficult to identify which frequencies correspond to which modes without running multiple simulations with various degrees of freedom (DOFs) enabled/disabled. But I have not written up a detailed stepwise procedure on the approach/process.

Changing the SubDyn model implies a change to the tower-base boundary condition, which implies that you should recalculate the tower mode shapes. But the influence of the SubDyn change on the tower mode shapes likely depends on how much the SubDyn model has been changed (small changes to the SubDyn model may have a negligible influence on the tower mode shapes). The only way to know is to try.

Best regards,

Dear Jason:
Thanks a lot. Your suggestions are inspiring to me. And now, I am wondering in which way the eigenanalysis was conducted in the OC3 project. It seems that it was done with ADAMS. Are there any detailed papers introducing this?
Best regards.

Dear Yuqi,

The OC3 project finished before FAST v8 was available and NREL applied an older version of FAST (v6) and ADAMS, with the ADAMS models derived using the FAST-to-ADAMS preprocessor. This functionality is well documented in the old FAST User’s Guide: nwtc.nrel.gov/system/files/FAST.pdf. These old models–while for the most part having less functionality than FAST v8–had some linearization functionality applicable to offshore floating systems.

Best regards,

Dear Jason:
One more question which is very important to me. When building an AF model, it is important to determine the representative load applied at the mudline. In the Memorandum Derivation and Description of the Soil-Pile-Interaction Models written by Patrik Passon, It is the used loads from phase run 5.3 scaled by a factor of 1.5. And I notice that the load case of 5.3 is accompanied with a wind velocity of 18m/s, but in load case 5.2 the wind velocity is 11.4m/s. So is the load for the derivation of AF model too large?
And in Foundation Models for Offshore Wind Turbines written by Bush and Manuel, the AF model are “averaged based on all of the 50 F and M pairs used”. How is it done? What are averaged? The L and EI, or the load pairs?
And could I use the mean values of M and F in the time series directly to derive the AF model?
Best regards.

Dear Yuqi,

I’m not an expert on the questions you are asking. Ideally, you would set the AF model specifically for each loading condition. Practically, it may fine to use the same AF model for a range of loading conditions. In Bush et al, I know that she averaged the loads from many realizations in a given sea state and used different AF models for each sea state. My guess is you’ll need to do a bit of a sensitivity analysis for your own system yourself to see how sensitive the results are to various AF models across different loading conditions.

Best regards,

Dear Jason:
Thank you so much. The detail I want to know is whether the loads to be averaged is the mean loads in a certain realization or the maximum loads. Which is more reasonable?
Best regards.

Dear Yuqi,

I looked back at Erica Bush’s work, and realized that I misspoke in my prior post. From her M.S. thesis, I gather that for each sea state she
(1) took contemporaneous values of shear force and bending moment from the time series and binned them into a histogram;
(2) derived the AF model properties (L and EI) for each bin; and
(3) computed a weighted-average of the AF model properties (L and EI) based on the probability of each bin.

Best regards,

Dear Jason:
Thank you for your answer. It helps me a lot.
Best regards.