## MLife Fatigue DEL Calculation

Provide feedback, request enhancements, and get help with wind-turbine computer-aided engineering tools.

Moderators: Bonnie.Jonkman, Jason.Jonkman

Jason.Jonkman
Posts: 4623
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

### Re: MLife Fatigue DEL Calculation

Dear Ingrid,

1) Overall your approach sounds reasonable. Of course, normally you'd run many more than 16 simulations (e.g. by running multiple seeds and conditions) and process more than just the mudline fore-aft bending moment. And for offshore loads analysis, it is often important to consider a multi-dimensional probability distribution of wind and waves. From your description, it sounds like you are only considering a one-dimensional Weibull distribution of wind (and presumably, the wave conditions are conditioned on wind speed).

2) Yes, the lifetime fatigue calculation is weighted by the probability distribution. Of course--depending on the material exponent (m)--large amplitude cycles with low probability of occurrence may be just or more important than low amplitude cycles of high probability.

3) Short-term DELs are computed independent from the probability distribution, considering only the rainflow cycle counts from an individual time series.

The equations MLife uses for the various calculations are documented in the MLife Theory Manual: https://nwtc.nrel.gov/system/files/MLife_Theory.pdf.

Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov

Ingrid.Loken
Posts: 9
Joined: Wed Feb 01, 2017 6:26 am
Organization: Norwegian University of Science and Technology
Location: Norway

### Re: MLife Fatigue DEL Calculation

Dear Mr. Jonkman

I know I would have to run many more load cases to get an exact result for fatigue life, but as I am comparing foundation models, and running a great number of analyses would be very time consuming, I decided to only model 16 load cases (wind speed 2 m/s to 32 m/s, based on a scatter diagram on wind and wave data from a certain site), with only one-dimensional Weibull distribution. Do you think my simple approach is sufficient enough to get useful results for my purpose?

I have two other questions:

1) As I have understood reading this forum and some other publication, there is no recommended value to use for LUlt, even though it highly affects the MLife results. So after doing some research I chose to use a value for LUlt that would make the time until failure of one of my models approximately equal to the design lifetime, so that I could compare my other foundation models with respect to a "reasonable" lifetime of around 20-30 years. Do you have any other recommendations on what value to choose for LUlt?

2) As the value of m also has great influence on the results, I am wondering what value you would choose for the structure at the mudline? (I chose m=5, as this is recommended by DNV for structural details in the high cycle fatigue range in seawater with cathodic prodection)

Best regards,
Ingrid

Jason.Jonkman
Posts: 4623
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

### Re: MLife Fatigue DEL Calculation

Dear Ingrid,

With only one seed per wind-speed bin, I would be a bit concerned that the calculated fatigue loads would depend on the seed. I would suggest running more seeds to assess the sensitivity--ideally the fatigue solution would be seed independent.

There is some discussion on how to choose LUlt in our FAQ: https://nwtc.nrel.gov/FAQ#TypeLMF. For a simple cylindrical steel cross section, you should be able to calculate LUlt analytically see e.g. my post dated Feb 23, 2016 in the following forum topic: viewtopic.php?f=4&t=1497&p=6693.

For steel, often the fatigue analysis is performed over a range of material exponents e.g. m = 3, m = 4, and m = 5.

Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov

Faryal.Khalid
Posts: 4
Joined: Wed Apr 19, 2017 11:11 am
Organization: University of Exeter
Location: United Kingdom

### Re: MLife Fatigue DEL Calculation

Dear Jason,

I am analysing blade root fatigue using MLife v1.01.00a-gjh for Test02.mlif. I have the following two queries:
1. mlif.m runs as expected for the test case, but I get an error if I want to produce a load rose for the test case using:

Code: Select all

Rose Name     Units    Channel1       Channel2     nSectors
“RootFxyc1”   “kN”     \$RootFxc1\$     \$RootFyc1\$   12

Code: Select all

Warning: repmat(A,M) or repmat(A,M,N) where M or N is an empty array will return an error in a future
release. Replace empty array inputs with 1 instead.
In mlife (line 348)
Rows=159733, Cols=135
Error using  .*
Matrix dimensions must agree.

timeSeriesData(:,1:NumIC) = repmat(scales,nLines,1).*timeSeriesData(:,1:NumIC) +
repmat(offsets,nLines,1);

Error in mlife (line 348)
[ FileInfo.Time, nLines, FileInfo.Title{iFile} ] = read_one_file( ...

2. Is it possible to visualise the rainflow cycle distribution using histogram/matrices similar to WAFO?

Thank you so much for your help.

Best regards,

Faryal Khalid
Faryal Khalid
Early career researcher Offshore Renewable Energy
University of Exeter, Penryn Campus ¦ TR10 9FE

Email: f.khalid2@exeter.ac.uk

Greg.Hayman
Posts: 16
Joined: Fri Oct 07, 2011 1:38 pm
Organization: NREL

### Re: MLife Fatigue DEL Calculation

For item (1), you need to modify Test02.mlif to use the StrNames functionality. It should now run without any errors.

true StrNames Use channel names following a "\$" instead of numbers when specifying channels in this input file.

2) You can access the binned rainflow counts via the data structures outlines in Appendix C of the MLife User's Guide

Simon.Wiedemann
Posts: 70
Joined: Mon Jan 09, 2017 1:00 am
Organization: TÜV NORD
Location: Germany

### Re: MLife Fatigue DEL Calculation

Dear All,

im using Mlife to calculate fatigue loads.
I would like to specify the distribution of the runs by myself so I need to create a file for the variable "DistribFile" in Mlife.

Can someone give an example how this file should look like?

Best regards,
Simon

UPDATE:
In the source dir that comes with the latest Mlife_archie there is a function write_joint_pdf.m with this function it is very easy to create needed binary distribution files.
Last edited by Simon.Wiedemann on Tue Mar 27, 2018 3:41 am, edited 1 time in total.

Jason.Jonkman
Posts: 4623
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

### Re: MLife Fatigue DEL Calculation

Dear Simon,

Presumably you mean MLife input parameter "DistribName" rather than "DistribFile".

Test28.mlif in the MLife CerTest provides an example with a user-defined distribution, with the user-supplied distribution table given in CertTest/Data/WindDistrib.dat. But this file is in binary format, and so, is not human readable. However, the format is described in the document, "User_Probability_Distributions.pdf" given in the Documentation directory.

I hope that helps.

Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov

Simon.Wiedemann
Posts: 70
Joined: Mon Jan 09, 2017 1:00 am
Organization: TÜV NORD
Location: Germany

### Re: MLife Fatigue DEL Calculation

Dear Jason,

thank you for clarifying!

In order to validate mlife against Bladed postprocessing I try to do a fatigue calculation with only one time series and one sensor. But Mlife is giving me following error:

I also included the mlife settings file.
Is there any error or misunderstanding?

Best regards,

Simon

UPDATE:
I compared the basis of my settings file (Test28.mlif) with others (e.g. Test01.mlif) and found some differences. Apart from some names that are defined different I can find the option for a user specified distribution in Test01.mlif.
Then I tried to run Test28.mlif with Mlife_win32.exe and got the same error as shown below.
Test01.mlif works.
Can you provide a working example of Mlife with user defined distribution?

UPDATE_2:
It seems, that the compiled Mlife in Version MLife_v1.01.00a_0 is not updated. Can you provide a compiled version of the latest version? I don't have a needed Toolbox for Wind Speed binning (function wblcdf) in Matlab so I need to run Mlife as a compiled version.
Attachments
Mlife_HC_fix_Mx.txt
Error.JPG (43.41 KiB) Viewed 2553 times

Greg.Hayman
Posts: 16
Joined: Fri Oct 07, 2011 1:38 pm
Organization: NREL

### Re: MLife Fatigue DEL Calculation

Hello Simon,

Unfortunately, we do not have the resources to supported pre-compiled versions of MLife at this time. The good news is that you can still use MLife! You simply need to create your own version of the Weibull cumulative distribution function, wblcdf() function.

https://www.mathworks.com/help/stats/wblcdf.html

I cannot vouch for the following, but here is an example:

http://www.dynare.org/dynare-matlab-m2html/matlab/missing/stats/wblcdf.html

Best Regards,

Greg

Simon.Wiedemann
Posts: 70
Joined: Mon Jan 09, 2017 1:00 am
Organization: TÜV NORD
Location: Germany

### Re: MLife Fatigue DEL Calculation

Dear Greg,

thank you very much. I will use the binary File or replace the mentioned Matlab function.

Best regards,

Simon
Last edited by Simon.Wiedemann on Tue Apr 03, 2018 1:20 am, edited 1 time in total.

Simon.Wiedemann
Posts: 70
Joined: Mon Jan 09, 2017 1:00 am
Organization: TÜV NORD
Location: Germany

### Re: MLife Fatigue DEL Calculation

Dear all,

has anyone made a comparison between Mlife and Bladed post processing for the rainflow counting algorithm (e.g. comparing calculated DELs without Weibull weighting)?

I validated, that both programs are counting the same amount of cycles.
No Goodman correction was used in Bladed and Mlife.
The best results I get for UCMult = 0.5.
Altough for some time series / sensors I got a ~0% difference and for some up to 12% difference in DEL.

I tried to find out which algorithm was used in Mlife and Bladed. In both references to papers were made :

Mlife:
Downing, S.D.; Socie, D.F. (1982). “Simple Rainflow Counting Algorithms.” International Journal of Fatigue; Vol. 4, [N.1], pp. 31 40.http://masters.donntu.org/2015/fimm/zin ... icle11.pdf

Recommended Practices for Wind Turbine Testing and Evaluation, 3. Fatigue Loads, IEA, 2nd edition 1990
https://community.ieawind.org/viewdocum ... 488ff4bd04

Can someone explain the difference between both approaches or has experience with both post processing programs when it comes to DEL?

Best regards,

Simon

Jianwen.Xu
Posts: 2
Joined: Thu Oct 25, 2018 11:10 am
Organization: Newcastle University
Location: United Kingdom

### Re: MLife Fatigue DEL Calculation

Dear Dr.Jonkman:
I am analyzing wind turbine yaw bearing fatigue using MLife v1.01.00a-gjh for Test09.mlif with MATLAB. I have the following question which confused me a lot:

1) I used the FAST output file "Test18_onshore04_10_41x41.out" and "Test18_onshore04_10_41x41a.out" as Input files of MLife instead of the original two("DLC2.3_1.out" and "DLC2.3_1a.out" ). It showed three problems which are in the picture below.

I think it isn't the problem with the Input files as I also tried the original two with the same fatigue analysis, it showed the same problems. And I am thinking whether it is the problem with the Distribution section or the Fatigue section?

Here is the attachment of the MLife running file "Test09_10mps_1.txt".
Could you please have a look at it？

Kind regards

Jianwen
Attachments
Test09_10mps_1.txt