<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing with OASIS Tables v3.0 20080202//EN" "https://jats.nlm.nih.gov/nlm-dtd/publishing/3.0/journalpub-oasis3.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:oasis="http://docs.oasis-open.org/ns/oasis-exchange/table" xml:lang="en" dtd-version="3.0" article-type="research-article">
  <front>
    <journal-meta><journal-id journal-id-type="publisher">WES</journal-id><journal-title-group>
    <journal-title>Wind Energy Science</journal-title>
    <abbrev-journal-title abbrev-type="publisher">WES</abbrev-journal-title><abbrev-journal-title abbrev-type="nlm-ta">Wind Energ. Sci.</abbrev-journal-title>
  </journal-title-group><issn pub-type="epub">2366-7451</issn><publisher>
    <publisher-name>Copernicus Publications</publisher-name>
    <publisher-loc>Göttingen, Germany</publisher-loc>
  </publisher></journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.5194/wes-11-405-2026</article-id><title-group><article-title>Design of fatigue-based specifications for the design of controllers in wind turbines</article-title><alt-title>Fatigue-based specifications for controllers in wind turbines</alt-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author" corresp="yes" rid="aff1">
          <name><surname>Miquelez-Madariaga</surname><given-names>Irene</given-names></name>
          <email>irene.miquelez@unavarra.es</email>
        <ext-link>https://orcid.org/0000-0001-6467-2154</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff2 aff1">
          <name><surname>Arellano</surname><given-names>Jesús</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff3 aff1">
          <name><surname>Lacheta-Lecumberri</surname><given-names>Daniel</given-names></name>
          
        <ext-link>https://orcid.org/0009-0002-9456-3682</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Elso</surname><given-names>Jorge</given-names></name>
          
        </contrib>
        <aff id="aff1"><label>1</label><institution>Department of Engineering, Universidad Pública de Navarra, Pamplona, Spain</institution>
        </aff>
        <aff id="aff2"><label>2</label><institution>Siemens Gamesa Renewable Energy, Sarriguren, Spain</institution>
        </aff>
        <aff id="aff3"><label>3</label><institution>VORS Control, Pamplona, Spain</institution>
        </aff>
      </contrib-group>
      <author-notes><corresp id="corr1">Irene Miquelez-Madariaga (irene.miquelez@unavarra.es)</corresp></author-notes><pub-date><day>9</day><month>February</month><year>2026</year></pub-date>
      
      <volume>11</volume>
      <issue>2</issue>
      <fpage>405</fpage><lpage>416</lpage>
      <history>
        <date date-type="received"><day>8</day><month>November</month><year>2024</year></date>
           <date date-type="rev-request"><day>27</day><month>November</month><year>2024</year></date>
           <date date-type="rev-recd"><day>21</day><month>May</month><year>2025</year></date>
           <date date-type="accepted"><day>26</day><month>June</month><year>2025</year></date>
      </history>
      <permissions>
        <copyright-statement>Copyright: © 2026 Irene Miquelez-Madariaga et al.</copyright-statement>
        <copyright-year>2026</copyright-year>
      <license license-type="open-access"><license-p>This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this licence, visit <ext-link ext-link-type="uri" xlink:href="https://creativecommons.org/licenses/by/4.0/">https://creativecommons.org/licenses/by/4.0/</ext-link></license-p></license></permissions><self-uri xlink:href="https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026.html">This article is available from https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026.html</self-uri><self-uri xlink:href="https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026.pdf">The full text article is available as a PDF file from https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026.pdf</self-uri>
      <abstract><title>Abstract</title>

      <p id="d2e121">Pitch controllers are critical components in wind turbines, and their design typically involves lengthy iterative processes of tuning and simulation-based validation. Using well-defined control specifications, rigorously linked to engineering requirements, can significantly reduce the effort needed to achieve optimal performance. This work presents a methodology for generating control specifications directly related to mechanical fatigue caused by driving loads in wind turbine applications. The method is tailored for frequency-domain controller design techniques, such as quantitative feedback theory (QFT) and H<inline-formula><mml:math id="M1" display="inline"><mml:mi mathvariant="normal">∞</mml:mi></mml:math></inline-formula>, and is based on Dirlik's method for fatigue assessment. It is tested through the design of controllers for a reference 15 MW wind turbine operating above rated conditions. The specification-driven design results in a validated reduction in fatigue, with simulation outcomes showing a mean error of 1.07 % between the fatigue value predicted by the specifications and the one obtained from simulations.</p>
  </abstract>
    </article-meta>
  </front>
<body>
      

<sec id="Ch1.S1" sec-type="intro">
  <label>1</label><title>Introduction</title>
      <p id="d2e140">The design of wind turbines is an inherently multi-objective problem. To reduce the levelised cost of energy (LCoE; <xref ref-type="bibr" rid="bib1.bibx4" id="altparen.1"/>), wind turbines should be designed to maximise the generated power and to minimise design, production, and operation expenses. When focusing on the control strategies, these main objectives are translated into maximising generated power, regulating the generator speed, and reducing the driving mechanical loads.</p>
      <p id="d2e146">However, controller design is still somewhat disconnected from the evaluation of its performance. According to the IEC 61400 standard <xref ref-type="bibr" rid="bib1.bibx8" id="paren.2"/>, mechanical fatigue must be assessed using aeroelastic simulation of turbulent wind fields. The generation of the wind fields and their simulation are time-consuming steps incompatible with a swift workflow. Moreover, to get the fatigue indicator, load cycles are quantified using the nonlinear rainflow-counting algorithm and the Wöhler curve.</p>
      <p id="d2e152">All in all, a gap exists between the controller design environment, which oftentimes uses linear frequency-domain models for the wind turbine and for the wind <xref ref-type="bibr" rid="bib1.bibx11 bib1.bibx12 bib1.bibx17 bib1.bibx16" id="paren.3"/>, and the evaluation environment, which requires nonlinear time-domain simulations. Some work has been done to solve this problem for a general wind turbine design application <xref ref-type="bibr" rid="bib1.bibx18 bib1.bibx15" id="paren.4"/>, but it has not targeted the design of control specifications – a key step in the design of controllers. The main contribution of this article is a method for the design of fatigue-based control specifications using linear models. The proposed solution has two main characteristics: (1) it identifies the range of frequencies in which the specification contributes more to the overall fatigue, and (2) it quantifies the expected fatigue decrease when a change in the specification or the controller is introduced.</p>
      <p id="d2e161">In Sect. 2, the context on fatigue evaluation is presented, focusing on frequency-domain methods. Then, in Sect. 3, the main contribution of this work is described, namely a method for obtaining control specifications based on the sensitivity of the damage equivalent load to changes in the signal spectrum. Section 4 validates the method on the design of controllers for a 15 MW wind turbine. Lastly, Sect. 5 summarises the main results and conclusions of the work.</p>
</sec>
<sec id="Ch1.S2">
  <label>2</label><title>Frequency-domain assessment of mechanical fatigue</title>
      <p id="d2e172">The IEC 61400 standard for the design of wind turbines <xref ref-type="bibr" rid="bib1.bibx8" id="paren.5"/> states that the mechanical damage caused by fatigue in a specific wind turbine configuration must be evaluated by the simulation of turbulent wind fields at different operating points using an aeroelastic model of the wind turbine. Each of the simulations produces a realistic time series of the mechanical loads. Then, the number and amplitude of the load cycles are computed using a rainflow-counting algorithm. Finally, the total accumulated damage is obtained by using the Wöhler curve <xref ref-type="bibr" rid="bib1.bibx20" id="paren.6"/> and a Palmgren–Miner linear damage hypothesis <xref ref-type="bibr" rid="bib1.bibx13" id="paren.7"/>.</p>
      <p id="d2e184">Although this process is compulsory to ultimately certify a wind turbine configuration, the same is not true during the intermediate step of controller design. Firstly, mechanical damage does not have an explicit relation with most design parameters, which means that the effect of a change in the design is unknown until tested in simulation. Additionally, the generation of wind fields and their simulation in the aeroelastic model are time-consuming steps that prevent the design process from being agile, especially due to its iterative nature.</p>
      <p id="d2e187">The literature on fatigue assessment includes a set of methods that approximate fatigue with expressions that depend on the spectral properties of the load. The most basic approximation is the narrow-band method <xref ref-type="bibr" rid="bib1.bibx19" id="paren.8"/>, an analytic method that provides an estimation of the fatigue damage in structures subjected to random stress processes. The method assumes that the stress process has a narrow band, thus simplifying the analysis by treating the stress cycles as approximately sinusoidal with a constant amplitude and frequency. The method estimates the number of stress cycles and their respective amplitudes using the properties of the narrow-band random process. Then, the damage caused by fatigue <inline-formula><mml:math id="M2" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mi mathvariant="normal">NB</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is

          <disp-formula id="Ch1.E1" content-type="numbered"><label>1</label><mml:math id="M3" display="block"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mi mathvariant="normal">NB</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="italic">ν</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:msubsup><mml:mi>N</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msubsup><mml:msubsup><mml:mi>S</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mrow><mml:mo>-</mml:mo><mml:mi>k</mml:mi></mml:mrow></mml:msubsup><mml:mo>(</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:msup><mml:mo>)</mml:mo><mml:mstyle scriptlevel="+1"><mml:mfrac><mml:mi>k</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle></mml:msup><mml:mi mathvariant="normal">Γ</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi>k</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math id="M4" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ν</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> is the zero-crossing rate, <inline-formula><mml:math id="M5" display="inline"><mml:mrow><mml:msub><mml:mi>N</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> is a normalisation factor related to the number of cycles, <inline-formula><mml:math id="M6" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> is the spectral width parameter, <inline-formula><mml:math id="M7" display="inline"><mml:mrow><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> is the zeroth spectral moment, <inline-formula><mml:math id="M8" display="inline"><mml:mrow><mml:mi mathvariant="normal">Γ</mml:mi><mml:mo>(</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the Gamma function, and <inline-formula><mml:math id="M9" display="inline"><mml:mi>k</mml:mi></mml:math></inline-formula> is a material exponent of the S–N curve.</p>
      <p id="d2e345">Most of the existing methods are variations of the narrow-band method, which offer more precise results for wide-band processes <xref ref-type="bibr" rid="bib1.bibx3 bib1.bibx2" id="paren.9"/>. They often follow an empirical approach and are precise when the analysed load is similar to the training data. Among these empirical solutions for frequency-domain fatigue assessment, Dirlik's work <xref ref-type="bibr" rid="bib1.bibx5" id="paren.10"/> is one of the most accurate and widely accepted ones. It is specifically designed to handle a wide range of frequency content. This method provides an efficient and accurate approach to predicting fatigue life by leveraging the statistical properties of the stress response. Dirlik uses a probabilistic approach to estimate the distribution of stress cycles, deriving an empirical formula for the probability density function (PDF) of stress ranges in a random loading process. Essentially, it uses the spectral properties of the load and the mechanical properties that define the Wöhler curve. The formula accounts for the distribution of peaks and valleys in the stress history, providing a detailed statistical description. The empirical formula for the PDF is given by

          <disp-formula id="Ch1.E2" content-type="numbered"><label>2</label><mml:math id="M10" display="block"><mml:mtable rowspacing="0.2ex" class="split" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mi mathvariant="normal">Dirlik</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="italic">ν</mml:mi><mml:mi>p</mml:mi></mml:msub><mml:msubsup><mml:mi>N</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msubsup><mml:msubsup><mml:mi>S</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mrow><mml:mo>-</mml:mo><mml:mi>k</mml:mi></mml:mrow></mml:msubsup><mml:mo>(</mml:mo><mml:msub><mml:mi>m</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:msup><mml:mo>)</mml:mo><mml:mstyle scriptlevel="+1"><mml:mfrac><mml:mi>k</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle></mml:msup><mml:mo mathsize="1.5em">[</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:msup><mml:mi>Q</mml:mi><mml:mi>k</mml:mi></mml:msup><mml:mi mathvariant="normal">Γ</mml:mi><mml:mo>(</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mi>k</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:msup><mml:mn mathvariant="normal">2</mml:mn><mml:mstyle scriptlevel="+1"><mml:mfrac><mml:mi>k</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle></mml:msup><mml:mi mathvariant="normal">Γ</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi>k</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced><mml:mo>(</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>|</mml:mo><mml:mi>R</mml:mi><mml:msup><mml:mo>|</mml:mo><mml:mi>k</mml:mi></mml:msup><mml:mo>+</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">3</mml:mn></mml:msub><mml:mo>)</mml:mo><mml:mo mathsize="1.5em">]</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

        where <inline-formula><mml:math id="M11" display="inline"><mml:mi>Q</mml:mi></mml:math></inline-formula> is a parameter related to the peak factor, which is derived from the ratio of higher-order spectral moments and characterises the non-Gaussianity of the stress process, and <inline-formula><mml:math id="M12" display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula> is the mean value of the stress process normalised by its standard deviation, describing the relative location of the process mean concerning the stress amplitude.  <inline-formula><mml:math id="M13" display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M14" display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>, and <inline-formula><mml:math id="M15" display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">3</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> are empirical expressions derived by <xref ref-type="bibr" rid="bib1.bibx5" id="text.11"/> that depend on the spectral moments

          <disp-formula id="Ch1.E3" content-type="numbered"><label>3</label><mml:math id="M16" display="block"><mml:mrow><mml:msub><mml:mi>m</mml:mi><mml:mi>n</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:munderover><mml:mo movablelimits="false">∫</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mi mathvariant="normal">∞</mml:mi></mml:munderover><mml:msup><mml:mi mathvariant="italic">ω</mml:mi><mml:mi>n</mml:mi></mml:msup><mml:mi>S</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mi mathvariant="normal">d</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math id="M17" display="inline"><mml:mi>n</mml:mi></mml:math></inline-formula> is the order of the spectral moment, and <inline-formula><mml:math id="M18" display="inline"><mml:mrow><mml:mi>S</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the spectrum of the mechanical load.</p>
</sec>
<sec id="Ch1.S3">
  <label>3</label><title>Generation of fatigue-based specifications for the design of controllers</title>
      <p id="d2e621">The use of controllers in dynamic systems primarily aims to modify the behaviour of the system to achieve certain operational objectives. In this context, the design of the controller is based on a constraint known as the control specification.</p>
      <p id="d2e624">In many design methodologies, this specification is expressed as a desired closed-loop frequency response, <inline-formula><mml:math id="M19" display="inline"><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mi>y</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. In the specific case of wind turbines, closed-loop functions allow for the description of the wind's effect on relevant variables, such as the generator's rotational speed or critical mechanical loads that determine the system's lifespan. For example, the effect of wind on the generator speed (<inline-formula><mml:math id="M20" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="normal">g</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>) is described by the closed-loop transfer function

          <disp-formula id="Ch1.E4" content-type="numbered"><label>4</label><mml:math id="M21" display="block"><mml:mrow><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="normal">g</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mi>W</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="normal">g</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mi>W</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mi>C</mml:mi><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="normal">g</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="italic">β</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        and the effect of wind on the tower base load (MyT) is given by

          <disp-formula id="Ch1.E5" content-type="numbered"><label>5</label><mml:math id="M22" display="block"><mml:mrow><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi mathvariant="normal">MyT</mml:mi><mml:mo>,</mml:mo><mml:mi>W</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi mathvariant="normal">MyT</mml:mi><mml:mo>,</mml:mo><mml:mi>W</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>+</mml:mo><mml:mfenced open="(" close=")"><mml:mrow><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="normal">g</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="italic">β</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi mathvariant="normal">MyT</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">β</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>+</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="normal">g</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mi>W</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi mathvariant="normal">MyT</mml:mi><mml:mo>,</mml:mo><mml:mi>W</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mfenced><mml:mo>⋅</mml:mo><mml:mi>C</mml:mi><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mi>C</mml:mi><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mi mathvariant="normal">g</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="italic">β</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math id="M23" display="inline"><mml:mrow><mml:msub><mml:mi>P</mml:mi><mml:mi>y</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mi>u</mml:mi></mml:mrow></mml:math></inline-formula> is the open-loop transfer function that relates input <inline-formula><mml:math id="M24" display="inline"><mml:mrow><mml:mi>u</mml:mi><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> to output <inline-formula><mml:math id="M25" display="inline"><mml:mrow><mml:mi>y</mml:mi><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d2e994">However, setting specifications directly on mechanical loads is complex. This complexity arises due to the gap between the design environment – typically based on linear models in the frequency domain – and the controller performance evaluation environment, where metrics are based on cycle counting and fatigue damage estimation from time series obtained via simulation. As a result, iterative trial-and-error-based design strategies are often employed. In such cases, fatigue evaluation is conducted a posteriori for each controller version, which prolongs the design process.</p>
      <p id="d2e997">Methods such as that of <xref ref-type="bibr" rid="bib1.bibx5" id="text.12"/> (Eqs. <xref ref-type="disp-formula" rid="Ch1.E2"/> and <xref ref-type="disp-formula" rid="Ch1.E3"/>) help accelerate these iterative cycles, as they provide a fatigue damage estimate from the output signal spectrum <inline-formula><mml:math id="M26" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mi mathvariant="normal">MyT</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. This spectrum, in turn, can be calculated using the closed-loop transfer function associated with the considered controller as follows:

          <disp-formula id="Ch1.E6" content-type="numbered"><label>6</label><mml:math id="M27" display="block"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mi mathvariant="normal">MyT</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi mathvariant="normal">MyT</mml:mi><mml:mo>,</mml:mo><mml:mi>W</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:msup><mml:mo>|</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:msub><mml:mi>S</mml:mi><mml:mi mathvariant="normal">W</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math id="M28" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mi mathvariant="normal">W</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the rotor effective wind spectrum.</p>
      <p id="d2e1101">Using the method of <xref ref-type="bibr" rid="bib1.bibx5" id="text.13"/>, along with Eqs. (<xref ref-type="disp-formula" rid="Ch1.E5"/>) and (<xref ref-type="disp-formula" rid="Ch1.E6"/>), improves the efficiency of the design process by eliminating the need to perform aeroelastic simulations for each iteration. However, it does not remove the iterative nature of the design–validation–redesign cycle. From a control engineering perspective, it is preferable to have ex ante specifications that explicitly relate the impact of a new specification to the expected fatigue damage. This way, once the control specifications are selected, the chosen design method would  directly result in a satisfactory controller.</p>
      <p id="d2e1111">A straightforward way to represent the effect of modifying the specification on the expected fatigue is to compute the sensitivity of damage to variations in the output spectrum. Due to the complexity of Eq. (<xref ref-type="disp-formula" rid="Ch1.E2"/>), a numerical approximation of the derivative is used, based on an initial control configuration <inline-formula><mml:math id="M29" display="inline"><mml:mrow><mml:msub><mml:mi>C</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, which results in an output spectrum <inline-formula><mml:math id="M30" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:mi>y</mml:mi><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and fatigue damage <inline-formula><mml:math id="M31" display="inline"><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>. For greater generality, the initial configuration may also be the open-loop system (<inline-formula><mml:math id="M32" display="inline"><mml:mrow><mml:msub><mml:mi>C</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:math></inline-formula>).</p>
      <p id="d2e1193">The sensitivity of fatigue damage, <inline-formula><mml:math id="M33" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mi mathvariant="italic">%</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, is calculated as

          <disp-formula id="Ch1.E7" content-type="numbered"><label>7</label><mml:math id="M34" display="block"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mi mathvariant="italic">%</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="italic">ω</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:msub><mml:mi mathvariant="italic">ω</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>⋅</mml:mo><mml:mn mathvariant="normal">100</mml:mn></mml:mrow></mml:math></disp-formula>

        by introducing a 1 % amplitude reduction in <inline-formula><mml:math id="M35" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:mi>y</mml:mi><mml:mi>y</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> at frequency <inline-formula><mml:math id="M36" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ω</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> for the whole frequency range in which the input spectrum is defined. There, <inline-formula><mml:math id="M37" display="inline"><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:msub><mml:mi mathvariant="italic">ω</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> is the damage associated with the modified spectrum. The function <inline-formula><mml:math id="M38" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mi mathvariant="italic">%</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> allows us to identify the frequency range where modifying the specification will have the greatest impact.</p>
      <p id="d2e1334">Then, the change in fatigue damage caused by a specification modification can be calculated as

          <disp-formula id="Ch1.E8" content-type="numbered"><label>8</label><mml:math id="M39" display="block"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mi>y</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:munder><mml:mo movablelimits="false">∑</mml:mo><mml:mi mathvariant="italic">ω</mml:mi></mml:munder><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mi mathvariant="italic">%</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mi>y</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math id="M40" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mi>y</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the spectral variation caused by a change in the specification and can be calculated as

          <disp-formula id="Ch1.E9" content-type="numbered"><label>9</label><mml:math id="M41" display="block"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mi>y</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mrow><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>-</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mi>y</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>S</mml:mi><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mrow><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>⋅</mml:mo><mml:mn mathvariant="normal">100</mml:mn><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

        Finally, Eq. (<xref ref-type="disp-formula" rid="Ch1.E8"/>) can be directly linked to the specification through the expression

          <disp-formula id="Ch1.E10" content-type="numbered"><label>10</label><mml:math id="M42" display="block"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mi>y</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:munder><mml:mo movablelimits="false">∑</mml:mo><mml:mi mathvariant="italic">ω</mml:mi></mml:munder><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mi mathvariant="italic">%</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>|</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>y</mml:mi><mml:mi>u</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:msup><mml:mo>|</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>-</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mi>W</mml:mi><mml:mi>y</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:msup><mml:mo>|</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow><mml:mrow><mml:mo>|</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>y</mml:mi><mml:mi>u</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:msup><mml:mo>|</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>⋅</mml:mo><mml:mn mathvariant="normal">100</mml:mn><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

        In this way, the sensitivity <inline-formula><mml:math id="M43" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mi mathvariant="italic">%</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> helps design the specification <inline-formula><mml:math id="M44" display="inline"><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mi mathvariant="normal">MyT</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> in two ways. First, it shows the range of frequencies in which a change in the specification has a greater impact on fatigue. Moreover, it allows us to quantify the impact of changing the specification on the fatigue by applying Eq. (<xref ref-type="disp-formula" rid="Ch1.E10"/>).</p>
</sec>
<sec id="Ch1.S4">
  <label>4</label><title>Validation for the 15 MW reference wind turbine</title>
      <p id="d2e1688">The validation of the method proposed in this work is performed by using quantitative feedback theory (QFT) for the design of linear controllers based on the fatigue specifications. The performance of the controllers is evaluated by their simulation in aeroelastic code <xref ref-type="bibr" rid="bib1.bibx14" id="paren.14"/> and the post-processing of the resulting time series with a rainflow-counting algorithm. For that purpose, the 15 MW reference wind turbine with the Reference Open-Source Controller (ROSCO) <xref ref-type="bibr" rid="bib1.bibx1" id="paren.15"/> is used.</p>
<sec id="Ch1.S4.SS1">
  <label>4.1</label><title>System description</title>
      <p id="d2e1704">The wind turbine model used for this study is the IEA 15 MW reference wind turbine <xref ref-type="bibr" rid="bib1.bibx7" id="paren.16"/>. This turbine is an offshore, monopile model with three blades and a horizontal axis. The most relevant parameters of the model are summarised in Table <xref ref-type="table" rid="T1"/>.</p>

<table-wrap id="T1"><label>Table 1</label><caption><p id="d2e1715">Value of the main parameters of the 15 MW reference wind turbine.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="2">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Parameter</oasis:entry>
         <oasis:entry colname="col2">Value</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">Rotor diameter</oasis:entry>
         <oasis:entry colname="col2">240 m</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Hub height</oasis:entry>
         <oasis:entry colname="col2">150 m</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Cut-in rotor speed</oasis:entry>
         <oasis:entry colname="col2">5 rpm</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Rated rotor speed</oasis:entry>
         <oasis:entry colname="col2">7.56 rpm</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d2e1778">Initially, this wind turbine operates using the Reference Open-Source Controller (ROSCO) as a baseline control, which was developed to offer a modular control structure, with industry-level performance and compatibility with the OpenFAST design and simulation environment. ROSCO includes  control strategies corresponding to the main operating regions of a wind turbine, from low-speed winds (Region 1) to above-rated wind speed (Region 3). There are two main control strategies, corresponding to pitch and torque controllers. Torque control is especially relevant at lower wind speeds, in which maximal power production is sought. ROSCO offers different strategies for below-rated operation, among which the quadratic control law has been chosen. Pitch control is used at above-rated wind speeds to ensure a constant generator speed and nominal power production.</p>
      <p id="d2e1782">For the purpose of this work, which is linear fatigue assessment, the analysis focuses on the above-rated operation. There, the control strategy consists of a set of linear controllers with scheduled gains to face the nonlinear dynamics of the wind turbine. Typically, these controllers follow a PI (proportional–integral) structure in which the integrator rejects the effect of wind in the lower frequencies, and the zero value increases the phase margin of the system. Figure <xref ref-type="fig" rid="F1"/> shows the magnitude plot of the PI controller (lower plot) operating at a 19 m s<sup>−1</sup> wind speed and its effect on the generator speed and tower base load. The main effect of the controller can be appreciated in the generator speed plot. There, the red line, corresponding to ROSCO, shows the attenuation of the effect of wind on the generator speed at the lower frequencies.</p>
      <p id="d2e1799">Additionally, ROSCO includes switching, filtering, and load reduction strategies, such as  active tower damping (ATD). The ATD strategy reduces tower base fatigue by actively damping the first fore–aft natural frequency at the tower base. The ATD has been deactivated in the baseline control version in order to test the proposed method for the design of control specifications and, more specifically, its accuracy when predicting the quantitative impact of the new specification. As a result, a significant reduction in fatigue is expected regardless of the chosen controller design methodology.</p>
      <p id="d2e1802">The open-loop linear models of the wind turbine were obtained with the aid of OpenFAST's linearisation tool, and the closed-loop models were calculated following the structure represented in Fig. <xref ref-type="fig" rid="F2"/>.</p>

      <fig id="F1" specific-use="star"><label>Figure 1</label><caption><p id="d2e1809">Effect of ROSCO on the dynamics of the system. The upper plot shows the effect of the PI controller on the generator speed, which is more relevant at the lower frequencies. The middle plot shows the effect of the controller on the tower base bending moment. Lastly, the lower plot shows the magnitude of the feedback controller.</p></caption>
          <graphic xlink:href="https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026-f01.png"/>

        </fig>

      <fig id="F2" specific-use="star"><label>Figure 2</label><caption><p id="d2e1820">Block diagram of the control structure.</p></caption>
          <graphic xlink:href="https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026-f02.png"/>

        </fig>

</sec>
<sec id="Ch1.S4.SS2">
  <label>4.2</label><title>QFT fundamentals</title>
      <p id="d2e1837">Quantitative feedback theory is a controller design methodology that allows for the obtainment of robust, multivariable, and multi-objective solutions <xref ref-type="bibr" rid="bib1.bibx6" id="paren.17"/>. The main steps in the design process are as follows: <list list-type="order"><list-item>
      <p id="d2e1845"><italic>Obtaining the model of the plant</italic>. QFT is based on the use of linear, frequency-domain models of the system. Robustness is achieved by using uncertain models during the design.</p></list-item><list-item>
      <p id="d2e1851"><italic>Selecting the design frequencies</italic>. QFT design is performed on a discrete set of frequencies as a reference. These frequencies should cover all the relevant dynamics of the system.</p></list-item><list-item>
      <p id="d2e1857"><italic>Choosing the specifications</italic>. In the context of QFT design for wind turbine controllers, control specifications are typically upper bounds on the closed-loop disturbance rejection function of the different control objectives. These upper bounds can be constant values or transfer functions and should ideally be linked to performance indicators such as the generator speed standard deviation or the mechanical fatigue of driving components. Moreover, a stability specification is imposed as an upper bound on the complementary sensitivity function.</p></list-item><list-item>
      <p id="d2e1863"><italic>Generation of bounds</italic>. At each design frequency, the regions of all controllers meeting each specification are found in the complex plane. The boundary of these regions in the complex plane, multiplied by the nominal plant, is called a bound. One bound is obtained per specification and design frequency.</p></list-item><list-item>
      <p id="d2e1869"><italic>Controller synthesis</italic>. Also known as loop shaping, controller synthesis consists of tuning the controller parameters until reaching the open-loop transfer function that lies within the bounds at every design frequency.</p></list-item><list-item>
      <p id="d2e1875"><italic>Checking the specifications</italic>. The first validation step uses the uncertain linear model of the plant to ensure that specifications are met at every frequency and not only at the design ones.</p></list-item><list-item>
      <p id="d2e1881"><italic>Simulation</italic>. If the linear uncertain model of the plane has been derived from a more complex model (i.e. a nonlinear one), as is the case for wind turbines, a second evaluation of the performance of the controllers is performed via simulation.</p></list-item></list> The whole process is carried out with the aid of the QFT Toolbox <xref ref-type="bibr" rid="bib1.bibx21" id="paren.18"/>, which includes graphical tools for the design of specifications and the loop-shaping process. QFT is inherently an iterative method, especially when several controllers are being tuned at the same time, and requires some practice in the loop-shaping stage before a successful design can be obtained. On the other hand, it is a versatile and transparent methodology that grants engineers full control of the design process.</p>
</sec>
<sec id="Ch1.S4.SS3">
  <label>4.3</label><title>Controller design</title>
      <p id="d2e1899">The design of controllers starts with the design of the control specifications based on the procedure presented in Sect. 3. The first step consists of obtaining a set of simulations of the system with the baseline control. In particular, four wind seeds with a length of 600 s have been simulated at each operating point. Then, these simulations are used to calculate the output spectra and an initial fatigue evaluation. Lastly, the sensitivity of fatigue to changes in the tower base load spectrum <inline-formula><mml:math id="M46" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mi mathvariant="italic">%</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is calculated based on the simulation results.</p>

      <fig id="F3" specific-use="star"><label>Figure 3</label><caption><p id="d2e1917">The different aspects of the relation between wind and the tower base load. The upper plot shows the magnitude of the closed-loop transfer function between wind and load <inline-formula><mml:math id="M47" display="inline"><mml:mrow><mml:mo>|</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi mathvariant="normal">MyT</mml:mi><mml:mo>,</mml:mo><mml:mi>W</mml:mi></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo><mml:mo>|</mml:mo></mml:mrow></mml:math></inline-formula>. The middle plot, which represents the load power spectrum <inline-formula><mml:math id="M48" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mi mathvariant="normal">MyT</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, shows how the biggest amplitudes of the load appear at the lower frequencies. The lower plot represents the fatigue sensitivity <inline-formula><mml:math id="M49" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mi mathvariant="italic">%</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>.</p></caption>
          <graphic xlink:href="https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026-f03.png"/>

        </fig>

      <p id="d2e1984">Figure <xref ref-type="fig" rid="F3"/> shows the relation between the magnitude Bode plot, the load spectrum, and the variation in fatigue for the simulations corresponding to a 19 m s<sup>−1</sup> mean wind speed. While the Bode plot only holds information on the system response, the spectrum of the load includes information on the disturbance. Moreover, as the spectrum was obtained from simulation data, a peak can be observed at around 2.3 rad s<sup>−1</sup>, which corresponds to the 3P frequency. Lastly, the lower plot shows how the lower frequencies have a greater impact on fatigue, but the peaks corresponding to the first fore–aft mode of the tower and the 3P frequency are also relatively relevant.</p>

      <fig id="F4" specific-use="star"><label>Figure 4</label><caption><p id="d2e2016">Design of the control specification for an operating point corresponding to a 19 m s<sup>−1</sup> wind speed. The control specification has a similar magnitude to ROSCO  at all frequencies but the one surrounding the first fore–aft mode of the tower (1.1 rad s<sup>−1</sup>). </p></caption>
          <graphic xlink:href="https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026-f04.png"/>

        </fig>

      <p id="d2e2049">The design of the control specification <inline-formula><mml:math id="M54" display="inline"><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mi>y</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>s</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, which takes the closed-loop transfer function produced by the baseline controller  as a starting point, is based on the information provided by function <inline-formula><mml:math id="M55" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>D</mml:mi><mml:mi mathvariant="italic">%</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ω</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. Even though the lower frequencies have the greatest impact on fatigue (see the lower plot in Fig. <xref ref-type="fig" rid="F4"/>), the designer must keep in mind that the main control objective is to have a constant power production, for which the lower frequencies are key. As a consequence, the control effort is located around the first fore–aft mode of the tower, which appears at approximately 1.1 rad s<sup>−1</sup>. The control specification was obtained with the aid of the lpshape function of the QFT Toolbox, targeting a fatigue reduction of 15 %. A set of notch filters was used to reduce the magnitude of the specifications at the chosen frequencies until the desired reduction in fatigue was obtained or improved. The linear fatigue estimation for the specifications at different operating points appears in Table <xref ref-type="table" rid="T2"/>.</p>
      <p id="d2e2104">As already mentioned, power production and, in turn, generator speed regulation are the most relevant objectives in the design of the pitch controllers. As a consequence, they must also be included in the design specifications. In this case, the closed-loop transfer function (wind to generator speed) obtained with ROSCO is used as a specification. This way, a performance similar to that of the baseline controller is expected in terms of generator speed regulation.</p>

      <fig id="F5" specific-use="star"><label>Figure 5</label><caption><p id="d2e2109">Bounds for the loop shaping of the main feedback pitch controller. The main characteristic of this controller is the presence of an integrator to eliminate steady-state error and the use of low-frequency poles to increase magnitude and phase below 1 rad s<sup>−1</sup>. The open-loop nominal transfer function meets all bounds at all frequencies.</p></caption>
          <graphic xlink:href="https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026-f05.png"/>

        </fig>

      <fig id="F6" specific-use="star"><label>Figure 6</label><caption><p id="d2e2132">Bounds for the loop shaping of the ATD controller. This controller has a pole of 0.3276 rad s<sup>−1</sup> and a zero at 4.357 rad s<sup>−1</sup>. The main control effort of the ATD strategy appears close to 1 rad s<sup>−1</sup> at the first fore–aft mode of the tower.</p></caption>
          <graphic xlink:href="https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026-f06.png"/>

        </fig>

      <p id="d2e2178">Once the control specifications for the two control objectives have been designed, the bounds for the controllers are obtained using the procedure described in Sect. 4.2. The bounds are obtained using function genbounds, and the design of the controllers is performed with the aid of lpshape. lpshape is a graphical design tool that represents the bounds and the open-loop nominal transfer functions in the Nichols plot (gain in decibel against phase in degrees). The bounds are the limits between the allowed and forbidden values for the open-loop nominal transfer function. They can have different colours, depending on their corresponding frequency, and solid and dashed lines, indicating lower and upper limits. The open-loop nominal transfer function is represented by the solid black line and a set of circular markers at the design frequencies, with the same colour as their corresponding bounds. The design is performed by modifying the position of the markers by adding zeros and poles to the controller.</p>
      <p id="d2e2181">As two different controllers have been designed for each operating point – the feedback pitch controller and the ATD – the design process is iterative. Due to the lack of the ATD controller in the baseline configuration, the design process begins with the tuning of a preliminary ATD controller. Then, several iterations are performed until specifications are met. Figures <xref ref-type="fig" rid="F5"/> and <xref ref-type="fig" rid="F6"/> show the final design of the pitch and ATD controllers for the operating point corresponding to a 19 m s<sup>−1</sup> average wind speed. At this wind speed, the pitch controller is

            <disp-formula id="Ch1.E11" content-type="numbered"><label>11</label><mml:math id="M62" display="block"><mml:mrow><mml:msub><mml:mi>C</mml:mi><mml:mi mathvariant="italic">β</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>s</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">4.8167</mml:mn><mml:mo>(</mml:mo><mml:mi>s</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">0.6</mml:mn><mml:mo>)</mml:mo><mml:mo>(</mml:mo><mml:msup><mml:mi>s</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>+</mml:mo><mml:mn mathvariant="normal">0.7337</mml:mn><mml:mi>s</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">0.2441</mml:mn><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mo>(</mml:mo><mml:msup><mml:mi>s</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>+</mml:mo><mml:mn mathvariant="normal">1.872</mml:mn><mml:mi>s</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">2.306</mml:mn><mml:mo>)</mml:mo><mml:mo>(</mml:mo><mml:msup><mml:mi>s</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>+</mml:mo><mml:mn mathvariant="normal">2.297</mml:mn><mml:mi>s</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">26.67</mml:mn><mml:mo>)</mml:mo></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

          The ATD controller at the same operating point is

            <disp-formula id="Ch1.E12" content-type="numbered"><label>12</label><mml:math id="M63" display="block"><mml:mrow><mml:msub><mml:mi>C</mml:mi><mml:mi mathvariant="normal">ATD</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>s</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">0.014187</mml:mn><mml:mo>(</mml:mo><mml:mi>s</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">4.357</mml:mn><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">0.3276</mml:mn></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

          The bounds are met tightly at frequencies surrounding 1 rad s<sup>−1</sup> and with a greater margin for lower frequencies, as seen in Figs. <xref ref-type="fig" rid="F5"/> and <xref ref-type="fig" rid="F6"/>. A similar conclusion can be inferred from the Bode plots presented in Fig. <xref ref-type="fig" rid="F7"/>. There, the markers represent the design frequencies, which are used for the calculation of bounds and the loop-shaping process. As already anticipated, at frequencies below 1 rad s<sup>−1</sup>, at least one of the specifications is met with some margin. At higher frequencies, the tower base load is exactly equal to the specification. With a simple enough control structure, a good result is expected in between design frequencies. Figure <xref ref-type="fig" rid="F7"/> shows that the QFT controller provides a poorer response than the specification between 0.8 and 1 and 2 and 5 rad s<sup>−1</sup> for the tower base load. However, the overall response is better than the specification and shows a significant improvement concerning ROSCO.</p>

      <fig id="F7" specific-use="star"><label>Figure 7</label><caption><p id="d2e2393">Magnitude Bode plot for ROSCO (blue), the design specifications (red), and the QFT controller (yellow) for the generator speed (upper plot) and the tower base load (lower plot). The purple dots show the design frequencies in which the specifications are always met. A simple control structure guarantees that the response between design frequencies is smooth and that specifications are met most of the times.</p></caption>
          <graphic xlink:href="https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026-f07.png"/>

        </fig>

</sec>
<sec id="Ch1.S4.SS4">
  <label>4.4</label><title>Result analysis</title>
      <p id="d2e2410">Once a pitch controller and an ATD controller have been designed for each operating point in the above-rated region (11 to 25 m s<sup>−1</sup>), they are integrated into the aeroelastic simulator using its Simulink interface. Due to the different structures of the controllers at different operating points, an output blending strategy was used for the interpolation between controllers. A filtered pitch signal was used as an interpolation variable.</p>
      <p id="d2e2425">At each operating point, four different seeds were used for the generation of turbulent wind fields to ensure a reasonable trade-off between result variability due to turbulence and computation time. Each wind file has a 600 s length and a class B turbulent intensity according to the Normal Turbulence Model (NTM; <xref ref-type="bibr" rid="bib1.bibx9" id="altparen.19"/>) and the IEC 61400:1-2019 standard. Wind fields were generated using the  TurbSim tool <xref ref-type="bibr" rid="bib1.bibx10" id="paren.20"/>.</p>

      <fig id="F8" specific-use="star"><label>Figure 8</label><caption><p id="d2e2436">Validation of the correspondence between linear (dashed) and nonlinear (solid) models with ROSCO (blue) and the QFT  controller (red). Besides good matching between both models, the effect of the QFT controllers can be observed in the lower magnitude of the spectra, especially in frequencies below 0.5 rad s<sup>−1</sup> and in the peak corresponding to the first fore–aft mode of the tower (close to 1 rad s<sup>−1</sup>).</p></caption>
          <graphic xlink:href="https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026-f08.png"/>

        </fig>

      <p id="d2e2470">The first step in the analysis of the results consists of the validation of the relation between the linear and the nonlinear models. Figure <xref ref-type="fig" rid="F8"/> shows a comparison between the theoretical and simulation spectra of the generator speed and tower base bending moment with the baseline and the QFT controllers at an operating point of 19 m s<sup>−1</sup>. The theoretical spectra were obtained using the linear model of the wind turbine and the theoretical spectrum of rotor effective wind speed. The simulation spectra were obtained by applying the Welch method to the time series obtained from OpenFAST. Two main conclusions can be drawn from this figure: (i) the QFT controller outperforms ROSCO for both outputs, and (ii) there exists  good correspondence between the estimation obtained from the linear model and the results of the nonlinear simulation. This second fact is critical for the performance of the proposed fatigue estimation method.</p>

<table-wrap id="T2" specific-use="star"><label>Table 2</label><caption><p id="d2e2490">Comparison of the main performance indicators for ROSCO and the QFT controller.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="8">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="right"/>
     <oasis:colspec colnum="3" colname="col3" align="right"/>
     <oasis:colspec colnum="4" colname="col4" align="right"/>
     <oasis:colspec colnum="5" colname="col5" align="right"/>
     <oasis:colspec colnum="6" colname="col6" align="right"/>
     <oasis:colspec colnum="7" colname="col7" align="right"/>
     <oasis:colspec colnum="8" colname="col8" align="right"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Performance</oasis:entry>
         <oasis:entry rowsep="1" namest="col2" nameend="col7" align="center">Operating point (m s<sup>−1</sup>) </oasis:entry>
         <oasis:entry rowsep="1" colname="col8"/>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">parameters</oasis:entry>
         <oasis:entry colname="col2">15</oasis:entry>
         <oasis:entry colname="col3">17</oasis:entry>
         <oasis:entry colname="col4">19</oasis:entry>
         <oasis:entry colname="col5">21</oasis:entry>
         <oasis:entry colname="col6">23</oasis:entry>
         <oasis:entry colname="col7">25</oasis:entry>
         <oasis:entry colname="col8">Mean</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">Generator speed SD</oasis:entry>
         <oasis:entry colname="col2">31.54 %</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M72" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1.91</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M73" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">39.48</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M74" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">48.96</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M75" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">50.07</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col7"><inline-formula><mml:math id="M76" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">52.18</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M77" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.14</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Mean power</oasis:entry>
         <oasis:entry colname="col2">0.47 %</oasis:entry>
         <oasis:entry colname="col3">0.37 %</oasis:entry>
         <oasis:entry colname="col4">0.05 %</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M78" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.17</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M79" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.42</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col7"><inline-formula><mml:math id="M80" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.46</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col8">0.28 %</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Tower base DEL</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M81" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">25.91</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M82" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">22.24</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M83" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">27.75</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M84" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">27.28</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M85" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">34.71</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col7"><inline-formula><mml:math id="M86" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">28.84</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M87" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">25.69</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Pitch activity</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M88" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">8.22</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M89" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.53</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
         <oasis:entry colname="col4">1.13 %</oasis:entry>
         <oasis:entry colname="col5">6.66 %</oasis:entry>
         <oasis:entry colname="col6">1.87 %</oasis:entry>
         <oasis:entry colname="col7">5.43 %</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M90" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2.77</mml:mn></mml:mrow></mml:math></inline-formula> %</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d2e2855">Even though improving the performance of ROSCO is not the main objective of this work, the performance of the QFT controller was studied to understand the possibilities of this design technique and the fatigue-based design of the specifications. The performance of the controllers was evaluated using four main indicators. The standard deviation of the generator speed is used as a measure of the quality of the generator speed regulation. Table <xref ref-type="table" rid="T2"/> shows how the standard deviation is reduced for all operating points but 15 m s<sup>−1</sup>, which is closer to the transition between regions. The mean generated power shows small variations at different operating points that cancel each other out when calculating the total average. As expected from the linear fatigue prediction, the fatigue at the tower base is reduced significantly at all operating points, partly due to the absence of ATD in the baseline controller. Lastly, pitch activity is evaluated using the standard deviation of the collective pitch signal, which is significantly reduced at 15 m s<sup>−1</sup> and then increases for wind speeds from 19 to 25 m s<sup>−1</sup>. A more thorough analysis of the cost of pitch control should be based on the actuator fatigue, where less favourable results would be expected. Mean values have been obtained assuming a Weibull distribution in mean wind with a shape factor of 2.2 and a scale factor of 11.29.</p>
      <p id="d2e2896">Similar information can be perceived in Fig. <xref ref-type="fig" rid="F9"/>, which represents the simulation outputs for a single wind seed with a mean speed of 19 m s<sup>−1</sup>. Both the generator speed and the tower base load show smaller deviations from their mean value for the QFT controller, which accounts for a smaller standard deviation and fatigue respectively. The power mean value is close to 15 MW in both cases. The presence of the ATD controller in the QFT configuration can be observed in the ripple that appears in the pitch signal, accounting for an increased pitch standard deviation.</p>

      <fig id="F9" specific-use="star"><label>Figure 9</label><caption><p id="d2e2915">Time series of relevant variables in an OpenFAST simulation with a mean wind speed of 19 m s<sup>−1</sup>. The standard deviation of generator speed and power is visibly smaller for the QFT controller (red) than for ROSCO (blue). Moreover, the fatigue in the tower base load should also be reduced as the ATD controller mitigates the bigger peaks in the blue line, which do not appear for the QFT controller. Lastly, the lower plot shows that the use of an ATD controller results in an increased high-frequency pitch activity.</p></caption>
          <graphic xlink:href="https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026-f09.png"/>

        </fig>

      <p id="d2e2937">The main result of this work is the design of the specifications on the mechanical loads based on a quantitative indicator of fatigue. Table 3 shows the fatigue reduction promised by the specifications, the linear estimation of the fatigue reduction for the new controllers, and the actual fatigue reduction calculated using a rainflow-counting algorithm. Two main conclusions can be drawn from the data: (i) the fatigue predicted by the linear model is always smaller than that promised by the specifications except from the 15 m s<sup>−1</sup> operating point, and (ii) the deviation between the linear prediction and the rainflow-based fatigue evaluation is smaller than 2 % for all operating points, having an average value of 1.07 %.</p>

<table-wrap id="T3" specific-use="star"><label>Table 3</label><caption><p id="d2e2955">Fatigue reduction at different operating points. The table includes information on the fatigue reduction promised by the specification, the reduction estimated with the help of linear models, and the actual fatigue reduction as evaluated with a rainflow-counting algorithm.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="8">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="right"/>
     <oasis:colspec colnum="3" colname="col3" align="right"/>
     <oasis:colspec colnum="4" colname="col4" align="right"/>
     <oasis:colspec colnum="5" colname="col5" align="right"/>
     <oasis:colspec colnum="6" colname="col6" align="right"/>
     <oasis:colspec colnum="7" colname="col7" align="right"/>
     <oasis:colspec colnum="8" colname="col8" align="right"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Fatigue</oasis:entry>
         <oasis:entry rowsep="1" namest="col2" nameend="col7" align="center">Operating point (m s<sup>−1</sup>) </oasis:entry>
         <oasis:entry rowsep="1" colname="col8"/>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">estimation</oasis:entry>
         <oasis:entry colname="col2">15</oasis:entry>
         <oasis:entry colname="col3">17</oasis:entry>
         <oasis:entry colname="col4">19</oasis:entry>
         <oasis:entry colname="col5">21</oasis:entry>
         <oasis:entry colname="col6">23</oasis:entry>
         <oasis:entry colname="col7">25</oasis:entry>
         <oasis:entry colname="col8">Mean</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">Specifications</oasis:entry>
         <oasis:entry colname="col2">37.37 %</oasis:entry>
         <oasis:entry colname="col3">10.10 %</oasis:entry>
         <oasis:entry colname="col4">11.78 %</oasis:entry>
         <oasis:entry colname="col5">20.55 %</oasis:entry>
         <oasis:entry colname="col6">35.97 %</oasis:entry>
         <oasis:entry colname="col7">30.35 %</oasis:entry>
         <oasis:entry colname="col8"/>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Linear prediction</oasis:entry>
         <oasis:entry colname="col2">24.81 %</oasis:entry>
         <oasis:entry colname="col3">24.15 %</oasis:entry>
         <oasis:entry colname="col4">28.60 %</oasis:entry>
         <oasis:entry colname="col5">27.93 %</oasis:entry>
         <oasis:entry colname="col6">35.12 %</oasis:entry>
         <oasis:entry colname="col7">30.36 %</oasis:entry>
         <oasis:entry colname="col8"/>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Rainflow evaluation</oasis:entry>
         <oasis:entry colname="col2">25.91 %</oasis:entry>
         <oasis:entry colname="col3">22.24 %</oasis:entry>
         <oasis:entry colname="col4">27.75 %</oasis:entry>
         <oasis:entry colname="col5">27.28 %</oasis:entry>
         <oasis:entry colname="col6">34.71 %</oasis:entry>
         <oasis:entry colname="col7">28.84 %</oasis:entry>
         <oasis:entry colname="col8"/>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Estimation deviation</oasis:entry>
         <oasis:entry colname="col2">1.1 %</oasis:entry>
         <oasis:entry colname="col3">1.91 %</oasis:entry>
         <oasis:entry colname="col4">0.85 %</oasis:entry>
         <oasis:entry colname="col5">0.65 %</oasis:entry>
         <oasis:entry colname="col6">0.41 %</oasis:entry>
         <oasis:entry colname="col7">1.52 %</oasis:entry>
         <oasis:entry colname="col8">1.07 %</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d2e3146">Figure <xref ref-type="fig" rid="F10"/> shows a graphical representation of the accuracy of the linear approximation of fatigue by plotting the frequency-domain estimation of fatigue and the time-domain evaluation against the mean wind speed. Even though the achieved fatigue reduction varies significantly at the different operating points, the estimation error remains much smaller than the fatigue variation.</p>

      <fig id="F10" specific-use="star"><label>Figure 10</label><caption><p id="d2e3153">Graphical comparison of the linear fatigue estimation (linear prediction) and the rainflow-based fatigue assessment (rainflow evaluation).</p></caption>
          <graphic xlink:href="https://wes.copernicus.org/articles/11/405/2026/wes-11-405-2026-f10.png"/>

        </fig>

</sec>
</sec>
<sec id="Ch1.S5" sec-type="conclusions">
  <label>5</label><title>Conclusions</title>
      <p id="d2e3172">This article presents a method for designing control specifications based on mechanical fatigue. By having a priori information about the expected fatigue, the number of design iterations and the time spent on aeroelastic simulations are reduced, making the control design workflow smoother.</p>
      <p id="d2e3175">The method has been validated with the design of pitch controllers for the 15 MW reference wind turbine. More specifically, the feedback pitch controller has been redesigned, and  active tower damping has been introduced to improve the performance of the ROSCO PI. With the aid of  linear fatigue estimation and the design of specifications, fatigue has been reduced by 22 % to 36 % at operating points ranging from 15 to 25 m s<sup>−1</sup> mean wind speed. Due to the good correspondence between the linear fatigue prediction and the fatigue evaluation obtained with a rainflow algorithm (under 2 %), a single iteration in the nonlinear simulation step is required. Consequently, the design process has been accelerated significantly by reducing the number of required simulations to two sets.</p>
      <p id="d2e3190">The error present in the fatigue estimation can be attributed to three different factors. The first one is that the results provided by the linear model do not exactly match the ones provided by the nonlinear simulator. In addition to the numerous nonlinearities present in the realistic model of the wind turbine and the complete control structure, other phenomena, such as the 3P frequency and the spatial variation in wind, cannot be taken into account by a linear approximation. The second factor is the difference between time-domain and frequency-domain fatigue evaluation methods. The rainflow-counting algorithm has proven to be the best approximation for fatigue estimation and is the reference in the standard. On the other hand, due to the fundamental empirical nature of frequency-domain methods, their performance varies significantly depending on the characteristics of the load and the system. While the method of <xref ref-type="bibr" rid="bib1.bibx5" id="text.21"/> has proven to provide a good result, the search for a more accurate method remains open. Lastly, the proposed method is based on a linear approximation to fatigue estimation, which can introduce errors.</p>
      <p id="d2e3196">All in all, the use of linear models for specification design has proven to be useful, and their applications can be extended. On the one hand, the use of this frequency-domain estimation of fatigue could be included in the iterative design of other wind turbine components, such as structural elements. On the other hand, their use could also be studied for different controller design methodologies, the most obvious one being <inline-formula><mml:math id="M99" display="inline"><mml:mrow><mml:msub><mml:mi>H</mml:mi><mml:mi mathvariant="normal">∞</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>. Lastly, the full potential of the methodology could be achieved in multi-objective design, in which the role of the control system in the fatigue of different elements could be linked to the business case of the wind turbine.</p>
</sec>

      
      </body>
    <back><notes notes-type="codeavailability"><title>Code availability</title>

      <p id="d2e3214">The methods and algorithms implemented in the code are described in detail in the paper to support transparency and reproducibility.</p>
  </notes><notes notes-type="dataavailability"><title>Data availability</title>

      <p id="d2e3220">The data used in this study are simulated using open access tools. All models, parameters, and procedures required to reproduce the data are described in the manuscript.</p>
  </notes><notes notes-type="authorcontribution"><title>Author contributions</title>

      <p id="d2e3226">IMM: conception, simulation data collection, writing. JA: conception, writing. DLL: simulation data collection, proofreading. JE: conception, proofreading.</p>
  </notes><notes notes-type="competinginterests"><title>Competing interests</title>

      <p id="d2e3232">The contact author has declared that none of the authors has any competing interests.</p>
  </notes><notes notes-type="disclaimer"><title>Disclaimer</title>

      <p id="d2e3238">Publisher's note: Copernicus Publications remains neutral with regard to jurisdictional claims made in the text, published maps, institutional affiliations, or any other geographical representation in this paper. While Copernicus Publications makes every effort to include appropriate place names, the final responsibility lies with the authors. Views expressed in the text are those of the authors and do not necessarily reflect the views of the publisher.</p>
  </notes><notes notes-type="sistatement"><title>Special issue statement</title>

      <p id="d2e3244">This article is part of the special issue “NAWEA/WindTech 2024”. It is a result of the NAWEA/WindTech 2024, New Brunswick, United States, 30 October–1 November 2024.</p>
  </notes><notes notes-type="reviewstatement"><title>Review statement</title>

      <p id="d2e3250">This paper was edited by Jan-Willem van Wingerden and reviewed by two anonymous referees.</p>
  </notes><ref-list>
    <title>References</title>

      <ref id="bib1.bibx1"><label>Abbas et al.(2022)</label><mixed-citation>Abbas, N. J., Zalkind, D. S., Pao, L., and Wright, A.: A reference open-source controller for fixed and floating offshore wind turbines, Wind Energ. Sci., 7, 53–73, <ext-link xlink:href="https://doi.org/10.5194/wes-7-53-2022" ext-link-type="DOI">10.5194/wes-7-53-2022</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx2"><label>Benasciutti(2012)</label><mixed-citation> Benasciutti, D.: Fatigue analysis of random loadings: A frequency-domain approach, LAP Lambert Academic Publishing AG &amp; Co KG, ISBN 9783659123702, 2012.</mixed-citation></ref>
      <ref id="bib1.bibx3"><label>Benasciutti and Tovo(2005)</label><mixed-citation> Benasciutti, D. and Tovo, R.: Spectral methods for lifetime prediction under wide-band stationary random processes, Int. J. Fatigue, 27, 867–877, 2005.</mixed-citation></ref>
      <ref id="bib1.bibx4"><label>Bruck et al.(2018)</label><mixed-citation> Bruck, M., Sandborn, P., and Goudarzi, N.: A Levelized Cost of Energy (LCOE) model for wind farms that include Power Purchase Agreements (PPAs), Renewable Energy, 122, 131–139, 2018.</mixed-citation></ref>
      <ref id="bib1.bibx5"><label>Dirlik(1985)</label><mixed-citation> Dirlik, T.: Application of computers in fatigue analysis, PhD Thesis, University of Warwick, 1985.</mixed-citation></ref>
      <ref id="bib1.bibx6"><label>Elso et al.(2017)</label><mixed-citation> Elso, J., Gil-Martinez, M., and Garcia-Sanz, M.: Quantitative feedback control for multivariable model matching and disturbance rejection, Int. J. Robust Nonlin., 27, 121–134, 2017.</mixed-citation></ref>
      <ref id="bib1.bibx7"><label>Gaertner et al.(2020)</label><mixed-citation>Gaertner, E., Rinker, J., Sethuraman, L., Zahle, F., Anderson, B., Barter, G., Abbas, N., Meng, F., Bortolotti, P., Skrzypinski, W., Scott, G., Feil, R., Bredmose, H., Dykes, K., Shields, M., Allen, C., and Viselli, A.: Definition of the IEA 15 Megawatt Offshore Reference Wind, Golden, CO, National Renewable Energy Laboratory, NREL/TP 5000 75698, <uri>https://www.nrel.gov/docs/fy20osti/75698.pdf</uri> (last access: 3 February 2026), 2020.</mixed-citation></ref>
      <ref id="bib1.bibx8"><label>IEC(2020)</label><mixed-citation> International Electrotechnical Commission (IEC): IEC 61400: Wind energy generation systems, IEC, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx9"><label>Ishihara et al.(2012)</label><mixed-citation>Ishihara, T., Yamaguchi, A., and Sarwar, M. W.: A study of the normal turbulence model in IEC 61400-1, Wind Engineering, 36, 759–765, 2012.  </mixed-citation></ref>
      <ref id="bib1.bibx10"><label>Jonkman(2006)</label><mixed-citation>Jonkman, B. J.: TurbSim user's guide, NREL/TP-500-39797, National Renewable Energy Laboratory, Golden, CO, USA, <uri>https://docs.nrel.gov/docs/fy06osti/39797.pdf</uri>  (last access: 3 February 2026), 2006.</mixed-citation></ref>
      <ref id="bib1.bibx11"><label>Kaimal et al.(1972)</label><mixed-citation> Kaimal, J. C., Wyngaard, J. C. J., Izumi, Y., and Coté, O. R.: Spectral characteristics of surface-layer turbulence, Q. J. Roy. Meteor. Soc., 98, 563–589, 1972.</mixed-citation></ref>
      <ref id="bib1.bibx12"><label>Mann(1998)</label><mixed-citation> Mann, J.: Wind field simulation, Probabilist. Eng. Mech., 13, 269–282, 1998.</mixed-citation></ref>
      <ref id="bib1.bibx13"><label>Suresh(1998)</label><mixed-citation> Suresh, S.: Fatigue of Materials, 2nd Edn., Cambridge, Cambridge University Press, with ISBN 9780511806575, 1998.</mixed-citation></ref>
      <ref id="bib1.bibx14"><label>OpenFAST(2024)</label><mixed-citation>OpenFAST: OpenFAST/openfast , GitHub [code], <uri>https://github.com/openfast/openfast/</uri> (last access: 2 February 2024), 2024.</mixed-citation></ref>
      <ref id="bib1.bibx15"><label>Pao et al.(2024)</label><mixed-citation>Pao, L. Y., Pusch, M., and Zalkind, D. S.: Control co-design of wind turbines, Annual Review of Control, Robotics, and Autonomous Systems, 7, 201–226, <ext-link xlink:href="https://doi.org/10.1146/annurev-control-061423-101708" ext-link-type="DOI">10.1146/annurev-control-061423-101708</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bibx16"><label>Singh et al.(2016)</label><mixed-citation> Singh, N., Pratap, B., and Swarup, A.: Design of robust control for wind turbine using quantitative feedback theory, IFAC-PapersOnLine, 49, 718–723, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx17"><label>Song et al.(2022)</label><mixed-citation> Song, Y., Jeon, T., Paek, I., and Dugarjav, B.: Design and validation of pitch H-infinity controller for a large wind turbine, Energies, 15, 8763, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx18"><label>Tibaldi et al.(2016)</label><mixed-citation> Tibaldi, C., Henriksen, L. C., Hansen, M. H., and Bak, C.: Wind turbine fatigue damage evaluation based on a linear model and a spectral method, Wind Energy, 19, 1289–1306, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx19"><label>Wirsching and Light(1980)</label><mixed-citation> Wirsching, P. H. and Light, M. C.: Fatigue under wide band random stresses, J. Struct. Div.-ASCE, 106, 1593–1607, 1980.</mixed-citation></ref>
      <ref id="bib1.bibx20"><label>Wöhler(1870)</label><mixed-citation>Wöhler, A.: Über die Festigkeitsversuche mit Eisen und Stahl, Ernst &amp; Korn, <uri>http://catalog.hathitrust.org/Record/011617584</uri> (last access: 3 February 2026), 1870.</mixed-citation></ref>
      <ref id="bib1.bibx21"><label>Yaniv et al.(1997)</label><mixed-citation>Yaniv, O., Chait, Y., and Borghesani, C.: The QFT control design toolbox for MATLAB, IFAC Proceedings Volumes, 30, 103–108, <ext-link xlink:href="https://doi.org/10.1016/S1474-6670(17)42589-4" ext-link-type="DOI">10.1016/S1474-6670(17)42589-4</ext-link>, 1997.</mixed-citation></ref>

  </ref-list></back>
    <!--<article-title-html>Design of fatigue-based specifications for the design of controllers in wind turbines</article-title-html>
<abstract-html/>
<ref-html id="bib1.bib1"><label>Abbas et al.(2022)</label><mixed-citation>
      
Abbas, N. J., Zalkind, D. S., Pao, L., and Wright, A.: A reference open-source controller for fixed and floating offshore wind turbines, Wind Energ. Sci., 7, 53–73, <a href="https://doi.org/10.5194/wes-7-53-2022" target="_blank">https://doi.org/10.5194/wes-7-53-2022</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib2"><label>Benasciutti(2012)</label><mixed-citation>
      
Benasciutti, D.: Fatigue analysis of random loadings: A frequency-domain approach, LAP Lambert Academic Publishing AG &amp; Co KG, ISBN
9783659123702, 2012.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib3"><label>Benasciutti and Tovo(2005)</label><mixed-citation>
      
Benasciutti, D. and Tovo, R.: Spectral methods for lifetime prediction under wide-band stationary random processes, Int. J. Fatigue, 27, 867–877, 2005.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib4"><label>Bruck et al.(2018)</label><mixed-citation>
      
Bruck, M., Sandborn, P., and Goudarzi, N.: A Levelized Cost of Energy (LCOE) model for wind farms that include Power Purchase Agreements (PPAs), Renewable Energy, 122, 131–139, 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib5"><label>Dirlik(1985)</label><mixed-citation>
      
Dirlik, T.: Application of computers in fatigue analysis, PhD Thesis, University of Warwick, 1985.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib6"><label>Elso et al.(2017)</label><mixed-citation>
      
Elso, J., Gil-Martinez, M., and Garcia-Sanz, M.: Quantitative feedback control for multivariable model matching and disturbance rejection, Int. J. Robust Nonlin., 27, 121–134, 2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib7"><label>Gaertner et al.(2020)</label><mixed-citation>
      
Gaertner, E., Rinker, J., Sethuraman, L., Zahle, F., Anderson, B., Barter, G., Abbas, N., Meng, F., Bortolotti, P., Skrzypinski, W., Scott, G., Feil, R., Bredmose, H., Dykes, K., Shields, M., Allen, C., and Viselli, A.: Definition of the IEA 15 Megawatt Offshore
Reference Wind, Golden, CO, National Renewable Energy Laboratory, NREL/TP 5000 75698,
<a href="https://www.nrel.gov/docs/fy20osti/75698.pdf" target="_blank"/> (last access: 3 February 2026), 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib8"><label>IEC(2020)</label><mixed-citation>
      
International Electrotechnical Commission (IEC): IEC 61400: Wind energy generation systems, IEC, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib9"><label>Ishihara et al.(2012)</label><mixed-citation>
      
Ishihara, T., Yamaguchi, A., and Sarwar, M. W.: A study of the normal turbulence model in IEC 61400-1, Wind Engineering, 36, 759–765, 2012.


    </mixed-citation></ref-html>
<ref-html id="bib1.bib10"><label>Jonkman(2006)</label><mixed-citation>
      
Jonkman, B. J.: TurbSim user's guide, NREL/TP-500-39797, National Renewable Energy Laboratory, Golden, CO, USA, <a href="https://docs.nrel.gov/docs/fy06osti/39797.pdf" target="_blank"/>  (last access: 3 February 2026), 2006.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib11"><label>Kaimal et al.(1972)</label><mixed-citation>
      
Kaimal, J. C., Wyngaard, J. C. J., Izumi, Y., and Coté, O. R.: Spectral characteristics of surface-layer turbulence, Q. J. Roy. Meteor. Soc., 98, 563–589, 1972.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib12"><label>Mann(1998)</label><mixed-citation>
      
Mann, J.: Wind field simulation, Probabilist. Eng. Mech., 13, 269–282, 1998.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib13"><label>Suresh(1998)</label><mixed-citation>
      
Suresh, S.: Fatigue of Materials, 2nd Edn., Cambridge, Cambridge University Press, with ISBN
9780511806575, 1998.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib14"><label>OpenFAST(2024)</label><mixed-citation>
      
OpenFAST: OpenFAST/openfast , GitHub [code], <a href="https://github.com/openfast/openfast/" target="_blank"/> (last access: 2 February 2024), 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib15"><label>Pao et al.(2024)</label><mixed-citation>
      
Pao, L. Y., Pusch, M., and Zalkind, D. S.: Control co-design of wind turbines, Annual Review of Control, Robotics, and Autonomous Systems, 7, 201–226, <a href="https://doi.org/10.1146/annurev-control-061423-101708" target="_blank">https://doi.org/10.1146/annurev-control-061423-101708</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib16"><label>Singh et al.(2016)</label><mixed-citation>
      
Singh, N., Pratap, B., and Swarup, A.: Design of robust control for wind turbine using quantitative feedback theory, IFAC-PapersOnLine, 49, 718–723, 2016.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib17"><label>Song et al.(2022)</label><mixed-citation>
      
Song, Y., Jeon, T., Paek, I., and Dugarjav, B.: Design and validation of pitch H-infinity controller for a large wind turbine, Energies, 15, 8763, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib18"><label>Tibaldi et al.(2016)</label><mixed-citation>
      
Tibaldi, C., Henriksen, L. C., Hansen, M. H., and Bak, C.: Wind turbine fatigue damage evaluation based on a linear model and a spectral method, Wind Energy, 19, 1289–1306, 2016.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib19"><label>Wirsching and Light(1980)</label><mixed-citation>
      
Wirsching, P. H. and Light, M. C.: Fatigue under wide band random stresses, J. Struct. Div.-ASCE, 106, 1593–1607, 1980.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib20"><label>Wöhler(1870)</label><mixed-citation>
      
Wöhler, A.: Über die Festigkeitsversuche mit Eisen und Stahl, Ernst &amp; Korn, <a href="http://catalog.hathitrust.org/Record/011617584" target="_blank"/> (last access: 3 February 2026), 1870.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib21"><label>Yaniv et al.(1997)</label><mixed-citation>
      
Yaniv, O., Chait, Y., and Borghesani, C.: The QFT control design toolbox for MATLAB, IFAC Proceedings Volumes, 30, 103–108, <a href="https://doi.org/10.1016/S1474-6670(17)42589-4" target="_blank">https://doi.org/10.1016/S1474-6670(17)42589-4</a>, 1997.

    </mixed-citation></ref-html>--></article>
