<?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">AMT</journal-id><journal-title-group>
    <journal-title>Atmospheric Measurement Techniques</journal-title>
    <abbrev-journal-title abbrev-type="publisher">AMT</abbrev-journal-title><abbrev-journal-title abbrev-type="nlm-ta">Atmos. Meas. Tech.</abbrev-journal-title>
  </journal-title-group><issn pub-type="epub">1867-8548</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/amt-18-3341-2025</article-id><title-group><article-title>EMADDC: high-volume, high-quality, and timely wind and temperature observations from aircraft surveillance data (Mode-S EHS)</article-title><alt-title>The EMADDC system</alt-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author" corresp="yes" rid="aff1">
          <name><surname>de Haan</surname><given-names>Siebren</given-names></name>
          <email>siebren.de.haan@knmi.nl</email>
        </contrib>
        <contrib contrib-type="author" equal-contrib="yes" corresp="no" rid="aff1">
          <name><surname>de Jong</surname><given-names>Paul</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" equal-contrib="yes" corresp="no" rid="aff1">
          <name><surname>Koutek</surname><given-names>Michal</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Sondij</surname><given-names>Jan</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff2">
          <name><surname>Strauss</surname><given-names>Lukas</given-names></name>
          
        </contrib>
        <aff id="aff1"><label>1</label><institution>KNMI, De Bilt, the Netherlands</institution>
        </aff>
        <aff id="aff2"><label>2</label><institution>Austro Control Digital Services, Vienna, Austria</institution>
        </aff><author-comment content-type="econtrib"><p>These authors contributed equally to this work.</p></author-comment>
      </contrib-group>
      <author-notes><corresp id="corr1">Siebren de Haan (siebren.de.haan@knmi.nl)</corresp></author-notes><pub-date><day>22</day><month>July</month><year>2025</year></pub-date>
      
      <volume>18</volume>
      <issue>14</issue>
      <fpage>3341</fpage><lpage>3359</lpage>
      <history>
        <date date-type="received"><day>20</day><month>June</month><year>2024</year></date>
           <date date-type="rev-request"><day>28</day><month>June</month><year>2024</year></date>
           <date date-type="rev-recd"><day>3</day><month>March</month><year>2025</year></date>
           <date date-type="accepted"><day>4</day><month>March</month><year>2025</year></date>
      </history>
      <permissions>
        <copyright-statement>Copyright: © 2025 Siebren de Haan et al.</copyright-statement>
        <copyright-year>2025</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://amt.copernicus.org/articles/amt-18-3341-2025.html">This article is available from https://amt.copernicus.org/articles/amt-18-3341-2025.html</self-uri><self-uri xlink:href="https://amt.copernicus.org/articles/amt-18-3341-2025.pdf">The full text article is available as a PDF file from https://amt.copernicus.org/articles/amt-18-3341-2025.pdf</self-uri>
      <abstract><title>Abstract</title>

      <p id="d2e127">Wind and temperature observations from aircraft are of major importance for aviation meteorology and numerical weather prediction (NWP). The European Meteorological Aircraft Derived Data Centre (EMADDC) system processes aircraft surveillance data received from air traffic control (ATC) and other partners and converts them into upper-air observations of wind and temperature. Only so-called Mode-S Enhanced Surveillance (Mode-S EHS) data can be used because these data contain the air vector and ground vector of the aircraft from which a wind vector can be inferred. Temperature is derived from true airspeed and Mach number measurements. To produce high-quality observations, the data are processed in three steps: pre-processing, processing, and post-processing. The pre-processing is needed to obtain high-quality information and to calculate several correction values for correcting temperature observations and heading values. Processing converts the aircraft data into meteorological information, and finally post-processing guarantees that only high-quality information is made available.</p>

      <p id="d2e130">The EMADDC system processes around <inline-formula><mml:math id="M1" display="inline"><mml:mrow><mml:mn mathvariant="normal">75</mml:mn><mml:mo>×</mml:mo><mml:msup><mml:mn mathvariant="normal">10</mml:mn><mml:mn mathvariant="normal">6</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula> surveillance observations per day and produces over <inline-formula><mml:math id="M2" display="inline"><mml:mrow><mml:mn mathvariant="normal">55</mml:mn><mml:mo>×</mml:mo><mml:msup><mml:mn mathvariant="normal">10</mml:mn><mml:mn mathvariant="normal">6</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula> observations of quality-controlled wind observations and <inline-formula><mml:math id="M3" display="inline"><mml:mrow><mml:mn mathvariant="normal">32</mml:mn><mml:mo>×</mml:mo><mml:msup><mml:mn mathvariant="normal">10</mml:mn><mml:mn mathvariant="normal">6</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula> temperature observations in the European airspace per day. The average age of the observation is around 5 to 10 min, depending on the method of data delivery (files via ftp or streaming constantly).</p>

      <p id="d2e178">The quality of the observations produced is verified by comparing these observation to other upper-air wind and temperature observations from radiosondes and Aircraft Meteorological Data Relay (AMDAR) and comparing them with NWP data. The quality of wind observations is almost identical to AMDAR, and the quality of the temperature of EMADDC observations is lower but with a bias of around zero, while AMDAR exhibits a positive bias of 0.5 K.</p>

      <p id="d2e181">This paper presents the EMADDC (R2.2) system, operational since 2019.</p>
  </abstract>
    
<funding-group>
<award-group id="gs1">
<funding-source>Connecting Europe Facility</funding-source>
<award-id>2015_137_AF5 European Meteorological Aircraft Derived Data Center (EMADDC)</award-id>
</award-group>
</funding-group>
</article-meta>
  </front>
<body>
      

<sec id="Ch1.S1" sec-type="intro">
  <label>1</label><title>Introduction</title>
      <p id="d2e193">For normal, and safe, operation, aircraft are equipped with sensors to measure height and velocity with respect to the surrounding air. These sensors can be exploited to observe wind and temperature at the aircraft's location <xref ref-type="bibr" rid="bib1.bibx31" id="paren.1"/>. For many years, aircraft observations have been an essential component of the global observing system, which is used as input for numerical weather prediction models during assimilation <xref ref-type="bibr" rid="bib1.bibx3 bib1.bibx13 bib1.bibx15 bib1.bibx27 bib1.bibx6" id="paren.2"/>. For almost 30 years, aircraft measurements have been collected using the Aircraft Meteorological Data Relay (AMDAR), where meteorological information is automatically sent to national weather services using either satellites or ground stations <xref ref-type="bibr" rid="bib1.bibx11 bib1.bibx1 bib1.bibx3 bib1.bibx13 bib1.bibx14 bib1.bibx15 bib1.bibx18 bib1.bibx33 bib1.bibx2" id="paren.3"/>. Some commercial aircraft are equipped with software to collect the relevant information from the onboard computer systems. Observations are collected with specified observation strategies to optimize coverage with respect to data transmission costs. Over the last decade, a different manner of collecting meteorological information has been developed, utilizing the operational infrastructure for aircraft safety in Europe, starting in the area of Germany, Belgium, and the Netherlands. The infrastructure used by the European air traffic control (ATC) is based on mode-selective (Mode-S) radars which (selectively) interrogate all aircraft in view of the radar on information on the heading, true airspeed, etc., to guide aircraft through its airspace <xref ref-type="bibr" rid="bib1.bibx5" id="paren.4"/>. Although in the whole European airspace Mode-S radars are used for ATC, not all received information can be used to refer to meteorological information; only Mode-S Enhanced Surveillance (Mode-S EHS) radars can interrogate the necessary Broadcast Dependent Surveillance (BDS) 5.0 and 6.0 registers. Fortunately, most Mode-S radars in Europe have EHS capabilities. The observation frequency is determined by the interrogation frequency of the Mode-S radar. Since the information is aimed at ATC, unfortunately no direct meteorological parameters are present in the received information. To extract meteorological information from the received BDS5.0 and BDS6.0 registers, processing and corrections are needed <xref ref-type="bibr" rid="bib1.bibx5 bib1.bibx25" id="paren.5"/>. Obviously, receiving meteorological parameters directly is preferred to deriving and correcting non-meteorological parameters, since corrections are inherently imperfect, which may lead to complicated errors. The unique character of these Mode-S EHS observations is that (almost) all aircraft are interrogated every 4 to 20 s, which results in (locally) very dense datasets.</p>
      <p id="d2e211">In light of the COVID-19 pandemic, there was a significant reduction in the number of flights, which in turn impacted the availability of temperature and wind observations collected through the Aircraft Meteorological Data Relay (AMDAR). Nevertheless, as certain airlines continued to operate (e.g. as cargo flights) the European Meteorological Aircraft Derived Data Centre (EMADDC) was still producing valuable observations, exploiting the ATC information received for surveillance of all flying aircraft. These observations were used by ECMWF <xref ref-type="bibr" rid="bib1.bibx12" id="paren.6"/> to address the gap resulting from the lack of AMDAR observations.</p>
      <p id="d2e217">This paper describes the current state-of-the-art processing and correction methodology (R2.2) as implemented at EMADDC.</p>
</sec>
<sec id="Ch1.S2">
  <label>2</label><title>EMADDC data collection</title>
      <p id="d2e228">Secondary surveillance radar (SSR) is a two-way system where an ATC radar interrogates an aircraft requesting specific parameters. In Europe, all large aircraft (with minimum take-off weight larger than 5700 kg) are required to broadcast Mode-S Elementary Surveillance (ELS) and Enhanced Surveillance (EHS) <xref ref-type="bibr" rid="bib1.bibx9" id="paren.7"/>. EMADDC exploits these to derive wind speed, wind direction, and temperature observations from surveillance data requested from aircraft for ATC purposes. Where elementary surveillance uses only aircraft broadcasts of altitude and identity, the enhanced surveillance interrogation complements these basic parameters with data of the aircraft state, such as roll angle, airspeed, and Mach number. These additional parameters are requested in groups as a BDS request. To derive wind and temperature, EMADDC requires both BDS5.0 and BDS6.0 to be interrogated and the aircraft to respond.</p>
      <p id="d2e234">Additional to these mandatory BDS registers (BDS5.0 and BDS6.0), the BDS4.4 register, known as the Meteorological Routine Air Report or MRAR, can be also interrogated. This register contains observed temperature, wind, static pressure, and humidity (where available). However, this register is not mandatory, and only fewer than 5 % of aircraft respond to such interrogation requests <xref ref-type="bibr" rid="bib1.bibx26" id="paren.8"/>, and few countries actively interrogate this register.</p>
<sec id="Ch1.S2.SS1">
  <label>2.1</label><title>Mode-S EHS interrogation</title>
      <p id="d2e248">ATC radar initiates a request to an aircraft for specific BDS data registers. If the aircraft is appropriately equipped, it will respond by broadcasting the requested register information. Each radar employs a distinct interrogation scheme that outlines the frequency of requests and the specific registers to be queried. Different countries or an Air Traffic Service Air Navigation Service Provider (ATS ANSP) may utilize varying interrogation protocols, including different frequencies and rates. The response sent by the aircraft is received by ATC radar but can also be received through a commercially available local receiver, as data are not encrypted. Unfortunately, it is more difficult to decode data received by these receivers as the type of register is not contained in the transmission, and hence fuzzy logic or other techniques are applied to decode the type transmitted properly <xref ref-type="bibr" rid="bib1.bibx5 bib1.bibx25" id="paren.9"/>. C-code software, developed in-house, performs this task (similar to the Python library developed by <xref ref-type="bibr" rid="bib1.bibx28" id="altparen.10"/>).</p>
</sec>
<sec id="Ch1.S2.SS2">
  <label>2.2</label><title>Automatic Dependent Surveillance–Broadcast</title>
      <p id="d2e266">Automatic Dependent Surveillance–Broadcast, or ADS-B, as its name suggests, allows an aircraft to broadcast aircraft state data using the transponder. Data are autonomously broadcast about every 0.5 s and contain the aircraft's onboard sensed position (through GPS and inertial systems), which is often more accurate than radar-derived position from ATC. These data are available to ATC but can also be displayed on the Navigation Display of newer aircraft for situational awareness. ADS-B does not broadcast wind and temperature, nor does it broadcast all required parameters to derive wind and temperature, although the difference between GNSS height and pressure altitude is transmitted frequently and could be used in data assimilation <xref ref-type="bibr" rid="bib1.bibx24" id="paren.11"/>.</p>
</sec>
<sec id="Ch1.S2.SS3">
  <label>2.3</label><title>Data handling</title>
      <p id="d2e282">As outlined in the previous sections, EMADDC receives data in two ways: (1) aircraft data are collected by ATC, or (2) aircraft data are collected using a local ADS-B/Mode-S receiver. In both cases data are then forwarded to EMADDC through an FTP file transfer. New methods are currently being developed to enhance real-time data transfer, including NewPENS (the pan-European Network Service for real-time exchange of air traffic control data).</p>
      <p id="d2e285">Data collected by ATC are of high quality as the contents are properly decoded since the content of each transmission is known to the interrogator. However for local receivers, the content of a received register is unknown, and logic is required to verify that a register is correctly decoded. All data have quality control and filtering applied.</p>
      <p id="d2e288">ATC data can be of ASTERIX CAT48 format, which is mono-radar data, or CAT62 data from a radar tracker combining multiple radars. This latter data format uses filtering to sample all radar plots to a typical 4 s interval. The content of the formats CAT48 and CAT62 is similar, but the typical resolution of the Mach number in CAT62 is 0.008 (0.004 for CAT48), and as a consequence the derived temperatures are of lower quality (see Sect. <xref ref-type="sec" rid="Ch1.S6"/>). EMADDC is working with EUROCONTROL Maastricht Upper Area Control Centre (MUAC) to develop a solution that provides the Mach number with a resolution of 0.004 and share this solution with other ATC providers.</p>
      <p id="d2e293">An advantage of ATC radar data is that the individual BDS register messages corresponding to a single revolution of the radar are combined into a single “observation” message. For ATC radar, the position is determined by ATC radar. In contrast, for data received from local receivers, the position is decoded from the Compact Position Report (CPR) format, which is included in the ADS-B message (and hence not present in radar/tracker data as these data are not available in ASTERIX CAT48 or CAT62 data). The timestamp is not generated by the aircraft; instead, it is created by the radar or receiver at the time of reception. Local receivers utilize either a GPS antenna or a time server for time synchronization. Furthermore, the EMADDC system must combine the various BDS registers to derive observations, as previously outlined.</p>
      <p id="d2e297">The techniques utilized by EMADDC are generating significant volumes of high-quality data from Mode-S EHS data. It is essential to implement various quality control that checks identify and address any observation discrepancies and assure that generated observations are of high quality.</p>
</sec>
</sec>
<sec id="Ch1.S3">
  <label>3</label><title>Aircraft measurement methodology</title>
      <p id="d2e310">A modern aircraft is equipped with sensors that can measure static pressure, Mach number, temperature, position and heading, and geometric altitude. This section contains a brief description of measurements of pressure, Mach number, and temperature. The information flow is depicted in Fig. <xref ref-type="fig" rid="F1"/>.</p>

      <fig id="F1" specific-use="star"><label>Figure 1</label><caption><p id="d2e317">Information flow of aircraft measurements.</p></caption>
        <graphic xlink:href="https://amt.copernicus.org/articles/18/3341/2025/amt-18-3341-2025-f01.png"/>

      </fig>

<sec id="Ch1.S3.SS1">
  <label>3.1</label><title>Mach number and static and total pressure</title>
      <p id="d2e333">A crucial measurement in any aircraft is the measurement of the airspeed, which can be obtained from the combination of a pitot-tube measurement and a temperature measurement. The pitot tube measures the static pressure <inline-formula><mml:math id="M4" display="inline"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">s</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and the total pressure <inline-formula><mml:math id="M5" display="inline"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> <xref ref-type="bibr" rid="bib1.bibx22" id="paren.12"/>. Both pressure observations suffer from inaccuracies related to, for example, a (small) angle between the flow and the probe <xref ref-type="bibr" rid="bib1.bibx20" id="paren.13"/>. The Mach number is the true airspeed of the aircraft relative to the speed of sound. Let <inline-formula><mml:math id="M6" display="inline"><mml:mrow><mml:msub><mml:mi>q</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math id="M7" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math id="M8" display="inline"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">s</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> be the dynamic pressure, which is more accurately measured because the first-order error of <inline-formula><mml:math id="M9" display="inline"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M10" display="inline"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">s</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is cancelled. The Mach number <inline-formula><mml:math id="M11" display="inline"><mml:mi>M</mml:mi></mml:math></inline-formula> is defined as <xref ref-type="bibr" rid="bib1.bibx22" id="paren.14"/>

            <disp-formula id="Ch1.E1" content-type="numbered"><label>1</label><mml:math id="M12" display="block"><mml:mrow><mml:mi>M</mml:mi><mml:mo>=</mml:mo><mml:msqrt><mml:mrow><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">2</mml:mn><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfrac></mml:mstyle><mml:msup><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:mrow><mml:msub><mml:mi>q</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">s</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced><mml:mstyle scriptlevel="+1"><mml:mfrac><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi mathvariant="italic">γ</mml:mi></mml:mfrac></mml:mstyle></mml:msup><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msqrt><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          where <inline-formula><mml:math id="M13" display="inline"><mml:mi mathvariant="italic">γ</mml:mi></mml:math></inline-formula> <inline-formula><mml:math id="M14" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math id="M15" display="inline"><mml:mrow><mml:msub><mml:mi>c</mml:mi><mml:mi>p</mml:mi></mml:msub><mml:mo>/</mml:mo><mml:msub><mml:mi>c</mml:mi><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the ratio of specific heats. Note that the dependence of <inline-formula><mml:math id="M16" display="inline"><mml:mi>M</mml:mi></mml:math></inline-formula> on the (inaccurate) <inline-formula><mml:math id="M17" display="inline"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">s</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> remains.</p>
</sec>
<sec id="Ch1.S3.SS2">
  <label>3.2</label><title>Temperature and true airspeed</title>
      <p id="d2e555">The temperature is measured with a temperature probe <xref ref-type="bibr" rid="bib1.bibx22" id="paren.15"/>. The measured total temperature <inline-formula><mml:math id="M18" display="inline"><mml:mrow><mml:msub><mml:mi>T</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> needs to be corrected to obtain the temperature <inline-formula><mml:math id="M19" display="inline"><mml:mi>T</mml:mi></mml:math></inline-formula>,

            <disp-formula id="Ch1.E2" content-type="numbered"><label>2</label><mml:math id="M20" display="block"><mml:mrow><mml:mi>T</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub><mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mi mathvariant="italic">λ</mml:mi><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mfenced open="(" close=")"><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfenced></mml:mrow><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:msup><mml:mi>M</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfenced><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

          The true airspeed <inline-formula><mml:math id="M21" display="inline"><mml:mi>A</mml:mi></mml:math></inline-formula> can now be determined neglecting the effect of humidity,

            <disp-formula id="Ch1.E3" content-type="numbered"><label>3</label><mml:math id="M22" display="block"><mml:mrow><mml:mi>A</mml:mi><mml:mo>=</mml:mo><mml:mi>M</mml:mi><mml:msqrt><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:msub><mml:mi>R</mml:mi><mml:mi mathvariant="normal">d</mml:mi></mml:msub><mml:mi>T</mml:mi></mml:mrow></mml:msqrt><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          where <inline-formula><mml:math id="M23" display="inline"><mml:mrow><mml:msub><mml:mi>R</mml:mi><mml:mi mathvariant="normal">d</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the universal gas constant of dry air.</p>
</sec>
</sec>
<sec id="Ch1.S4">
  <label>4</label><title>EMADDC measurement methodology</title>
      <p id="d2e682">Temperature and wind information is not directly available in Mode-S EHS downlinked information. The wind vector needs to be computed, and the temperature needs to be derived; see Fig. <xref ref-type="fig" rid="F2"/>.</p>

      <fig id="F2" specific-use="star"><label>Figure 2</label><caption><p id="d2e689">Downlinked data flow of Mode-S EHS parameters to acquire meteorological information.</p></caption>
        <graphic xlink:href="https://amt.copernicus.org/articles/18/3341/2025/amt-18-3341-2025-f02.png"/>

      </fig>

<sec id="Ch1.S4.SS1">
  <label>4.1</label><title>Downlinked parameters</title>
      <p id="d2e705">The (most relevant) parameters obtained through interrogation of Mode-S EHS radars are shown in Table <xref ref-type="table" rid="T1"/>. The timestamp is created at the moment of reception of the information. All parameters that originate from interrogation have an observation frequency depending on the radar; ADS-B information can have an observation frequency of twice per second. Table <xref ref-type="table" rid="T1"/> provides information on the downlinked parameters. The information flow of the downlinked parameters is depicted in Fig. <xref ref-type="fig" rid="F2"/>. Also shown in this figure are the corrections applied to the magnetic heading, true airspeed, and Mach number, discussed later.</p>

<table-wrap id="T1" specific-use="star"><label>Table 1</label><caption><p id="d2e716">The reported precision and observation frequency of downlinked parameters, all parameters are rounded.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="6">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:colspec colnum="4" colname="col4" align="left"/>
     <oasis:colspec colnum="5" colname="col5" align="left"/>
     <oasis:colspec colnum="6" colname="col6" align="left"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Parameter</oasis:entry>
         <oasis:entry colname="col2">Abbreviation</oasis:entry>
         <oasis:entry colname="col3">Symbol</oasis:entry>
         <oasis:entry colname="col4">Reported precision</oasis:entry>
         <oasis:entry colname="col5">Frequency</oasis:entry>
         <oasis:entry colname="col6">BDS</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">Position (latitude–longitude)</oasis:entry>
         <oasis:entry colname="col2">lat, long</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M24" display="inline"><mml:mrow><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">ϕ</mml:mi></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">1 <inline-formula><mml:math id="M25" display="inline"><mml:mrow><mml:mo>×</mml:mo><mml:msup><mml:mn mathvariant="normal">10</mml:mn><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">5</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula>°</oasis:entry>
         <oasis:entry colname="col5">0.5–2 s</oasis:entry>
         <oasis:entry colname="col6">ADS-B</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Position (latitude–longitude)</oasis:entry>
         <oasis:entry colname="col2">lat, long</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M26" display="inline"><mml:mrow><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">ϕ</mml:mi></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">2–5 <inline-formula><mml:math id="M27" display="inline"><mml:mrow><mml:mo>×</mml:mo><mml:msup><mml:mn mathvariant="normal">10</mml:mn><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">5</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula>°</oasis:entry>
         <oasis:entry colname="col5">5–20 s</oasis:entry>
         <oasis:entry colname="col6">radar echo</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Flight level</oasis:entry>
         <oasis:entry colname="col2">1 flight level <inline-formula><mml:math id="M28" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 100 ft (30.48 m)</oasis:entry>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">25 ft (7.62 m)</oasis:entry>
         <oasis:entry colname="col5">5–20 s</oasis:entry>
         <oasis:entry colname="col6">ADS-B</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Roll angle</oasis:entry>
         <oasis:entry colname="col2">ra</oasis:entry>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">0.175°</oasis:entry>
         <oasis:entry colname="col5">5–20 s</oasis:entry>
         <oasis:entry colname="col6">5.0</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">True track angle</oasis:entry>
         <oasis:entry colname="col2">tta</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M29" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">0.175°</oasis:entry>
         <oasis:entry colname="col5">5–20 s</oasis:entry>
         <oasis:entry colname="col6">5.0</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Ground speed</oasis:entry>
         <oasis:entry colname="col2">gspd</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M30" display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">2 kn (1.02 m s<sup>−1</sup>)</oasis:entry>
         <oasis:entry colname="col5">5–20 s</oasis:entry>
         <oasis:entry colname="col6">5.0</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Track angle rate</oasis:entry>
         <oasis:entry colname="col2">tar</oasis:entry>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">0.03125° s<sup>−1</sup></oasis:entry>
         <oasis:entry colname="col5">5–20 s</oasis:entry>
         <oasis:entry colname="col6">5.0</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">True airspeed</oasis:entry>
         <oasis:entry colname="col2">tas</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M33" display="inline"><mml:mi>A</mml:mi></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">2 kn (1.02 m s<sup>−1</sup>)</oasis:entry>
         <oasis:entry colname="col5">5–20 s</oasis:entry>
         <oasis:entry colname="col6">5.0</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Magnetic heading</oasis:entry>
         <oasis:entry colname="col2">mhdg</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M35" display="inline"><mml:mrow><mml:msub><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">0.352°</oasis:entry>
         <oasis:entry colname="col5">5–20 s</oasis:entry>
         <oasis:entry colname="col6">6.0</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Indicated airspeed</oasis:entry>
         <oasis:entry colname="col2">ias</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M36" display="inline"><mml:mrow><mml:msub><mml:mi>A</mml:mi><mml:mi mathvariant="normal">I</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">1 kn (0.51 m s<sup>−1</sup>)</oasis:entry>
         <oasis:entry colname="col5">5–20 s</oasis:entry>
         <oasis:entry colname="col6">6.0</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Mach number</oasis:entry>
         <oasis:entry colname="col2">mach</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M38" display="inline"><mml:mi>M</mml:mi></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">0.004</oasis:entry>
         <oasis:entry colname="col5">5–20 s</oasis:entry>
         <oasis:entry colname="col6">6.0</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

</sec>
<sec id="Ch1.S4.SS2">
  <label>4.2</label><title>Raw data input control</title>
      <p id="d2e1158">The EMADDC quality procedure has been systematically developed and enhanced over the past decade. The first step in defining the quality is to check the input for obvious errors or measurements in conditions where calculation is not possible, as listed in Table <xref ref-type="table" rid="T2"/>. Measurements failing one of these checks are discarded from further processing.</p>

<table-wrap id="T2" specific-use="star"><label>Table 2</label><caption><p id="d2e1165">Current input quality checks used in operation.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="3">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">Input data quality checks</oasis:entry>
         <oasis:entry colname="col3">Occurrence</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">1</oasis:entry>
         <oasis:entry colname="col2">absolute value of roll angle larger than 2.5°</oasis:entry>
         <oasis:entry colname="col3">16 %</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">2</oasis:entry>
         <oasis:entry colname="col2">absolute difference between track angle and magnetic heading larger than 25°</oasis:entry>
         <oasis:entry colname="col3">1 %</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">4</oasis:entry>
         <oasis:entry colname="col2">true airspeed larger than 570 kn or smaller than 100 kn</oasis:entry>
         <oasis:entry colname="col3">1 %</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">5</oasis:entry>
         <oasis:entry colname="col2">ground speed larger than 850 kn or smaller than 50 kn or when below flight level 50 smaller than 100 kn</oasis:entry>
         <oasis:entry colname="col3">2 %</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">6</oasis:entry>
         <oasis:entry colname="col2">Mach number equal to 0</oasis:entry>
         <oasis:entry colname="col3">2 %</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">7</oasis:entry>
         <oasis:entry colname="col2">constant flight level and decreasing ground speed and indicated airspeed when flight level is lower than 50</oasis:entry>
         <oasis:entry colname="col3">2 %</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">8</oasis:entry>
         <oasis:entry colname="col2">position consistency</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M39" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> 1 %</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

</sec>
<sec id="Ch1.S4.SS3">
  <label>4.3</label><title>Output control and safe list</title>
      <p id="d2e1295">Output control is necessary to obtain good-quality observations. The parameters for output quality control are related to the correction methods applied to the temperature and wind measurement.</p>
      <p id="d2e1298">Additionally, a safe list is created for wind speed and temperature  independently, based on the difference between observations and forecast statistics. Aircraft with a 14 d wind standard deviation exceeding 4 kn are designated as ineligible, while for temperature, the standard deviation threshold is set at 1.23 K. EMADDC currently uses the operational ECMWF model with a minimal forecast lead time of 9 h for this comparison by collocating observations with numerical weather prediction (NWP).</p>
</sec>
</sec>
<sec id="Ch1.S5">
  <label>5</label><title>Derived wind measurement</title>
      <p id="d2e1311">The wind vector is the difference between ground vector and air vector, where all vectors are with respect to true north.

          <disp-formula id="Ch1.E4" content-type="numbered"><label>4</label><mml:math id="M40" display="block"><mml:mrow><mml:mi>V</mml:mi><mml:mfenced close=")" open="("><mml:mtable class="matrix" columnalign="center" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>d</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>d</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced><mml:mo>=</mml:mo><mml:mi>G</mml:mi><mml:mfenced open="(" close=")"><mml:mtable class="matrix" columnalign="center" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced><mml:mo>-</mml:mo><mml:mi>A</mml:mi><mml:mfenced open="(" close=")"><mml:mtable class="matrix" columnalign="center" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math id="M41" display="inline"><mml:mi>V</mml:mi></mml:math></inline-formula> denotes the wind speed with wind direction <inline-formula><mml:math id="M42" display="inline"><mml:mi>d</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math id="M43" display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M44" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula> are the ground speed and track angle, and <inline-formula><mml:math id="M45" display="inline"><mml:mi>A</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M46" display="inline"><mml:mi>h</mml:mi></mml:math></inline-formula> the airspeed and heading. Note that this equation is valid under the assumption that the vertical wind speed is negligible, the sideslip is zero, and the roll angle is small. The heading is reported with respect to the magnetic north pole and needs to be converted into a heading with respect to true north. For this purpose, geomagnetic declination tables from <xref ref-type="bibr" rid="bib1.bibx16" id="text.16"/> and <xref ref-type="bibr" rid="bib1.bibx4" id="text.17"/> are applied; thus

          <disp-formula id="Ch1.E5" content-type="numbered"><label>5</label><mml:math id="M47" display="block"><mml:mrow><mml:mi>h</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">ϕ</mml:mi></mml:mrow></mml:mfenced><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math id="M48" display="inline"><mml:mi>y</mml:mi></mml:math></inline-formula> is the datum of the (static) heading correction table on board the aircraft, <inline-formula><mml:math id="M49" display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the location of the aircraft, and <inline-formula><mml:math id="M50" display="inline"><mml:mi mathvariant="normal">Δ</mml:mi></mml:math></inline-formula> is the heading correction from the declination table. As it turns out, the heading correction is aircraft-dependent; that is <inline-formula><mml:math id="M51" display="inline"><mml:mi>y</mml:mi></mml:math></inline-formula> is aircraft-dependent and even may change in time after an aircraft is being serviced, for example when the computer software is updated <xref ref-type="bibr" rid="bib1.bibx17" id="paren.18"/>.</p>
<sec id="Ch1.S5.SS1">
  <label>5.1</label><title>Aircraft-dependent heading correction</title>
      <p id="d2e1536">Although the correction should be in the order of the (actual) declination, research showed that a simple correction is not enough <xref ref-type="bibr" rid="bib1.bibx5 bib1.bibx19" id="paren.19"/>. Each aircraft may use their own version of a declination lookup table, which implies that each aircraft corrects the true north to magnetic north in a different way. The correction method uses the assumption that the correction is determined by a geomagnetic reference table for a certain datum (or epoch) and is static until it is updated through aircraft maintenance. The optimal datum is found by minimizing a cost function, depending on datum, by comparing corrected winds from observations with NWP model forecast winds. The cost function is constructed by the vector length difference between the unit heading vector from the aircraft and the unit heading vector formed by the ground vector and NWP wind vector, that is

            <disp-formula id="Ch1.E6" content-type="numbered"><label>6</label><mml:math id="M52" display="block"><mml:mrow><mml:msup><mml:mi mathvariant="bold-italic">δ</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mfenced close=")" open="("><mml:mtable class="matrix" columnalign="center" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:mi>cos⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:msubsup><mml:mi>h</mml:mi><mml:mi>N</mml:mi><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mi>sin⁡</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:msubsup><mml:mi>h</mml:mi><mml:mi>N</mml:mi><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced><mml:mo>-</mml:mo><mml:mfenced open="(" close=")"><mml:mtable class="matrix" columnalign="center" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:mi>cos⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:msubsup><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mi>c</mml:mi></mml:msub><mml:mfenced close=")" open="("><mml:mrow><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:msup><mml:mi mathvariant="italic">λ</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:mfenced></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mi>sin⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:msubsup><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mi>c</mml:mi></mml:msub><mml:mfenced close=")" open="("><mml:mrow><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:msup><mml:mi mathvariant="italic">λ</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:mfenced></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          where <inline-formula><mml:math id="M53" display="inline"><mml:mi>y</mml:mi></mml:math></inline-formula> is the date of the inclination table, <inline-formula><mml:math id="M54" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula> the index of an observation, <inline-formula><mml:math id="M55" display="inline"><mml:mrow><mml:msubsup><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> is the observed magnetic heading, and <inline-formula><mml:math id="M56" display="inline"><mml:mrow><mml:msub><mml:mi>h</mml:mi><mml:mi>c</mml:mi></mml:msub><mml:mfenced close=")" open="("><mml:mrow><mml:mi>y</mml:mi><mml:mo>(</mml:mo><mml:msup><mml:mi mathvariant="italic">λ</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:mfenced></mml:mrow></mml:math></inline-formula> is the value of the declination table with datum <inline-formula><mml:math id="M57" display="inline"><mml:mi>y</mml:mi></mml:math></inline-formula> at location <inline-formula><mml:math id="M58" display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mi mathvariant="italic">λ</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. NWP heading angle <inline-formula><mml:math id="M59" display="inline"><mml:mrow><mml:msubsup><mml:mi>h</mml:mi><mml:mi>N</mml:mi><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> is defined as

            <disp-formula id="Ch1.E7" content-type="numbered"><label>7</label><mml:math id="M60" display="block"><mml:mrow><mml:msubsup><mml:mi>h</mml:mi><mml:mi>N</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>=</mml:mo><mml:mtext>atan</mml:mtext><mml:mfenced close=")" open="("><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msup><mml:mi>G</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mi>sin⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:msup><mml:mi>t</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:mfenced><mml:mo>-</mml:mo><mml:msup><mml:mi>V</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mi>sin⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:msup><mml:mi>d</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:msup><mml:mi>G</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mi>cos⁡</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:msup><mml:mi>t</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:mfenced><mml:mo>-</mml:mo><mml:msup><mml:mi>V</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mi>cos⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:msup><mml:mi>d</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:mfenced></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          with <inline-formula><mml:math id="M61" display="inline"><mml:mrow><mml:msup><mml:mi>G</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> the ground speed, <inline-formula><mml:math id="M62" display="inline"><mml:mrow><mml:msup><mml:mi>t</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> the track angle, <inline-formula><mml:math id="M63" display="inline"><mml:mrow><mml:msup><mml:mi>V</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> the wind speed, and <inline-formula><mml:math id="M64" display="inline"><mml:mrow><mml:msup><mml:mi>d</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> the wind direction. The first vector in Eq. (<xref ref-type="disp-formula" rid="Ch1.E6"/>) is the NWP heading direction vector; the second is the corrected heading direction vector.</p>
      <p id="d2e1909">The cost function is defined as the sum of all vector length differences over all observations, that is

                <disp-formula specific-use="gather" content-type="numbered"><mml:math id="M65" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E8"><mml:mtd><mml:mtext>8</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mi>C</mml:mi><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:munder><mml:mo movablelimits="false">∑</mml:mo><mml:mi>i</mml:mi></mml:munder><mml:msup><mml:mfenced open="∥" close="∥"><mml:mrow><mml:msup><mml:mi mathvariant="bold-italic">δ</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E9"><mml:mtd><mml:mtext>9</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mo>=</mml:mo></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:munder><mml:mo movablelimits="false">∑</mml:mo><mml:mi>i</mml:mi></mml:munder><mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mi>sin⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:msubsup><mml:mi>h</mml:mi><mml:mi>N</mml:mi><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:mfenced><mml:mo>-</mml:mo><mml:mi>sin⁡</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:msubsup><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi>c</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mfenced></mml:mrow></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:msup><mml:mfenced close=")" open="("><mml:mrow><mml:mi>cos⁡</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:msubsup><mml:mi>h</mml:mi><mml:mi>N</mml:mi><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:mfenced><mml:mo>-</mml:mo><mml:mi>cos⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:msubsup><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi>c</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mfenced></mml:mrow></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E10"><mml:mtd><mml:mtext>10</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo>=</mml:mo><mml:munder><mml:mo movablelimits="false">∑</mml:mo><mml:mi>i</mml:mi></mml:munder><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>cos⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:mo>-</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi>N</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi>c</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mfenced><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

          Next, magnetic declination is linearized with datum, in order to find a minimum, that is

            <disp-formula id="Ch1.E11" content-type="numbered"><label>11</label><mml:math id="M66" display="block"><mml:mrow><mml:msubsup><mml:mi>h</mml:mi><mml:mi>c</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>=</mml:mo><mml:msubsup><mml:mi>H</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mi>i</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:mfenced open="(" close=")"><mml:mrow><mml:mi>y</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mi mathvariant="normal">ref</mml:mi></mml:msub></mml:mrow></mml:mfenced><mml:mi mathvariant="normal">Δ</mml:mi><mml:msup><mml:mi>H</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          where <inline-formula><mml:math id="M67" display="inline"><mml:mrow><mml:msubsup><mml:mi>H</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> is the value of magnetic declination for given location <inline-formula><mml:math id="M68" display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mi mathvariant="italic">λ</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> on datum <inline-formula><mml:math id="M69" display="inline"><mml:mrow><mml:msub><mml:mi>y</mml:mi><mml:mi mathvariant="normal">ref</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, and <inline-formula><mml:math id="M70" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msup><mml:mi>H</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> is the value of the change in magnetic declination per year (this approximation is valid, as is discussed in Appendix <xref ref-type="sec" rid="App1.Ch1.S1"/>). The cost function is approximated by a quadratic function in the datum offset, which yields

            <disp-formula id="Ch1.E12" content-type="numbered"><label>12</label><mml:math id="M71" display="block"><mml:mtable rowspacing="0.2ex" class="split" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mi>C</mml:mi><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>≈</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>cos⁡</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:msubsup><mml:mi>H</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mi>i</mml:mi></mml:msubsup><mml:mo>-</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi>N</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:msub><mml:mi mathvariant="italic">δ</mml:mi><mml:mi>y</mml:mi></mml:msub><mml:munder><mml:mo movablelimits="false">∑</mml:mo><mml:mi>i</mml:mi></mml:munder><mml:mi mathvariant="normal">Δ</mml:mi><mml:msup><mml:mi>H</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mi>sin⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:msubsup><mml:mi>H</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mi>i</mml:mi></mml:msubsup><mml:mo>-</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi>N</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:msubsup><mml:mi mathvariant="italic">δ</mml:mi><mml:mi>y</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:munder><mml:mo movablelimits="false">∑</mml:mo><mml:mi>i</mml:mi></mml:munder><mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msup><mml:mi>H</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mi>cos⁡</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:msubsup><mml:mi>H</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mi>i</mml:mi></mml:msubsup><mml:mo>-</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi>N</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

          where

            <disp-formula id="Ch1.E13" content-type="numbered"><label>13</label><mml:math id="M72" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="italic">δ</mml:mi><mml:mi>y</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>y</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mi mathvariant="normal">ref</mml:mi></mml:msub><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

          The (offset) datum value for which the cost function attains a minimum is found by setting the derivative to <inline-formula><mml:math id="M73" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">δ</mml:mi><mml:mi>y</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> of the cost function to zero. Let <inline-formula><mml:math id="M74" display="inline"><mml:mrow><mml:msubsup><mml:mi>x</mml:mi><mml:mn mathvariant="normal">1</mml:mn><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M75" display="inline"><mml:mrow><mml:msubsup><mml:mi>x</mml:mi><mml:mn mathvariant="normal">2</mml:mn><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> for observation <inline-formula><mml:math id="M76" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula> be defined by

                <disp-formula specific-use="gather" content-type="numbered"><mml:math id="M77" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E14"><mml:mtd><mml:mtext>14</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msubsup><mml:mi>x</mml:mi><mml:mn mathvariant="normal">1</mml:mn><mml:mi>i</mml:mi></mml:msubsup><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi mathvariant="normal">Δ</mml:mi><mml:msup><mml:mi>H</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mi>sin⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:msubsup><mml:mi>H</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mi>i</mml:mi></mml:msubsup><mml:mo>-</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi>N</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E15"><mml:mtd><mml:mtext>15</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msubsup><mml:mi>x</mml:mi><mml:mn mathvariant="normal">2</mml:mn><mml:mi>i</mml:mi></mml:msubsup><mml:mo>=</mml:mo><mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msup><mml:mi>H</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mi>cos⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:msubsup><mml:mi>H</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mi>i</mml:mi></mml:msubsup><mml:mo>-</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi>N</mml:mi><mml:mi>i</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>h</mml:mi><mml:mi mathvariant="normal">m</mml:mi><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:mfenced><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

          then the datum minimizing the cost function is given by

            <disp-formula id="Ch1.E16" content-type="numbered"><label>16</label><mml:math id="M78" display="block"><mml:mrow><mml:mi>y</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mi mathvariant="normal">ref</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mo>∑</mml:mo><mml:mi>i</mml:mi></mml:msub><mml:msubsup><mml:mi>x</mml:mi><mml:mn mathvariant="normal">1</mml:mn><mml:mi>i</mml:mi></mml:msubsup></mml:mrow><mml:mrow><mml:msub><mml:mo>∑</mml:mo><mml:mi>i</mml:mi></mml:msub><mml:msubsup><mml:mi>x</mml:mi><mml:mn mathvariant="normal">2</mml:mn><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

          Using the value for an aircraft EMADDC calculates the corresponding magnetic declination tables at the location of an observation to find the declination and converts the reported magnetic heading to true heading and calculates the wind according to the equation above.</p>
      <p id="d2e2675">The above method uses NWP wind forecasts extracted from the operational ECMWF forecast (IFS model). The forecast lead time is at least 9 h, such that observations from EMADDC are not used as input for assimilation and correction simultaneously.</p>
</sec>
<sec id="Ch1.S5.SS2">
  <label>5.2</label><title>Heading correction results</title>
      <p id="d2e2686">Figure <xref ref-type="fig" rid="F3"/> shows the results of the heading correction for all 19 006 aircraft operational in 2021–2023. Each aircraft is represented by a vertical line in the top panel. The white colour indicates that no correction was found and aircraft with a lot of white pixels are not flying regular in the EMADDC domain. The top panel shows the offset with the maximum reported heading correction in 2021–2023. In general, the change in heading correction over 2023 is small, except for aircraft that have large corrections. The most constant correction values (offsets smaller than 2 years, red- to brown-coloured) are found for values close to 2023, while higher offsets are only found with high maximum values, which gives us reason to believe that for these aircraft, the datum correction algorithm may not perform optimally. Note that aircraft near the right of Fig. <xref ref-type="fig" rid="F3"/> have declination tables decades into the future and are obviously not correctly estimated, which is also reflected in the noisy pattern for these aircraft. The corrections for these aircraft are invalidated, and the aircraft are marked as bad and will not be present in dissemination.</p>

      <fig id="F3" specific-use="star"><label>Figure 3</label><caption><p id="d2e2695">Panel <bold>(a)</bold> shows the difference of heading correction in 2021–2023 with the reported maximum heading correction datum in this period. The white colour indicates that no (or bad) heading correction value was reported. Panel <bold>(b)</bold> shows the maximum heading correction found in 2023 (top black line), with the deviations from its maximum as small blue dots. The 19 006 aircraft are sorted by maximum heading correction.</p></caption>
          <graphic xlink:href="https://amt.copernicus.org/articles/18/3341/2025/amt-18-3341-2025-f03.png"/>

        </fig>

</sec>
<sec id="Ch1.S5.SS3">
  <label>5.3</label><title>Dependence on NWP wind vector information</title>
      <p id="d2e2718">The magnetic heading is calibrated using NWP wind vector information. Consequently, the obtained correction depends on the quality of the NWP information. The magnitude of this dependence is rather small and of the order of 1 over the magnitude of ground speed, which is explained by the following.</p>
      <p id="d2e2721">Suppose we have a biased NWP wind direction, that is the true wind direction <inline-formula><mml:math id="M79" display="inline"><mml:mi>d</mml:mi></mml:math></inline-formula> is biased by <inline-formula><mml:math id="M80" display="inline"><mml:mi mathvariant="italic">β</mml:mi></mml:math></inline-formula>, then

            <disp-formula id="Ch1.E17" content-type="numbered"><label>17</label><mml:math id="M81" display="block"><mml:mtable rowspacing="0.2ex" class="split" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>h</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mi>N</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mtext>atan</mml:mtext><mml:mfenced open="(" close=")"><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi>G</mml:mi><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mo>-</mml:mo><mml:mi>V</mml:mi><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>d</mml:mi><mml:mo>+</mml:mo><mml:mi mathvariant="italic">β</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mi>G</mml:mi><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mo>-</mml:mo><mml:mi>V</mml:mi><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>d</mml:mi><mml:mo>+</mml:mo><mml:mi mathvariant="italic">β</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>≈</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mi>N</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">β</mml:mi><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi>V</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:mo>-</mml:mo><mml:mi>G</mml:mi><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>d</mml:mi><mml:mo>-</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mo>+</mml:mo><mml:mi>V</mml:mi></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:msup><mml:mi>G</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi>G</mml:mi><mml:mi>V</mml:mi><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>d</mml:mi><mml:mo>-</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mo>+</mml:mo><mml:msup><mml:mi>V</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

          which implies that

            <disp-formula id="Ch1.E18" content-type="numbered"><label>18</label><mml:math id="M82" display="block"><mml:mrow><mml:mfenced close="|" open="|"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>h</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mi>N</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mi>N</mml:mi></mml:msub></mml:mrow></mml:mfenced><mml:mo>⪅</mml:mo><mml:mfenced close="|" open="|"><mml:mrow><mml:mi mathvariant="italic">β</mml:mi><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi>V</mml:mi><mml:mo>(</mml:mo><mml:mi>V</mml:mi><mml:mo>+</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>-</mml:mo><mml:mi>V</mml:mi><mml:msup><mml:mo>)</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced><mml:mo>⪅</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>|</mml:mo><mml:mi mathvariant="italic">β</mml:mi><mml:mo>|</mml:mo></mml:mrow><mml:mi>G</mml:mi></mml:mfrac></mml:mstyle><mml:mo>≪</mml:mo><mml:mo>|</mml:mo><mml:mi mathvariant="italic">β</mml:mi><mml:mo>|</mml:mo><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

          The offset from the true heading using wind-direction-biased information is substantially smaller than the actual bias.</p>
      <p id="d2e2981">The difference in heading from an unbiased and a biased NWP model is smaller than the bias divided by the ground speed (<inline-formula><mml:math id="M83" display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>). The ground speed is in general around 100 to 200 m s<sup>−1</sup>, and thus the bias in heading is around 100 times smaller than the bias in the wind vector.</p>
      <p id="d2e3003">Similarly, the offset from the true heading based on wind speed biased (by <inline-formula><mml:math id="M85" display="inline"><mml:mi mathvariant="italic">α</mml:mi></mml:math></inline-formula>) is given by

            <disp-formula id="Ch1.E19" content-type="numbered"><label>19</label><mml:math id="M86" display="block"><mml:mtable rowspacing="0.2ex" class="split" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mfenced open="|" close="|"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>h</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mi>N</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mi>N</mml:mi></mml:msub></mml:mrow></mml:mfenced></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>⪅</mml:mo><mml:mfenced open="|" close="|"><mml:mrow><mml:mi mathvariant="italic">α</mml:mi><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi>G</mml:mi><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>d</mml:mi><mml:mo>-</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:msup><mml:mi>G</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi>G</mml:mi><mml:mi>V</mml:mi><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>d</mml:mi><mml:mo>-</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mo>+</mml:mo><mml:msup><mml:mi>V</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>⪅</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>|</mml:mo><mml:mi mathvariant="italic">α</mml:mi><mml:mo>|</mml:mo></mml:mrow><mml:mi>G</mml:mi></mml:mfrac></mml:mstyle><mml:mo>≪</mml:mo><mml:mo>|</mml:mo><mml:mi mathvariant="italic">α</mml:mi><mml:mo>|</mml:mo><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
      <p id="d2e3126">When the model contains a wind speed bias, the bias in the heading is smaller than the wind speed bias divided by the ground speed and thus will be a factor of 10 to 100 smaller than the wind speed bias in the model.</p>
      <p id="d2e3129">Since the heading correction is based on many observations, over a large period (at least 15 d) it can be regarded as independent of the NWP information. Moreover, the EMADDC system is fitting a declination table over a large domain with a single parameter; the effect of locally biased or erroneous NWP estimates will be small. Aircraft visiting this region will have deviating quotients from which the datum is calculated (see Eq. <xref ref-type="disp-formula" rid="Ch1.E16"/>). This deviation is detected by checking the standard deviations of the quotients separately.</p>
</sec>
<sec id="Ch1.S5.SS4">
  <label>5.4</label><title>True airspeed correction</title>
      <p id="d2e3143">The measurement of true airspeed (TAS) depends on the temperature and Mach number; see Eq. (<xref ref-type="disp-formula" rid="Ch1.E3"/>). Since the observed Mach number is corrected <xref ref-type="bibr" rid="bib1.bibx20" id="paren.20"/>, the true airspeed measurement might be improved likewise.</p>
      <p id="d2e3151">The current algorithm uses an aircraft-dependent constant correction value. However, in the next update of the EMADDC processing (EMADDC 3.0), a true airspeed-dependent correction will be investigated. This improvement is reasoned by comparing the observed true airspeed with a NWP-model-equivalent true airspeed, thus creating a correction that depends on the observed value of true airspeed. The model true airspeed is obtained by the vector difference between the observed ground vector and wind vector from the NWP model. Figure <xref ref-type="fig" rid="F4"/> displays the average difference of the observed true airspeed versus the model-based true airspeed. The differences are averaged over true airspeed bins for all data points observed in the EMADDC domain in 3 d. Note that the difference in wind speed is of the order of a few tenths of a metre per second. Clearly there is a relation between mean airspeed difference and true airspeed itself.</p>

      <fig id="F4"><label>Figure 4</label><caption><p id="d2e3158">The mean difference of true airspeed as derived from observed ground vector and model wind versus the observed true airspeed. Data from 3 full days (5 June 2021, 2 December 2021 and 1 August 2023) and two 6 h intervals (1 August 2022 06:00–12:00 UTC, and 1 January 2023 00:00–06:00 UTC) are shown.</p></caption>
          <graphic xlink:href="https://amt.copernicus.org/articles/18/3341/2025/amt-18-3341-2025-f04.png"/>

        </fig>

      <p id="d2e3168">As a first-order approach, the EMADDC system currently applies a true airspeed bias correction depending on aircraft and phase of flight. Future research  will study physical methods of true airspeed correction.</p>
</sec>
</sec>
<sec id="Ch1.S6">
  <label>6</label><title>Derived temperature</title>
      <p id="d2e3180">Although the temperature is measured by the sensors on board the aircraft, the information is not transmitted in the Mode-S EHS request BDS5.0 and BDS6.0. However, the Mach number <inline-formula><mml:math id="M87" display="inline"><mml:mi>M</mml:mi></mml:math></inline-formula> and the true airspeed <inline-formula><mml:math id="M88" display="inline"><mml:mi>A</mml:mi></mml:math></inline-formula> are available and from these parameters the temperature can be deduced using the relation between the speed of sound and temperature and the ideal gas law,

          <disp-formula id="Ch1.E20" content-type="numbered"><label>20</label><mml:math id="M89" display="block"><mml:mrow><mml:mi>M</mml:mi><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi>A</mml:mi><mml:mi>C</mml:mi></mml:mfrac></mml:mstyle><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math id="M90" display="inline"><mml:mi>C</mml:mi></mml:math></inline-formula> <inline-formula><mml:math id="M91" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math id="M92" display="inline"><mml:msqrt><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:msub><mml:mi>R</mml:mi><mml:mi mathvariant="normal">d</mml:mi></mml:msub><mml:mi>T</mml:mi></mml:mrow></mml:msqrt></mml:math></inline-formula>, and <inline-formula><mml:math id="M93" display="inline"><mml:mrow><mml:msub><mml:mi>R</mml:mi><mml:mi mathvariant="normal">d</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the universal gas constant for dry air. Note that the dependence of the speed of sound on humidity is neglected. So, given <inline-formula><mml:math id="M94" display="inline"><mml:mi>M</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M95" display="inline"><mml:mi>A</mml:mi></mml:math></inline-formula>, the temperature <inline-formula><mml:math id="M96" display="inline"><mml:mi>T</mml:mi></mml:math></inline-formula> can be calculated by

          <disp-formula id="Ch1.E21" content-type="numbered"><label>21</label><mml:math id="M97" display="block"><mml:mrow><mml:mi>T</mml:mi><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:msub><mml:mi>R</mml:mi><mml:mi mathvariant="normal">d</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:msup><mml:mfenced open="(" close=")"><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi>A</mml:mi><mml:mi>M</mml:mi></mml:mfrac></mml:mstyle></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math id="M98" display="inline"><mml:mi>A</mml:mi></mml:math></inline-formula> is in [m s<sup>−1</sup>].</p>
<sec id="Ch1.S6.SS1">
  <label>6.1</label><title>Onboard aircraft temperature correction</title>
      <p id="d2e3342">The aircraft measurements are improved by algorithms on board the aircraft. The applied corrections are not available and may be aircraft-dependent, or aircraft-type-dependent, or both. It is known that the measurement of the static pressure <inline-formula><mml:math id="M100" display="inline"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">s</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> suffers from airflow instabilities and/or angle of attack <xref ref-type="bibr" rid="bib1.bibx20" id="paren.21"/>. The static pressure is corrected, which consequently results in a correction of the Mach number <inline-formula><mml:math id="M101" display="inline"><mml:mi>M</mml:mi></mml:math></inline-formula> and temperature <inline-formula><mml:math id="M102" display="inline"><mml:mi>T</mml:mi></mml:math></inline-formula>.</p>
</sec>
<sec id="Ch1.S6.SS2">
  <label>6.2</label><title>Temperature measurement improvements</title>
      <p id="d2e3381">The temperature is calculated from the Mach number and the true airspeed (TAS) on board the aircraft. Actually, there are two types available of the Mach number, one being the downlinked data and one determined using indicated airspeed (IAS) information. The downlinked Mach number is of worse accuracy than the Mach number determined from the indicated airspeed, as will be discussed next. An estimate of the formal error of the temperature <inline-formula><mml:math id="M103" display="inline"><mml:mi>T</mml:mi></mml:math></inline-formula> calculated using Eq. (<xref ref-type="disp-formula" rid="Ch1.E21"/>) is constructed following <xref ref-type="bibr" rid="bib1.bibx29" id="paren.22"/>

            <disp-formula id="Ch1.E22" content-type="numbered"><label>22</label><mml:math id="M104" display="block"><mml:mrow><mml:msubsup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>T</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>≈</mml:mo><mml:msup><mml:mfenced close=")" open="("><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>∂</mml:mo><mml:mi>T</mml:mi></mml:mrow><mml:mrow><mml:mo>∂</mml:mo><mml:mi>A</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:msubsup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>A</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>+</mml:mo><mml:msup><mml:mfenced close=")" open="("><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>∂</mml:mo><mml:mi>T</mml:mi></mml:mrow><mml:mrow><mml:mo>∂</mml:mo><mml:mi>M</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:msubsup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>M</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">4</mml:mn><mml:msup><mml:mi>T</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow><mml:mrow><mml:msup><mml:mi>A</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:msubsup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>A</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">4</mml:mn><mml:msup><mml:mi>T</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow><mml:mrow><mml:msup><mml:mi>M</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:msubsup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>M</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

          Rounding leads to an additional error of <inline-formula><mml:math id="M105" display="inline"><mml:mrow><mml:mi>r</mml:mi><mml:mo>/</mml:mo><mml:msqrt><mml:mn mathvariant="normal">12</mml:mn></mml:msqrt></mml:mrow></mml:math></inline-formula>, where <inline-formula><mml:math id="M106" display="inline"><mml:mi>r</mml:mi></mml:math></inline-formula> is the rounding (see Appendix <xref ref-type="sec" rid="App1.Ch1.S2"/>). One of the downlinked parameters is indicated airspeed, which is defined as the airspeed measured as if the aircraft were flying at mean sea level (<inline-formula><mml:math id="M107" display="inline"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math id="M108" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 1013.25 hPa, <inline-formula><mml:math id="M109" display="inline"><mml:mrow><mml:msub><mml:mi>T</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math id="M110" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 288.15, and <inline-formula><mml:math id="M111" 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> <inline-formula><mml:math id="M112" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 1.225 kg m<sup>−3</sup>, the standard pressure, temperature, and density at mean sea level)

            <disp-formula id="Ch1.E23" content-type="numbered"><label>23</label><mml:math id="M114" display="block"><mml:mtable rowspacing="0.2ex" class="split" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>A</mml:mi><mml:mi mathvariant="normal">I</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:msqrt><mml:mrow><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">2</mml:mn><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mfenced close=")" open="("><mml:mrow><mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi>q</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi>p</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">1</mml:mn></mml:mrow></mml:mfenced><mml:mstyle scriptlevel="+1"><mml:mfrac><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi mathvariant="italic">γ</mml:mi></mml:mfrac></mml:mstyle></mml:msup><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfenced></mml:mrow></mml:msqrt></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>⇒</mml:mo><mml:msub><mml:mi>q</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mfenced close=")" open="("><mml:mrow><mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:msubsup><mml:mi>A</mml:mi><mml:mi mathvariant="normal">I</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>+</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfenced><mml:mstyle scriptlevel="+1"><mml:mfrac><mml:mi mathvariant="italic">γ</mml:mi><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfrac></mml:mstyle></mml:msup><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

          The dynamic pressure <inline-formula><mml:math id="M115" display="inline"><mml:mrow><mml:msub><mml:mi>q</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> can be calculated from <inline-formula><mml:math id="M116" display="inline"><mml:mrow><mml:msub><mml:mi>A</mml:mi><mml:mi mathvariant="normal">I</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, which in  turn can be used to recalculate <inline-formula><mml:math id="M117" display="inline"><mml:mi>M</mml:mi></mml:math></inline-formula>, according to Eq. (<xref ref-type="disp-formula" rid="Ch1.E1"/>), so an (first-order) estimate of the error in Mach number becomes

                <disp-formula specific-use="gather" content-type="numbered"><mml:math id="M118" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E24"><mml:mtd><mml:mtext>24</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msubsup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>M</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>≈</mml:mo><mml:msup><mml:mfenced close=")" open="("><mml:mrow><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>∂</mml:mo><mml:mi>M</mml:mi></mml:mrow><mml:mrow><mml:mo>∂</mml:mo><mml:msub><mml:mi>q</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>∂</mml:mo><mml:msub><mml:mi>q</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:mo>∂</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mi mathvariant="normal">I</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:msubsup><mml:mi mathvariant="italic">σ</mml:mi><mml:mrow><mml:msub><mml:mi>A</mml:mi><mml:mi mathvariant="normal">I</mml:mi></mml:msub></mml:mrow><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E25"><mml:mtd><mml:mtext>25</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msubsup><mml:mi>A</mml:mi><mml:mi mathvariant="normal">I</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup></mml:mrow><mml:mrow><mml:msup><mml:mi>M</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msubsup><mml:mi mathvariant="italic">ρ</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup></mml:mrow><mml:mrow><mml:msup><mml:mi>p</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:msup><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:mrow><mml:msub><mml:mi>q</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow><mml:mi>p</mml:mi></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced><mml:mrow><mml:mo>-</mml:mo><mml:mfrac><mml:mn mathvariant="normal">2</mml:mn><mml:mi mathvariant="italic">γ</mml:mi></mml:mfrac></mml:mrow></mml:msup><mml:msup><mml:mfenced close=")" open="("><mml:mrow><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msubsup><mml:mi>A</mml:mi><mml:mi mathvariant="normal">I</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mfenced open="(" close=")"><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:msub><mml:mi>p</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">1</mml:mn></mml:mrow></mml:mfenced><mml:mfrac><mml:mn mathvariant="normal">2</mml:mn><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfrac></mml:msup><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msubsup><mml:mi mathvariant="italic">σ</mml:mi><mml:mrow><mml:msub><mml:mi>A</mml:mi><mml:mi mathvariant="normal">I</mml:mi></mml:msub></mml:mrow><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

          Figure <xref ref-type="fig" rid="F5"/> shows the formal temperature errors as calculated with the downlinked Mach number (<inline-formula><mml:math id="M119" display="inline"><mml:mrow><mml:msubsup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>T</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>(</mml:mo><mml:mi>M</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, red line) and the temperature error based on the indicated airspeed (<inline-formula><mml:math id="M120" display="inline"><mml:mrow><mml:msubsup><mml:mi mathvariant="italic">σ</mml:mi><mml:mi>T</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>(</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mi mathvariant="normal">I</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, blue line) and the formal error term related to the <inline-formula><mml:math id="M121" display="inline"><mml:mi>A</mml:mi></mml:math></inline-formula>. The effect on introducing the Mach indicated airspeed is a reduction in formal error of a factor of 4. The largest part in the formal error is (with the <inline-formula><mml:math id="M122" display="inline"><mml:mrow><mml:msub><mml:mi>A</mml:mi><mml:mi mathvariant="normal">I</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>) now related to the true airspeed error. This implies that to further improve the  temperature observation, reduction of true airspeed error needs to be accomplished.</p>

      <fig id="F5"><label>Figure 5</label><caption><p id="d2e4064">Different terms of the formal error for temperature. Black line represents the formal error due to uncertainty in <inline-formula><mml:math id="M123" display="inline"><mml:mi>A</mml:mi></mml:math></inline-formula>; red line represents the term related to the temperature derived using the (coarse) Mach number; blue line depicts the formal error when the Mach number is recalculated from <inline-formula><mml:math id="M124" display="inline"><mml:mrow><mml:msup><mml:mi>A</mml:mi><mml:mi mathvariant="normal">I</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>. Aircraft data from ICAO24 A2BD72 (Airbus A320-214), valid from 1 August 2023 05:17:07 to 1 August 2023 05:26:40.</p></caption>
          <graphic xlink:href="https://amt.copernicus.org/articles/18/3341/2025/amt-18-3341-2025-f05.png"/>

        </fig>

      <p id="d2e4091">The temperature correction is performed by first averaging, followed by correction. An average over 20 s is determined to reduce the noise in the temperature observation, that is

            <disp-formula id="Ch1.E26" content-type="numbered"><label>26</label><mml:math id="M125" display="block"><mml:mrow><mml:mover accent="true"><mml:mi>T</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mi>N</mml:mi></mml:mfrac></mml:mstyle><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mi>i</mml:mi><mml:mi>N</mml:mi></mml:munderover><mml:msubsup><mml:mi>T</mml:mi><mml:mi>i</mml:mi><mml:mi mathvariant="normal">I</mml:mi></mml:msubsup><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          and average observations are marked as bad when the standard deviation of the observations <inline-formula><mml:math id="M126" display="inline"><mml:mrow><mml:msubsup><mml:mi>T</mml:mi><mml:mi>i</mml:mi><mml:mi mathvariant="normal">I</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> exceeds 5 K.</p>
      <p id="d2e4143">The temperature correction applied is based upon correcting the static pressure measurements and recalculating subsequently the Mach number, the total temperature, and finally the temperature. The correction used is described in detail in <xref ref-type="bibr" rid="bib1.bibx7" id="text.23"/>. The corrected static pressure correction <inline-formula><mml:math id="M127" display="inline"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> depends on the static pressure itself and the static pressure divided by the square of true airspeed, that is

            <disp-formula id="Ch1.E27" content-type="numbered"><label>27</label><mml:math id="M128" display="block"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>a</mml:mi><mml:mo>+</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">s</mml:mi></mml:msub><mml:mfenced close=")" open="("><mml:mrow><mml:mi>b</mml:mi><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi>c</mml:mi><mml:mrow><mml:msup><mml:mi>A</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          where <inline-formula><mml:math id="M129" display="inline"><mml:mi>a</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math id="M130" display="inline"><mml:mi>b</mml:mi></mml:math></inline-formula>, and <inline-formula><mml:math id="M131" display="inline"><mml:mi>c</mml:mi></mml:math></inline-formula> are determined by fitting NWP temperatures. These coefficients are aircraft-dependent. The corrected temperature is determined as follows: first the corresponding total temperature is calculated,

            <disp-formula id="Ch1.E28" content-type="numbered"><label>28</label><mml:math id="M132" display="block"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>T</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover><mml:mi mathvariant="normal">t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mfenced close=")" open="("><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mi mathvariant="italic">λ</mml:mi><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mfenced close=")" open="("><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfenced></mml:mrow><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:msup><mml:mi>M</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfenced><mml:mover accent="true"><mml:mi>T</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          and then the corrected temperature calculated using the corrected pressure <inline-formula><mml:math id="M133" display="inline"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> becomes

            <disp-formula id="Ch1.E29" content-type="numbered"><label>29</label><mml:math id="M134" display="block"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>T</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover><mml:mi mathvariant="normal">c</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mi mathvariant="italic">λ</mml:mi><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mfenced close=")" open="("><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfenced></mml:mrow><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:msubsup><mml:mi>M</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup></mml:mrow></mml:mfenced><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:msub><mml:mover accent="true"><mml:mi>T</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover><mml:mi mathvariant="normal">t</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          where

            <disp-formula id="Ch1.E30" content-type="numbered"><label>30</label><mml:math id="M135" display="block"><mml:mrow><mml:msubsup><mml:mi>M</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">2</mml:mn><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfrac></mml:mstyle><mml:msup><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:mrow><mml:msub><mml:mi>q</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced><mml:mstyle scriptlevel="+1"><mml:mfrac><mml:mi mathvariant="italic">γ</mml:mi><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:mfrac></mml:mstyle></mml:msup><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula></p>
      <p id="d2e4406">Figure <xref ref-type="fig" rid="F6"/> displays the effect of the three steps (green “raw” temperature, improving <inline-formula><mml:math id="M136" display="inline"><mml:mi>M</mml:mi></mml:math></inline-formula> by the indicated airspeed (red), followed by the averaging (blue) and pressure correction (black)). Applying a simple smoothing of adjacent points, the standard deviation is reduced to values between 1 K in the mid-troposphere and up to 1.5 K at higher altitudes and near the surface (Fig. <xref ref-type="fig" rid="F6"/> compares red and black dashed lines); The bias (and standard deviation to a lesser extent) is then further reduced by applying the raw pressure correction method (Fig. <xref ref-type="fig" rid="F6"/> black lines).</p>

      <fig id="F6" specific-use="star"><label>Figure 6</label><caption><p id="d2e4424">Results of temperature correction based on data from 1 August 2023 06:00–12:00 UTC. The mean difference between model and observation is shown by a solid line and the standard deviation of the difference (dashed line). The green line represents the raw temperature statistics, the red line temperatures calculated using the Mach–IAS relation, and the blue line the additional time averaging statistics, while the black line is the final result after the raw pressure correction.</p></caption>
          <graphic xlink:href="https://amt.copernicus.org/articles/18/3341/2025/amt-18-3341-2025-f06.png"/>

        </fig>

      <p id="d2e4433">Figure <xref ref-type="fig" rid="F7"/> displays the necessary steps needed in the processing to turn Mode-S EHS observations into meteorological information.</p>

      <fig id="F7" specific-use="star"><label>Figure 7</label><caption><p id="d2e4440">Functional data flow in EMADDC, needed to derive wind vector and temperature observations.</p></caption>
          <graphic xlink:href="https://amt.copernicus.org/articles/18/3341/2025/amt-18-3341-2025-f07.png"/>

        </fig>

</sec>
</sec>
<sec id="Ch1.S7">
  <label>7</label><title>Data processing methodology</title>
      <p id="d2e4458">EMADDC suppliers generally deliver data in batches every 5 to 15 min, allowing the system to retrieve new files for ingestion into the EMADDC database. Receiver data are processed by the decoder, which combines the BDS5.0 and BDS6.0 registers to generate observations that are subsequently entered into the EMADDC database. In contrast, for ATC radar/tracker data, the observations are decoded (from ASTERIX to an EMADDC internal format) and inserted into the database. For this type of data, no intermediate combining step is necessary, as the registers have already been consolidated by the respective tracker or radar system.</p>
      <p id="d2e4461">Once the data have been ingested into the hourly database table, the processing scheduling system triggers three specific processing jobs. The first job handles observations within a 15 min time window, operating with an approximate delay of 30 min. This job functions as the primary processing task, indicating that the designated time window has been successfully processed. Figure <xref ref-type="fig" rid="F8"/> shows the coverage of EMADDC on 21 April 2024.</p>

      <fig id="F8"><label>Figure 8</label><caption><p id="d2e4467">Data coverage of EMADDC on 21 April 2024. The colour indicates the number of observations per 0.5° squared box.</p></caption>
        <graphic xlink:href="https://amt.copernicus.org/articles/18/3341/2025/amt-18-3341-2025-f08.png"/>

      </fig>

      <p id="d2e4476">In 2022, two additional processing jobs were introduced to process observations in 5 min batches at 13 and 23 min past the initial observation in the designated time window. These “fast” files account for approximately 70 % and 90 % of the total data available in the standard 15 min interval files, respectively. The implementation of these new fast files has notably enhanced the timeliness of EMADDC by reducing the delivery delay to approximately 10 min. These fast files should be utilized when 15 min  interval data are not yet available/processed.</p>
      <p id="d2e4480">A processing job begins by collecting all available data within the specified time window. The input data undergo quality control, as previously  outlined. To ensure continuity in flight profiles and phase determination, the data from the last 5 min of the preceding time window are included for continuation of flight profiles and phase determination. The flight profile and flight phase are used in the application of  the corrections and quality control. Wind and temperature are derived using equations for wind speed and wind direction (see above), and the detected magnetic table datum is used in the World Magnetic Model <xref ref-type="bibr" rid="bib1.bibx4" id="paren.24"/> to determine the magnetic declination at the location of the observation and obtain the true heading. Subsequent corrections and post-processing are applied, after which outliers are identified using linear regression over individual aircraft's 30 s time windows.</p>
      <p id="d2e4486">EMADDC currently receives data from multiple overlapping sources. For instance, in the EUROCONTROL MUAC area, EMADDC acquires radar data from MUAC, in addition to data from approximately four receivers managed by Air Support, which has now been rebranded as ADSB Support. KNMI operates ADSB Support receivers located in De Bilt and Cabauw at 180 m, which captures data extending to Paris. Since these receivers collect similar data to those of the radars used in ATC, the EMADDC database contains duplicate entries. To address this issue, a duplicate detection algorithm has been implemented, whereby data from the same aircraft recorded within 1 s of another observation are designated as a duplicate of the primary observation. Observations identified as duplicates are not included in the EMADDC output. It is important to note that observations obtained directly from air traffic control – such as radar or tracker data – are not marked as duplicates, as the ATC system applies its own filtering and quality control measures to eliminate duplicates. Consequently, it is possible for an observation to appear in a fast file but be absent in subsequent 23 min fast files or full time-window files if it was identified as a duplicate and replaced by another observation. The current approach to identifying duplicates has demonstrated effectiveness; however, it is not without imperfections. The intent is to enhance this process in future developments of EMADDC R3.0. In addition to this step of identifying duplicate observations, the decoding and combining process effectively addresses the potential for duplicate registers that may be received from multiple overlapping receivers within a receiver file. Furthermore, ATC data does not contain duplicate observations, as radars exclusively process received interrogations that pertain to their own interrogations, discarding those produced by other radars.</p>
      <p id="d2e4489">The final processing step involves verifying whether the observations are from aircraft that have been approved for use through a safe list, as explained in Sect. <xref ref-type="sec" rid="Ch1.S4.SS3"/>.</p>
      <p id="d2e4494">Ultimately, all validated, non-duplicate, and quality-checked data are  compiled into CSV and BUFR file formats. These files have been made accessible via KNMI's FTP servers and the KNMI Data Platform (KDP). Please visit <uri>https://dataplatform.knmi.nl/dataset/access/emaddc-hist-repro-data-1-0</uri> (last access: 4 June 2025). Access to these historical files or datasets is open, whereas operational data are currently restricted to authorized users.</p>
</sec>
<sec id="Ch1.S8">
  <label>8</label><title>Quality assessment</title>
      <p id="d2e4508">Observations derived with the above described processing system are validated with upper-air in situ measurements and numerical model equivalents. This section shows the comparison of Mode-S EHS wind and temperature observations against the ECMWF NWP model, radiosonde wind and temperature observations, and AMDAR wind and temperature observations. For the NWP model, the forecast lead time is a minimum of 9 h, in order to avoid comparing observations that are used in assimilation. The comparison with NWP equivalents is based on 3 months of data (January–March 2024). Section <xref ref-type="sec" rid="Ch1.S8.SS2"/> discusses EMADDC versus radiosondes and NWP (January–March 2023). And finally, in Sect. <xref ref-type="sec" rid="Ch1.S8.SS3"/>, EMADDC, AMDAR, and NWP are compared over an 8-month period.</p>
<sec id="Ch1.S8.SS1">
  <label>8.1</label><title>Numerical weather prediction model comparison</title>
      <p id="d2e4522">Wind and temperature observations are corrected using NWP information, as was discussed above. The heading correction applied may introduce some (NWP) correlation but not directly to wind components and temperature and when correlations exists it will be small (see Sect. <xref ref-type="sec" rid="Ch1.S5.SS3"/>). Furthermore, corrections, as well as parameters for the safe list, are based on past NWP data, while the comparison is made using current (forecast) data.</p>
      <p id="d2e4527">From 1 January to 1 April 2024, a total of 4.5 billion observations were derived by the EMADDC system. From these observations 2.8 billion unique and allowed wind observations are made available to the users, and in total nearly 1.8 billion temperature observations are disseminated in these 3 months. The quality of wind observations compared to ECMWF-IFS is around 2.5 m s<sup>−1</sup> in standard deviation, with a small bias of 0.3 m s<sup>−1</sup>; see Table <xref ref-type="table" rid="T3"/>. Table <xref ref-type="table" rid="T3"/> also shows the statistics of wind observations for different height levels: the error in wind speed with respect to the model increases with height from 2.2 m s<sup>−1</sup> near the surface to 2.8 m s<sup>−1</sup> at a height of 11 km. The wind direction statistics show a different signal; near the surface the wind direction error is nearly 15°, with a minimum at around flight level 350, increasing again to an error of 10° at around 11 km. Note that only observations with wind speed larger than 4 m s<sup>−1</sup> are used for wind direction. Wind is in general more variable near the surface. These values are all within the acceptable range for use in for example data assimilation. According to the WMO Rolling Review of Requirements, the requirements for temperature used in high-resolution NWP are 0.5 K (goal), 1 K (threshold), and 3 K (breakthrough) and for wind speed 1, 2, and 5 m s<sup>−1</sup>, respectively <xref ref-type="bibr" rid="bib1.bibx32" id="paren.25"/>.</p>

<table-wrap id="T3" specific-use="star"><label>Table 3</label><caption><p id="d2e4613">Statistics of EMADDC wind observations against the operational ECMWF model.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="9">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="right" colsep="1"/>
     <oasis:colspec colnum="3" colname="col3" align="right" colsep="1"/>
     <oasis:colspec colnum="4" colname="col4" align="right"/>
     <oasis:colspec colnum="5" colname="col5" align="center"/>
     <oasis:colspec colnum="6" colname="col6" align="center" colsep="1"/>
     <oasis:colspec colnum="7" colname="col7" align="right"/>
     <oasis:colspec colnum="8" colname="col8" align="right"/>
     <oasis:colspec colnum="9" colname="col9" align="right"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col9" align="center">1 January to 1 April 2024 </oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry namest="col4" nameend="col6" align="center" colsep="1">Wind speed, EMADDC-NWP </oasis:entry>
         <oasis:entry namest="col7" nameend="col9" align="center">Wind direction, EMADDC-NWP </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">Raw volume</oasis:entry>
         <oasis:entry colname="col4">Number</oasis:entry>
         <oasis:entry colname="col5">Bias</oasis:entry>
         <oasis:entry colname="col6">SD</oasis:entry>
         <oasis:entry colname="col7">Number</oasis:entry>
         <oasis:entry colname="col8">Bias</oasis:entry>
         <oasis:entry colname="col9">SD</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5">[m s<sup>−1</sup>]</oasis:entry>
         <oasis:entry colname="col6">[m s<sup>−1</sup>]</oasis:entry>
         <oasis:entry colname="col7"/>
         <oasis:entry colname="col8">[°]</oasis:entry>
         <oasis:entry colname="col9">[°]</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry namest="col1" nameend="col2" align="center" colsep="1">All data </oasis:entry>
         <oasis:entry colname="col3">4 546 047 080</oasis:entry>
         <oasis:entry colname="col4">4 384 070 442</oasis:entry>
         <oasis:entry colname="col5">0.34</oasis:entry>
         <oasis:entry colname="col6">4.76</oasis:entry>
         <oasis:entry colname="col7">4 281 120 981</oasis:entry>
         <oasis:entry colname="col8">0.14</oasis:entry>
         <oasis:entry colname="col9">9.62</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col2" align="center" colsep="1">Allowed and unique </oasis:entry>
         <oasis:entry colname="col3">–</oasis:entry>
         <oasis:entry colname="col4">2 868 355 459</oasis:entry>
         <oasis:entry colname="col5">0.30</oasis:entry>
         <oasis:entry colname="col6">2.52</oasis:entry>
         <oasis:entry colname="col7">2 800 011 753</oasis:entry>
         <oasis:entry colname="col8">0.17</oasis:entry>
         <oasis:entry colname="col9">8.67</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Flight level</oasis:entry>
         <oasis:entry colname="col2">Pressure</oasis:entry>
         <oasis:entry colname="col3">Raw volume</oasis:entry>
         <oasis:entry colname="col4">Number</oasis:entry>
         <oasis:entry colname="col5">Bias</oasis:entry>
         <oasis:entry colname="col6">SD</oasis:entry>
         <oasis:entry colname="col7">Number</oasis:entry>
         <oasis:entry colname="col8">Bias</oasis:entry>
         <oasis:entry colname="col9">SD</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">(hPa)</oasis:entry>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5">[m s<sup>−1</sup>]</oasis:entry>
         <oasis:entry colname="col6">[m s<sup>−1</sup>]</oasis:entry>
         <oasis:entry colname="col7"/>
         <oasis:entry colname="col8">[°]</oasis:entry>
         <oasis:entry colname="col9">[°]</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">0–100</oasis:entry>
         <oasis:entry colname="col2">1013–696</oasis:entry>
         <oasis:entry colname="col3">235 608 797</oasis:entry>
         <oasis:entry colname="col4">151 947 715</oasis:entry>
         <oasis:entry colname="col5">0.20</oasis:entry>
         <oasis:entry colname="col6">2.20</oasis:entry>
         <oasis:entry colname="col7">135 707 126</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M147" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.16</oasis:entry>
         <oasis:entry colname="col9">14.24</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">100–200</oasis:entry>
         <oasis:entry colname="col2">696–465</oasis:entry>
         <oasis:entry colname="col3">361 851 780</oasis:entry>
         <oasis:entry colname="col4">252 516 206</oasis:entry>
         <oasis:entry colname="col5">0.22</oasis:entry>
         <oasis:entry colname="col6">2.28</oasis:entry>
         <oasis:entry colname="col7">243 224 271</oasis:entry>
         <oasis:entry colname="col8">0.45</oasis:entry>
         <oasis:entry colname="col9">10.77</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">200–300</oasis:entry>
         <oasis:entry colname="col2">465–300</oasis:entry>
         <oasis:entry colname="col3">594 829 968</oasis:entry>
         <oasis:entry colname="col4">386 369 304</oasis:entry>
         <oasis:entry colname="col5">0.27</oasis:entry>
         <oasis:entry colname="col6">2.53</oasis:entry>
         <oasis:entry colname="col7">378 271 790</oasis:entry>
         <oasis:entry colname="col8">0.33</oasis:entry>
         <oasis:entry colname="col9">9.32</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">300–400</oasis:entry>
         <oasis:entry colname="col2">300–187</oasis:entry>
         <oasis:entry colname="col3">3 133 630 884</oasis:entry>
         <oasis:entry colname="col4">2 016 820 254</oasis:entry>
         <oasis:entry colname="col5">0.32</oasis:entry>
         <oasis:entry colname="col6">2.60</oasis:entry>
         <oasis:entry colname="col7">1 983 182 045</oasis:entry>
         <oasis:entry colname="col8">0.12</oasis:entry>
         <oasis:entry colname="col9">7.94</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"><inline-formula><mml:math id="M148" display="inline"><mml:mo>&gt;</mml:mo></mml:math></inline-formula> 400</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M149" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> 187</oasis:entry>
         <oasis:entry colname="col3">220 023 701</oasis:entry>
         <oasis:entry colname="col4">131 427 728</oasis:entry>
         <oasis:entry colname="col5">0.36</oasis:entry>
         <oasis:entry colname="col6">2.81</oasis:entry>
         <oasis:entry colname="col7">128 500 903</oasis:entry>
         <oasis:entry colname="col8">0.02</oasis:entry>
         <oasis:entry colname="col9">10.03</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table><table-wrap-foot><p id="d2e4616">SD: standard deviation.</p></table-wrap-foot></table-wrap>

      <p id="d2e5064">The temperature statistics are shown in Table <xref ref-type="table" rid="T4"/>. The temperature error in total is slightly smaller than 1 K, with a minimum error of 0.8 K around flight level 250. The maximum error is found at cruising level (11 km). Note that the bias with the model is around zero.</p>

<table-wrap id="T4" specific-use="star"><label>Table 4</label><caption><p id="d2e5072">Statistics of EMADDC temperature observations against the operational ECMWF model.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="6">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="right" colsep="1"/>
     <oasis:colspec colnum="3" colname="col3" align="right" colsep="1"/>
     <oasis:colspec colnum="4" colname="col4" align="right"/>
     <oasis:colspec colnum="5" colname="col5" align="right"/>
     <oasis:colspec colnum="6" colname="col6" align="center"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col6" align="center">January 2024–March 2024 </oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry namest="col4" nameend="col6" align="center">Temperature, EMADDC-NWP </oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">Raw input</oasis:entry>
         <oasis:entry colname="col4">Number</oasis:entry>
         <oasis:entry colname="col5">Bias [K]</oasis:entry>
         <oasis:entry colname="col6">SD [K]</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry namest="col1" nameend="col2" align="center" colsep="1">All data </oasis:entry>
         <oasis:entry colname="col3">4 546 047 080</oasis:entry>
         <oasis:entry colname="col4">3 138 758 482</oasis:entry>
         <oasis:entry colname="col5">0.02</oasis:entry>
         <oasis:entry colname="col6">1.05</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col2" align="center" colsep="1">Allowed and unique </oasis:entry>
         <oasis:entry colname="col3">–</oasis:entry>
         <oasis:entry colname="col4">1 763 880 586</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M150" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.00</oasis:entry>
         <oasis:entry colname="col6">0.95</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Flight level</oasis:entry>
         <oasis:entry colname="col2">Pressure (hPa)</oasis:entry>
         <oasis:entry colname="col3">Raw volume</oasis:entry>
         <oasis:entry colname="col4">Number</oasis:entry>
         <oasis:entry colname="col5">Bias [K]</oasis:entry>
         <oasis:entry colname="col6">SD [K]</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">0–100</oasis:entry>
         <oasis:entry colname="col2">1013–696</oasis:entry>
         <oasis:entry colname="col3">235 608 797</oasis:entry>
         <oasis:entry colname="col4">51 837 791</oasis:entry>
         <oasis:entry colname="col5">0.13</oasis:entry>
         <oasis:entry colname="col6">1.08</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">100–200</oasis:entry>
         <oasis:entry colname="col2">696–465</oasis:entry>
         <oasis:entry colname="col3">361 851 780</oasis:entry>
         <oasis:entry colname="col4">140 307 524</oasis:entry>
         <oasis:entry colname="col5">0.05</oasis:entry>
         <oasis:entry colname="col6">0.83</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">200–300</oasis:entry>
         <oasis:entry colname="col2">465–300</oasis:entry>
         <oasis:entry colname="col3">594 829 968</oasis:entry>
         <oasis:entry colname="col4">241 388 676</oasis:entry>
         <oasis:entry colname="col5">0.06</oasis:entry>
         <oasis:entry colname="col6">0.77</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">300–400</oasis:entry>
         <oasis:entry colname="col2">300–187</oasis:entry>
         <oasis:entry colname="col3">3 133 630 884</oasis:entry>
         <oasis:entry colname="col4">1 309 098 407</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M151" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.01</oasis:entry>
         <oasis:entry colname="col6">1.04</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"><inline-formula><mml:math id="M152" display="inline"><mml:mo>&gt;</mml:mo></mml:math></inline-formula> 400</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M153" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> 187</oasis:entry>
         <oasis:entry colname="col3">220 023 701</oasis:entry>
         <oasis:entry colname="col4">83 204 202</oasis:entry>
         <oasis:entry colname="col5">0.05</oasis:entry>
         <oasis:entry colname="col6">1.24</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table><table-wrap-foot><p id="d2e5075">SD: standard deviation.</p></table-wrap-foot></table-wrap>

</sec>
<sec id="Ch1.S8.SS2">
  <label>8.2</label><title>Comparison with radiosonde observations</title>
      <p id="d2e5341">Radiosondes are regarded as anchor observations for meteorology and are generally launched 45 min prior to the main synoptic hours 00:00 and 12:00 UTC to achieve a profile centred around 00:00 UTC (12:00 UTC). Note that a few sites also launch at 06:00  and 18:00 UTC. Due to budget restrictions some radiosondes are only launched once a day. Table <xref ref-type="table" rid="T5"/> shows collocated observations statistics of wind (speed and wind components). Table <xref ref-type="table" rid="T6"/> contains temperature statistics. Aircraft and radiosonde observations will never be exactly collocated in both space and time. Nevertheless, collocations are made by having the maximum distance between aircraft and radiosondes of at most 50 km, a maximum height difference of 100 m, and a time difference of 1800 s.</p>

<table-wrap id="T5" specific-use="star"><label>Table 5</label><caption><p id="d2e5351">Statistics of wind observations comparison against radiosondes and the operational ECMWF model.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="9">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="center" colsep="1"/>
     <oasis:colspec colnum="3" colname="col3" align="right" colsep="1"/>
     <oasis:colspec colnum="4" colname="col4" align="right"/>
     <oasis:colspec colnum="5" colname="col5" align="center" colsep="1"/>
     <oasis:colspec colnum="6" colname="col6" align="right"/>
     <oasis:colspec colnum="7" colname="col7" align="center" colsep="1"/>
     <oasis:colspec colnum="8" colname="col8" align="right"/>
     <oasis:colspec colnum="9" colname="col9" align="center"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col9" align="center">January–March 2023 </oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col9" align="center">East–west wind component [m s<sup>−1</sup>] </oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry namest="col4" nameend="col5" align="center" colsep="1">EMADDC-RS </oasis:entry>
         <oasis:entry namest="col6" nameend="col7" align="center" colsep="1">EMADDC-NWP </oasis:entry>
         <oasis:entry namest="col8" nameend="col9" align="center">RS-NWP </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Flight level</oasis:entry>
         <oasis:entry colname="col2">Pressure</oasis:entry>
         <oasis:entry colname="col3">Number</oasis:entry>
         <oasis:entry colname="col4">Bias</oasis:entry>
         <oasis:entry colname="col5">SD</oasis:entry>
         <oasis:entry colname="col6">Bias</oasis:entry>
         <oasis:entry colname="col7">SD</oasis:entry>
         <oasis:entry colname="col8">Bias</oasis:entry>
         <oasis:entry colname="col9">SD</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">(hPa)</oasis:entry>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">[m s<sup>−1</sup>]</oasis:entry>
         <oasis:entry colname="col5">[m s<sup>−1</sup>]</oasis:entry>
         <oasis:entry colname="col6">[m s<sup>−1</sup>]</oasis:entry>
         <oasis:entry colname="col7">[m s<sup>−1</sup>]</oasis:entry>
         <oasis:entry colname="col8">[m s<sup>−1</sup>]</oasis:entry>
         <oasis:entry colname="col9">[m s<sup>−1</sup>]</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"><inline-formula><mml:math id="M161" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> 0</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M162" display="inline"><mml:mo>&gt;</mml:mo></mml:math></inline-formula> 1023</oasis:entry>
         <oasis:entry colname="col3">166</oasis:entry>
         <oasis:entry colname="col4">0.58</oasis:entry>
         <oasis:entry colname="col5">1.16</oasis:entry>
         <oasis:entry colname="col6">0.40</oasis:entry>
         <oasis:entry colname="col7">1.41</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M163" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.09</oasis:entry>
         <oasis:entry colname="col9">1.08</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">0–100</oasis:entry>
         <oasis:entry colname="col2">1013–696</oasis:entry>
         <oasis:entry colname="col3">541 153</oasis:entry>
         <oasis:entry colname="col4">0.07</oasis:entry>
         <oasis:entry colname="col5">2.42</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M164" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.20</oasis:entry>
         <oasis:entry colname="col7">2.59</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M165" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.19</oasis:entry>
         <oasis:entry colname="col9">2.46</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">100–200</oasis:entry>
         <oasis:entry colname="col2">696–465</oasis:entry>
         <oasis:entry colname="col3">790 741</oasis:entry>
         <oasis:entry colname="col4">0.11</oasis:entry>
         <oasis:entry colname="col5">2.08</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M166" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.11</oasis:entry>
         <oasis:entry colname="col7">2.32</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M167" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.17</oasis:entry>
         <oasis:entry colname="col9">2.17</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">200–300</oasis:entry>
         <oasis:entry colname="col2">465–300</oasis:entry>
         <oasis:entry colname="col3">976 001</oasis:entry>
         <oasis:entry colname="col4">0.10</oasis:entry>
         <oasis:entry colname="col5">2.25</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M168" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.09</oasis:entry>
         <oasis:entry colname="col7">2.66</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M169" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.14</oasis:entry>
         <oasis:entry colname="col9">2.49</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">300–400</oasis:entry>
         <oasis:entry colname="col2">300–187</oasis:entry>
         <oasis:entry colname="col3">1 548 851</oasis:entry>
         <oasis:entry colname="col4">0.05</oasis:entry>
         <oasis:entry colname="col5">2.36</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M170" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.06</oasis:entry>
         <oasis:entry colname="col7">2.69</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M171" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.11</oasis:entry>
         <oasis:entry colname="col9">2.55</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"><inline-formula><mml:math id="M172" display="inline"><mml:mo>&gt;</mml:mo></mml:math></inline-formula> 400</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M173" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> 187</oasis:entry>
         <oasis:entry colname="col3">54 193</oasis:entry>
         <oasis:entry colname="col4">0.09</oasis:entry>
         <oasis:entry colname="col5">2.78</oasis:entry>
         <oasis:entry colname="col6">0.10</oasis:entry>
         <oasis:entry colname="col7">2.87</oasis:entry>
         <oasis:entry colname="col8">0.04</oasis:entry>
         <oasis:entry colname="col9">2.74</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col9" align="center">North–south wind component [m s<sup>−1</sup>] </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"><inline-formula><mml:math id="M175" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> 0</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M176" display="inline"><mml:mo>&gt;</mml:mo></mml:math></inline-formula> 1023</oasis:entry>
         <oasis:entry colname="col3">160 746</oasis:entry>
         <oasis:entry colname="col4">0.02</oasis:entry>
         <oasis:entry colname="col5">2.38</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M177" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.06</oasis:entry>
         <oasis:entry colname="col7">2.47</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M178" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.25</oasis:entry>
         <oasis:entry colname="col9">2.34</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">0–100</oasis:entry>
         <oasis:entry colname="col2">1013–696</oasis:entry>
         <oasis:entry colname="col3">434 029</oasis:entry>
         <oasis:entry colname="col4">0.02</oasis:entry>
         <oasis:entry colname="col5">2.12</oasis:entry>
         <oasis:entry colname="col6">0.00</oasis:entry>
         <oasis:entry colname="col7">2.31</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M179" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.09</oasis:entry>
         <oasis:entry colname="col9">2.16</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">100–200</oasis:entry>
         <oasis:entry colname="col2">696–465</oasis:entry>
         <oasis:entry colname="col3">565 086</oasis:entry>
         <oasis:entry colname="col4">0.02</oasis:entry>
         <oasis:entry colname="col5">2.27</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M180" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.17</oasis:entry>
         <oasis:entry colname="col7">2.44</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M181" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.22</oasis:entry>
         <oasis:entry colname="col9">2.40</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">200–300</oasis:entry>
         <oasis:entry colname="col2">465–300</oasis:entry>
         <oasis:entry colname="col3">858 477</oasis:entry>
         <oasis:entry colname="col4">0.01</oasis:entry>
         <oasis:entry colname="col5">2.33</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M182" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.25</oasis:entry>
         <oasis:entry colname="col7">2.71</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M183" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.23</oasis:entry>
         <oasis:entry colname="col9">2.56</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">300–400</oasis:entry>
         <oasis:entry colname="col2">300–187</oasis:entry>
         <oasis:entry colname="col3">590 015</oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M184" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.13</oasis:entry>
         <oasis:entry colname="col5">2.51</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M185" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.32</oasis:entry>
         <oasis:entry colname="col7">2.78</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M186" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.18</oasis:entry>
         <oasis:entry colname="col9">2.68</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"><inline-formula><mml:math id="M187" display="inline"><mml:mo>&gt;</mml:mo></mml:math></inline-formula> 400</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M188" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> 187</oasis:entry>
         <oasis:entry colname="col3">236</oasis:entry>
         <oasis:entry colname="col4">0.03</oasis:entry>
         <oasis:entry colname="col5">1.92</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M189" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.19</oasis:entry>
         <oasis:entry colname="col7">2.02</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M190" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.17</oasis:entry>
         <oasis:entry colname="col9">1.76</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col9" align="center">Vector RMSE </oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry namest="col4" nameend="col5" align="center" colsep="1">EMADDC-RS </oasis:entry>
         <oasis:entry namest="col6" nameend="col7" align="center" colsep="1">EMADDC-NWP </oasis:entry>
         <oasis:entry namest="col8" nameend="col9" align="center">RS-NWP </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">Number</oasis:entry>
         <oasis:entry namest="col4" nameend="col5" align="center" colsep="1">VRMSE </oasis:entry>
         <oasis:entry namest="col6" nameend="col7" align="center" colsep="1">VRMSE </oasis:entry>
         <oasis:entry namest="col8" nameend="col9" align="center">VRMSE </oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry namest="col4" nameend="col5" align="center" colsep="1">[m s<sup>−1</sup>] </oasis:entry>
         <oasis:entry namest="col6" nameend="col7" align="center" colsep="1">[m s<sup>−1</sup>] </oasis:entry>
         <oasis:entry namest="col8" nameend="col9" align="center">[m s<sup>−1</sup>] </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry namest="col1" nameend="col2" align="right" colsep="1"><inline-formula><mml:math id="M194" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> 0</oasis:entry>
         <oasis:entry colname="col3">166</oasis:entry>
         <oasis:entry namest="col4" nameend="col5" align="center" colsep="1">2.18 </oasis:entry>
         <oasis:entry namest="col6" nameend="col7" align="center" colsep="1">2.06 </oasis:entry>
         <oasis:entry namest="col8" nameend="col9" align="center">2.05 </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry namest="col1" nameend="col2" align="right" colsep="1">0–100</oasis:entry>
         <oasis:entry colname="col3">541 153</oasis:entry>
         <oasis:entry namest="col4" nameend="col5" align="center" colsep="1">3.31 </oasis:entry>
         <oasis:entry namest="col6" nameend="col7" align="center" colsep="1">3.53 </oasis:entry>
         <oasis:entry namest="col8" nameend="col9" align="center">3.35 </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry namest="col1" nameend="col2" align="right" colsep="1">100–200</oasis:entry>
         <oasis:entry colname="col3">790 741</oasis:entry>
         <oasis:entry namest="col4" nameend="col5" align="center" colsep="1">2.98 </oasis:entry>
         <oasis:entry namest="col6" nameend="col7" align="center" colsep="1">3.32 </oasis:entry>
         <oasis:entry namest="col8" nameend="col9" align="center">3.10 </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry namest="col1" nameend="col2" align="right" colsep="1">200–300</oasis:entry>
         <oasis:entry colname="col3">976 001</oasis:entry>
         <oasis:entry namest="col4" nameend="col5" align="center" colsep="1">3.30 </oasis:entry>
         <oasis:entry namest="col6" nameend="col7" align="center" colsep="1">3.81 </oasis:entry>
         <oasis:entry namest="col8" nameend="col9" align="center">3.66 </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry namest="col1" nameend="col2" align="right" colsep="1">300–400</oasis:entry>
         <oasis:entry colname="col3">1 548 851</oasis:entry>
         <oasis:entry namest="col4" nameend="col5" align="center" colsep="1">3.40 </oasis:entry>
         <oasis:entry namest="col6" nameend="col7" align="center" colsep="1">3.89 </oasis:entry>
         <oasis:entry namest="col8" nameend="col9" align="center">3.70 </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry namest="col1" nameend="col2" align="right" colsep="1"><inline-formula><mml:math id="M195" display="inline"><mml:mo>&gt;</mml:mo></mml:math></inline-formula> 400</oasis:entry>
         <oasis:entry colname="col3">54 193</oasis:entry>
         <oasis:entry namest="col4" nameend="col5" align="center" colsep="1">3.84 </oasis:entry>
         <oasis:entry namest="col6" nameend="col7" align="center" colsep="1">4.19 </oasis:entry>
         <oasis:entry namest="col8" nameend="col9" align="center">3.88 </oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table><table-wrap-foot><p id="d2e5354">SD: standard deviation.</p></table-wrap-foot></table-wrap>

<table-wrap id="T6" specific-use="star"><label>Table 6</label><caption><p id="d2e6354">Comparison against radiosondes.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="9">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="right" colsep="1"/>
     <oasis:colspec colnum="3" colname="col3" align="right" colsep="1"/>
     <oasis:colspec colnum="4" colname="col4" align="right"/>
     <oasis:colspec colnum="5" colname="col5" align="center" colsep="1"/>
     <oasis:colspec colnum="6" colname="col6" align="right"/>
     <oasis:colspec colnum="7" colname="col7" align="center" colsep="1"/>
     <oasis:colspec colnum="8" colname="col8" align="right"/>
     <oasis:colspec colnum="9" colname="col9" align="center"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col9" align="center">January–March 2023 </oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col9" align="center">Temperature [K] </oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry namest="col4" nameend="col5" align="center" colsep="1">EMADDC-RS </oasis:entry>
         <oasis:entry namest="col6" nameend="col7" align="center" colsep="1">EMADDC-NWP </oasis:entry>
         <oasis:entry namest="col8" nameend="col9" align="center">RS-NWP </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Flight level</oasis:entry>
         <oasis:entry colname="col2">Pressure</oasis:entry>
         <oasis:entry colname="col3">Number</oasis:entry>
         <oasis:entry colname="col4">Bias</oasis:entry>
         <oasis:entry colname="col5">SD</oasis:entry>
         <oasis:entry colname="col6">Bias</oasis:entry>
         <oasis:entry colname="col7">SD</oasis:entry>
         <oasis:entry colname="col8">Bias</oasis:entry>
         <oasis:entry colname="col9">SD</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">(hPa)</oasis:entry>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">[K]</oasis:entry>
         <oasis:entry colname="col5">[K]</oasis:entry>
         <oasis:entry colname="col6">[K]</oasis:entry>
         <oasis:entry colname="col7">[K]</oasis:entry>
         <oasis:entry colname="col8"/>
         <oasis:entry colname="col9">[K]</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">0–100</oasis:entry>
         <oasis:entry colname="col2">1013–696</oasis:entry>
         <oasis:entry colname="col3">165 790</oasis:entry>
         <oasis:entry colname="col4">0.03</oasis:entry>
         <oasis:entry colname="col5">1.17</oasis:entry>
         <oasis:entry colname="col6">0.05</oasis:entry>
         <oasis:entry colname="col7">1.13</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M196" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.01</oasis:entry>
         <oasis:entry colname="col9">0.97</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">100–200</oasis:entry>
         <oasis:entry colname="col2">696–465</oasis:entry>
         <oasis:entry colname="col3">496 154</oasis:entry>
         <oasis:entry colname="col4">0.07</oasis:entry>
         <oasis:entry colname="col5">0.84</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M197" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.00</oasis:entry>
         <oasis:entry colname="col7">0.84</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M198" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.08</oasis:entry>
         <oasis:entry colname="col9">0.65</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">200–300</oasis:entry>
         <oasis:entry colname="col2">465–300</oasis:entry>
         <oasis:entry colname="col3">704 675</oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M199" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.01</oasis:entry>
         <oasis:entry colname="col5">0.76</oasis:entry>
         <oasis:entry colname="col6">0.04</oasis:entry>
         <oasis:entry colname="col7">0.78</oasis:entry>
         <oasis:entry colname="col8">0.05</oasis:entry>
         <oasis:entry colname="col9">0.56</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">300–400</oasis:entry>
         <oasis:entry colname="col2">300–187</oasis:entry>
         <oasis:entry colname="col3">1 158 841</oasis:entry>
         <oasis:entry colname="col4">0.01</oasis:entry>
         <oasis:entry colname="col5">1.04</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M200" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.01</oasis:entry>
         <oasis:entry colname="col7">6.47</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M201" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.06</oasis:entry>
         <oasis:entry colname="col9">0.87</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"><inline-formula><mml:math id="M202" display="inline"><mml:mo>&gt;</mml:mo></mml:math></inline-formula> 400</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M203" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> 187</oasis:entry>
         <oasis:entry colname="col3">36 737</oasis:entry>
         <oasis:entry colname="col4">0.08</oasis:entry>
         <oasis:entry colname="col5">1.31</oasis:entry>
         <oasis:entry colname="col6">0.02</oasis:entry>
         <oasis:entry colname="col7">1.27</oasis:entry>
         <oasis:entry colname="col8"><inline-formula><mml:math id="M204" display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>0.08</oasis:entry>
         <oasis:entry colname="col9">1.21</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table><table-wrap-foot><p id="d2e6357">SD: standard deviation.</p></table-wrap-foot></table-wrap>

      <p id="d2e6692">For all wind parameters, the comparison between radiosonde and EMADDC mostly has a standard deviation lower than that of the comparison model and EMADDC or radiosonde. Furthermore, the difference between model and radiosonde or model and EMADDC is similar and of the order of 0.3 to 0.5 m s<sup>−1</sup>, while the mean difference between aircraft and balloon is small. The reason for this is the model representation error due to the model grid size. The temperature statistics show that all three systems have the same average temperature (all biases are small and near  zero). Not surprisingly, the temperature observations of EMADDC are clearly of less quality than radio soundings, although above 850 hPa the quality is reasonable.</p>
</sec>
<sec id="Ch1.S8.SS3">
  <label>8.3</label><title>Comparison with AMDAR observations</title>
      <p id="d2e6715">Finally, a comparison is made between EMADDC observation and AMDAR observations. AMDAR observations are extracted from the onboard computer and should have a large resemblance to EMADDC observation, and thus the mutual statistics are expected to be small. Figure <xref ref-type="fig" rid="F9"/> shows the statistics of EMADDC, AMDAR, and NWP for temperature and vector RMSE. A lookup table is used to connect AMDAR aircraft to an ICAO aircraft identification. This lookup table is partially based on E-AMDAR information and is completed with results from collocation with EMADDC observations. Due to rounding of position and time, exact collocations of AMDAR and Mode-S can be tedious. Moreover, the reporting observation frequencies are different, resulting in about half of the AMDAR observations being collocated. Here an AMDAR observation is collocated with an EMADDC observation when the time difference is less than 2 min, the distance is less than 1 km, and most importantly the height difference is at most 25 ft. The height discrimination is strong because in general temperature and wind tend to change more with height than with horizontal displacements.</p>

      <fig id="F9" specific-use="star"><label>Figure 9</label><caption><p id="d2e6721">Statistics of an 8-month period of collocated AMDAR and EMADDC observations. Panel <bold>(a)</bold> shows the mean differences in flight bins of 25 flight levels, panel <bold>(b)</bold> shows the standard deviation of the differences in temperature, and panel <bold>(c)</bold> shows the Vector RMSE with respect to height [ft].</p></caption>
          <graphic xlink:href="https://amt.copernicus.org/articles/18/3341/2025/amt-18-3341-2025-f09.png"/>

        </fig>

      <p id="d2e6739">The temperature of AMDAR has a positive bias when compared to NWP, which is known in the literature <xref ref-type="bibr" rid="bib1.bibx33" id="paren.26"/>. The bias of EMADDC is around zero. The AMDAR temperature standard deviation is clearly better than EMADDC. The increase in standard deviation near the ground is due to atmospheric turbulence being more present near the surface <xref ref-type="bibr" rid="bib1.bibx23" id="paren.27"/>. The EMADDC temperature error increases at lower levels because aircraft land generally with a low airspeed and Mach number, which results in a larger error due to the rounding of the airspeed observation given the relatively low resolution of these parameters.</p>
      <p id="d2e6748">For wind the vector RMSE shows that both AMDAR and EMADDC perform equally well; there are small differences but not significant. However, a gross error check on the zonal wind is needed to detect systematic errors in B787 aircraft <xref ref-type="bibr" rid="bib1.bibx30" id="paren.28"/>.</p>
</sec>
</sec>
<sec id="Ch1.S9" sec-type="conclusions">
  <label>9</label><title>Conclusions and outlook</title>
      <p id="d2e6763">This paper presents the current EMADDC system (R2.2) to produce wind and temperature observations derived from Mode-S EHS aircraft messages.</p>
      <p id="d2e6766">Mode-S EHS is a surveillance method which not only tracks an aircraft in the range of the radar but also interrogates the aircraft and requests  specific information which is used by air traffic services. These downlinked data contain sufficient information to derive wind and temperature at very high spatial and temporal resolution. These data are being processed by EMADDC to produce high-quality meteorological information. First of all, to be able to generate observations of good quality, several quality checks are applied.  The quality of directly derived wind is hampered by an unknown offset in heading and low resolution of the Mach number and airspeed when deriving temperature.</p>
      <p id="d2e6769">To obtain high-quality wind measurements, a correction from magnetic heading to true heading is necessary; this heading correction is unique for each aircraft and may change in time due to maintenance of the aircraft. The observations are compared to wind forecasts of the ECMWF model, radiosonde wind observations over a 3-month period, and AMDAR observations over a period of 8 months. The derived wind observations compare well to the model and the radiosonde observations with similar statistics to those when comparing AMDAR to model equivalents.</p>
      <p id="d2e6772">The temperature is derived from the quadratic quotient of the true airspeed and the Mach number, with both values truncated. The estimate of the Mach number can be improved by exploiting the downlinked indicated airspeed. Next, a mean temperature is determined using a 20 s time window, and finally, the temperature is corrected based on the methodology developed in <xref ref-type="bibr" rid="bib1.bibx7" id="text.29"/>. Error analysis revealed that the quality of the true airspeed measurement limits the temperature quality. Comparison with radiosonde observations showed good quality with respect to temperature when the observation is above 700 hPa (albeit that the temperature error increases for both AMDAR and EMADDC to a maximum at 200 hPa). AMDAR comparison showed that wind observations from EMADDC are of equal quality, while temperature observations have 25 % larger error. The produced meteorological information, when thinned to avoid over-fitting, is at present widely used in regional and some global numerical weather prediction models.</p>
      <p id="d2e6779">The advantage of EMADDC over AMDAR is that only few aircraft are AMDAR-equipped, and Mode-S EHS is available (almost) everywhere in Europe, and therefore all aircraft are being utilized as a sensor. The costs of receiving data are limited; in most areas the data can be obtained through ATC partners or via local receivers. On the other hand, the AMDAR temperature, although biased, is better for heights below 850 hPa compared to EMADDC-derived temperatures.</p>
      <p id="d2e6782">Although the above-described system delivers good-quality wind and temperature observations, it is highly preferred to receive the aircraft onboard measurements of available meteorological information directly, as this will reduce and simplify the errors. Current available systems, like the changes introduced in ADS-B Version 3, may be able to provide this information in the future.</p>
      <p id="d2e6785">A final remark needs to be made on the use of NWP forecast for correction. It is assumed that the NWP model and forecast are (almost) bias-free. If this would not be the case then the bias might be reflected with reduced magnitude as a bias in the “corrected” observations <xref ref-type="bibr" rid="bib1.bibx10" id="paren.30"/>. This paper showed that this is not the case for the heading correction because aircraft heading is not related to forecast values.</p>
<sec id="Ch1.S9.SSx1" specific-use="unnumbered">
  <title>Outlook</title>
      <p id="d2e6796">The EMADDC team tries to improve the quality of derived wind and temperature continuously. The team has the following items to investigate or implement: <list list-type="bullet"><list-item>
      <p id="d2e6801">The current heading correction algorithm does not detect changes in the heading table datum effectively, especially when high datum correction values are detected. A revisit of the heading correction algorithm is foreseen in the near future.</p></list-item><list-item>
      <p id="d2e6805">Applying a general true airspeed correction for both wind and temperature.</p></list-item><list-item>
      <p id="d2e6809">Similarly to temperature measurements, a formal error can be derived for wind observations.</p></list-item><list-item>
      <p id="d2e6813">Information on the formal errors is of great interest for users in data assimilation, and EMADDC is looking into ways to disseminate this information.</p></list-item><list-item>
      <p id="d2e6817">The vast volume of data per time period and region needs proper treatment for use in, for example, data assimilation; moreover, incorporating formal errors correctly could be accounted for. Research within EMADDC is ongoing on how to apply this most efficiently. Possible methods that will be applied are thinning and/or superobbing (i.e. averaging a number of close observations and treating them as one).</p></list-item><list-item>
      <p id="d2e6821">The ADS-B information also contains geodetic height information, which might be valuable for data assimilation. Also, information about the aircraft category and positional accuracy is available. The EMADDC team intends to add this information to the observation set created.</p></list-item><list-item>
      <p id="d2e6825">The current system is file-based; in the near future a (near-)real-time production is foreseen using the real-time networks of ATC in Europe (NewPENS) and real-time transmission of receiver data to EMADDC from ADSB Support and others.</p></list-item><list-item>
      <p id="d2e6829">As part of an initiative of Met Office and KNMI, EMADDC Met Office Global is processing data from Flightradar24 to enhance “global coverage” (limited to aircraft trajectories where Mode-S EHS is actively interrogated). The observations generated through this process are made available as CSV, NetCDF, and BUFR files exclusively to National Hydrometeorological Institutes. In time, these observations will be processed within the regular EMADDC system to accomplish synergy for corrections and to prevent data duplication and redundancy.</p></list-item></list></p>
      <p id="d2e6832">In the future ADS-B is foreseen to broadcast meteorological information <xref ref-type="bibr" rid="bib1.bibx21" id="paren.31"/> creating enormous data volumes which are expected to require quality control of some kind for use in meteorological applications. The EMADDC system could fulfil the future quality assurance function.</p>
</sec>
</sec>

      
      </body>
    <back><app-group>

<app id="App1.Ch1.S1">
  <label>Appendix A</label><title>Geomagnetic data</title>
      <p id="d2e6850">This appendix shows that the linear approximation in datum is valid for the domain of the current EMADDC processing.</p>
      <p id="d2e6853">The datum 1 January 2015 was set as the reference datum for the declination table in the current processing setup (R2.2 August 2023). The geomagnetic model is used in determining the declination for a given position and time <xref ref-type="bibr" rid="bib1.bibx16" id="paren.32"/>. Figure <xref ref-type="fig" rid="FA1"/> shows the value of the declination on 1 January 2015 (panel a),  panel (b) shows the yearly change, and panel (c) shows the difference between declination valid for 1 January 2020 and the linear approximation. The values of magnetic declination in central Europe are small. The change in declination is strongest for high-latitude regions and close to zero for low-latitude regions (panel b). The error made by the linear approximation is small, as can be seen from panel (c).</p><fig id="FA1"><label>Figure A1</label><caption><p id="d2e6863">The effect of linearization of the declination around the datum 2015. <bold>(a)</bold> The declination on 1 January 2015, <bold>(b)</bold> the yearly change on 1 January 2015, and <bold>(c)</bold> the difference between linearization and model declination on 1 January 2020. Note that the contours differ for the three panels.</p></caption>
        
        <graphic xlink:href="https://amt.copernicus.org/articles/18/3341/2025/amt-18-3341-2025-f10.png"/>

      </fig>

</app>

<app id="App1.Ch1.S2">
  <label>Appendix B</label><title>Rounding error</title>
      <p id="d2e6891">The error due to rounding is estimated as follows. Assume that the error of an measurement <inline-formula><mml:math id="M206" display="inline"><mml:mi>X</mml:mi></mml:math></inline-formula> is normally distributed with zero mean around the true value <inline-formula><mml:math id="M207" display="inline"><mml:mrow><mml:msub><mml:mi>X</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and standard deviation <inline-formula><mml:math id="M208" display="inline"><mml:mi mathvariant="italic">σ</mml:mi></mml:math></inline-formula>. The mean and second moment of the error in <inline-formula><mml:math id="M209" display="inline"><mml:mi>X</mml:mi></mml:math></inline-formula> are given by

              <disp-formula specific-use="gather" content-type="numbered"><mml:math id="M210" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="App1.Ch1.S2.E31"><mml:mtd><mml:mtext>B1</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mi mathvariant="script">E</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:mi>X</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mi>X</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow></mml:mfenced><mml:mo>=</mml:mo><mml:msubsup><mml:mo>∫</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∞</mml:mi></mml:mrow><mml:mi mathvariant="normal">∞</mml:mi></mml:msubsup><mml:mi>x</mml:mi><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>X</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo><mml:mi mathvariant="normal">d</mml:mi><mml:mi>x</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="App1.Ch1.S2.E32"><mml:mtd><mml:mtext>B2</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mi mathvariant="script">E</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:mo>(</mml:mo><mml:mi>X</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mi>X</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub><mml:msup><mml:mo>)</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfenced><mml:mo>=</mml:mo><mml:msubsup><mml:mo>∫</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∞</mml:mi></mml:mrow><mml:mi mathvariant="normal">∞</mml:mi></mml:msubsup><mml:msup><mml:mi>x</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>X</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo><mml:mi mathvariant="normal">d</mml:mi><mml:mi>x</mml:mi><mml:mo>=</mml:mo><mml:msup><mml:mi mathvariant="italic">σ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

        Let <inline-formula><mml:math id="M211" display="inline"><mml:mrow><mml:msub><mml:mfenced close="]" open="["><mml:mi>X</mml:mi></mml:mfenced><mml:mi mathvariant="normal">r</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> be the value of <inline-formula><mml:math id="M212" display="inline"><mml:mi>X</mml:mi></mml:math></inline-formula> rounded to the nearest value <inline-formula><mml:math id="M213" display="inline"><mml:mrow><mml:mi>r</mml:mi><mml:mo>⋅</mml:mo><mml:mi>i</mml:mi></mml:mrow></mml:math></inline-formula> with <inline-formula><mml:math id="M214" display="inline"><mml:mrow><mml:mi>i</mml:mi><mml:mo>∈</mml:mo><mml:mi mathvariant="double-struck">Z</mml:mi></mml:mrow></mml:math></inline-formula>. The probability of a measurement <inline-formula><mml:math id="M215" display="inline"><mml:mrow><mml:mo>[</mml:mo><mml:mi>X</mml:mi><mml:msub><mml:mo>]</mml:mo><mml:mi mathvariant="normal">r</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is equal to probability measuring <inline-formula><mml:math id="M216" display="inline"><mml:mi>Y</mml:mi></mml:math></inline-formula> <inline-formula><mml:math id="M217" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math id="M218" display="inline"><mml:mrow><mml:mo>[</mml:mo><mml:mi>X</mml:mi><mml:mo>]</mml:mo><mml:mo>+</mml:mo><mml:mi>R</mml:mi></mml:mrow></mml:math></inline-formula>, with <inline-formula><mml:math id="M219" display="inline"><mml:mrow><mml:mo>|</mml:mo><mml:mi>R</mml:mi><mml:mo>|</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math id="M220" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> <inline-formula><mml:math id="M221" display="inline"><mml:mstyle displaystyle="false"><mml:mfrac style="text"><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle></mml:math></inline-formula>, where the probability density function of <inline-formula><mml:math id="M222" display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula> is uniform on the interval <inline-formula><mml:math id="M223" display="inline"><mml:mrow><mml:mo>[</mml:mo><mml:mo>-</mml:mo><mml:mstyle displaystyle="false"><mml:mfrac style="text"><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mstyle displaystyle="false"><mml:mfrac style="text"><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>. The probability density function of <inline-formula><mml:math id="M224" display="inline"><mml:mrow><mml:mo>[</mml:mo><mml:mi>X</mml:mi><mml:msub><mml:mo>]</mml:mo><mml:mi mathvariant="normal">r</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the convolution of the normal distribution of <inline-formula><mml:math id="M225" display="inline"><mml:mi>X</mml:mi></mml:math></inline-formula> and uniform distribution of <inline-formula><mml:math id="M226" display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula>, that is

              <disp-formula specific-use="gather" content-type="numbered"><mml:math id="M227" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="App1.Ch1.S2.E33"><mml:mtd><mml:mtext>B3</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mi mathvariant="script">P</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:mi>x</mml:mi><mml:mo>&lt;</mml:mo><mml:mo>[</mml:mo><mml:mi>X</mml:mi><mml:msub><mml:mo>]</mml:mo><mml:mi mathvariant="normal">r</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mi>X</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow></mml:mfenced><mml:mo>=</mml:mo><mml:munderover><mml:mo movablelimits="false">∫</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∞</mml:mi></mml:mrow><mml:mrow><mml:mo>[</mml:mo><mml:mi>X</mml:mi><mml:msub><mml:mo>]</mml:mo><mml:mi mathvariant="normal">r</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mi>X</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow></mml:munderover><mml:munderover><mml:mo movablelimits="false">∫</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mfrac><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mrow><mml:mfrac><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:munderover><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>X</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>-</mml:mo><mml:mi>s</mml:mi><mml:mo>)</mml:mo><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>R</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>s</mml:mi><mml:mo>)</mml:mo><mml:mi mathvariant="normal">d</mml:mi><mml:mi>s</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi>y</mml:mi></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="App1.Ch1.S2.E34"><mml:mtd><mml:mtext>B4</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mtable rowspacing="0.2ex" class="split" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mo>⇒</mml:mo><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mi>X</mml:mi><mml:msub><mml:mo>]</mml:mo><mml:mi>r</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:munderover><mml:mo movablelimits="false">∫</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mfrac><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mrow><mml:mfrac><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:munderover><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>X</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>-</mml:mo><mml:mi>s</mml:mi><mml:mo>)</mml:mo><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>R</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>s</mml:mi><mml:mo>)</mml:mo><mml:mi mathvariant="normal">d</mml:mi><mml:mi>s</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi>y</mml:mi></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:munderover><mml:mo movablelimits="false">∫</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mfrac><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mrow><mml:mfrac><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:munderover><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>X</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>-</mml:mo><mml:mi>s</mml:mi><mml:mo>)</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mi>r</mml:mi></mml:mfrac></mml:mstyle><mml:mi mathvariant="normal">d</mml:mi><mml:mi>s</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi>y</mml:mi><mml:mo>;</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

        
        thus the mean and variance of error in <inline-formula><mml:math id="M228" display="inline"><mml:mrow><mml:mo>[</mml:mo><mml:mi>X</mml:mi><mml:msub><mml:mo>]</mml:mo><mml:mi mathvariant="normal">r</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> are

              <disp-formula specific-use="gather" content-type="numbered"><mml:math id="M229" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="App1.Ch1.S2.E35"><mml:mtd><mml:mtext>B5</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mi mathvariant="script">E</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:mo>[</mml:mo><mml:mi>X</mml:mi><mml:msub><mml:mo>]</mml:mo><mml:mi mathvariant="normal">r</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mi>X</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub></mml:mrow></mml:mfenced><mml:mo>=</mml:mo><mml:munderover><mml:mo movablelimits="false">∫</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∞</mml:mi></mml:mrow><mml:mi mathvariant="normal">∞</mml:mi></mml:munderover><mml:munderover><mml:mo movablelimits="false">∫</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mfrac><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mrow><mml:mfrac><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:munderover><mml:mi>y</mml:mi><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mi>r</mml:mi></mml:mfrac></mml:mstyle><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>X</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo><mml:mi mathvariant="normal">d</mml:mi><mml:mi>s</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi>x</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="App1.Ch1.S2.E36"><mml:mtd><mml:mtext>B6</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="script">E</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:mo>(</mml:mo><mml:mo>[</mml:mo><mml:mi>X</mml:mi><mml:msub><mml:mo>]</mml:mo><mml:mi mathvariant="normal">r</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mi>X</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub><mml:msup><mml:mo>)</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfenced><mml:mo>-</mml:mo><mml:msup><mml:mfenced open="(" close=")"><mml:mrow><mml:mi mathvariant="script">E</mml:mi><mml:mo>(</mml:mo><mml:mo>[</mml:mo><mml:mi>X</mml:mi><mml:msub><mml:mo>]</mml:mo><mml:mi mathvariant="normal">r</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mi>X</mml:mi><mml:mi mathvariant="normal">t</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo>=</mml:mo><mml:munderover><mml:mo movablelimits="false">∫</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∞</mml:mi></mml:mrow><mml:mi mathvariant="normal">∞</mml:mi></mml:munderover><mml:munderover><mml:mo movablelimits="false">∫</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mfrac><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mrow><mml:mfrac><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:munderover><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mi>s</mml:mi><mml:msup><mml:mo>)</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>X</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mi>r</mml:mi></mml:mfrac></mml:mstyle><mml:mi mathvariant="normal">d</mml:mi><mml:mi>t</mml:mi><mml:mi mathvariant="normal">d</mml:mi><mml:mi>y</mml:mi></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mo>=</mml:mo><mml:munderover><mml:mo movablelimits="false">∫</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∞</mml:mi></mml:mrow><mml:mi mathvariant="normal">∞</mml:mi></mml:munderover><mml:msup><mml:mi>t</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>X</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo><mml:mi mathvariant="normal">d</mml:mi><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mi>r</mml:mi></mml:mfrac></mml:mstyle><mml:munderover><mml:mo movablelimits="false">∫</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mfrac><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mrow><mml:mfrac><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:munderover><mml:msup><mml:mi>s</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mi mathvariant="normal">d</mml:mi><mml:mi>s</mml:mi><mml:mo>=</mml:mo><mml:msup><mml:mi mathvariant="italic">σ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msup><mml:mi>r</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow><mml:mn mathvariant="normal">12</mml:mn></mml:mfrac></mml:mstyle><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula></p>
</app>

<app id="App1.Ch1.S3">
  <label>Appendix C</label><title>Data sources</title>
      <p id="d2e7856">Table <xref ref-type="table" rid="TC1"/> presents the different sources used in the current processing, and Fig. <xref ref-type="fig" rid="FC1"/> shows the coverage of the sources processed in January 2024. Figure <xref ref-type="fig" rid="FC2"/> shows the number of daily processed observations since 2016. Clearly visible is the sudden decrease in number of observations during the COVID-19 period.</p><table-wrap id="TC1"><label>Table C1</label><caption><p id="d2e7869">Sources of EMADDC in the processing in January 2024.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="5">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:colspec colnum="4" colname="col4" align="left"/>
     <oasis:colspec colnum="5" colname="col5" align="right"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Source</oasis:entry>
         <oasis:entry colname="col2">Affiliation</oasis:entry>
         <oasis:entry colname="col3">Main coverage</oasis:entry>
         <oasis:entry colname="col4">ATC/local</oasis:entry>
         <oasis:entry colname="col5">First data provided</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">AS-MET</oasis:entry>
         <oasis:entry colname="col2">Air Support, Denmark</oasis:entry>
         <oasis:entry colname="col3">Europe</oasis:entry>
         <oasis:entry colname="col4">local receivers</oasis:entry>
         <oasis:entry colname="col5">15 April 2021</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">AU</oasis:entry>
         <oasis:entry colname="col2">Austro Control</oasis:entry>
         <oasis:entry colname="col3">Austria</oasis:entry>
         <oasis:entry colname="col4">ATC radar</oasis:entry>
         <oasis:entry colname="col5">26 September 2018</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">DK</oasis:entry>
         <oasis:entry colname="col2">DMI/NAVIAR</oasis:entry>
         <oasis:entry colname="col3">Denmark</oasis:entry>
         <oasis:entry colname="col4">ATC radar</oasis:entry>
         <oasis:entry colname="col5">13 November 2017</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">ES</oasis:entry>
         <oasis:entry colname="col2">AEMET</oasis:entry>
         <oasis:entry colname="col3">Spain</oasis:entry>
         <oasis:entry colname="col4">ATC radar</oasis:entry>
         <oasis:entry colname="col5">25 June 2019</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">FR</oasis:entry>
         <oasis:entry colname="col2">Météo France</oasis:entry>
         <oasis:entry colname="col3">France</oasis:entry>
         <oasis:entry colname="col4">local receivers</oasis:entry>
         <oasis:entry colname="col5">8 September 2020</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">IL</oasis:entry>
         <oasis:entry colname="col2">Israel Meteorological Service</oasis:entry>
         <oasis:entry colname="col3">Israel</oasis:entry>
         <oasis:entry colname="col4">local receivers</oasis:entry>
         <oasis:entry colname="col5">1 May 2023</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">MUAC</oasis:entry>
         <oasis:entry colname="col2">Maastricht Upper Area Control Centre</oasis:entry>
         <oasis:entry colname="col3">Benelux</oasis:entry>
         <oasis:entry colname="col4">ATC radar</oasis:entry>
         <oasis:entry colname="col5">January 2014</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">NO-FFI</oasis:entry>
         <oasis:entry colname="col2">MET Norway/FFI</oasis:entry>
         <oasis:entry colname="col3">Norway</oasis:entry>
         <oasis:entry colname="col4">local receivers</oasis:entry>
         <oasis:entry colname="col5">3 July 2021</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">RO</oasis:entry>
         <oasis:entry colname="col2">ROMATSA</oasis:entry>
         <oasis:entry colname="col3">Romania</oasis:entry>
         <oasis:entry colname="col4">ATC radar</oasis:entry>
         <oasis:entry colname="col5">1 October 2020</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">SE</oasis:entry>
         <oasis:entry colname="col2">SMHI</oasis:entry>
         <oasis:entry colname="col3">Sweden</oasis:entry>
         <oasis:entry colname="col4">local receivers</oasis:entry>
         <oasis:entry colname="col5">7 June 2021</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">SI</oasis:entry>
         <oasis:entry colname="col2">ARSO</oasis:entry>
         <oasis:entry colname="col3">Slovenia</oasis:entry>
         <oasis:entry colname="col4">ATC radar</oasis:entry>
         <oasis:entry colname="col5">8 September 2020</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">UK</oasis:entry>
         <oasis:entry colname="col2">Met Office</oasis:entry>
         <oasis:entry colname="col3">United Kingdom</oasis:entry>
         <oasis:entry colname="col4">local receivers</oasis:entry>
         <oasis:entry colname="col5">1 February 2020</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <fig id="FC1"><label>Figure C1</label><caption><p id="d2e8132">Coverage maps of individual sources: <bold>(a)</bold> sources AS-MET and IL; <bold>(b)</bold> ES, UK, NO-FFI, and AU; and <bold>(c)</bold> FR, DK, SE, and SI.</p></caption>
        
        <graphic xlink:href="https://amt.copernicus.org/articles/18/3341/2025/amt-18-3341-2025-f11.png"/>

      </fig>

      <fig id="FC2"><label>Figure C2</label><caption><p id="d2e8155">The number of observations per day processed by EMADDC over time.</p></caption>
        
        <graphic xlink:href="https://amt.copernicus.org/articles/18/3341/2025/amt-18-3341-2025-f12.png"/>

      </fig>


</app>
  </app-group><notes notes-type="dataavailability"><title>Data availability</title>

      <p id="d2e8173">The processed historical data used in this article are available through the KNMI Data Platform at <uri>https://doi.org/10.21944/7ef8-6m27</uri> <xref ref-type="bibr" rid="bib1.bibx8" id="paren.33"/>.</p>
  </notes><notes notes-type="authorcontribution"><title>Author contributions</title>

      <p id="d2e8185">SdH drafted the manuscript and built the first version of EMADDC and the heading correction algorithm and quality control. SdH and PdJ further improved the algorithms and quality control. PdJ and MK ported the (research) version to an operational processing system. JS is the EMADDC programme manager and the liaison between research and the operational aeronautical meteorological service provision and is responsible for EMADDC funding and stakeholder management. LS developed the method to improve the Mach number by recalculation using the indicated airspeed. JS, PdJ, and MK provided input for the manuscript draft.</p>
  </notes><notes notes-type="competinginterests"><title>Competing interests</title>

      <p id="d2e8191">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="d2e8197">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.</p>
  </notes><ack><title>Acknowledgements</title><p id="d2e8203">The EMADDC system cannot function without Mode-S EHS input data. We gratefully acknowledge the delivery of Mode-S EHS data by all our partners for the generation of meteorological information, in particular the provision of Mode-S EHS data by Air Support (now ADSB Support) and the Met Office/Flightradar24 via a network of local ADS-B and Mode-S EHS receivers. Special thanks go out to Torsten Doernbach from EUROCONTROL MUAC, who supported the first and important steps with the MUAC dataset and provided continuous support. Numerical model data are intensively used for corrections and validation; we therefore thank ECMWF for data provision. The EMADDC programme is co-financed (2016–2024) by the Connecting Europe Facility of the European Union.</p></ack><notes notes-type="financialsupport"><title>Financial support</title>

      <p id="d2e8208">This research has been supported by the European Union, Connecting Europe Facility (CEF) Call 2015 Cluster 2 (project “2015_137_AF5 European Meteorological Aircraft Derived Data Center (EMADDC)”).</p>
  </notes><notes notes-type="reviewstatement"><title>Review statement</title>

      <p id="d2e8214">This paper was edited by Ad Stoffelen and reviewed by Bruce Ingleby and three anonymous referees.</p>
  </notes><ref-list>
    <title>References</title>

      <ref id="bib1.bibx1"><label>Barwell and Lorenc(1985)</label><mixed-citation> Barwell, B. R. and Lorenc, A. C.: A Study of the Impact of Aircraft Wind  Observations on a Large-Scale Analysis and Numerical Weather Prediction  System, Q. J. Roy. Meteor. Soc., 111, 103–129, 1985.</mixed-citation></ref>
      <ref id="bib1.bibx2"><label>Benjamin et al.(2010)</label><mixed-citation> Benjamin, S. G., Jamison, B. D., Moninger, W. R., Sahm, S. R., Schwartz, B. E., and Schlatter, T. W.: Relative Short-Range Forecast Impact from Aircraft,  Profiler, Radiosonde, VAD, GPS-PW, METAR and Mesonet Observations via the RUC Hourly Assimilation Cycle, Mon. Weather Rev., 138, 1319–1343, 2010.</mixed-citation></ref>
      <ref id="bib1.bibx3"><label>Cardinali et al.(2003)</label><mixed-citation> Cardinali, C., Isaksen, L., and Andersson, E.: Use and Impact of Automated Aircraft Data in a Global 4DVAR Data Assimilation System, Mon. Weather Rev., 131, 1865–1877, 2003.</mixed-citation></ref>
      <ref id="bib1.bibx4"><label>Chulliat(2015)</label><mixed-citation>Chulliat, A.: The US/UK World Magnetic Model for 2015–2020, NOAA, <ext-link xlink:href="https://doi.org/10.7289/V5TB14V7" ext-link-type="DOI">10.7289/V5TB14V7</ext-link>, 2015.</mixed-citation></ref>
      <ref id="bib1.bibx5"><label>de Haan(2011)</label><mixed-citation>de Haan, S.: High-Resolution Wind and Temperature Observations from Aircraft  Tracked by Mode-S Air Traffic Control Radar, J. Geophys. Res., 116, D10111, <ext-link xlink:href="https://doi.org/10.1029/2010JD015264" ext-link-type="DOI">10.1029/2010JD015264</ext-link>, 2011.</mixed-citation></ref>
      <ref id="bib1.bibx6"><label>de Haan(2013)</label><mixed-citation>de Haan, S.: Assimilation of GNSS ZTD and Radar Radial Velocity for the  Benefit of Very-Short-Range Regional Weather Forecasts, Q. J. Roy. Meteor. Soc., 139, 2097–2107, <ext-link xlink:href="https://doi.org/10.1002/qj.2087" ext-link-type="DOI">10.1002/qj.2087</ext-link>, 2013.</mixed-citation></ref>
      <ref id="bib1.bibx7"><label>de Haan et al.(2022)</label><mixed-citation>de Haan, S., de Jong, P. M. A., and van der Meulen, J.: Characterizing and correcting the warm bias observed in Aircraft Meteorological Data Relay (AMDAR) temperature observations, Atmos. Meas. Tech., 15, 811–818, <ext-link xlink:href="https://doi.org/10.5194/amt-15-811-2022" ext-link-type="DOI">10.5194/amt-15-811-2022</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx8"><label>de Haan et al.(2025)</label><mixed-citation>de Haan, S., de Jong, P., and, Sondij, J.: EMADDC Historical Dataset, KNMI Data Platform [data set], <ext-link xlink:href="https://doi.org/10.21944/7ef8-6m27" ext-link-type="DOI">10.21944/7ef8-6m27</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bibx9"><label>European Commission(2011)</label><mixed-citation>European Commission: Commission Implementing Regulation (EU) No 1207/2011 of 22 November 2011 Laying down Requirements for the Performance and the Interoperability of Surveillance for the Single European Sky Text with EEA Relevance, 2011. Superseded by Commission Implementing Regulation (EU) 2023/1770 of 12 September 2023 laying down provisions on aircraft equipment required for the use of the Single European Sky airspace and operating rules related to the use of the Single European Sky airspace and repealing Regulation (EC) No 29/2009 and Implementing Regulations (EU) No 1206/2011, (EU) No 1207/2011 and (EU) No 1079/2012, <uri>http://data.europa.eu/eli/reg_impl/2011/1207/oj</uri> (last access: 5 June 2025), 2011.</mixed-citation></ref>
      <ref id="bib1.bibx10"><label>Eyre(2016)</label><mixed-citation>Eyre, J. R.: Observation bias correction schemes in data assimilation systems: a theoretical study of some of their properties, Q. J. Roy. Meteor. Soc., 142, 2284–2291, <ext-link xlink:href="https://doi.org/10.1002/qj.2819" ext-link-type="DOI">10.1002/qj.2819</ext-link>, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx11"><label>Ingleby et al.(2020)</label><mixed-citation>Ingleby, B., Isaksen, L., and Kral, T.: Evaluation and Impact of Aircraft  Humidity Data in ECMWF's NWP System, ECMWF, Technical Memorandum No. 855, <ext-link xlink:href="https://doi.org/10.21957/4e825dtiy" ext-link-type="DOI">10.21957/4e825dtiy</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx12"><label>Ingleby et al.(2021)</label><mixed-citation>Ingleby, B., Candy, B., Eyre, J., Haiden, T., Hill, C., Isaksen, L., Kleist,  D., Smith, F., Steinle, P., Taylor, S., Tennant, W., and Tingwell, C.: The  Impact of COVID-19 on Weather Forecasts: A Balanced View, Geophys. Res. Lett., 48, e2020GL090699, <ext-link xlink:href="https://doi.org/10.1029/2020GL090699" ext-link-type="DOI">10.1029/2020GL090699</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx13"><label>James et al.(2020)</label><mixed-citation>James, E. P., Benjamin, S. G., and Jamison, B. D.: Commercial-Aircraft-Based Observations for NWP: Global Coverage, Data Impacts, and COVID-19, J. Appl. Meteorol. Clim., 59, 1809–1825, <ext-link xlink:href="https://doi.org/10.1175/JAMC-D-20-0010.1" ext-link-type="DOI">10.1175/JAMC-D-20-0010.1</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx14"><label>Lange and Janjić(2016)</label><mixed-citation>Lange, H. and Janjić, T.: Assimilation of Mode-S EHS Aircraft  Observations in COSMO-KENDA, Mon. Weather Rev., 144, 1697–1711,  <ext-link xlink:href="https://doi.org/10.1175/MWR-D-15-0112.1" ext-link-type="DOI">10.1175/MWR-D-15-0112.1</ext-link>, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx15"><label>Li(2021)</label><mixed-citation>Li, Z.: Impact of Assimilating Mode-S EHS Winds in the Met Office's  High-Resolution NWP Model, Meteorol. Appl., 28, e1989,  <ext-link xlink:href="https://doi.org/10.1002/met.1989" ext-link-type="DOI">10.1002/met.1989</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx16"><label>Maus and Macmillan(2005)</label><mixed-citation>Maus, S. and Macmillan, S.: 10th Generation International Geomagnetic  Reference Field, Eos Trans. AGU, 86, p. 159, <ext-link xlink:href="https://doi.org/10.1029/2005EO160006" ext-link-type="DOI">10.1029/2005EO160006</ext-link>, 2005.</mixed-citation></ref>
      <ref id="bib1.bibx17"><label>Mirza et al.(2016)</label><mixed-citation>Mirza, A. K., Ballard, S. P., Dance, S. L., Maisey, P., Rooney, G. G., and  Stone, E. K.: Comparison of Aircraft-derived Observations with  <italic>in  Situ</italic> Research Aircraft Measurements, Q. J. Roy. Meteor. Soc., 142, 2949–2967, <ext-link xlink:href="https://doi.org/10.1002/qj.2864" ext-link-type="DOI">10.1002/qj.2864</ext-link>, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx18"><label>Petersen(2016)</label><mixed-citation>Petersen, R. A.: On the Impact and Benefits of AMDAR Observations in Operational Forecasting – Part I: A Review of the Impact of Automated Aircraft Wind and Temperature Reports, B. Am. Meteorol. Soc., 97, 585–602,  <ext-link xlink:href="https://doi.org/10.1175/BAMS-D-14-00055.1" ext-link-type="DOI">10.1175/BAMS-D-14-00055.1</ext-link>, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx19"><label>Pourret et al.(2021)</label><mixed-citation>Pourret, V., Mahfouf, J. F., Guidard, V., Moll, O., Doerenbecher, A., and  Piguet, B.: Variational bias correction for Mode-S aircraft derived winds,  Tellus A, 73, 1–27, <ext-link xlink:href="https://doi.org/10.1080/16000870.2021.1886808" ext-link-type="DOI">10.1080/16000870.2021.1886808</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx20"><label>Rodi and Leon(2012)</label><mixed-citation>Rodi, A. R. and Leon, D. C.: Correction of static pressure on a research aircraft in accelerated flight using differential pressure measurements, Atmos. Meas. Tech., 5, 2569–2579, <ext-link xlink:href="https://doi.org/10.5194/amt-5-2569-2012" ext-link-type="DOI">10.5194/amt-5-2569-2012</ext-link>, 2012.</mixed-citation></ref>
      <ref id="bib1.bibx21"><label>Rodriguez(2023)</label><mixed-citation>Rodriguez, A.: icao.int, <uri>https://www.icao.int/NACC/Documents/Meetings/2023/ADSB/ADS-BImp-P07.pdf</uri>, (last access: 27 September 2024), 2023.</mixed-citation></ref>
      <ref id="bib1.bibx22"><label>Ruijgrok(1990)</label><mixed-citation> Ruijgrok, G. J. J.: Elements of Airplane Performance, Delftse University Pers, 452 pp., ISBN 90-6275-608-5, 1990.</mixed-citation></ref>
      <ref id="bib1.bibx23"><label>Schwartz and Benjamin(1995)</label><mixed-citation>Schwartz, B. E. and Benjamin, S. G.: A Comparison of Temperature and Wind Measurements from ACARS-Equipped Aircraft and Rawinsondes, Weather Forecast., 10, 528–544, <ext-link xlink:href="https://doi.org/10.1175/1520-0434" ext-link-type="DOI">10.1175/1520-0434</ext-link>, 1995. </mixed-citation></ref>
      <ref id="bib1.bibx24"><label>Stone and Kitchen(2015)</label><mixed-citation>Stone, E. K. and Kitchen, M.: Introducing an Approach for Extracting  Temperature from Aircraft GNSS and Pressure Altitude Reports in ADS-B Messages, J. Atmos. Ocean. Tech., 32, 736–743, <ext-link xlink:href="https://doi.org/10.1175/JTECH-D-14-00192.1" ext-link-type="DOI">10.1175/JTECH-D-14-00192.1</ext-link>, 2015.</mixed-citation></ref>
      <ref id="bib1.bibx25"><label>Stone and Pearce(2016)</label><mixed-citation>Stone, E. K. and Pearce, G.: A Network of Mode-S Receivers for Routine Acquisition of Aircraft-Derived Meteorological Data, J. Atmos. Ocean. Tech., 33, 757–768, <ext-link xlink:href="https://doi.org/10.1175/JTECH-D-15-0184.1" ext-link-type="DOI">10.1175/JTECH-D-15-0184.1</ext-link>, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx26"><label>Strajnar(2012)</label><mixed-citation>Strajnar, B.: Validation of Mode-S Meteorological Routine Air Report Aircraft Observations, J. Geophys. Res.-Atmos., 117, D23110,  <ext-link xlink:href="https://doi.org/10.1029/2012JD018315" ext-link-type="DOI">10.1029/2012JD018315</ext-link>, 2012.</mixed-citation></ref>
      <ref id="bib1.bibx27"><label>Strajnar et al.(2015)</label><mixed-citation>Strajnar, B.,Žagar, N., and Berre, L.: Impact of New Aircraft  Observations Mode-S MRAR in a Mesoscale NWP Model, J. Geophys. Res.-Atmos., 120, 3920–3938, <ext-link xlink:href="https://doi.org/10.1002/2014JD022654" ext-link-type="DOI">10.1002/2014JD022654</ext-link>, 2015.</mixed-citation></ref>
      <ref id="bib1.bibx28"><label>Sun(2021)</label><mixed-citation>Sun, J.: The 1090 Megahertz Riddle: A Guide to Decoding Mode S and ADS-B  Signals, TU Delft OPEN Publishing, 2nd edn., ISBN 978-94-6366-402-8,  <ext-link xlink:href="https://doi.org/10.34641/mg.11" ext-link-type="DOI">10.34641/mg.11</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx29"><label>Taylor(1997)</label><mixed-citation> Taylor, J. R.: An Introduction to Error Analysis: The Study of Uncertainties in Physical Measurements, University Science Books, Sausalito, Calif, 2nd ed. edn., ISBN 978-0-935702-75-0, 978-0-935702-42-2, 1997.</mixed-citation></ref>
      <ref id="bib1.bibx30"><label>WMO(2022)</label><mixed-citation>WMO: B787 Winds and Other Aircraft Data Quality Issues,  <uri>https://community.wmo.int/en/activity-areas/aircraft-based-observations/newsletter/volume-22#article-11</uri> (last access: 27 September 2024), 2022.</mixed-citation></ref>
      <ref id="bib1.bibx31"><label>WMO(2023)</label><mixed-citation>WMO: Guide to Instruments and Methods of Observation, Vol. III – Observing Systems, ISBN 978-92-63-10008-5, <uri>https://library.wmo.int/idurl/4/68661</uri> (last access: 5 June 2025), 2023.</mixed-citation></ref>
      <ref id="bib1.bibx32"><label>WMO(2025)</label><mixed-citation>WMO: WMO Rolling Review of Requirements, <uri>https://space.oscar.wmo.int/observingrequirements</uri> (last access: 5 June 2025), 2025.</mixed-citation></ref>
      <ref id="bib1.bibx33"><label>Zhu et al.(2015)</label><mixed-citation>Zhu, Y., Derber, J. C., Purser, R. J., Ballish, B. A., and Whiting, J.:  Variational Correction of Aircraft Temperature Bias in the NCEP's GSI Analysis System, Mon. Weather Rev., 143, 3774–3803,  <ext-link xlink:href="https://doi.org/10.1175/MWR-D-14-00235.1" ext-link-type="DOI">10.1175/MWR-D-14-00235.1</ext-link>, 2015.</mixed-citation></ref>

  </ref-list></back>
    <!--<article-title-html>EMADDC: high-volume, high-quality, and timely wind and temperature observations from aircraft surveillance data (Mode-S EHS)</article-title-html>
<abstract-html/>
<ref-html id="bib1.bib1"><label>Barwell and Lorenc(1985)</label><mixed-citation>
      
Barwell, B. R. and Lorenc, A. C.: A Study of the Impact of Aircraft Wind  Observations on a Large-Scale Analysis and Numerical Weather Prediction  System, Q. J. Roy. Meteor. Soc., 111, 103–129, 1985.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib2"><label>Benjamin et al.(2010)</label><mixed-citation>
      
Benjamin, S. G., Jamison, B. D., Moninger, W. R., Sahm, S. R., Schwartz, B. E., and Schlatter, T. W.: Relative Short-Range Forecast Impact from Aircraft,  Profiler, Radiosonde, VAD, GPS-PW, METAR and Mesonet Observations via the RUC Hourly Assimilation Cycle, Mon. Weather Rev., 138, 1319–1343, 2010.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib3"><label>Cardinali et al.(2003)</label><mixed-citation>
      
Cardinali, C., Isaksen, L., and Andersson, E.: Use and Impact of Automated Aircraft Data in a Global 4DVAR Data Assimilation System, Mon. Weather Rev., 131, 1865–1877, 2003.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib4"><label>Chulliat(2015)</label><mixed-citation>
      
Chulliat, A.: The US/UK World Magnetic Model for 2015–2020, NOAA, <a href="https://doi.org/10.7289/V5TB14V7" target="_blank">https://doi.org/10.7289/V5TB14V7</a>, 2015.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib5"><label>de Haan(2011)</label><mixed-citation>
      
de Haan, S.: High-Resolution Wind and Temperature Observations from Aircraft  Tracked by Mode-S Air Traffic Control Radar, J. Geophys. Res., 116, D10111, <a href="https://doi.org/10.1029/2010JD015264" target="_blank">https://doi.org/10.1029/2010JD015264</a>, 2011.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib6"><label>de Haan(2013)</label><mixed-citation>
      
de Haan, S.: Assimilation of GNSS ZTD and Radar Radial Velocity for the  Benefit of Very-Short-Range Regional Weather Forecasts, Q. J. Roy. Meteor. Soc., 139, 2097–2107, <a href="https://doi.org/10.1002/qj.2087" target="_blank">https://doi.org/10.1002/qj.2087</a>, 2013.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib7"><label>de Haan et al.(2022)</label><mixed-citation>
      
de Haan, S., de Jong, P. M. A., and van der Meulen, J.: Characterizing and correcting the warm bias observed in Aircraft Meteorological Data Relay (AMDAR) temperature observations, Atmos. Meas. Tech., 15, 811–818, <a href="https://doi.org/10.5194/amt-15-811-2022" target="_blank">https://doi.org/10.5194/amt-15-811-2022</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib8"><label>de Haan et al.(2025)</label><mixed-citation>
      
de Haan, S., de Jong, P., and, Sondij, J.: EMADDC Historical Dataset, KNMI Data Platform [data set], <a href="https://doi.org/10.21944/7ef8-6m27" target="_blank">https://doi.org/10.21944/7ef8-6m27</a>, 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib9"><label>European Commission(2011)</label><mixed-citation>
      
European Commission: Commission Implementing Regulation (EU) No 1207/2011 of 22 November 2011 Laying down Requirements for the Performance and the Interoperability of Surveillance for the Single European Sky Text with EEA Relevance, 2011. Superseded by Commission Implementing Regulation (EU) 2023/1770 of 12 September 2023 laying down provisions on aircraft equipment required for the use of the Single European Sky airspace and operating rules related to the use of the Single European Sky airspace and repealing Regulation (EC) No 29/2009 and Implementing Regulations (EU) No 1206/2011, (EU) No 1207/2011 and (EU) No 1079/2012, <a href="http://data.europa.eu/eli/reg_impl/2011/1207/oj" target="_blank"/> (last access: 5 June 2025), 2011.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib10"><label>Eyre(2016)</label><mixed-citation>
      
Eyre, J. R.: Observation bias correction schemes in data assimilation systems: a theoretical study of some of their properties, Q. J. Roy. Meteor. Soc., 142, 2284–2291, <a href="https://doi.org/10.1002/qj.2819" target="_blank">https://doi.org/10.1002/qj.2819</a>, 2016.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib11"><label>Ingleby et al.(2020)</label><mixed-citation>
      
Ingleby, B., Isaksen, L., and Kral, T.: Evaluation and Impact of Aircraft  Humidity Data in ECMWF's NWP System, ECMWF, Technical Memorandum No. 855, <a href="https://doi.org/10.21957/4e825dtiy" target="_blank">https://doi.org/10.21957/4e825dtiy</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib12"><label>Ingleby et al.(2021)</label><mixed-citation>
      
Ingleby, B., Candy, B., Eyre, J., Haiden, T., Hill, C., Isaksen, L., Kleist,  D., Smith, F., Steinle, P., Taylor, S., Tennant, W., and Tingwell, C.: The  Impact of COVID-19 on Weather Forecasts: A Balanced View, Geophys. Res. Lett., 48, e2020GL090699, <a href="https://doi.org/10.1029/2020GL090699" target="_blank">https://doi.org/10.1029/2020GL090699</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib13"><label>James et al.(2020)</label><mixed-citation>
      
James, E. P., Benjamin, S. G., and Jamison, B. D.: Commercial-Aircraft-Based
Observations for NWP: Global Coverage, Data Impacts, and COVID-19, J. Appl. Meteorol. Clim., 59, 1809–1825, <a href="https://doi.org/10.1175/JAMC-D-20-0010.1" target="_blank">https://doi.org/10.1175/JAMC-D-20-0010.1</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib14"><label>Lange and Janjić(2016)</label><mixed-citation>
      
Lange, H. and Janjić, T.: Assimilation of Mode-S EHS Aircraft  Observations in COSMO-KENDA, Mon. Weather Rev., 144, 1697–1711,  <a href="https://doi.org/10.1175/MWR-D-15-0112.1" target="_blank">https://doi.org/10.1175/MWR-D-15-0112.1</a>, 2016.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib15"><label>Li(2021)</label><mixed-citation>
      
Li, Z.: Impact of Assimilating Mode-S EHS Winds in the Met Office's  High-Resolution NWP Model, Meteorol. Appl., 28, e1989,  <a href="https://doi.org/10.1002/met.1989" target="_blank">https://doi.org/10.1002/met.1989</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib16"><label>Maus and Macmillan(2005)</label><mixed-citation>
      
Maus, S. and Macmillan, S.: 10th Generation International Geomagnetic  Reference Field, Eos Trans. AGU, 86, p. 159, <a href="https://doi.org/10.1029/2005EO160006" target="_blank">https://doi.org/10.1029/2005EO160006</a>, 2005.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib17"><label>Mirza et al.(2016)</label><mixed-citation>
      
Mirza, A. K., Ballard, S. P., Dance, S. L., Maisey, P., Rooney, G. G., and  Stone, E. K.: Comparison of Aircraft-derived Observations with  <i>in  Situ</i> Research Aircraft Measurements, Q. J. Roy. Meteor. Soc., 142, 2949–2967, <a href="https://doi.org/10.1002/qj.2864" target="_blank">https://doi.org/10.1002/qj.2864</a>, 2016.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib18"><label>Petersen(2016)</label><mixed-citation>
      
Petersen, R. A.: On the Impact and Benefits of AMDAR Observations in Operational Forecasting – Part I: A Review of the Impact of Automated Aircraft Wind and Temperature Reports, B. Am. Meteorol. Soc., 97, 585–602,  <a href="https://doi.org/10.1175/BAMS-D-14-00055.1" target="_blank">https://doi.org/10.1175/BAMS-D-14-00055.1</a>, 2016.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib19"><label>Pourret et al.(2021)</label><mixed-citation>
      
Pourret, V., Mahfouf, J. F., Guidard, V., Moll, O., Doerenbecher, A., and  Piguet, B.: Variational bias correction for Mode-S aircraft derived winds,  Tellus A, 73, 1–27, <a href="https://doi.org/10.1080/16000870.2021.1886808" target="_blank">https://doi.org/10.1080/16000870.2021.1886808</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib20"><label>Rodi and Leon(2012)</label><mixed-citation>
      
Rodi, A. R. and Leon, D. C.: Correction of static pressure on a research aircraft in accelerated flight using differential pressure measurements, Atmos. Meas. Tech., 5, 2569–2579, <a href="https://doi.org/10.5194/amt-5-2569-2012" target="_blank">https://doi.org/10.5194/amt-5-2569-2012</a>, 2012.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib21"><label>Rodriguez(2023)</label><mixed-citation>
      
Rodriguez, A.: icao.int, <a href="https://www.icao.int/NACC/Documents/Meetings/2023/ADSB/ADS-BImp-P07.pdf" target="_blank"/>,
(last access: 27 September 2024), 2023.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib22"><label>Ruijgrok(1990)</label><mixed-citation>
      
Ruijgrok, G. J. J.: Elements of Airplane Performance, Delftse University Pers, 452 pp., ISBN&thinsp;90-6275-608-5, 1990.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib23"><label>Schwartz and Benjamin(1995)</label><mixed-citation>
      
Schwartz, B. E. and Benjamin, S. G.: A Comparison of Temperature and Wind Measurements from ACARS-Equipped Aircraft and Rawinsondes, Weather Forecast., 10, 528–544, <a href="https://doi.org/10.1175/1520-0434" target="_blank">https://doi.org/10.1175/1520-0434</a>, 1995.


    </mixed-citation></ref-html>
<ref-html id="bib1.bib24"><label>Stone and Kitchen(2015)</label><mixed-citation>
      
Stone, E. K. and Kitchen, M.: Introducing an Approach for Extracting  Temperature from Aircraft GNSS and Pressure Altitude Reports in ADS-B Messages, J. Atmos. Ocean. Tech., 32, 736–743, <a href="https://doi.org/10.1175/JTECH-D-14-00192.1" target="_blank">https://doi.org/10.1175/JTECH-D-14-00192.1</a>, 2015.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib25"><label>Stone and Pearce(2016)</label><mixed-citation>
      
Stone, E. K. and Pearce, G.: A Network of Mode-S Receivers for Routine Acquisition of Aircraft-Derived Meteorological Data, J. Atmos. Ocean. Tech., 33, 757–768, <a href="https://doi.org/10.1175/JTECH-D-15-0184.1" target="_blank">https://doi.org/10.1175/JTECH-D-15-0184.1</a>, 2016.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib26"><label>Strajnar(2012)</label><mixed-citation>
      
Strajnar, B.: Validation of Mode-S Meteorological Routine Air Report Aircraft Observations, J. Geophys. Res.-Atmos., 117, D23110,  <a href="https://doi.org/10.1029/2012JD018315" target="_blank">https://doi.org/10.1029/2012JD018315</a>, 2012.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib27"><label>Strajnar et al.(2015)</label><mixed-citation>
      
Strajnar, B.,Žagar, N., and Berre, L.: Impact of New Aircraft  Observations Mode-S MRAR in a Mesoscale NWP Model, J. Geophys. Res.-Atmos., 120, 3920–3938, <a href="https://doi.org/10.1002/2014JD022654" target="_blank">https://doi.org/10.1002/2014JD022654</a>, 2015.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib28"><label>Sun(2021)</label><mixed-citation>
      
Sun, J.: The 1090 Megahertz Riddle: A Guide to Decoding Mode S and ADS-B  Signals, TU Delft OPEN Publishing, 2nd edn., ISBN&thinsp;978-94-6366-402-8,  <a href="https://doi.org/10.34641/mg.11" target="_blank">https://doi.org/10.34641/mg.11</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib29"><label>Taylor(1997)</label><mixed-citation>
      
Taylor, J. R.: An Introduction to Error Analysis: The Study of Uncertainties in Physical Measurements, University Science Books, Sausalito, Calif, 2nd ed.
edn., ISBN&thinsp;978-0-935702-75-0, 978-0-935702-42-2, 1997.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib30"><label>WMO(2022)</label><mixed-citation>
      
WMO: B787 Winds and Other Aircraft Data Quality Issues,  <a href="https://community.wmo.int/en/activity-areas/aircraft-based-observations/newsletter/volume-22#article-11" target="_blank"/> (last access: 27 September 2024), 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib31"><label>WMO(2023)</label><mixed-citation>
      
WMO: Guide to Instruments and Methods of Observation, Vol. III – Observing Systems, ISBN&thinsp;978-92-63-10008-5, <a href="https://library.wmo.int/idurl/4/68661" target="_blank"/> (last access: 5 June 2025), 2023.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib32"><label>WMO(2025)</label><mixed-citation>
      
WMO: WMO Rolling Review of Requirements, <a href="https://space.oscar.wmo.int/observingrequirements" target="_blank"/> (last access: 5 June 2025), 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib33"><label>Zhu et al.(2015)</label><mixed-citation>
      
Zhu, Y., Derber, J. C., Purser, R. J., Ballish, B. A., and Whiting, J.:  Variational Correction of Aircraft Temperature Bias in the NCEP's GSI Analysis System, Mon. Weather Rev., 143, 3774–3803,  <a href="https://doi.org/10.1175/MWR-D-14-00235.1" target="_blank">https://doi.org/10.1175/MWR-D-14-00235.1</a>, 2015.

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