<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article article-type="research-article" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Astron. Space Sci.</journal-id>
<journal-title>Frontiers in Astronomy and Space Sciences</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Astron. Space Sci.</abbrev-journal-title>
<issn pub-type="epub">2296-987X</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">1510602</article-id>
<article-id pub-id-type="doi">10.3389/fspas.2025.1510602</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Astronomy and Space Sciences</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>A study of O/X wave data assimilation and inversion for ionospheric vertical electron density profiles</article-title>
<alt-title alt-title-type="left-running-head">Niu et al.</alt-title>
<alt-title alt-title-type="right-running-head">
<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3389/fspas.2025.1510602">10.3389/fspas.2025.1510602</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Niu</surname>
<given-names>Longlong</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="fn" rid="fn1">
<sup>&#x2020;</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2675935/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Zhou</surname>
<given-names>Chen</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<xref ref-type="fn" rid="fn1">
<sup>&#x2020;</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1603815/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Wei</surname>
<given-names>Na</given-names>
</name>
<xref ref-type="aff" rid="aff3">
<sup>3</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Deng</surname>
<given-names>Zhong-Xin</given-names>
</name>
<xref ref-type="aff" rid="aff4">
<sup>4</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Ning</surname>
<given-names>Yun</given-names>
</name>
<xref ref-type="aff" rid="aff4">
<sup>4</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Chen</surname>
<given-names>Rong</given-names>
</name>
<xref ref-type="aff" rid="aff4">
<sup>4</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Liu</surname>
<given-names>Wen</given-names>
</name>
<xref ref-type="aff" rid="aff4">
<sup>4</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<xref ref-type="fn" rid="fn1">
<sup>&#x2020;</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
</contrib-group>
<aff id="aff1">
<sup>1</sup>
<institution>School of Mathematics and Computational Science</institution>, <institution>Xiangtan University</institution>, <addr-line>Xiangtan</addr-line>, <addr-line>Hunan</addr-line>, <country>China</country>
</aff>
<aff id="aff2">
<sup>2</sup>
<institution>Department of Space Physics</institution>, <institution>School of Electronic Information</institution>, <institution>Wuhan University</institution>, <addr-line>Wuhan</addr-line>, <addr-line>Hubei</addr-line>, <country>China</country>
</aff>
<aff id="aff3">
<sup>3</sup>
<institution>China Research Institute of Radio Wave Propagation</institution>, <addr-line>Qingdao</addr-line>, <country>China</country>
</aff>
<aff id="aff4">
<sup>4</sup>
<institution>School of Automation and Electronic Information</institution>, <institution>Xiangtan University</institution>, <addr-line>Xiangtan</addr-line>, <addr-line>Hunan</addr-line>, <country>China</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2409954/overview">Farideh Honary</ext-link>, Lancaster University, United Kingdom</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1623993/overview">Noora Partamies</ext-link>, The University Centre in Svalbard, Norway</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2880009/overview">Michael Jurgen Kosch</ext-link>, Lancaster University, United Kingdom</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Wen Liu, <email>l_wen9209@sina.com</email>
</corresp>
<fn fn-type="other" id="fn1">
<label>
<sup>&#x2020;</sup>
</label>
<p>ORCID: Longlong Niu: <ext-link ext-link-type="uri" xlink:href="http://orcid.org/0009-0000-5968-9840">orcid.org/0009-0000-5968-9840</ext-link>; Chen Zhou: <ext-link ext-link-type="uri" xlink:href="http://orcid.org/0000-0003-2692-9451">orcid.org/0000-0003-2692-9451</ext-link>; Wen Liu: <ext-link ext-link-type="uri" xlink:href="http://orcid.org/0009-0001-1369-2179">orcid.org/0009-0001-1369-2179</ext-link>
</p>
</fn>
</author-notes>
<pub-date pub-type="epub">
<day>07</day>
<month>04</month>
<year>2025</year>
</pub-date>
<pub-date pub-type="collection">
<year>2025</year>
</pub-date>
<volume>12</volume>
<elocation-id>1510602</elocation-id>
<history>
<date date-type="received">
<day>13</day>
<month>10</month>
<year>2024</year>
</date>
<date date-type="accepted">
<day>13</day>
<month>02</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2025 Niu, Zhou, Wei, Deng, Ning, Chen and Liu.</copyright-statement>
<copyright-year>2025</copyright-year>
<copyright-holder>Niu, Zhou, Wei, Deng, Ning, Chen and Liu</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p>
</license>
</permissions>
<abstract>
<p>Vertical sounding of the ionosphere yields ionograms that reflects the relationship between virtual height and frequency, and electron density profiles can be obtained by inversion of the ionogram. The existing vertical sounding ionogram inversion is mainly based on the model method, but this method has poor stability. Influenced by the geomagnetic field, the electric wave splits into O-wave and X-wave when it propagates in the ionosphere, and this study considers introducing X-wave into the ionogram inversion, and adopts the data assimilation method to improve the stability of the inversion by adding more physical sounding information. Specifically, we take the X-wave trace of the ionogram as the observation value, and the electron density profile obtained from the inversion of the O-wave trace of the ionogram as the background value. Then, the kalman filtering method is used to continuously fuse the observation information into the background information, and correct the background electron density profile. Finally, we select some typical ionograms to verify and analyze the assimilation algorithm, and compared the results with the inversion results of Reinisch algorithm. The results show that the calculated virtual heights of the profiles obtained by the joint inversion of the O-wave and X- wave coincide better with the measured virtual heights, and the fitting error between the synthetic traces of the inverted profiles and the measured traces can be obviously reduced, which indicates that the profiles obtained by the joint inversion of the O-wave and X- wave are closer to the real electron density profile.</p>
</abstract>
<kwd-group>
<kwd>ionosphere</kwd>
<kwd>vertical sounding</kwd>
<kwd>data assimilation</kwd>
<kwd>joint inversion</kwd>
<kwd>electron density</kwd>
</kwd-group>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Space Physics</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>The ionosphere, a critical region for human space activities, exerts significant influence over various radio systems. As human space activities intensify, the demand for monitoring and predicting ionospheric conditions has correspondingly increased (<xref ref-type="bibr" rid="B3">Bilitza et al., 2022</xref>). Ionospheric vertical sounding is one of the oldest and most widely applied methods in the observational studies of the ionosphere. Through ionospheric vertical sounding, researchers can acquire ionogram that reflect the relationship between virtual height and frequency within the ionosphere. However, the virtual height obtained from vertical sounding is not the true reflection height of the electromagnetic wave in the ionosphere. It is necessary to use the vertical sounding trace inversion to obtain the electron density profile of the ionosphere (i.e., the relationship between the ionospheric reflection height and the plasma frequency or electron concentration).</p>
<p>The model-based approach is the predominant methodology for the inversion of ionograms from vertical sounding (<xref ref-type="bibr" rid="B5">Croft and Hoogasian, 1968</xref>; <xref ref-type="bibr" rid="B14">Reinisch and Huang, 1983</xref>; <xref ref-type="bibr" rid="B6">Dyson and Bennett, 1988</xref>; <xref ref-type="bibr" rid="B13">Niu et al., 2024</xref>). This technique posits that the ionospheric profile can be characterized by a specific model. By employing this model to synthesize sounding traces, the parameters of the ionospheric profile can be determined when the discrepancy between the synthesized and the actually measured traces reaches its minimum, thus enabling the precise determination of the ionospheric profile. The model-based approach imposes relatively low requirements on the quality of ionograms, leading to its widespread application. Concurrently, scholars both domestically and internationally have developed a variety of model-based inversion methods for ionospheric parameters utilizing different types of sounding data. For instance, <xref ref-type="bibr" rid="B6">Dyson and Bennett (1988)</xref> proposed an inversion method based on the QP model (It represents the ionospheric electron density distribution in a quasi-parabolic model), while <xref ref-type="bibr" rid="B14">Reinisch and Huang (1983)</xref> introduced an inversion technique for electron concentration profiles utilizing shifted Chebyshev polynomials. Additionally, <xref ref-type="bibr" rid="B17">Titheridge (1967)</xref> developed an inversion method based on overlapping polynomials. Among these, the method employing shifted Chebyshev polynomials is currently one of the more mature and widely accepted techniques internationally for the inversion of ionograms from ionospheric vertical sounding.</p>
<p>In recent years, with the development of space-based and ground-based observation networks for the ionosphere, ionospheric data assimilation theory has become widely used. Ionospheric data assimilation is a method that integrates observational data with ionospheric models to simulate and predict variations in ionospheric parameters (<xref ref-type="bibr" rid="B16">Spencer et al., 2004</xref>). The fundamental principle of data assimilation utilizes the background information provided by the model along with observational data from various instruments. Based on an understanding of the prior errors in both the model and observations, statistical estimation theory is employed to produce an optimal estimate that minimizes the overall deviation between the background model and the observations.</p>
<p>Compared to traditional remote sensing inversion methods, data assimilation offers the advantage of fully leveraging a wide range of information, including model predictions, observational data, and prior statistical patterns of errors. It addresses the limitations of other methods, effectively enhancing the accuracy of ionospheric models. Numerous studies have been conducted in the field of ionospheric data assimilation, exploring and refining these techniques to better understand and predict ionospheric behavior.</p>
<p>For example, <xref ref-type="bibr" rid="B4">Bust et al. (2004)</xref> developed an ionospheric data assimilation model based on empirical ionospheric models. <xref ref-type="bibr" rid="B2">Anderson et al. (2009)</xref> established an electron density assimilation model (EADM) using the theory of best linear unbiased estimation, capable of processing GPS, occultation, and other observational data to derive the global distribution of ionospheric electron density. <xref ref-type="bibr" rid="B18">Yue et al. (2012)</xref> assimilated TEC measurements into the IRI model and a model constructed with a Kalman filter, reporting excellent results for the reanalysis of global ionospheric electron density during magnetically quiet days from 2002 to 2011. Furthermore, <xref ref-type="bibr" rid="B19">Yue et al. (2011)</xref> inverted the electron density profile from occultation data by assimilating slant total electron content (STEC) into the IRI model, demonstrating that this method outperforms the traditional Abel integral inversion technique. The above studies all involve assimilating various observational information to correct the electron density distribution.</p>
<p>Numerous scholars have utilized data assimilation methods to integrate various types of observational information, thereby obtaining the distribution of ionospheric electron density (<xref ref-type="bibr" rid="B12">Mengist et al., 2019</xref>; <xref ref-type="bibr" rid="B9">He et al., 2019</xref>). To validate the effectiveness of the assimilation results, the electron density derived from assimilation is often compared with the electron density recorded by ionosonde. In other words, the electron density profiles inverted from ionosonde ionograms are frequently used as a &#x201c;true value&#x201d; for comparison. Therefore, the accurate inversion of ionograms from vertical sounding is crucial, as it directly affects the ability to reasonably evaluate the results of data assimilation. Currently, the electron density profiles recorded by ionosonde are typically obtained through the inversion of ordinary wave (O-wave) traces from ionograms using a model-based approach. However, this inversion method places very stringent demands on the completeness of the observational data. The loss of a few frequency points (such as data loss due to interference) or significant errors in the observational data can lead to substantial inaccuracies in the solution.</p>
<p>As is well known, due to the influence of the geomagnetic field, radio wave propagating through the ionosphere splits into two characteristic waves: the ordinary wave (O-wave) and the extraordinary wave (X-wave). These two waves correspond to the same operating frequency but differ in their reflection height. On ionograms from vertical sounding, the virtual height traces of both characteristic waves appear, each providing structural information about the ionosphere. Therefore, we consider incorporating the X-wave traces from ionograms into the inversion of the ionospheric electron density profile. By adopting a joint inversion method using both O-wave and X-wave traces, we aim to enhance the accuracy of the inversion. Furthermore, using the virtual height traces of the X-wave as observational values, a Kalman filter assimilation method is employed to integrate the observational information into the background model. Subsequently, the electron density is continuously corrected using the observational information, with iterative calculations performed until the error between the synthetic virtual height trace derived from the assimilated electron density profile and the observed virtual height trace is minimized. At this point, the obtained electron density profile represents the optimal distribution of electron density.</p>
<p>We validated the assimilation algorithm using typical ionograms recorded by ionospheric vertical sounding stations, and conducted a comparative analysis with the profiles inverted by the Reinisch algorithm (it expresses the ionospheric electron density distribution in terms of Chebyshev polynomials). The results indicate that the synthetic O-wave virtual height traces derived from the background electron density profile and the Reinisch algorithm-inverted profile show good agreement with the measured O-wave virtual height traces. However, the synthetic X-wave virtual height calculated from the profiles inverted by both algorithms (Background model algorithm and Reinisch algorithm) exhibit significant discrepancies when compared to the measured X-wave virtual height. By employing a data fusion approach, we incorporated the X-wave trace information into the inversion process. After assimilation analysis, a new electron density profile was obtained. While the fit between the synthetic O-wave traces derived from the updated profile and the measured O-wave traces is slightly worse, the synthetic X-wave traces from the assimilated profile show much better agreement with the measured X-wave traces, significantly improving the fit with the measured X-wave traces. To further demonstrate the feasibility of the algorithm, we conducted continuous 24-h observations and analyses at Wuhan station. The results confirmed the effectiveness of the algorithm.</p>
<p>The structure of the paper is organized as follows: <xref ref-type="sec" rid="s2">Section 2</xref> introduces the assimilation data, <xref ref-type="sec" rid="s3">Section 3</xref> details the assimilation algorithms and the construction of error covariance, <xref ref-type="sec" rid="s4">Section 4</xref> presents an analysis of the experimental results.</p>
</sec>
<sec id="s2">
<title>2 Assimilation data</title>
<sec id="s2-1">
<title>2.1 Observation data</title>
<p>Ionospheric vertical sounding emits electromagnetic wave vertically upwards through an ionosonde. During propagation through the ionosphere, the electromagnetic wave is influenced by the geomagnetic field, causing it to split into O-wave and X-wave. The reflection height of these two characteristic waves differ within the ionosphere: for the same frequency, the reflection height of the X-wave is lower than that of the O-wave, and the critical frequency of the X-wave is higher than that of the O-wave within the same layer (the critical frequency difference between the two waves is about 0.5 MHz, and the altitude difference is about 10 km&#x2013;50 km). When the transmitted frequency equals the plasma frequency of the ionosphere, the electromagnetic wave is reflected back to the ground and received by the ionosonde. The propagation delay of the electromagnetic wave, multiplied by the speed of light, yields the virtual height. Vertical sounding can obtain the curve that reflects the relationship between virtual height and operating frequency, known as the ionogram. There exists a calculable relationship between ionograms and the electron density distribution of the ionosphere. The ionogram can be forward-modeled from the electron density profile of the ionosphere, and conversely, the electron density profile can be inverted from the ionogram. For our assimilation process, we select the X-wave trace from the ionogram as the observational data.</p>
<p>A crucial measurement parameter obtained from ionospheric vertical sounding is the group time delay <inline-formula id="inf1">
<mml:math id="m1">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> of the electromagnetic wave as it travels between the ionosonde and the ionospheric reflection point. Multiplying the delay time by the speed of light yields the path length of the wave propagation, <inline-formula id="inf2">
<mml:math id="m2">
<mml:mrow>
<mml:msup>
<mml:mi>P</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>c</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. In ionospheric vertical sounding, half of this group path length is referred to as the virtual height <inline-formula id="inf3">
<mml:math id="m3">
<mml:mrow>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>. The virtual height can be expressed as an integral relationship involving the group refractive index, as shown in <xref ref-type="disp-formula" rid="e1">Equation 1</xref>:<disp-formula id="e1">
<mml:math id="m4">
<mml:mrow>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>c</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:mn>0</mml:mn>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:msubsup>
<mml:msup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>N</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>H</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
<label>(1)</label>
</disp-formula>
<inline-formula id="inf4">
<mml:math id="m5">
<mml:mrow>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the actual reflection height of the vertical sounding signal relative to the ground. <inline-formula id="inf5">
<mml:math id="m6">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> denotes the group refractive index, which is generally a function of the operating frequency <inline-formula id="inf6">
<mml:math id="m7">
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, the plasma frequency <inline-formula id="inf7">
<mml:math id="m8">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>N</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, the electron gyrofrequency <inline-formula id="inf8">
<mml:math id="m9">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>H</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, the angle <inline-formula id="inf9">
<mml:math id="m10">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> between the wave vector and the magnetic field, and the collision frequency <inline-formula id="inf10">
<mml:math id="m11">
<mml:mrow>
<mml:mi>&#x3bc;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> between electrons and neutral particles. The relationship can be expressed as follows:<disp-formula id="e2">
<mml:math id="m12">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mi>X</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>j</mml:mi>
<mml:mi>Z</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:msubsup>
<mml:mi>Y</mml:mi>
<mml:mi>T</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>j</mml:mi>
<mml:mi>Z</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#xb1;</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:mfrac>
<mml:msubsup>
<mml:mi>Y</mml:mi>
<mml:mi>T</mml:mi>
<mml:mn>4</mml:mn>
</mml:msubsup>
<mml:mrow>
<mml:mn>4</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>j</mml:mi>
<mml:mi>Z</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>Y</mml:mi>
<mml:mi>L</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(2)</label>
</disp-formula>
<inline-formula id="inf11">
<mml:math id="m13">
<mml:mrow>
<mml:mi>X</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi>n</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>f</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</inline-formula> , <inline-formula id="inf12">
<mml:math id="m14">
<mml:mrow>
<mml:mi>Y</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>H</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf13">
<mml:math id="m15">
<mml:mrow>
<mml:mi>Z</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mi>V</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>&#x3c0;</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</inline-formula> , <inline-formula id="inf14">
<mml:math id="m16">
<mml:mrow>
<mml:msub>
<mml:mi>Y</mml:mi>
<mml:mi>T</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf15">
<mml:math id="m17">
<mml:mrow>
<mml:msub>
<mml:mi>Y</mml:mi>
<mml:mi>L</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>
<inline-formula id="inf16">
<mml:math id="m18">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the angle between the normal to the wave and the geomagnetic field; <inline-formula id="inf17">
<mml:math id="m19">
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the frequency of the electromagnetic wave; <inline-formula id="inf18">
<mml:math id="m20">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>H</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the electron gyrofrequency, and <inline-formula id="inf19">
<mml:math id="m21">
<mml:mrow>
<mml:mi>V</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the electron collision frequency.</p>
<p>
<xref ref-type="disp-formula" rid="e2">Equation 2</xref> is the famous A-H formula, proposed by British physicists Appleton and Hartree in the 1930s. The A-H formula combines the theory of propagation of electromagnetic waves in plasma and the properties of magnetized plasma, describes the relationship between the refractive index of electromagnetic waves propagating in the ionosphere and the electron density, the magnetic spin frequency, the operating frequency and the electron collision frequency, and reveals the dispersion properties of electromagnetic waves in the ionosphere. From <xref ref-type="disp-formula" rid="e2">Equation 2</xref>, it can be seen that there exist two propagation modes, i.e., two characteristic waves for each frequency, representing two possible propagation paths. Each path is characterized by different phase and group velocities. &#x201c;&#x2b;&#x201d; and &#x201c;&#x2212;&#x201d; signs represent the ordinary wave (O-wave) and the extraordinary wave (X-wave), respectively. It is easy to see that it is very complicated to compute the group path in the propagation direction directly using <xref ref-type="disp-formula" rid="e2">Equation 2</xref>. In the context of ionospheric electron density inversion, the primary parameters of interest are the virtual height and azimuth of the wave propagation. The electron collision primarily causes energy loss in the wave and can be neglected in the inversion process. Under these conditions, <inline-formula id="inf20">
<mml:math id="m22">
<mml:mrow>
<mml:mi>Z</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, and the refractive indices of the O-wave and X-wave can be expressed as <xref ref-type="disp-formula" rid="e3">Equations 3</xref>, <xref ref-type="disp-formula" rid="e4">4</xref>:<disp-formula id="e3">
<mml:math id="m23">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mn>0</mml:mn>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>X</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>X</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>Y</mml:mi>
<mml:mi>T</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msubsup>
<mml:mi>Y</mml:mi>
<mml:mi>T</mml:mi>
<mml:mn>4</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>4</mml:mn>
<mml:msubsup>
<mml:mi>Y</mml:mi>
<mml:mi>L</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>X</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(3)</label>
</disp-formula>
<disp-formula id="e4">
<mml:math id="m24">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>X</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>X</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>Y</mml:mi>
<mml:mi>T</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msubsup>
<mml:mi>Y</mml:mi>
<mml:mi>T</mml:mi>
<mml:mn>4</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>4</mml:mn>
<mml:msubsup>
<mml:mi>Y</mml:mi>
<mml:mi>L</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>X</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(4)</label>
</disp-formula>
</p>
<p>The virtual height of the X-wave can be expressed as <xref ref-type="disp-formula" rid="e5">Equation 5</xref>:<disp-formula id="e5">
<mml:math id="m25">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:mn>0</mml:mn>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:msubsup>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>N</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>H</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>v</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
<label>(5)</label>
</disp-formula>
</p>
</sec>
<sec id="s2-2">
<title>2.2 Background data</title>
<p>Ionospheric vertical sounding yields ionograms, where the virtual height can be expressed as an integral of the refractive index. The refractive index, in turn, is a function of the electron density. Therefore, the electron concentration can be inverted from the virtual height trace data. Currently, the more commonly used and mature inversion algorithm for vertical sounding ionograms in research is the model method. The basic idea of the model method is to assume a priori that the electron density profile of the ionosphere has a certain determined form, such as the QP model and others. Using the established model, synthetic vertical ionograms can be generated. These synthetic ionograms are then compared with the measured ionograms. The results of this comparison are used to further correct the parameters of the model. Ultimately, this process leads to an optimal solution in a specific sense (e.g., in terms of mean square error).</p>
<p>Typical modeling methods include the Multi-Segment Quasi-Parabolic Model (<xref ref-type="bibr" rid="B6">Dyson Bennett, 1988</xref>), the Chebyshev Polynomial Model (<xref ref-type="bibr" rid="B14">Reinisch Huang, 1983</xref>), and the Titheridge Polynomial Model (<xref ref-type="bibr" rid="B17">Titheridge, 1967</xref>). The Multi-Segment Quasi-Parabolic Model (QPS) is mathematically simple and convenient for analytical analysis, and it has been widely used in electron density inversion. This model describes the electron density distribution with height in each layer of the ionosphere using a single quasi-parabolic model. The entire ionospheric model is then composed of three quasi-parabolic models. The specific model expression is shown in the following formula:<disp-formula id="e6">
<mml:math id="m26">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>E</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mi>E</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>E</mml:mi>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi>E</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mi>E</mml:mi>
<mml:mspace width="0.3333em"/>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>l</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mi>j</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mspace width="0.3333em"/>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>l</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mspace width="0.3333em"/>
<mml:mi>l</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mspace width="0.3333em"/>
<mml:mi>l</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(6)</label>
</disp-formula>where the E layer is determined by the bottom height <inline-formula id="inf21">
<mml:math id="m27">
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>E</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, half thickness <inline-formula id="inf22">
<mml:math id="m28">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>E</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, critical frequency <inline-formula id="inf23">
<mml:math id="m29">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>E</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf24">
<mml:math id="m30">
<mml:mrow>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mi>E</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> &#x3d; <inline-formula id="inf25">
<mml:math id="m31">
<mml:mrow>
<mml:msup>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>E</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf26">
<mml:math id="m32">
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>E</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> &#x3d; <inline-formula id="inf27">
<mml:math id="m33">
<mml:mrow>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mi>E</mml:mi>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>E</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>/</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>E</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>; F1 layer is determined by the bottom height <inline-formula id="inf28">
<mml:math id="m34">
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, half thickness <inline-formula id="inf29">
<mml:math id="m35">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, critical frequency <inline-formula id="inf30">
<mml:math id="m36">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf31">
<mml:math id="m37">
<mml:mrow>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> &#x3d; <inline-formula id="inf32">
<mml:math id="m38">
<mml:mrow>
<mml:msup>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf33">
<mml:math id="m39">
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> &#x3d; <inline-formula id="inf34">
<mml:math id="m40">
<mml:mrow>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>/</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>; F2 layer is determined by the bottom height of the layer <inline-formula id="inf35">
<mml:math id="m41">
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, half thickness <inline-formula id="inf36">
<mml:math id="m42">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, critical frequency <inline-formula id="inf37">
<mml:math id="m43">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf38">
<mml:math id="m44">
<mml:mrow>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> &#x3d; <inline-formula id="inf39">
<mml:math id="m45">
<mml:mrow>
<mml:msup>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf40">
<mml:math id="m46">
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> &#x3d; <inline-formula id="inf41">
<mml:math id="m47">
<mml:mrow>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>/</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>F</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>In <xref ref-type="fig" rid="F1">Figure 1</xref>, we give an example of a typical electron density profile and ionogram, specifically, the complete ionosphere profile consists of four parts: the E layer (red curve), the valley layer (blue curve), the F1 layer (orange curve), and the F2 layer (purple curve). In addition, the scatter plot in the figure represents the complete ionogram trace corresponding to this electron density profile.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Examples of typical ionospheric electron density profile and ionogram.</p>
</caption>
<graphic xlink:href="fspas-12-1510602-g001.tif"/>
</fig>
<p>According to the established electron density profile, we can calculate the reflected echo virtual height for each layer, which for O-wave traces can be expressed as <xref ref-type="disp-formula" rid="e7">Equation 7</xref>:<disp-formula id="e7">
<mml:math id="m48">
<mml:mrow>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mi>h</mml:mi>
</mml:msubsup>
<mml:msup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mi>d</mml:mi>
<mml:mi>h</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mi>h</mml:mi>
</mml:msubsup>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>X</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mi>d</mml:mi>
<mml:mi>h</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mi>h</mml:mi>
</mml:msubsup>
<mml:mn>1</mml:mn>
<mml:mo>/</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi>n</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>/</mml:mo>
<mml:msup>
<mml:mi>f</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:msqrt>
<mml:mi>d</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
<label>(7)</label>
</disp-formula>
</p>
<p>Bringing the electron density profile expression of <xref ref-type="disp-formula" rid="e6">Equation 6</xref> into the integral relation yields (<xref ref-type="disp-formula" rid="e8">Equation 8</xref>):<disp-formula id="e8">
<mml:math id="m49">
<mml:mrow>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:msubsup>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mfrac>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>d</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:msqrt>
<mml:mrow>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msup>
<mml:mi>r</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mi>r</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msqrt>
</mml:mfrac>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(8)</label>
</disp-formula>
<inline-formula id="inf42">
<mml:math id="m50">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mtext>&#x2002;</mml:mtext>
<mml:mi>A</mml:mi>
</mml:mrow>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>f</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>f</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mtext>&#x2009;</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:msup>
<mml:mi>f</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mfrac>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mtext>&#x2009;</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
<mml:msup>
<mml:mi>f</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mfrac>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>where the subscript <inline-formula id="inf43">
<mml:math id="m51">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> denotes the different layers, representing layer E, valley, F1 and F2, respectively. Expanding the integral formula, the virtual height expression can be obtained as the following formula. The virtual height of layer <inline-formula id="inf44">
<mml:math id="m52">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is<disp-formula id="e9">
<mml:math id="m53">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msubsup>
<mml:mi>h</mml:mi>
<mml:mi>i</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msqrt>
<mml:mrow>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msqrt>
<mml:mo>&#x2212;</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:msubsup>
<mml:mi>A</mml:mi>
<mml:mi>i</mml:mi>
<mml:mn>3</mml:mn>
</mml:msubsup>
</mml:msqrt>
</mml:mrow>
</mml:mfrac>
<mml:mi mathvariant="italic">lg</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:msqrt>
<mml:msqrt>
<mml:mrow>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:msqrt>
<mml:msqrt>
<mml:mrow>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:math>
<label>(9)</label>
</disp-formula>
</p>
<p>The specific inversion process is as follows. Read each layer of the ionogram and generate k frequency points per layer, their corresponding operating frequencies and virtual height are respectively <inline-formula id="inf45">
<mml:math id="m54">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf46">
<mml:math id="m55">
<mml:mrow>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2033;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>
<italic>,</italic> read the critical frequency and minimum virtual height of each layer as <inline-formula id="inf47">
<mml:math id="m56">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf48">
<mml:math id="m57">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mo>&#x2033;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>Then, set the value range of the three feature parameters <inline-formula id="inf49">
<mml:math id="m58">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf50">
<mml:math id="m59">
<mml:mrow>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf51">
<mml:math id="m60">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> as [<inline-formula id="inf52">
<mml:math id="m61">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>-0.2, <inline-formula id="inf53">
<mml:math id="m62">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> &#x2b;0.2], [<inline-formula id="inf54">
<mml:math id="m63">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mo>&#x2033;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>&#x27;-<inline-formula id="inf55">
<mml:math id="m64">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf56">
<mml:math id="m65">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mo>&#x2033;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> &#x2b; <inline-formula id="inf57">
<mml:math id="m66">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>], [0, <inline-formula id="inf58">
<mml:math id="m67">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>] (<inline-formula id="inf59">
<mml:math id="m68">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf60">
<mml:math id="m69">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf61">
<mml:math id="m70">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> are the searching range control quantities) at a certain step, respectively, and the three feature parameters can be obtained by taking the values within the set range to obtain many sets of feature parameter combinations. Each set of parameters is calculated according to <xref ref-type="disp-formula" rid="e9">Equation 9</xref> to obtain <inline-formula id="inf62">
<mml:math id="m71">
<mml:mrow>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> for k points, then calculate the error sum of squares of the measured virtual height, as shown in <xref ref-type="disp-formula" rid="e10">Equation 10</xref>:<disp-formula id="e10">
<mml:math id="m72">
<mml:mrow>
<mml:mi>&#x3b5;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mi>k</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>h</mml:mi>
<mml:mi>k</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>h</mml:mi>
<mml:mi>k</mml:mi>
<mml:mo>&#x2033;</mml:mo>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
<label>(10)</label>
</disp-formula>
</p>
<p>Here a method of global search is used, which results in finding a set of parameters <inline-formula id="inf63">
<mml:math id="m73">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf64">
<mml:math id="m74">
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf65">
<mml:math id="m75">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> such that &#x3b5; is minimized.</p>
<p>According to the above inversion method, the electron density profile obtained from the inversion of the ionogram O-wave traces can be obtained, and we use this electron density profile as the background data for data assimilation.</p>
</sec>
</sec>
<sec id="s3">
<title>3 Data assimilation methods and processes</title>
<sec id="s3-1">
<title>3.1 Assimilation algorithm</title>
<p>Data assimilation refers to the integration of observational data into models based on physical laws. It integrates observational and modeled data, two different but complementary types of information, to improve the accuracy of analysis. The assimilation process can be viewed as an optimal combination of observational information and background models, grounded in error covariance matrices. Generally speaking, data assimilation primarily encompasses three aspects: (1) Observations and background values. Observations contain measurement and representativeness errors and are not exact values, so we use a variety of theories to estimate their true values as best we can; (2) Uncertainty. Errors themselves are also useful information in data assimilation, and how the assimilation process accounts for these errors ultimately determines the effectiveness of the assimilation. (3) Covariance. This essentially refers to the physical and spatial correlations between various values. For data assimilation, these correlations are themselves valuable information.</p>
<p>Data assimilation methods can be primarily categorized into two types based on their theoretical foundations: one type is estimation methods based on statistical theory, such as optimal interpolation and Kalman filtering; the other type comprises variational methods based on variational theory, such as three-dimensional variational assimilation. Currently, the Kalman filter method is the predominant approach used by major numerical forecasting centers (for example, JPL/USC GAIM) worldwide for data assimilation (<xref ref-type="bibr" rid="B10">Kalman, 1960</xref>; <xref ref-type="bibr" rid="B11">Kalman and Bucy, 1961</xref>; <xref ref-type="bibr" rid="B15">Scherliess et al., 2006</xref>). In this paper, we also adopt this method for data assimilation.</p>
<p>We use the vertical sounding ionogram X-mode virtual height traces as observational data for data assimilation. The X-mode virtual height <inline-formula id="inf66">
<mml:math id="m76">
<mml:mrow>
<mml:msubsup>
<mml:mi>h</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> of the ionogram is represented as the integral of the group refractive index along the real height of radio wave reflection, that is<disp-formula id="e11">
<mml:math id="m77">
<mml:mrow>
<mml:msubsup>
<mml:mi>h</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mi>b</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:msubsup>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
<mml:mi>d</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
<label>(11)</label>
</disp-formula>
<inline-formula id="inf67">
<mml:math id="m78">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> denotes the group refractive index of the X-mode wave. According to magnetoplasma theory, the relationship between the group refractive index and the phase refractive index can be derived, which is expressed as follows:<disp-formula id="e12">
<mml:math id="m79">
<mml:mrow>
<mml:msubsup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>f</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(12)</label>
</disp-formula>
</p>
<p>
<xref ref-type="disp-formula" rid="e4">Equation 4</xref> has already provided the expression for <inline-formula id="inf68">
<mml:math id="m80">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>. Expanding this equation further yields:<disp-formula id="e13">
<mml:math id="m81">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>f</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>f</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>X</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>f</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>Y</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>X</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>X</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>Y</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(13)</label>
</disp-formula>where X &#x3d; <inline-formula id="inf69">
<mml:math id="m82">
<mml:mrow>
<mml:msubsup>
<mml:mi>f</mml:mi>
<mml:mi>n</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>/</mml:mo>
<mml:msup>
<mml:mi>f</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf70">
<mml:math id="m83">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the electron density profile obtained by inversion of the O-wave traces. Substituting the aforementioned expanded expression into <xref ref-type="disp-formula" rid="e11">Equation 11</xref> for integration yields the calculated virtual height of the X-mode wave. In particular, <xref ref-type="disp-formula" rid="e12">Equations 12</xref>, <xref ref-type="disp-formula" rid="e13">13</xref> calculate the group refractive index, and the calculated group refractive index is subsequently substituted into <xref ref-type="disp-formula" rid="e11">Equation 11</xref> to obtain the calculated virtual height value of the X-wave.</p>
<p>In <xref ref-type="disp-formula" rid="e11">Equation 11</xref>, <inline-formula id="inf71">
<mml:math id="m84">
<mml:mrow>
<mml:msubsup>
<mml:mi>h</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the virtual height of the reflected echo corresponding to the operating frequency, <inline-formula id="inf72">
<mml:math id="m85">
<mml:mrow>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mtext>&#x2009;</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> denotes the bottom height of the ionosphere, <inline-formula id="inf73">
<mml:math id="m86">
<mml:mrow>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the real height of reflection at the operating frequency. Using the discretization inversion theory, the area to be assimilated is gridded in the height direction, and the above equation can be simplified to the following form:<disp-formula id="e14">
<mml:math id="m87">
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>H</mml:mi>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi>b</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:math>
<label>(14)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e14">Equation 14</xref>, <inline-formula id="inf74">
<mml:math id="m88">
<mml:mrow>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represents the observed ionogram X-mode virtual height trace, <inline-formula id="inf75">
<mml:math id="m89">
<mml:mrow>
<mml:mi>H</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the observation operator, which maps the background electron density to virtual height. <xref ref-type="bibr" rid="B2">Angling and Cannon (2004)</xref> provided a detailed exposition on <inline-formula id="inf76">
<mml:math id="m90">
<mml:mrow>
<mml:mi>H</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. <inline-formula id="inf77">
<mml:math id="m91">
<mml:mrow>
<mml:mi>e</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> denotes the discretization error, which is often neglected in its impact. Using Kalman filter theory, the data assimilation process for observational data can be expressed as:<disp-formula id="e15">
<mml:math id="m92">
<mml:mrow>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi>b</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>B</mml:mi>
<mml:msup>
<mml:mi>H</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>H</mml:mi>
<mml:mi>B</mml:mi>
<mml:msup>
<mml:mi>H</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="normal">H</mml:mi>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi>b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(15)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e15">Equation 15</xref>, <inline-formula id="inf78">
<mml:math id="m93">
<mml:mrow>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi>b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the background value, which is the background electron density provided by the background ionospheric model; <inline-formula id="inf79">
<mml:math id="m94">
<mml:mrow>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> denotes the analysis value, which is the electron density obtained after assimilation; <italic>B</italic> and <italic>R</italic> represent the background error covariance and the observation error covariance, respectively. Based on the aforementioned formulas, we can view data assimilation as a process of correcting the background values using observations.</p>
<sec id="s3-1-1">
<title>3.1.1 Observation error covariance</title>
<p>The ionosphere is complex and variable on both temporal and spatial scales; therefore, accurately characterizing observational errors is crucial. Previous studies, such as <xref ref-type="bibr" rid="B2">Angling and Cannon (2004)</xref> have assumed during data assimilation that the observational errors (background errors) are proportional to the square of the corresponding observational values and that the observational errors are unbiased and mutually independent. We also adopt this assumption, where the observational error is represented as the product of a proportionality coefficient and the square of the observational value. Clearly, the observational error covariance should be a diagonal matrix, with the diagonal elements being the product of the proportionality factor and the square of the observational values. It can be expressed as follows:<disp-formula id="e16">
<mml:math id="m95">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:msub>
<mml:mi>Y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>Y</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mspace width="1.3333em"/>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x2260;</mml:mo>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(16)</label>
</disp-formula>
</p>
<p>In <xref ref-type="disp-formula" rid="e16">Equation 16</xref>, <inline-formula id="inf80">
<mml:math id="m96">
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">j</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> indicate observation points; <inline-formula id="inf81">
<mml:math id="m97">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the covariance of errors between observation points; <inline-formula id="inf82">
<mml:math id="m98">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the proportionality coefficient, <inline-formula id="inf83">
<mml:math id="m99">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the correlation coefficient, the correlation coefficient between different observation points is 0, <inline-formula id="inf84">
<mml:math id="m100">
<mml:mrow>
<mml:msub>
<mml:mi>Y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the observation value of the observation point. In this paper, the observational values are the virtual height of the X wave from the ionogram, <inline-formula id="inf85">
<mml:math id="m101">
<mml:mrow>
<mml:msub>
<mml:mi>Y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> denoted as representing the virtual height value of the X wave at point <inline-formula id="inf86">
<mml:math id="m102">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>In previous studies, a uniform proportionality factor was often employed, which can introduce significant errors as it fails to accurately and effectively describe the variations in the ionosphere. This study employs data from ionospheric vertical sounding stations for statistical analysis to derive the proportionality coefficients. Specifically, we utilize the values of the ionosphere recorded by the Wuhan vertical sounding station from June 1st to 30 June 2021, at 11:00 each day. The ionospheric region between 100 and 300 km in altitude is gridded with a vertical height direction, and the interval between grids is 4 km. Taking the monthly average virtual height as the reference value, we statistically analyze the daily deviations of the ionospheric vertical sounding virtual height values from the reference at that moment. Then, the squared observations are linearly fitted with the observation errors, and the fitting coefficients are provided. <xref ref-type="fig" rid="F2">Figure 2</xref> shows the curve of the mean observed virtual height as a function of frequency. <xref ref-type="fig" rid="F3">Figure 3</xref> shows the fitted relationship between the square of the observed virtual height and the observation error.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>Variation of the mean virtual height with frequency of o-wave traces observed by the Wuhan Ionosonde from June 1 to 30 June 2021 at 11:00.</p>
</caption>
<graphic xlink:href="fspas-12-1510602-g002.tif"/>
</fig>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>The variation of observation errors from the Wuhan ionosonde with the square of the corresponding observed virtual heights, along with the fitting curve, at 11:00 from June 1st to 30 June 2021.</p>
</caption>
<graphic xlink:href="fspas-12-1510602-g003.tif"/>
</fig>
</sec>
<sec id="s3-1-2">
<title>3.1.2 Background error covariance</title>
<p>The background error covariance matrix is crucial for ionospheric data assimilation. It is primarily composed of two parts: the variance of the background model used for assimilation and the correlation between the model&#x2019;s errors at any two grid points. For each element of the error covariance matrix, we can express it with the following <xref ref-type="disp-formula" rid="e17">Equation 17</xref>:<disp-formula id="e17">
<mml:math id="m103">
<mml:mrow>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(17)</label>
</disp-formula>
<inline-formula id="inf87">
<mml:math id="m104">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf88">
<mml:math id="m105">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> are the standard deviations of the forecast model at the <italic>i</italic>th and <italic>j</italic>th grid points, respectively, and <inline-formula id="inf89">
<mml:math id="m106">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the linear correlation coefficient between these errors.</p>
<p>Drawing on previous literature (<xref ref-type="bibr" rid="B2">Angling and Cannon, 2004</xref>; <xref ref-type="bibr" rid="B4">Bust et al., 2004</xref>; <xref ref-type="bibr" rid="B8">Forsythe et al., 2020</xref>; <xref ref-type="bibr" rid="B7">Forsythe et al., 2021a</xref>; <xref ref-type="bibr" rid="B18">Yue et al., 2012</xref>; <xref ref-type="bibr" rid="B19">Yue et al., 2011</xref>), we assume that the background field is Gaussian distributed and can be Gaussianly separated in both horizontal (latitude and longitude) and vertical directions. At the same time, our observations and background data consist of virtual height and electron density profiles, so we only need to consider the vertical direction.</p>
<p>Regarding the vertical correlation <inline-formula id="inf90">
<mml:math id="m107">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, previous studies (<xref ref-type="bibr" rid="B4">Bust et al., 2004</xref>; <xref ref-type="bibr" rid="B2">Angling Cannon, 2004</xref>) typically describe it using the following expression using <xref ref-type="disp-formula" rid="e18">Equation 18</xref>:<disp-formula id="e18">
<mml:math id="m108">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>/</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
<label>(18)</label>
</disp-formula>
<inline-formula id="inf91">
<mml:math id="m109">
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the distance between any two grid points, and <inline-formula id="inf92">
<mml:math id="m110">
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the vertical correlation distance, which is typically taken as a fixed constant. However, this approach introduces certain errors. Later, <xref ref-type="bibr" rid="B7">Forsythe et al. (2021a)</xref> conducted an in-depth analysis of vertical correlation using various observational data and provided a more accurate definition, which is expressed as the following <xref ref-type="disp-formula" rid="e19">Equation 19</xref>:<disp-formula id="e19">
<mml:math id="m111">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="italic">exp</mml:mi>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x3c;</mml:mo>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="italic">exp</mml:mi>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x3e;</mml:mo>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mtext>&#x2003;</mml:mtext>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(19)</label>
</disp-formula>
</p>
<p>In this context, Z represents the altitude, <inline-formula id="inf93">
<mml:math id="m112">
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> denotes the magnetic latitude, and <inline-formula id="inf94">
<mml:math id="m113">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf95">
<mml:math id="m114">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> are the vertical correlation lengths, which are functions of geomagnetic latitude and altitude, respectively. These variables can be found in the databases constructed by <xref ref-type="bibr" rid="B8">Forsythe et al. (2020)</xref>. The method proposed by <xref ref-type="bibr" rid="B7">Forsythe et al. (2021a)</xref> provides a more rational definition of the vertical correlation distance; therefore, this paper adopts their approach to construct the vertical correlation matrix of the background error covariance. The flow chart of the assimilation algorithm is depicted in <xref ref-type="fig" rid="F4">Figure 4</xref>.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Flow chart of the data assimilation algorithm.</p>
</caption>
<graphic xlink:href="fspas-12-1510602-g004.tif"/>
</fig>
</sec>
</sec>
</sec>
<sec id="s4">
<title>4 Results and analysis</title>
<p>Based on an extensive dataset recorded (it contains 17,568 ionograms) from vertical soundings in the Wuhan area, we validated the inversion algorithm. In this section, we present several typical ionograms to illustrate the effectiveness of the algorithm. For each set of figures, we provide the background electron density profile and its synthesized O/X wave virtual height traces, the profile inverted by the Reinisch algorithm and its synthesized virtual height traces, as well as the electron density profile obtained after assimilation and its synthesized virtual height traces. In each subplot, the black hollow circles represent the observed X-wave traces on the ionogram, the black hollow squares indicate the observed O-wave traces, the blue solid or dashed lines depict the electron density profiles, the red solid line is the O-wave virtual height trace synthesized from the integration of the group refractive index <inline-formula id="inf96">
<mml:math id="m115">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> after assimilation, and the green solid line is the X-wave virtual height trace synthesized from the integration of the group refractive index <inline-formula id="inf97">
<mml:math id="m116">
<mml:mrow>
<mml:msup>
<mml:mi>&#x3bc;</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> post-assimilation. We compared the X-wave virtual height traces synthesized from the profiles obtained after assimilation analysis with those synthesized from the profiles inverted by the Reinisch algorithm and presented the distribution histogram of the errors. The mean and variance are defined as <xref ref-type="disp-formula" rid="e20">Equations 20</xref>, <xref ref-type="disp-formula" rid="e21">21</xref>:<disp-formula id="e20">
<mml:math id="m117">
<mml:mrow>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mo>&#x2206;</mml:mo>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2033;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>/</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:math>
<label>(20)</label>
</disp-formula>
<disp-formula id="e21">
<mml:math id="m118">
<mml:mrow>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mo>&#x2206;</mml:mo>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mo>&#x2206;</mml:mo>
<mml:msubsup>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mo>&#x2206;</mml:mo>
<mml:mover accent="true">
<mml:mi>h</mml:mi>
<mml:mo>&#xaf;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>/</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
</mml:math>
<label>(21)</label>
</disp-formula>
</p>
<p>We gridded the ionosphere along the vertical height, where <inline-formula id="inf98">
<mml:math id="m119">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> denotes the corresponding grid point, <inline-formula id="inf99">
<mml:math id="m120">
<mml:mrow>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the observed virtual height at the <inline-formula id="inf100">
<mml:math id="m121">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>-th grid point, <inline-formula id="inf101">
<mml:math id="m122">
<mml:mrow>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2033;</mml:mo>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the virtual height synthesized from the electron density after assimilation at the <inline-formula id="inf102">
<mml:math id="m123">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>-th grid point, <inline-formula id="inf103">
<mml:math id="m124">
<mml:mrow>
<mml:mi>&#x3bc;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mo>&#x2206;</mml:mo>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> denotes the average virtual height error of N grid points, <inline-formula id="inf104">
<mml:math id="m125">
<mml:mrow>
<mml:mo>&#x2206;</mml:mo>
<mml:mover accent="true">
<mml:mi>h</mml:mi>
<mml:mo>&#xaf;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:math>
</inline-formula> represents the average virtual height error, <inline-formula id="inf105">
<mml:math id="m126">
<mml:mrow>
<mml:mo>&#x2206;</mml:mo>
<mml:msubsup>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2032;</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> indicates the error between the observed virtual height and the synthesized virtual height at the <inline-formula id="inf106">
<mml:math id="m127">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>-th grid point, and <inline-formula id="inf107">
<mml:math id="m128">
<mml:mrow>
<mml:mi>&#x3c3;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mo>&#x2206;</mml:mo>
<mml:msup>
<mml:mi>h</mml:mi>
<mml:mo>&#x2032;</mml:mo>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> signifies the variance of the error values. The horizontal axis of the histogram represents the differences between the virtual height synthesized from the integral of electron density at each grid point and the observed virtual height. The vertical axis represents the cumulative number of grid points corresponding to the virtual height error differences.</p>
<p>
<xref ref-type="fig" rid="F5">Figure 5</xref> illustrates a two-layer ionogram where the F1 layer is absent. As can be seen from <xref ref-type="fig" rid="F5">Figure 5A</xref>, the O-wave trace synthesized from the background electron density profile aligns well with the actual measured trace (the mean fitting error of the synthesized O-wave traces to the measured traces is 2.86 km); however, the synthesized X-wave trace shows a poor fit with the actual measured trace (the mean value of the fitting error between the synthetic x-wave traces and the measured traces is 10.64 km). In <xref ref-type="fig" rid="F5">Figure 5B</xref>, the X-wave trace synthesized from the profile inverted by the Reinisch algorithm exhibits a significant discrepancy with the actual measured trace, particularly in the region where the E-layer connects with the F-layer (the frequency range between 3.5 MHz and 3.9 MHz corresponds to the height region in the figure). The synthesized X-wave trace from the inverted profile is considerably larger than the actual measured trace. The electron density profile obtained using the joint inversion method of O-wave and X-wave is displayed in <xref ref-type="fig" rid="F5">Figure 5C</xref>. It can be observed that the synthesized X-wave trace from the profile after assimilation analysis aligns well with the actual measured trace. Although the synthesized O-wave trace at this point does not fit the actually measured trace as well as the profiles obtained from the first two algorithms, the synthesized X-wave trace shows a significant improvement in fitting the actual X-wave trace. Overall, there is a noticeable reduction in the error compared to the actual measured traces of both O-wave and X-wave. In the histogram of error distribution (<xref ref-type="fig" rid="F5">Figure 5D</xref>), the mean error of the profile synthesized by the Reinisch algorithm inversion is 8.639 km, and the variance is 18.316 km. After data assimilation, the mean error of the profile synthesized by the analysis is 3.256 km, and the variance is 3.258 km. This indicates that increasing the inversion data can effectively improve the accuracy of the inversion.</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Observation of O/X mode traces in ionograms (June 1, 2021, LAT:30.6, LON:114.6, 12:24 UTC). <bold>(A)</bold> Background electron density profiles and their synthetic traces. <bold>(B)</bold> Reinisch algorithm inversion profile and its synthetic tracing. <bold>(C)</bold> Assimilated electron density and its synthetic traces. <bold>(D)</bold> Error distribution statistics before and after assimilation.</p>
</caption>
<graphic xlink:href="fspas-12-1510602-g005.tif"/>
</fig>
<p>
<xref ref-type="fig" rid="F6">Figure 6</xref> presents a typical three-layer ionogram. Observing this actual measurement trace, it is evident that the O-wave trace synthesized from the background electron density profile aligns well with the measured data. However, the correspondence of the X-wave trace is less satisfactory, particularly in the F1-layer, where the simulated elevated trace diverges significantly from the empirical observations. Moreover, the virtual height traces synthesized from the electron density profiles obtained through the joint inversion method using both O-wave and X-wave exhibit a high degree of consistency with the measured traces. As illustrated by the error distribution histogram, the application of the Reinsch algorithm has led to an improvement in the profile inversion accuracy, with the mean error decreasing from 7.81 km to 4.32 km.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Observation of O/X mode traces in ionograms (June 12, 2021, LAT:30.6, LON:114.6, 13:42 UTC). <bold>(A)</bold> Background electron density profiles and their synthetic traces. <bold>(B)</bold> Reinisch algorithm inversion profile and its synthetic tracing. <bold>(C)</bold> Assimilated electron density and its synthetic traces. <bold>(D)</bold> Error distribution statistics before and after assimilation.</p>
</caption>
<graphic xlink:href="fspas-12-1510602-g006.tif"/>
</fig>
<p>
<xref ref-type="fig" rid="F7">Figure 7</xref> is also a three-layer type ionogram. In <xref ref-type="fig" rid="F7">Figure 7A</xref>, the synthetic virtual height traces derived from the background electron density profile differ significantly from the measured traces in the F1 and F2 layer regions. However, the synthesized O-wave trace shows a good match with the measured data. This is because the background electron density profile is a least-squares fit to the measured data. The O-wave and X-wave traces synthesized from the electron density profile inverted using the Reinisch algorithm exhibit significant errors when compared to the measured traces. It is observed that after assimilation analysis, the synthesized X-wave trace shows improved fitting with the measured trace. Relative to the synthesized traces in <xref ref-type="fig" rid="F7">Figure 7A</xref>, the fitting quality of the O-wave trace synthesized from the assimilated profile deteriorates. Despite this, the overall fitting situation for both the O-wave and X-wave traces is better.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Observation of O/X mode traces in ionograms (June 25, 2021, LAT:30.6, LON:114.6, 11:32 UTC). <bold>(A)</bold> Background electron density profiles and their synthetic traces. <bold>(B)</bold> Reinisch algorithm inversion profile and its synthetic tracing. <bold>(C)</bold> Assimilated electron density and its synthetic traces. <bold>(D)</bold> Error distribution statistics before and after assimilation.</p>
</caption>
<graphic xlink:href="fspas-12-1510602-g007.tif"/>
</fig>
<p>In order to further verify the feasibility and effectiveness of the algorithm, we used a large number of continuously observed ionogram data for testing (it contains 576 ionograms). <xref ref-type="fig" rid="F8">Figure 8</xref> shows the results of the analysis using actual ionograms obtained on 2 May 2021, from the Wuhan station. <xref ref-type="fig" rid="F8">Figure 8A</xref> represents the original ionogram traces, i.e., the true values; <xref ref-type="fig" rid="F8">Figure 8B</xref> is the ionogram traces synthesized from the electron density profiles based on the inversion of the background model; and <xref ref-type="fig" rid="F8">Figure 8C</xref> is the ionogram traces synthesized from the electrons density after the joint inversion by O-wave and X-wave.There is a clear difference between <xref ref-type="fig" rid="F8">Figures 8A, B</xref>, especially during the period from 8 a.m. to 3 p.m. (the local time). During this time period, due to sufficient solar radiation, the ionosphere is sufficiently ionized, producing a large number of free electron. Therefore, the detected ionograms are complete and there are significant differences in the virtual height corresponding to different frequencies, which is manifested in the large color differences in the height corresponding to different frequencies in the Figure.</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Results of the joint inversion of the continuously observed ionograms (May 2, 2021, LAT:30.6, LON:114.6). <bold>(A)</bold> Continuous measured ionogram traces. <bold>(B)</bold> Synthesized ionograms of background electron density profiles. <bold>(C)</bold> synthetic ionograms of assimilated electron density profiles.</p>
</caption>
<graphic xlink:href="fspas-12-1510602-g008.tif"/>
</fig>
<p>Therefore, during this period, the profile inverted by the background ionospheric model using only O-wave traces cannot accurately reflect the true electron density distribution, and there is a certain deviation between the synthesized traces and the true traces. Using the joint O-wave and X-wave inversion algorithm proposed in this paper (shown in <xref ref-type="fig" rid="F8">Figure 8C</xref>), the X-wave traces are introduced into the inversion, which in turn go on to correct the electron density profiles obtained from the background model inversion. It can be seen that the concordance between the synthesized ionogram traces and the true traces is significantly improved, indicating that the electron density profiles obtained by the joint inversion are closer to the true electron density distribution. Moreover, the traces synthesized from the jointly inverted profiles <xref ref-type="fig" rid="F8">Figure 8C</xref> and the traces synthesized from the background model inverted profiles <xref ref-type="fig" rid="F8">Figure 8B</xref> are essentially the same in the region of frequencies below 3 MHz and height below 150 km, and they are in almost perfect accordance with <xref ref-type="fig" rid="F8">Figure 8A</xref>.</p>
<p>This is because the height range belongs to the E-layer of the ionosphere, where the electron density is relatively flat, and the profiles obtained by the background model based on the inversion of the O-wave traces in the E-layer are already very close to the true electron density distribution, thus both the background model and the results obtained by the joint inversion method have less variations and higher consistency.</p>
<p>Similarly, <xref ref-type="fig" rid="F9">Figure 9</xref> shows the results of the detection analysis at Wuhan station on 21 June 2021, with <xref ref-type="fig" rid="F9">Figure 9A</xref> showing the traces of the measured true ionogram, <xref ref-type="fig" rid="F9">Figure 9B</xref> showing the traces synthesized by the inversion profiles of the background model, and <xref ref-type="fig" rid="F9">Figure 9C</xref> showing the traces synthesized by the profiles of the joint inversion. Similarly, it can be observed that in the time period of 5:00-14:00 (belonging to the summer season), the traces synthesized by the profiles of the background model inversion, i.e., <xref ref-type="fig" rid="F9">Figure 9B</xref>, are somewhat different from the true ionogram traces, <xref ref-type="fig" rid="F9">Figure 9A</xref>, due to the reason similar to that of <xref ref-type="fig" rid="F8">Figure 8</xref>, which is that there is a large variation of the electron density and a higher F2 layer peak during the time period, and it is difficult for the profiles synthesized by the background model inversion to closely approximate the true electron density distribution. Therefore, <xref ref-type="fig" rid="F9">Figure 9B</xref> has some differences with <xref ref-type="fig" rid="F9">Figure 9A</xref>, whereas the traces synthesized from the profiles we inverted using the joint O&#x5c;X-wave inversion, i.e., <xref ref-type="fig" rid="F9">Figure 9C</xref>, are less different from the true traces, i.e., <xref ref-type="fig" rid="F9">Figure 9A</xref>, which again shows that the electron density profiles obtained by the joint inversion are more similar to the true electron density profile, and have a better consistency.</p>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>Results of the joint inversion of the continuously observed ionograms (June 21, 2021, LAT:30.6, LON:114.6). <bold>(A)</bold> Continuous measured ionogram traces. <bold>(B)</bold> Synthesized ionograms of background electron density profiles. <bold>(C)</bold> synthetic ionograms of assimilated electron density profiles.</p>
</caption>
<graphic xlink:href="fspas-12-1510602-g009.tif"/>
</fig>
</sec>
<sec sec-type="conclusion" id="s5">
<title>5 Conclusion</title>
<p>This paper presents a method for inverting ionospheric electron density profiles based on the assimilation and inversion of O/X-wave traces from vertical sounding ionograms. In this study, we use the electron density profiles inverted from O-wave traces as background data and the X-wave traces from ionograms as observational data. By employing the Kalman filter method, we perform joint inversion of O-wave and X-wave trace data to obtain more accurate electron density profiles. Through comparative analysis of the O-wave and X-wave traces synthesized from the inverted electron density profiles with the corresponding measured traces, it was found that while the synthetic O-wave traces derived from the assimilated profiles show slightly less agreement with the measured traces, the synthetic X-wave traces exhibit good fit with the measured traces. Overall, this approach significantly reduces the errors between the synthetic and measured O-wave and X-wave traces, thereby effectively improving the accuracy of the inverted profiles.</p>
<p>The joint inversion method proposed in this study is not only theoretically clear but also practical and feasible in real-world applications, demonstrating considerable potential value. Future research directions will focus on integrating additional physical measurement information to further enhance the accuracy of the inversion algorithm for vertical sounding ionograms. Such improvements are expected to provide more reliable electron density distribution data for ionospheric studies, thus promoting deeper developments in related fields.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s6">
<title>Data availability statement</title>
<p>Publicly available datasets were analyzed in this study. This data can be found here: China National Meridian Project Data Center, <ext-link ext-link-type="uri" xlink:href="https://www.meridianproject.ac.cn">www.meridianproject.ac.cn</ext-link>.</p>
</sec>
<sec sec-type="ethics-statement" id="s7">
<title>Ethics statement</title>
<p>Ethical approval was not required for the study involving humans in accordance with the local legislation and institutional requirements. Written informed consent to participate in this study was not required from the participants or the participants&#x2019;; legal guardians/next of kin in accordance with the national legislation and the institutional requirements.</p>
</sec>
<sec sec-type="author-contributions" id="s8">
<title>Author contributions</title>
<p>LN: Conceptualization, Data curation, Formal Analysis, Investigation, Methodology, Project administration, Software, Supervision, Validation, Visualization, Writing&#x2013;original draft, Writing&#x2013;review and editing. CZ: Visualization, Writing&#x2013;review and editing, Conceptualization, Data curation, Project administration. NW: Visualization, Writing&#x2013;review and editing, Formal Analysis, Software, Supervision. Z-XD: Supervision, Validation, Writing&#x2013;review and editing. YN: Formal Analysis, Methodology, Writing&#x2013;review and editing. RC: Formal Analysis, Methodology, Validation, Visualization, Writing&#x2013;review and editing. WL: Conceptualization, Formal Analysis, Funding acquisition, Investigation, Project administration, Resources, Software, Visualization, Writing&#x2013;review and editing.</p>
</sec>
<sec sec-type="funding-information" id="s9">
<title>Funding</title>
<p>The author(s) declare that financial support was received for the research, authorship, and/or publication of this article. This work was supported by the National Key Research and Development Program of China (No. 2023YFA1009100).</p>
</sec>
<sec sec-type="COI-statement" id="s10">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="ai-statement" id="s11">
<title>Generative AI statement</title>
<p>The author(s) declare that no Generative AI was used in the creation of this manuscript.</p>
</sec>
<sec sec-type="disclaimer" id="s12">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Anderson</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Hoar</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Raeder</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Collins</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Torn</surname>
<given-names>R.</given-names>
</name>
<etal/>
</person-group> (<year>2009</year>). <article-title>The data assimilation research testbed: a community facility</article-title>. <source>Bull. Am. Meteorol. Soc.</source> <volume>90</volume>, <fpage>1283</fpage>&#x2013;<lpage>1296</lpage>. <pub-id pub-id-type="doi">10.1175/2009bams2618.1</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Angling</surname>
<given-names>M. J.</given-names>
</name>
<name>
<surname>Cannon</surname>
<given-names>P. S.</given-names>
</name>
</person-group> (<year>2004</year>). <article-title>Assimilation of radio occultation measurements into background ionospheric models</article-title>. <source>Radio Sci.</source> <volume>39</volume>, <fpage>RS1S08</fpage>. <pub-id pub-id-type="doi">10.1029/2002rs002819</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bilitza</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Pezzopane</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Truhlik</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Altadill</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Reinisch</surname>
<given-names>B. W.</given-names>
</name>
<name>
<surname>Pignalberi</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>The international reference ionosphere model: a review and description of an ionospheric benchmark</article-title>. <source>Rev. Geophys.</source> <volume>60</volume>, <fpage>e2022RG000792</fpage>. <pub-id pub-id-type="doi">10.1029/2022rg000792</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bust</surname>
<given-names>G. S.</given-names>
</name>
<name>
<surname>Garner</surname>
<given-names>T. W.</given-names>
</name>
<name>
<surname>Gaussiran</surname>
<given-names>T. L.</given-names>
</name>
</person-group> (<year>2004</year>). <article-title>Ionospheric data assimilation three-dimensional (IDA3D): a global, multisensor,electron density specification algorithm</article-title>. <source>J.Geophys. Res. Space Phys.</source> <volume>109</volume>, <fpage>A11312</fpage>. <pub-id pub-id-type="doi">10.1029/2003ja010234</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Croft</surname>
<given-names>T. A.</given-names>
</name>
<name>
<surname>Hoogasian</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>1968</year>). <article-title>Exact ray calculations in a quasi-parabolic ionosphere with no magnetic field</article-title>. <source>Radio Sci.</source> <volume>3</volume> (<issue>1</issue>), <fpage>69</fpage>&#x2013;<lpage>74</lpage>. <pub-id pub-id-type="doi">10.1002/rds19683169</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Dyson</surname>
<given-names>P. L.</given-names>
</name>
<name>
<surname>Bennett</surname>
<given-names>J. A.</given-names>
</name>
</person-group> (<year>1988</year>). <article-title>A model of the vertical distribution of the electron concentration in the ionosphere and its application to oblique propagation studies</article-title>. <source>J. Atmos. Terr. Phys.</source> <volume>50</volume> (<issue>3</issue>), <fpage>251</fpage>&#x2013;<lpage>262</lpage>. <pub-id pub-id-type="doi">10.1016/0021-9169(88)90074-8</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Forsythe</surname>
<given-names>V. V.</given-names>
</name>
<name>
<surname>Azeem</surname>
<given-names>I.</given-names>
</name>
<name>
<surname>Blay</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Crowley</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Gasperini</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Hughes</surname>
<given-names>J.</given-names>
</name>
<etal/>
</person-group> (<year>2021a</year>). <article-title>Evaluation of the new background covariance model for the ionospheric data assimilation</article-title>. <source>Radio Sci.</source> <volume>56</volume>, <fpage>e07286</fpage>. <pub-id pub-id-type="doi">10.1029/2021rs007286</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Forsythe</surname>
<given-names>V. V.</given-names>
</name>
<name>
<surname>Azeem</surname>
<given-names>I.</given-names>
</name>
<name>
<surname>Crowley</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Ionospheric horizontal correlation distances: estimation, analysis, and implications for ionospheric data assimilation</article-title>. <source>Radio Sci.</source> <volume>55</volume> (<issue>12</issue>), <fpage>1</fpage>&#x2013;<lpage>14</lpage>. <pub-id pub-id-type="doi">10.1029/2020rs007159</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>He</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Yue</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Wan</surname>
<given-names>W.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>EnKF ionosphere and thermosphere data assimilation algorithm through a sparse matrix method</article-title>. <source>J. Geophys. Res. Space Phys.</source> <volume>124</volume>, <fpage>7356</fpage>&#x2013;<lpage>7365</lpage>. <pub-id pub-id-type="doi">10.1029/2019ja026554</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Kalman</surname>
<given-names>R. E.</given-names>
</name>
</person-group> (<year>1960</year>). <article-title>A new approach to linear filtering and prediction problems</article-title>. <source>J. Basic Eng.</source> <volume>82</volume>, <fpage>35</fpage>&#x2013;<lpage>45</lpage>. <pub-id pub-id-type="doi">10.1115/1.3662552</pub-id>
</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Kalman</surname>
<given-names>R. E.</given-names>
</name>
<name>
<surname>Bucy</surname>
<given-names>R.</given-names>
</name>
</person-group> (<year>1961</year>). <article-title>New results in linear filtering and prediction theory</article-title>. <source>J. Basic Eng.</source> <volume>83</volume>, <fpage>95</fpage>&#x2013;<lpage>108</lpage>. <pub-id pub-id-type="doi">10.1115/1.3658902</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mengist</surname>
<given-names>C. K.</given-names>
</name>
<name>
<surname>Ssessanga</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Jeong</surname>
<given-names>S.-H.</given-names>
</name>
<name>
<surname>Kim</surname>
<given-names>J.-H.</given-names>
</name>
<name>
<surname>Kim</surname>
<given-names>Y. H.</given-names>
</name>
<name>
<surname>Kwak</surname>
<given-names>Y.-S.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Assimilation of multiple data types to a regional ionosphere model with a 3D-var algorithm (IDA4D)</article-title>. <source>Space weather.</source> <volume>17</volume>, <fpage>1018</fpage>&#x2013;<lpage>1039</lpage>. <pub-id pub-id-type="doi">10.1029/2019sw002159</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Niu</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Wen</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Deng</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>A profile inversion method for vertical ionograms</article-title>. <source>AIP Adv.</source> <volume>14</volume> (<issue>6</issue>). <pub-id pub-id-type="doi">10.1063/5.0208687</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Reinisch</surname>
<given-names>B. W.</given-names>
</name>
<name>
<surname>Huang</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>1983</year>). <article-title>Automatic calculation of electron density profiles from digital ionograms: 3. Processing of bottomside ionograms</article-title>. <source>Radio Sci.</source> <volume>18</volume>, <fpage>477</fpage>&#x2013;<lpage>492</lpage>. <pub-id pub-id-type="doi">10.1029/rs018i003p00477</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Scherliess</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Schunk</surname>
<given-names>R. W.</given-names>
</name>
<name>
<surname>Sojka</surname>
<given-names>J. J.</given-names>
</name>
<name>
<surname>Thompson</surname>
<given-names>D. C.</given-names>
</name>
<name>
<surname>Zhu</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2006</year>). <article-title>Utah state university global assimilation of ionospheric measurements gauss-markov Kalman filter model of the ionosphere: model description and validation</article-title>. <source>J. Geophys. Res. Space Phys.</source> <volume>111</volume>, <fpage>A11315</fpage>. <pub-id pub-id-type="doi">10.1029/2006ja011712</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Spencer</surname>
<given-names>P. S.</given-names>
</name>
<name>
<surname>Robertson</surname>
<given-names>D. S.</given-names>
</name>
<name>
<surname>Mader</surname>
<given-names>G. L.</given-names>
</name>
</person-group> (<year>2004</year>). &#x201c;<article-title>Ionospheric data assimilation methods for geodetic applications</article-title>,&#x201d; in <source>PLANS 2004. Position location and navigation symposium. IEEE Cat. No. 04CH37556</source>, <fpage>510</fpage>&#x2013;<lpage>517</lpage>.</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Titheridge</surname>
<given-names>J. E.</given-names>
</name>
</person-group> (<year>1967</year>). <article-title>The overlapping&#x2010;polynomial analysis of logograms</article-title>. <source>Radio Sci.</source> <volume>2</volume>, <fpage>1169</fpage>&#x2013;<lpage>1175</lpage>. <pub-id pub-id-type="doi">10.1002/rds19672101169</pub-id>
</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yue</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Schreiner</surname>
<given-names>W. S.</given-names>
</name>
<name>
<surname>Kuo</surname>
<given-names>Y. H.</given-names>
</name>
<name>
<surname>Hunt</surname>
<given-names>D. C.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Solomon</surname>
<given-names>S. C.</given-names>
</name>
<etal/>
</person-group> (<year>2012</year>). <article-title>Global 3&#x2010;D ionospheric electron density reanalysis based on multisource data assimilation</article-title>. <source>J. Geophys. Res. Space Phys.</source> <volume>117</volume> (<issue>A9</issue>). <pub-id pub-id-type="doi">10.1029/2012ja017968</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yue</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Schreiner</surname>
<given-names>W. S.</given-names>
</name>
<name>
<surname>Lin</surname>
<given-names>Y.-C.</given-names>
</name>
<name>
<surname>Rocken</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Kuo</surname>
<given-names>Y.-H.</given-names>
</name>
<name>
<surname>Zhao</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2011</year>). <article-title>Data assimilation retrieval of electron density profiles from radio occultation measurements</article-title>. <source>J. Geophys. Res. Space Phys.</source> <volume>116</volume>, <fpage>A03317</fpage>. <pub-id pub-id-type="doi">10.1029/2010ja015980</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>