<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.2 20190208//EN" "http://jats.nlm.nih.gov/publishing/1.2/JATS-journalpublishing1.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article" dtd-version="1.2" xml:lang="en">
    <front>
        <journal-meta>
            <journal-id journal-id-type="pmc">F1000Research</journal-id>
            <journal-title-group>
                <journal-title>F1000Research</journal-title>
            </journal-title-group>
            <issn pub-type="epub">2046-1402</issn>
            <publisher>
                <publisher-name>F1000 Research Limited</publisher-name>
                <publisher-loc>London, UK</publisher-loc>
            </publisher>
        </journal-meta>
        <article-meta>
            <article-id pub-id-type="doi">10.12688/f1000research.73182.3</article-id>
            <article-categories>
                <subj-group subj-group-type="heading">
                    <subject>Research Article</subject>
                </subj-group>
                <subj-group>
                    <subject>Articles</subject>
                </subj-group>
            </article-categories>
            <title-group>
                <article-title>Modified recurrent equation-based cubic spline interpolation for missing data recovery in phasor measurement unit (PMU)</article-title>
                <fn-group content-type="pub-status">
                    <fn>
                        <p>[version 3; peer review: 2 approved, 1 not approved]</p>
                    </fn>
                </fn-group>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author" corresp="no">
                    <name>
                        <surname>Thangaraj</surname>
                        <given-names>Shruthi</given-names>
                    </name>
                    <role content-type="http://credit.niso.org/">Conceptualization</role>
                    <role content-type="http://credit.niso.org/">Data Curation</role>
                    <role content-type="http://credit.niso.org/">Formal Analysis</role>
                    <role content-type="http://credit.niso.org/">Investigation</role>
                    <role content-type="http://credit.niso.org/">Methodology</role>
                    <role content-type="http://credit.niso.org/">Software</role>
                    <role content-type="http://credit.niso.org/">Writing &#x2013; Original Draft Preparation</role>
                    <xref ref-type="aff" rid="a1">1</xref>
                </contrib>
                <contrib contrib-type="author" corresp="yes">
                    <name>
                        <surname>Goh</surname>
                        <given-names>Vik Tor</given-names>
                    </name>
                    <role content-type="http://credit.niso.org/">Methodology</role>
                    <role content-type="http://credit.niso.org/">Supervision</role>
                    <role content-type="http://credit.niso.org/">Writing &#x2013; Review &amp; Editing</role>
                    <uri content-type="orcid">https://orcid.org/0000-0003-4573-9493</uri>
                    <xref ref-type="corresp" rid="c1">a</xref>
                    <xref ref-type="aff" rid="a1">1</xref>
                </contrib>
                <contrib contrib-type="author" corresp="no">
                    <name>
                        <surname>Yap</surname>
                        <given-names>Timothy Tzen Vun</given-names>
                    </name>
                    <role content-type="http://credit.niso.org/">Methodology</role>
                    <role content-type="http://credit.niso.org/">Supervision</role>
                    <role content-type="http://credit.niso.org/">Writing &#x2013; Review &amp; Editing</role>
                    <xref ref-type="aff" rid="a2">2</xref>
                </contrib>
                <aff id="a1">
                    <label>1</label>Faculty of Engineering, Multimedia University, Cyberjaya, Selangor, 63100, Malaysia</aff>
                <aff id="a2">
                    <label>2</label>Faculty of Computing and Informatics, Multimedia University, Cyberjaya, Selangor, 63100, Malaysia</aff>
            </contrib-group>
            <author-notes>
                <corresp id="c1">
                    <label>a</label>
                    <email xlink:href="mailto:vtgoh@mmu.edu.my">vtgoh@mmu.edu.my</email>
                </corresp>
                <fn fn-type="conflict">
                    <p>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>18</day>
                <month>12</month>
                <year>2023</year>
            </pub-date>
            <pub-date pub-type="collection">
                <year>2022</year>
            </pub-date>
            <volume>11</volume>
            <elocation-id>246</elocation-id>
            <history>
                <date date-type="accepted">
                    <day>14</day>
                    <month>12</month>
                    <year>2023</year>
                </date>
            </history>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2023 Thangaraj S et al.</copyright-statement>
                <copyright-year>2023</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access article distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <self-uri content-type="pdf" xlink:href="https://f1000research.com/articles/11-246/pdf"/>
            <abstract>
                <sec>
                    <title>Background</title>
                    <p>Smart grid systems require high-quality Phasor Measurement Unit (PMU) data for proper operation, control, and decision-making. Missing PMU data may lead to improper actions or even blackouts. While the conventional cubic interpolation methods based on the solution of a set of linear equations to solve for the cubic spline coefficients have been applied by many researchers for interpolation of missing data, the computational complexity increases non-linearly with increasing data size.</p>
                </sec>
                <sec>
                    <title>Methods</title>
                    <p>In this work, a modified recurrent equation-based cubic spline interpolation procedure for recovering missing PMU data is proposed. The recurrent equation-based method makes the computations of spline constants simpler. Using PMU data from the State Load Despatch Center (SLDC) in Madhya Pradesh, India, a comparison of the root mean square error (RMSE) values and time of calculation (ToC) is calculated for both methods.</p>
                </sec>
                <sec>
                    <title>Results</title>
                    <p>The modified recurrent relation method could retrieve missing values 10 times faster when compared to the conventional cubic interpolation method based on the solution of a set of linear equations. The RMSE values have shown the proposed method is effective even for special cases of missing values (edges, continuous missing values).</p>
                </sec>
                <sec>
                    <title>Conclusions</title>
                    <p>The proposed method can retrieve any number of missing values at any location using observed data with a minimal number of calculations.</p>
                </sec>
            </abstract>
            <kwd-group kwd-group-type="author">
                <kwd>phasor measurement unit</kwd>
                <kwd>missing data</kwd>
                <kwd>data recovery</kwd>
                <kwd>smart grid</kwd>
                <kwd>interpolation</kwd>
                <kwd>cubic spline</kwd>
                <kwd>data quality</kwd>
                <kwd>data pre-processing</kwd>
            </kwd-group>
            <funding-group>
                <funding-statement>The author(s) declared that no grants were involved in supporting this work.</funding-statement>
            </funding-group>
        </article-meta>
        <notes>
            <sec sec-type="version-changes">
                <label>Revised</label>
                <title>Amendments from Version 2</title>
                <p>We have addressed the reviewer's concerns, namely the consistency in nomenclature and accuracy of equation numbers. Additionally, we included brief discussions about the results, characteristics of the dataset, and choice of evaluation metrics.</p>
            </sec>
        </notes>
    </front>
    <body>
        <sec id="sec1" sec-type="intro">
            <title>Introduction</title>
            <p>The worldwide growing power systems highlight the need for better monitoring and control mechanisms to avoid major blackouts. Smart grids are intelligent systems that facilitate the development of communication, network, and computing technologies, protocols, and standards to integrate power system elements for two-way communication. This time-synchronized high-precision measurement device that is also known as a synchrophasor or Phasor Measurement Unit (PMU), gives clear information on the working of the entire grid. The PMU is used to monitor and control the power grid. It can help in providing real-time measurements by eliminating adverse conditions like blackouts. These combined characteristics of data availability, timeliness, and communication network contribute to the better performance of the PMU system. Although the role, impact,
                <sup>
                    <xref ref-type="bibr" rid="ref1">1</xref>
                </sup> architecture, technology,
                <sup>
                    <xref ref-type="bibr" rid="ref2">2</xref>
                </sup> applications, functionality, standards, and evolution of PMU (timing, measurement, communication, and data storage) have been released since 1995, the North American Synchro Phasor Initiative (NASPI) has highlighted the importance of data quality.
                <sup>
                    <xref ref-type="bibr" rid="ref3">3</xref>
                </sup> Data quality issues, their potential causes, and consequences are elaborated.
                <sup>
                    <xref ref-type="bibr" rid="ref4">4</xref>
                </sup>
                <sup>&#x2013;</sup>
                <sup>
                    <xref ref-type="bibr" rid="ref6">6</xref>
                </sup> Generally, incomplete or missing data might affect the functionality of the entire system.
                <sup>
                    <xref ref-type="bibr" rid="ref7">7</xref>
                </sup> Hence, a way to handle missing values in PMU is mandatory for the effective functioning of the entire grid system.</p>
            <p>With the advent of PMU systems, large datasets are generated and finding missing values using traditional cubic interpolation methods take larger computational time with the increase in data size. In this paper, a modified recurrent equation-based method termed the Alpha Method (AM) for PMU missing data problem is proposed. In this approach, a series of linear equations are solved using the modified recurrent equation to obtain a relationship between points on a spline, which is then used to estimate any missing values on the spline. We compare the proposed method to the more traditional method of solving linear equations, namely using tri-diagonal matrix or termed as the Linear Equations Method (LEM) in this paper. The proposed AM is computationally more efficient and takes less time to process than the LEM. Moreover, in real-time systems when the dataset grows progressively, we show that AM is better than LEM.</p>
        </sec>
        <sec id="sec2">
            <title>Literature review</title>
            <p>The need to recover missing values in PMU data is vital to the proper operation of smart grids and the energy infrastructure. Literatures
                <sup>
                    <xref ref-type="bibr" rid="ref5">5</xref>
                </sup>
                <sup>&#x2013;</sup>
                <sup>
                    <xref ref-type="bibr" rid="ref7">7</xref>
                </sup> indicate that missing data in PMU systems can negatively affect the accuracy of decision-making process and additionally, introduce security risks to the infrastructure. To address this problem, missing values have to be recovered and one of the more popular approaches is utilizing matrix completion.
                <sup>
                    <xref ref-type="bibr" rid="ref8">8</xref>
                </sup>
                <sup>&#x2013;</sup>
                <sup>
                    <xref ref-type="bibr" rid="ref12">12</xref>
                </sup> Despite that, this approach is still largely theoretical and even so, viable methods utilizing this approach have only been tested on simulated data.</p>
            <p>Alternatively, interpolation-based missing data recovery techniques
                <sup>
                    <xref ref-type="bibr" rid="ref13">13</xref>
                </sup>
                <sup>&#x2013;</sup>
                <sup>
                    <xref ref-type="bibr" rid="ref15">15</xref>
                </sup> propose the reconstruction of missing values by a spatial interpolation or spatio-temporal interpolation of the values. Some work
                <sup>
                    <xref ref-type="bibr" rid="ref16">16</xref>
                </sup>
                <sup>,</sup>
                <sup>
                    <xref ref-type="bibr" rid="ref17">17</xref>
                </sup> even suggested advanced approaches utilizing 
                <italic toggle="yes">k</italic>-nearest neighbors and recurrent relation-based interpolations. However, in interpolation-based techniques, historical data such as channel or time data is needed for more accurate calculations. interpolation. As such, there is a need to design effective data recovery methods to work without the need for historical data processing.
                <sup>
                    <xref ref-type="bibr" rid="ref3">3</xref>
                </sup> So, a data-driven recovery technique capable of recovering missing entries with available or observed data is much needed. Moreover, the technique should not become overly complex or require high computational time as the size of the data grows.</p>
        </sec>
        <sec id="sec3" sec-type="methods">
            <title>Methods</title>
            <p>Cubic spline interpolation is a widely used polynomial interpolation method for functions of one variable. Let 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:mi>f</mml:mi>
                        <mml:mspace width="0.25em"/>
                    </mml:math>
                </inline-formula> be a function from 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:mi>R</mml:mi>
                        <mml:mspace width="0.55em"/>
                        <mml:mtext>to</mml:mtext>
                        <mml:mspace width="0.55em"/>
                        <mml:mi>R</mml:mi>
                    </mml:math>
                </inline-formula>. It is assumed that the value of 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:mi>f</mml:mi>
                        <mml:mspace width="0.25em"/>
                    </mml:math>
                </inline-formula>is known only at 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mn>1</mml:mn>
                        </mml:msub>
                        <mml:mo>&#x2264;</mml:mo>
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mrow>
                                <mml:mn>2</mml:mn>
                                <mml:mo>.</mml:mo>
                            </mml:mrow>
                        </mml:msub>
                        <mml:mo>&#x2264;</mml:mo>
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mo>&#x2026;</mml:mo>
                        <mml:mo>&#x2264;</mml:mo>
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mi>n</mml:mi>
                        </mml:msub>
                        <mml:mspace width="0.25em"/>
                        <mml:mtext>and let</mml:mtext>
                        <mml:mtext mathvariant="italic">&#x00a0;</mml:mtext>
                        <mml:mi>f</mml:mi>
                        <mml:mfenced>
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:mfenced>
                        <mml:mo>=</mml:mo>
                        <mml:msub>
                            <mml:mi>a</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mo>.</mml:mo>
                    </mml:math>
                </inline-formula> Piecewise cubic spline interpolation is the problem of finding the 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>b</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula>, 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula>and 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>d</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula> coefficients of the cubic polynomials 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi mathvariant="italic">SF</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mspace width="0.55em"/>
                        <mml:mtext mathvariant="italic">for</mml:mtext>
                        <mml:mspace width="0.45em"/>
                        <mml:mn>0</mml:mn>
                        <mml:mo>&#x2264;</mml:mo>
                        <mml:mi>i</mml:mi>
                        <mml:mo>&#x2264;</mml:mo>
                        <mml:mi>n</mml:mi>
                        <mml:mo>&#x2212;</mml:mo>
                        <mml:mn>1</mml:mn>
                    </mml:math>
                </inline-formula> written in the form:
                <disp-formula id="e1">
                    <mml:math display="block">
                        <mml:msub>
                            <mml:mi mathvariant="italic">SF</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mfenced close=")" open="(">
                            <mml:mi>x</mml:mi>
                        </mml:mfenced>
                        <mml:mo>=</mml:mo>
                        <mml:msub>
                            <mml:mi>a</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mo>+</mml:mo>
                        <mml:msub>
                            <mml:mi>b</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mfenced close=")" open="(">
                            <mml:mrow>
                                <mml:mi>x</mml:mi>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:msub>
                                    <mml:mi>x</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:mrow>
                        </mml:mfenced>
                        <mml:mo>+</mml:mo>
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:msup>
                            <mml:mfenced close=")" open="(">
                                <mml:mrow>
                                    <mml:mi>x</mml:mi>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:msub>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                </mml:mrow>
                            </mml:mfenced>
                            <mml:mn>2</mml:mn>
                        </mml:msup>
                        <mml:mo>+</mml:mo>
                        <mml:msub>
                            <mml:mi>d</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:msup>
                            <mml:mfenced close=")" open="(">
                                <mml:mrow>
                                    <mml:mi>x</mml:mi>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:msub>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                </mml:mrow>
                            </mml:mfenced>
                            <mml:mn>3</mml:mn>
                        </mml:msup>
                    </mml:math>
                    <label>(1)</label>
                </disp-formula>
            </p>
            <p>Where 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:mi>x</mml:mi>
                    </mml:math>
                </inline-formula> can take any value between 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula> and 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mrow>
                                <mml:mi>i</mml:mi>
                                <mml:mo>+</mml:mo>
                                <mml:mn>1</mml:mn>
                            </mml:mrow>
                        </mml:msub>
                    </mml:math>
                </inline-formula>. That is,
                <disp-formula id="e2">
                    <mml:math display="block">
                        <mml:mspace width="0.25em"/>
                        <mml:msub>
                            <mml:mi mathvariant="italic">SF</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mfenced close=")" open="(">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:mfenced>
                        <mml:mo>=</mml:mo>
                        <mml:msub>
                            <mml:mi>a</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                    <label>(1a)</label>
                </disp-formula>
            </p>
            <p>Let the first-order derivative of 
                <xref ref-type="disp-formula" rid="e1">equation (1)</xref> be:
                <disp-formula id="e3">
                    <mml:math display="block">
                        <mml:msubsup>
                            <mml:mi mathvariant="italic">SF</mml:mi>
                            <mml:mi>i</mml:mi>
                            <mml:mo>&#x2032;</mml:mo>
                        </mml:msubsup>
                        <mml:mfenced close=")" open="(">
                            <mml:mi>x</mml:mi>
                        </mml:mfenced>
                        <mml:mo>=</mml:mo>
                        <mml:msub>
                            <mml:mi>b</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mo>+</mml:mo>
                        <mml:mn>2</mml:mn>
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mfenced close=")" open="(">
                            <mml:mrow>
                                <mml:mi>x</mml:mi>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:msub>
                                    <mml:mi>x</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:mrow>
                        </mml:mfenced>
                        <mml:mo>+</mml:mo>
                        <mml:mn>3</mml:mn>
                        <mml:msub>
                            <mml:mi>d</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:msup>
                            <mml:mfenced close=")" open="(">
                                <mml:mrow>
                                    <mml:mi>x</mml:mi>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:msub>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                </mml:mrow>
                            </mml:mfenced>
                            <mml:mn>2</mml:mn>
                        </mml:msup>
                    </mml:math>
                    <label>(2)</label>
                </disp-formula>
            </p>
            <p>The first-order derivative at 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula> for values of 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:mn>1</mml:mn>
                        <mml:mo>&#x2264;</mml:mo>
                        <mml:mi>i</mml:mi>
                        <mml:mo>&#x2264;</mml:mo>
                        <mml:mi>n</mml:mi>
                        <mml:mo>&#x2212;</mml:mo>
                        <mml:mn>1</mml:mn>
                    </mml:math>
                </inline-formula> will be
                <disp-formula id="e4">
                    <mml:math display="block">
                        <mml:mspace width="0.25em"/>
                        <mml:msubsup>
                            <mml:mi mathvariant="italic">SF</mml:mi>
                            <mml:mi>i</mml:mi>
                            <mml:mo>&#x2032;</mml:mo>
                        </mml:msubsup>
                        <mml:mfenced close=")" open="(">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:mfenced>
                        <mml:mo>=</mml:mo>
                        <mml:msub>
                            <mml:mi>b</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                    <label>(2a)</label>
                </disp-formula>
            </p>
            <p>And the second-order derivative be:
                <disp-formula id="e5">
                    <mml:math display="block">
                        <mml:msubsup>
                            <mml:mi mathvariant="italic">SF</mml:mi>
                            <mml:mi>i</mml:mi>
                            <mml:mrow>
                                <mml:mo>&#x2032;</mml:mo>
                                <mml:mo>&#x2032;</mml:mo>
                            </mml:mrow>
                        </mml:msubsup>
                        <mml:mfenced close=")" open="(">
                            <mml:mi>x</mml:mi>
                        </mml:mfenced>
                        <mml:mo>=</mml:mo>
                        <mml:mn>2</mml:mn>
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mo>+</mml:mo>
                        <mml:mn>6</mml:mn>
                        <mml:msub>
                            <mml:mi>d</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mfenced close=")" open="(">
                            <mml:mrow>
                                <mml:mi>x</mml:mi>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:msub>
                                    <mml:mi>x</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:mrow>
                        </mml:mfenced>
                    </mml:math>
                    <label>(3)</label>
                </disp-formula>
            </p>
            <p>The second-order derivative at 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula> for values of 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:mn>1</mml:mn>
                        <mml:mo>&#x2264;</mml:mo>
                        <mml:mi>i</mml:mi>
                        <mml:mo>&#x2264;</mml:mo>
                        <mml:mi>n</mml:mi>
                        <mml:mo>&#x2212;</mml:mo>
                        <mml:mn>1</mml:mn>
                    </mml:math>
                </inline-formula> will be:
                <disp-formula id="e6">
                    <mml:math display="block">
                        <mml:msubsup>
                            <mml:mi mathvariant="italic">SF</mml:mi>
                            <mml:mi>i</mml:mi>
                            <mml:mrow>
                                <mml:mo>&#x2032;</mml:mo>
                                <mml:mo>&#x2032;</mml:mo>
                            </mml:mrow>
                        </mml:msubsup>
                        <mml:mfenced close=")" open="(">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:mfenced>
                        <mml:mo>=</mml:mo>
                        <mml:mn>2</mml:mn>
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                    <label>(3a)</label>
                </disp-formula>
            </p>
            <p>For a smooth fit between the adjacent pieces, the cubic spline interpolation requires that the following conditions hold:
                <list list-type="order">
                    <list-item>
                        <label>1.</label>
                        <p>The cubic functions should intersect at the points left and right, for 
                            <inline-formula>
                                <mml:math display="inline">
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>0</mml:mn>
                                    <mml:mspace width="0.25em"/>
                                    <mml:mtext>to</mml:mtext>
                                    <mml:mspace width="0.25em"/>
                                    <mml:mi>n</mml:mi>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:math>
                            </inline-formula>
                            <disp-formula id="e7">
                                <mml:math display="block">
                                    <mml:msub>
                                        <mml:mi mathvariant="italic">SF</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mfenced close=")" open="(">
                                        <mml:msub>
                                            <mml:mi>x</mml:mi>
                                            <mml:mrow>
                                                <mml:mi>i</mml:mi>
                                                <mml:mo>+</mml:mo>
                                                <mml:mn>1</mml:mn>
                                            </mml:mrow>
                                        </mml:msub>
                                    </mml:mfenced>
                                    <mml:mo>=</mml:mo>
                                    <mml:msub>
                                        <mml:mi mathvariant="italic">SF</mml:mi>
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>+</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                    </mml:msub>
                                    <mml:mfenced close=")" open="(">
                                        <mml:msub>
                                            <mml:mi>x</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:mfenced>
                                    <mml:mo>=</mml:mo>
                                    <mml:msub>
                                        <mml:mi>a</mml:mi>
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>+</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                    </mml:msub>
                                </mml:math>
                                <label>(4)</label>
                            </disp-formula>
                        </p>
                    </list-item>
                    <list-item>
                        <label>2.</label>
                        <p>For each cubic function to join smoothly with its neighbors, the splines should have continuous first and second derivatives at the data points 
                            <inline-formula>
                                <mml:math display="inline">
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>1</mml:mn>
                                    <mml:mo>,</mml:mo>
                                    <mml:mo>&#x2026;</mml:mo>
                                    <mml:mo>,</mml:mo>
                                    <mml:mi>n</mml:mi>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mn>1</mml:mn>
                                    <mml:mo>:</mml:mo>
                                </mml:math>
                            </inline-formula>
                            <disp-formula id="e8">
                                <mml:math display="block">
                                    <mml:msubsup>
                                        <mml:mi mathvariant="italic">SF</mml:mi>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>&#x2032;</mml:mo>
                                    </mml:msubsup>
                                    <mml:mfenced close=")" open="(">
                                        <mml:msub>
                                            <mml:mi>x</mml:mi>
                                            <mml:mrow>
                                                <mml:mi>i</mml:mi>
                                                <mml:mo>+</mml:mo>
                                                <mml:mn>1</mml:mn>
                                            </mml:mrow>
                                        </mml:msub>
                                    </mml:mfenced>
                                    <mml:mo>=</mml:mo>
                                    <mml:msubsup>
                                        <mml:mi mathvariant="italic">SF</mml:mi>
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>+</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                        <mml:mo>&#x2032;</mml:mo>
                                    </mml:msubsup>
                                    <mml:mfenced close=")" open="(">
                                        <mml:msub>
                                            <mml:mi>x</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:mfenced>
                                    <mml:mo>=</mml:mo>
                                    <mml:msub>
                                        <mml:mi>b</mml:mi>
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>+</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                    </mml:msub>
                                </mml:math>
                                <label>(5)</label>
                            </disp-formula>
                            <disp-formula id="e9">
                                <mml:math display="block">
                                    <mml:msubsup>
                                        <mml:mi mathvariant="italic">SF</mml:mi>
                                        <mml:mi>i</mml:mi>
                                        <mml:mrow>
                                            <mml:mo>&#x2032;</mml:mo>
                                            <mml:mo>&#x2032;</mml:mo>
                                        </mml:mrow>
                                    </mml:msubsup>
                                    <mml:mfenced close=")" open="(">
                                        <mml:msub>
                                            <mml:mi>x</mml:mi>
                                            <mml:mrow>
                                                <mml:mi>i</mml:mi>
                                                <mml:mo>+</mml:mo>
                                                <mml:mn>1</mml:mn>
                                            </mml:mrow>
                                        </mml:msub>
                                    </mml:mfenced>
                                    <mml:mo>=</mml:mo>
                                    <mml:msubsup>
                                        <mml:mi mathvariant="italic">SF</mml:mi>
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>+</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                        <mml:mrow>
                                            <mml:mo>&#x2032;</mml:mo>
                                            <mml:mo>&#x2032;</mml:mo>
                                        </mml:mrow>
                                    </mml:msubsup>
                                    <mml:mfenced close=")" open="(">
                                        <mml:msub>
                                            <mml:mi>x</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:mfenced>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>2</mml:mn>
                                    <mml:mo>.</mml:mo>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>+</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                    </mml:msub>
                                </mml:math>
                                <label>(6)</label>
                            </disp-formula>
                        </p>
                    </list-item>
                </list>
            </p>
            <p>If 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>h</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula>= 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mrow>
                                <mml:mi>i</mml:mi>
                                <mml:mo>+</mml:mo>
                                <mml:mn>1</mml:mn>
                            </mml:mrow>
                        </mml:msub>
                        <mml:mo>&#x2212;</mml:mo>
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula> and if 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>h</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula> is equal for all 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:mi>i</mml:mi>
                        <mml:mspace width="0.25em"/>
                    </mml:math>
                </inline-formula>values, following Revesz,
                <sup>
                    <xref ref-type="bibr" rid="ref17">17</xref>
                </sup> the relation between coefficients 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>a</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula> and 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula> can be resolved:
                <disp-formula id="e10">
                    <mml:math display="block">
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mrow>
                                <mml:mi>i</mml:mi>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:mn>1</mml:mn>
                            </mml:mrow>
                        </mml:msub>
                        <mml:mo>+</mml:mo>
                        <mml:mn>4</mml:mn>
                        <mml:mspace width="0.25em"/>
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mo>+</mml:mo>
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mrow>
                                <mml:mi>i</mml:mi>
                                <mml:mo>+</mml:mo>
                                <mml:mn>1</mml:mn>
                            </mml:mrow>
                        </mml:msub>
                        <mml:mo>=</mml:mo>
                        <mml:mfrac>
                            <mml:mn>3</mml:mn>
                            <mml:msup>
                                <mml:mi>h</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msup>
                        </mml:mfrac>
                        <mml:mfenced close=")" open="(">
                            <mml:mrow>
                                <mml:msub>
                                    <mml:mi>a</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:mn>2</mml:mn>
                                <mml:msub>
                                    <mml:mi>a</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                                <mml:mo>+</mml:mo>
                                <mml:msub>
                                    <mml:mi>a</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>+</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:msub>
                            </mml:mrow>
                        </mml:mfenced>
                    </mml:math>
                    <label>(7)</label>
                </disp-formula>
                <disp-formula id="e11">
                    <mml:math display="block">
                        <mml:msub>
                            <mml:mi>b</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mo>=</mml:mo>
                        <mml:mfenced close=")" open="(">
                            <mml:mrow>
                                <mml:msub>
                                    <mml:mi>a</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>+</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:msub>
                                    <mml:mi>a</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:mrow>
                        </mml:mfenced>
                        <mml:mfrac>
                            <mml:mn>1</mml:mn>
                            <mml:msub>
                                <mml:mi>h</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:mfrac>
                        <mml:mo>&#x2212;</mml:mo>
                        <mml:mfrac>
                            <mml:mrow>
                                <mml:mn>2</mml:mn>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                                <mml:mo>+</mml:mo>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>+</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:msub>
                            </mml:mrow>
                            <mml:mn>3</mml:mn>
                        </mml:mfrac>
                        <mml:msub>
                            <mml:mi>h</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                    <label>(8)</label>
                </disp-formula>
                <disp-formula id="e12">
                    <mml:math display="block">
                        <mml:msub>
                            <mml:mi>d</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                        <mml:mo>=</mml:mo>
                        <mml:mfrac>
                            <mml:mn>1</mml:mn>
                            <mml:mrow>
                                <mml:mn>3</mml:mn>
                                <mml:mo>.</mml:mo>
                                <mml:msub>
                                    <mml:mi>h</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:mrow>
                        </mml:mfrac>
                        <mml:mfenced close=")" open="(">
                            <mml:mrow>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>+</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:msub>
                                    <mml:mi>c</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                            </mml:mrow>
                        </mml:mfenced>
                    </mml:math>
                    <label>(9)</label>
                </disp-formula>
            </p>
            <p>
                <xref ref-type="disp-formula" rid="e10">Equation (7)</xref> represents a system of linear equations for the unknowns 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula> for 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:mn>0</mml:mn>
                        <mml:mo>&#x2264;</mml:mo>
                        <mml:mi>i</mml:mi>
                        <mml:mo>&#x2264;</mml:mo>
                        <mml:mi>n</mml:mi>
                    </mml:math>
                </inline-formula>. As the values of 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>a</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula>are known, the value of 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula> can be found by solving the tri-diagonal matrix-vector equation
                <inline-formula>
                    <mml:math display="inline">
                        <mml:mspace width="0.25em"/>
                        <mml:mi mathvariant="italic">Ax</mml:mi>
                        <mml:mo>=</mml:mo>
                        <mml:mi>B</mml:mi>
                    </mml:math>
                </inline-formula>. While there are 
                <italic toggle="yes">n</italic>+1 numbers of 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula> constants, 
                <xref ref-type="disp-formula" rid="e10">equation (7)</xref> yields only (
                <italic toggle="yes">n</italic>-2) equations. Based on the nature or type of spline assumed two more equations representing the boundary conditions of the spline. In general, two types of splines may be considered: natural cubic spline and clamped cubic spline.</p>
            <p>For natural cubic spline interpolation, the following boundary conditions are assumed: 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mn>0</mml:mn>
                        </mml:msub>
                        <mml:mo>=</mml:mo>
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mi>n</mml:mi>
                        </mml:msub>
                        <mml:mo>=</mml:mo>
                        <mml:mn>0.0</mml:mn>
                    </mml:math>
                </inline-formula>. That is, the second derivatives of the splines at the endpoints are assumed to be zero. Based on 
                <xref ref-type="disp-formula" rid="e10">equation (7)</xref>, a system of (
                <italic toggle="yes">N</italic>+1) linear equations of (
                <italic toggle="yes">N</italic>+1) variables can be formulated as:
                <disp-formula id="e13">
                    <mml:math display="block">
                        <mml:mi>A</mml:mi>
                        <mml:mo>=</mml:mo>
                        <mml:mfenced close="]" open="[">
                            <mml:mtable columnalign="left">
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ef;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>4</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ef;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>4</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ef;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ef;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>4</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ef;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>4</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ef;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                </mml:mtr>
                            </mml:mtable>
                        </mml:mfenced>
                        <mml:mo>,</mml:mo>
                        <mml:mspace width="0.25em"/>
                        <mml:mi>x</mml:mi>
                        <mml:mo>=</mml:mo>
                        <mml:mfenced close="]" open="[">
                            <mml:mtable>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mtable>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:msub>
                                                        <mml:mi>c</mml:mi>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:msub>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:msub>
                                                        <mml:mi>c</mml:mi>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:msub>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:mo>&#x22ee;</mml:mo>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:msub>
                                                        <mml:mi>c</mml:mi>
                                                        <mml:mi>n</mml:mi>
                                                    </mml:msub>
                                                </mml:mtd>
                                            </mml:mtr>
                                        </mml:mtable>
                                    </mml:mtd>
                                </mml:mtr>
                            </mml:mtable>
                        </mml:mfenced>
                        <mml:mo>,</mml:mo>
                        <mml:mtext>and</mml:mtext>
                        <mml:mspace width="0.5em"/>
                        <mml:mi>B</mml:mi>
                        <mml:mo>=</mml:mo>
                        <mml:mspace width="0.5em"/>
                        <mml:mfenced close="]" open="[">
                            <mml:mtable>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mtable>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:mn>0</mml:mn>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:mfrac>
                                                        <mml:mn>3</mml:mn>
                                                        <mml:msup>
                                                            <mml:mi>h</mml:mi>
                                                            <mml:mn>2</mml:mn>
                                                        </mml:msup>
                                                    </mml:mfrac>
                                                    <mml:mfenced close=")" open="(">
                                                        <mml:mrow>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mn>0</mml:mn>
                                                            </mml:msub>
                                                            <mml:mo>&#x2212;</mml:mo>
                                                            <mml:mn>2</mml:mn>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mn>1</mml:mn>
                                                            </mml:msub>
                                                            <mml:mo>+</mml:mo>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mn>2</mml:mn>
                                                            </mml:msub>
                                                        </mml:mrow>
                                                    </mml:mfenced>
                                                </mml:mtd>
                                            </mml:mtr>
                                        </mml:mtable>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mtable>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:mo>&#x22ee;</mml:mo>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:mfrac>
                                                        <mml:mn>3</mml:mn>
                                                        <mml:msup>
                                                            <mml:mi>h</mml:mi>
                                                            <mml:mn>2</mml:mn>
                                                        </mml:msup>
                                                    </mml:mfrac>
                                                    <mml:mfenced close=")" open="(">
                                                        <mml:mrow>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mrow>
                                                                    <mml:mi>n</mml:mi>
                                                                    <mml:mo>&#x2212;</mml:mo>
                                                                    <mml:mn>2</mml:mn>
                                                                </mml:mrow>
                                                            </mml:msub>
                                                            <mml:mo>&#x2212;</mml:mo>
                                                            <mml:mn>2</mml:mn>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mrow>
                                                                    <mml:mi>n</mml:mi>
                                                                    <mml:mo>&#x2212;</mml:mo>
                                                                    <mml:mn>1</mml:mn>
                                                                </mml:mrow>
                                                            </mml:msub>
                                                            <mml:mo>+</mml:mo>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mi>n</mml:mi>
                                                            </mml:msub>
                                                        </mml:mrow>
                                                    </mml:mfenced>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:mn>0</mml:mn>
                                                </mml:mtd>
                                            </mml:mtr>
                                        </mml:mtable>
                                    </mml:mtd>
                                </mml:mtr>
                            </mml:mtable>
                        </mml:mfenced>
                    </mml:math>
                    <label>(10)</label>
                </disp-formula>
            </p>
            <p>For clamped cubic spline interpolation the following boundary conditions are assumed: 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>b</mml:mi>
                            <mml:mn>0</mml:mn>
                        </mml:msub>
                        <mml:mo>=</mml:mo>
                        <mml:msup>
                            <mml:mi>f</mml:mi>
                            <mml:mo>&#x2032;</mml:mo>
                        </mml:msup>
                        <mml:mo stretchy="true">(</mml:mo>
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mn>0</mml:mn>
                        </mml:msub>
                    </mml:math>
                </inline-formula>) and 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>b</mml:mi>
                            <mml:mi>n</mml:mi>
                        </mml:msub>
                        <mml:mo>=</mml:mo>
                        <mml:msup>
                            <mml:mi>f</mml:mi>
                            <mml:mo>&#x2032;</mml:mo>
                        </mml:msup>
                        <mml:mo stretchy="true">(</mml:mo>
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mi>n</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula>), where the derivatives 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msup>
                            <mml:mi>f</mml:mi>
                            <mml:mo>&#x2032;</mml:mo>
                        </mml:msup>
                        <mml:mo stretchy="true">(</mml:mo>
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mn>0</mml:mn>
                        </mml:msub>
                    </mml:math>
                </inline-formula>) and 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msup>
                            <mml:mi>f</mml:mi>
                            <mml:mo>&#x2032;</mml:mo>
                        </mml:msup>
                        <mml:mo stretchy="true">(</mml:mo>
                        <mml:msub>
                            <mml:mi>x</mml:mi>
                            <mml:mi>n</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula>), are known constants. Thus, based on the boundary conditions assumed both natural and cubic splines result in 
                <italic toggle="yes">n</italic>+1 system of linear equations. The resulting system of 
                <italic toggle="yes">n</italic>+1 linear equations can be used to get unique solutions by any of the standard methods for solving a system of linear equations.</p>
            <p>Once the values of 
                <inline-formula>
                    <mml:math display="inline">
                        <mml:msub>
                            <mml:mi>c</mml:mi>
                            <mml:mi>i</mml:mi>
                        </mml:msub>
                    </mml:math>
                </inline-formula> are found, the 
                <italic toggle="yes">b</italic>
                <sub>
                    <italic toggle="yes">i</italic>
                </sub> and 
                <italic toggle="yes">d</italic>
                <sub>
                    <italic toggle="yes">i</italic>
                </sub> values can be obtained using 
                <xref ref-type="disp-formula" rid="e11">equations (8)</xref> and 
                <xref ref-type="disp-formula" rid="e12">(9)</xref> respectively. Similarly, under clamped spline interpolation,
                <disp-formula id="e14">
                    <mml:math display="block">
                        <mml:mi>A</mml:mi>
                        <mml:mo>=</mml:mo>
                        <mml:mfenced close="]" open="[">
                            <mml:mtable columnalign="left">
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mn>2</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ef;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>4</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ef;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>4</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ef;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ee;</mml:mo>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ef;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>4</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ef;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>4</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mo>&#x22ef;</mml:mo>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>0</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>1</mml:mn>
                                    </mml:mtd>
                                    <mml:mtd>
                                        <mml:mn>2</mml:mn>
                                    </mml:mtd>
                                </mml:mtr>
                            </mml:mtable>
                        </mml:mfenced>
                        <mml:mo>,</mml:mo>
                        <mml:mspace width="0.25em"/>
                        <mml:mi>x</mml:mi>
                        <mml:mo>=</mml:mo>
                        <mml:mfenced close="]" open="[">
                            <mml:mtable>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mtable>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:msub>
                                                        <mml:mi>c</mml:mi>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:msub>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:msub>
                                                        <mml:mi>c</mml:mi>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:msub>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:mo>&#x22ee;</mml:mo>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:msub>
                                                        <mml:mi>c</mml:mi>
                                                        <mml:mi>n</mml:mi>
                                                    </mml:msub>
                                                </mml:mtd>
                                            </mml:mtr>
                                        </mml:mtable>
                                    </mml:mtd>
                                </mml:mtr>
                            </mml:mtable>
                        </mml:mfenced>
                        <mml:mspace width="0.25em"/>
                        <mml:mtext>and</mml:mtext>
                        <mml:mspace width="0.5em"/>
                        <mml:mi>B</mml:mi>
                        <mml:mo>=</mml:mo>
                        <mml:mfenced close="]" open="[">
                            <mml:mtable>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mtable>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:mfrac>
                                                        <mml:mn>3</mml:mn>
                                                        <mml:msup>
                                                            <mml:mi>h</mml:mi>
                                                            <mml:mn>2</mml:mn>
                                                        </mml:msup>
                                                    </mml:mfrac>
                                                    <mml:mfenced close=")" open="(">
                                                        <mml:mrow>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mn>1</mml:mn>
                                                            </mml:msub>
                                                            <mml:mo>&#x2212;</mml:mo>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mn>0</mml:mn>
                                                            </mml:msub>
                                                        </mml:mrow>
                                                    </mml:mfenced>
                                                    <mml:mo>&#x2212;</mml:mo>
                                                    <mml:mfrac>
                                                        <mml:mn>3</mml:mn>
                                                        <mml:mi>h</mml:mi>
                                                    </mml:mfrac>
                                                    <mml:msup>
                                                        <mml:mi>f</mml:mi>
                                                        <mml:mo>&#x2032;</mml:mo>
                                                    </mml:msup>
                                                    <mml:mfenced close=")" open="(">
                                                        <mml:msub>
                                                            <mml:mi>x</mml:mi>
                                                            <mml:mn>0</mml:mn>
                                                        </mml:msub>
                                                    </mml:mfenced>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:mfrac>
                                                        <mml:mn>3</mml:mn>
                                                        <mml:msup>
                                                            <mml:mi>h</mml:mi>
                                                            <mml:mn>2</mml:mn>
                                                        </mml:msup>
                                                    </mml:mfrac>
                                                    <mml:mfenced close=")" open="(">
                                                        <mml:mrow>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mn>0</mml:mn>
                                                            </mml:msub>
                                                            <mml:mo>&#x2212;</mml:mo>
                                                            <mml:mn>2</mml:mn>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mn>1</mml:mn>
                                                            </mml:msub>
                                                            <mml:mo>+</mml:mo>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mn>2</mml:mn>
                                                            </mml:msub>
                                                        </mml:mrow>
                                                    </mml:mfenced>
                                                </mml:mtd>
                                            </mml:mtr>
                                        </mml:mtable>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mtable>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:mo>&#x22ee;</mml:mo>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:mfrac>
                                                        <mml:mn>3</mml:mn>
                                                        <mml:msup>
                                                            <mml:mi>h</mml:mi>
                                                            <mml:mn>2</mml:mn>
                                                        </mml:msup>
                                                    </mml:mfrac>
                                                    <mml:mfenced close=")" open="(">
                                                        <mml:mrow>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mrow>
                                                                    <mml:mi>n</mml:mi>
                                                                    <mml:mo>&#x2212;</mml:mo>
                                                                    <mml:mn>2</mml:mn>
                                                                </mml:mrow>
                                                            </mml:msub>
                                                            <mml:mo>&#x2212;</mml:mo>
                                                            <mml:mn>2</mml:mn>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mrow>
                                                                    <mml:mi>n</mml:mi>
                                                                    <mml:mo>&#x2212;</mml:mo>
                                                                    <mml:mn>1</mml:mn>
                                                                </mml:mrow>
                                                            </mml:msub>
                                                            <mml:mo>+</mml:mo>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mi>n</mml:mi>
                                                            </mml:msub>
                                                        </mml:mrow>
                                                    </mml:mfenced>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr>
                                                <mml:mtd>
                                                    <mml:mfrac>
                                                        <mml:mn>3</mml:mn>
                                                        <mml:mi>h</mml:mi>
                                                    </mml:mfrac>
                                                    <mml:msup>
                                                        <mml:mi>f</mml:mi>
                                                        <mml:mo>&#x2032;</mml:mo>
                                                    </mml:msup>
                                                    <mml:mfenced close=")" open="(">
                                                        <mml:msub>
                                                            <mml:mi>x</mml:mi>
                                                            <mml:mn>0</mml:mn>
                                                        </mml:msub>
                                                    </mml:mfenced>
                                                    <mml:mo>&#x2212;</mml:mo>
                                                    <mml:mfrac>
                                                        <mml:mn>3</mml:mn>
                                                        <mml:msup>
                                                            <mml:mi>h</mml:mi>
                                                            <mml:mn>2</mml:mn>
                                                        </mml:msup>
                                                    </mml:mfrac>
                                                    <mml:mfenced close=")" open="(">
                                                        <mml:mrow>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mi>n</mml:mi>
                                                            </mml:msub>
                                                            <mml:mo>&#x2212;</mml:mo>
                                                            <mml:msub>
                                                                <mml:mi>a</mml:mi>
                                                                <mml:mrow>
                                                                    <mml:mi>n</mml:mi>
                                                                    <mml:mo>&#x2212;</mml:mo>
                                                                    <mml:mn>1</mml:mn>
                                                                </mml:mrow>
                                                            </mml:msub>
                                                        </mml:mrow>
                                                    </mml:mfenced>
                                                </mml:mtd>
                                            </mml:mtr>
                                        </mml:mtable>
                                    </mml:mtd>
                                </mml:mtr>
                            </mml:mtable>
                        </mml:mfenced>
                    </mml:math>
                    <label>(11)</label>
                </disp-formula>
            </p>
            <sec id="sec4">
                <title>Recurrent equation-based solution</title>
                <p>Revesz,
                    <sup>
                        <xref ref-type="bibr" rid="ref17">17</xref>
                    </sup> chose boundary conditions that need to solve the tri-diagonal system given in 
                    <xref ref-type="disp-formula" rid="e10">equation (7)</xref> where 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mspace width="0.25em"/>
                        </mml:math>
                    </inline-formula>rational variables 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>e</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> rational constants, 
                    <italic toggle="yes">r</italic> is a non-zero rational constant and 
                    <italic toggle="yes">A</italic> is:
                    <disp-formula id="e15">
                        <mml:math display="block">
                            <mml:mtable displaystyle="true">
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mi>A</mml:mi>
                                        <mml:mo>=</mml:mo>
                                        <mml:mfenced close="]" open="[">
                                            <mml:mtable columnalign="left">
                                                <mml:mtr>
                                                    <mml:mtd>
                                                        <mml:mi>r</mml:mi>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ef;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                </mml:mtr>
                                                <mml:mtr>
                                                    <mml:mtd>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>4</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ef;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                </mml:mtr>
                                                <mml:mtr>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>4</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ef;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                </mml:mtr>
                                                <mml:mtr>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ee;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ee;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ee;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ee;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ee;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ee;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ee;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ee;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ee;</mml:mo>
                                                    </mml:mtd>
                                                </mml:mtr>
                                                <mml:mtr>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ef;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>4</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                </mml:mtr>
                                                <mml:mtr>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ef;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>4</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:mtd>
                                                </mml:mtr>
                                                <mml:mtr>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mo>&#x22ef;</mml:mo>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mtd>
                                                    <mml:mtd>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:mtd>
                                                </mml:mtr>
                                            </mml:mtable>
                                        </mml:mfenced>
                                        <mml:mo>,</mml:mo>
                                        <mml:mspace width="0.25em"/>
                                        <mml:mi>x</mml:mi>
                                        <mml:mo>=</mml:mo>
                                        <mml:mfenced close="]" open="[">
                                            <mml:mtable>
                                                <mml:mtr>
                                                    <mml:mtd>
                                                        <mml:mtable>
                                                            <mml:mtr>
                                                                <mml:mtd>
                                                                    <mml:mtable columnalign="center">
                                                                        <mml:mtr>
                                                                            <mml:mtd>
                                                                                <mml:msub>
                                                                                    <mml:mi>x</mml:mi>
                                                                                    <mml:mn>1</mml:mn>
                                                                                </mml:msub>
                                                                            </mml:mtd>
                                                                        </mml:mtr>
                                                                        <mml:mtr>
                                                                            <mml:mtd>
                                                                                <mml:msub>
                                                                                    <mml:mi>x</mml:mi>
                                                                                    <mml:mn>2</mml:mn>
                                                                                </mml:msub>
                                                                            </mml:mtd>
                                                                        </mml:mtr>
                                                                        <mml:mtr>
                                                                            <mml:mtd>
                                                                                <mml:mtable>
                                                                                    <mml:mtr>
                                                                                        <mml:mtd>
                                                                                            <mml:mo>&#x22ee;</mml:mo>
                                                                                        </mml:mtd>
                                                                                    </mml:mtr>
                                                                                    <mml:mtr>
                                                                                        <mml:mtd>
                                                                                            <mml:msub>
                                                                                                <mml:mi>x</mml:mi>
                                                                                                <mml:mtable>
                                                                                                    <mml:mtr>
                                                                                                        <mml:mtd>
                                                                                                            <mml:mi>n</mml:mi>
                                                                                                            <mml:mo>&#x2212;</mml:mo>
                                                                                                            <mml:mn>1</mml:mn>
                                                                                                        </mml:mtd>
                                                                                                    </mml:mtr>
                                                                                                    <mml:mtr>
                                                                                                        <mml:mtd>
                                                                                                            <mml:msub>
                                                                                                                <mml:mi>x</mml:mi>
                                                                                                                <mml:mi>n</mml:mi>
                                                                                                            </mml:msub>
                                                                                                        </mml:mtd>
                                                                                                    </mml:mtr>
                                                                                                </mml:mtable>
                                                                                            </mml:msub>
                                                                                        </mml:mtd>
                                                                                    </mml:mtr>
                                                                                </mml:mtable>
                                                                            </mml:mtd>
                                                                        </mml:mtr>
                                                                    </mml:mtable>
                                                                </mml:mtd>
                                                            </mml:mtr>
                                                        </mml:mtable>
                                                    </mml:mtd>
                                                </mml:mtr>
                                            </mml:mtable>
                                        </mml:mfenced>
                                        <mml:mspace width="0.25em"/>
                                        <mml:mtext>and</mml:mtext>
                                        <mml:mspace width="0.75em"/>
                                        <mml:mi>b</mml:mi>
                                        <mml:mo>=</mml:mo>
                                        <mml:mfenced close="]" open="[">
                                            <mml:mtable>
                                                <mml:mtr>
                                                    <mml:mtd>
                                                        <mml:mtable columnalign="left">
                                                            <mml:mtr>
                                                                <mml:mtd>
                                                                    <mml:mtable>
                                                                        <mml:mtr>
                                                                            <mml:mtd>
                                                                                <mml:msub>
                                                                                    <mml:mi>e</mml:mi>
                                                                                    <mml:mn>1</mml:mn>
                                                                                </mml:msub>
                                                                            </mml:mtd>
                                                                        </mml:mtr>
                                                                        <mml:mtr>
                                                                            <mml:mtd>
                                                                                <mml:msub>
                                                                                    <mml:mi>e</mml:mi>
                                                                                    <mml:mn>2</mml:mn>
                                                                                </mml:msub>
                                                                            </mml:mtd>
                                                                        </mml:mtr>
                                                                        <mml:mtr>
                                                                            <mml:mtd>
                                                                                <mml:mtable>
                                                                                    <mml:mtr>
                                                                                        <mml:mtd>
                                                                                            <mml:mo>&#x22ee;</mml:mo>
                                                                                        </mml:mtd>
                                                                                    </mml:mtr>
                                                                                    <mml:mtr>
                                                                                        <mml:mtd>
                                                                                            <mml:msub>
                                                                                                <mml:mi>e</mml:mi>
                                                                                                <mml:mtable>
                                                                                                    <mml:mtr>
                                                                                                        <mml:mtd>
                                                                                                            <mml:mi>n</mml:mi>
                                                                                                            <mml:mo>&#x2212;</mml:mo>
                                                                                                            <mml:mn>1</mml:mn>
                                                                                                        </mml:mtd>
                                                                                                    </mml:mtr>
                                                                                                    <mml:mtr>
                                                                                                        <mml:mtd>
                                                                                                            <mml:msub>
                                                                                                                <mml:mi>e</mml:mi>
                                                                                                                <mml:mi>n</mml:mi>
                                                                                                            </mml:msub>
                                                                                                        </mml:mtd>
                                                                                                    </mml:mtr>
                                                                                                </mml:mtable>
                                                                                            </mml:msub>
                                                                                        </mml:mtd>
                                                                                    </mml:mtr>
                                                                                </mml:mtable>
                                                                            </mml:mtd>
                                                                        </mml:mtr>
                                                                    </mml:mtable>
                                                                </mml:mtd>
                                                            </mml:mtr>
                                                        </mml:mtable>
                                                    </mml:mtd>
                                                </mml:mtr>
                                            </mml:mtable>
                                        </mml:mfenced>
                                    </mml:mtd>
                                </mml:mtr>
                            </mml:mtable>
                        </mml:math>
                        <label>(12)</label>
                    </disp-formula>
                </p>
                <p>The first row of the new matrix in 
                    <xref ref-type="disp-formula" rid="e15"> equation (12)</xref> is shown to be equivalent to the first row of the clamped 
                    <italic toggle="yes">b</italic> matrix 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>e</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> is
                    <disp-formula id="e16">
                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>e</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mfrac>
                                <mml:mrow>
                                    <mml:mn>3</mml:mn>
                                    <mml:mi>r</mml:mi>
                                </mml:mrow>
                                <mml:mrow>
                                    <mml:mn>2</mml:mn>
                                    <mml:mi>h</mml:mi>
                                </mml:mrow>
                            </mml:mfrac>
                            <mml:mfenced close=")" open="(">
                                <mml:mrow>
                                    <mml:mfrac>
                                        <mml:mfenced close=")" open="(">
                                            <mml:mrow>
                                                <mml:msub>
                                                    <mml:mi>a</mml:mi>
                                                    <mml:mn>1</mml:mn>
                                                </mml:msub>
                                                <mml:mo>&#x2212;</mml:mo>
                                                <mml:msub>
                                                    <mml:mi>a</mml:mi>
                                                    <mml:mn>0</mml:mn>
                                                </mml:msub>
                                            </mml:mrow>
                                        </mml:mfenced>
                                        <mml:mi>h</mml:mi>
                                    </mml:mfrac>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:msup>
                                        <mml:mi>f</mml:mi>
                                        <mml:mo>&#x2032;</mml:mo>
                                    </mml:msup>
                                    <mml:mspace width="0.25em"/>
                                    <mml:mfenced close=")" open="(">
                                        <mml:msub>
                                            <mml:mi>x</mml:mi>
                                            <mml:mn>0</mml:mn>
                                        </mml:msub>
                                    </mml:mfenced>
                                </mml:mrow>
                            </mml:mfenced>
                            <mml:mo>+</mml:mo>
                            <mml:mfenced close=")" open="(">
                                <mml:mrow>
                                    <mml:mn>1</mml:mn>
                                    <mml:mfrac>
                                        <mml:mi>r</mml:mi>
                                        <mml:mn>2</mml:mn>
                                    </mml:mfrac>
                                </mml:mrow>
                            </mml:mfenced>
                            <mml:msub>
                                <mml:mover accent="true">
                                    <mml:mi>c</mml:mi>
                                    <mml:mo stretchy="true">~</mml:mo>
                                </mml:mover>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                        </mml:math>
                        <label>(13)</label>
                    </disp-formula>where, 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mover accent="true">
                                    <mml:mi>c</mml:mi>
                                    <mml:mo stretchy="true">~</mml:mo>
                                </mml:mover>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> is an estimate of 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> and 
                    <italic toggle="yes">r</italic> = 2+
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mo>&#x221a;</mml:mo>
                            <mml:mn>3</mml:mn>
                            <mml:mo>&#x2248;</mml:mo>
                            <mml:mn>3.732</mml:mn>
                        </mml:math>
                    </inline-formula>.
                    <sup>
                        <xref ref-type="bibr" rid="ref17">17</xref>
                    </sup>
                </p>
                <p>The chosen boundary conditions are such that the first row of the new matrix was the same as that of clamped cubic spline and while that of the last row was that of the natural cubic spline fixing the value of 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mi>n</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> as 0. Using 
                    <xref ref-type="disp-formula" rid="e15">equation (12)</xref>, the relationships between successive spline points can be obtained as:
                    <disp-formula id="e17">
                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>+</mml:mo>
                            <mml:mfrac>
                                <mml:msub>
                                    <mml:mi>x</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>+</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:mi>r</mml:mi>
                            </mml:mfrac>
                            <mml:mo>=</mml:mo>
                            <mml:munder>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo>&#x2264;</mml:mo>
                                    <mml:mi>k</mml:mi>
                                    <mml:mo>&#x2264;</mml:mo>
                                    <mml:mfenced close=")" open="(">
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>&#x2212;</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                    </mml:mfenced>
                                </mml:mrow>
                            </mml:munder>
                            <mml:msup>
                                <mml:mfenced close=")" open="(">
                                    <mml:mrow>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:mfenced>
                                <mml:mi>k</mml:mi>
                            </mml:msup>
                            <mml:mfrac>
                                <mml:msub>
                                    <mml:mi>e</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:mi>k</mml:mi>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:msup>
                                    <mml:mi>r</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>k</mml:mi>
                                        <mml:mo>+</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:msup>
                            </mml:mfrac>
                        </mml:math>
                        <label>(14)</label>
                    </disp-formula>
                </p>
                <p>Let 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mn>0</mml:mn>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>,
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mspace width="0.25em"/>
                            <mml:mtext>for</mml:mtext>
                            <mml:mspace width="0.25em"/>
                            <mml:mn>1</mml:mn>
                            <mml:mo>&lt;</mml:mo>
                            <mml:mi>i</mml:mi>
                            <mml:mspace width="0.55em"/>
                            <mml:mo>&#x2264;</mml:mo>
                            <mml:mspace width="0.55em"/>
                            <mml:mi>n</mml:mi>
                            <mml:mo>&#x2212;</mml:mo>
                            <mml:mn>1</mml:mn>
                            <mml:mspace width="0.25em"/>
                            <mml:mtext>and</mml:mtext>
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mi>n</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>, respectively be:
                    <disp-formula id="e18">
                        <mml:math display="block">
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mn>0</mml:mn>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mn>0</mml:mn>
                        </mml:math>
                    </disp-formula>
                    <disp-formula id="e19">
                        <mml:math display="block">
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mfrac>
                                <mml:msub>
                                    <mml:mi>e</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:msub>
                                            <mml:mo>&#x221d;</mml:mo>
                                            <mml:mrow>
                                                <mml:mi>i</mml:mi>
                                                <mml:mo>&#x2212;</mml:mo>
                                                <mml:mn>1</mml:mn>
                                            </mml:mrow>
                                        </mml:msub>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:mi>r</mml:mi>
                            </mml:mfrac>
                            <mml:mo>=</mml:mo>
                            <mml:munder>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo>&#x2264;</mml:mo>
                                    <mml:mi>k</mml:mi>
                                    <mml:mo>&#x2264;</mml:mo>
                                    <mml:mfenced close=")" open="(">
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>&#x2212;</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                    </mml:mfenced>
                                </mml:mrow>
                            </mml:munder>
                            <mml:msup>
                                <mml:mfenced close=")" open="(">
                                    <mml:mrow>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:mfenced>
                                <mml:mi>k</mml:mi>
                            </mml:msup>
                            <mml:mfrac>
                                <mml:msub>
                                    <mml:mi>e</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:mi>k</mml:mi>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:msup>
                                    <mml:mi>r</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>k</mml:mi>
                                        <mml:mo>+</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:msup>
                            </mml:mfrac>
                        </mml:math>
                        <label>(15)</label>
                    </disp-formula>
                    <disp-formula id="e20">
                        <mml:math display="block">
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mi>n</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:msub>
                                <mml:mi>e</mml:mi>
                                <mml:mi>n</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </disp-formula>
                </p>
                <p>Based on the above, the closed form of solution for 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> can be given as:
                    <disp-formula id="e21">
                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:munder>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo>&#x2264;</mml:mo>
                                    <mml:mi>k</mml:mi>
                                    <mml:mo>&#x2264;</mml:mo>
                                    <mml:mfenced close=")" open="(">
                                        <mml:mrow>
                                            <mml:mi>n</mml:mi>
                                            <mml:mo>&#x2212;</mml:mo>
                                            <mml:mi>i</mml:mi>
                                        </mml:mrow>
                                    </mml:mfenced>
                                </mml:mrow>
                            </mml:munder>
                            <mml:msup>
                                <mml:mfenced close=")" open="(">
                                    <mml:mfrac>
                                        <mml:mrow>
                                            <mml:mo>&#x2212;</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                        <mml:mi>r</mml:mi>
                                    </mml:mfrac>
                                </mml:mfenced>
                                <mml:mrow>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mi>k</mml:mi>
                                </mml:mrow>
                            </mml:msup>
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mrow>
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>+</mml:mo>
                                    <mml:mi>k</mml:mi>
                                </mml:mrow>
                            </mml:msub>
                        </mml:math>
                        <label>(16)</label>
                    </disp-formula>
                </p>
                <p>The above equation 
                    <xref ref-type="disp-formula" rid="e21">(16)</xref> solves 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> no matter exactly what the initial values for 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>e</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>. This leads to a faster evaluation of the cubic spline than solving a tri-diagonal system. The major advantage of the method is when new measurements are added to the system. While conventional tri-diagonal matrix-based algorithm requires a complete redo of the entire computation, 
                    <xref ref-type="disp-formula" rid="e21">equation (16)</xref> leads to a faster update for each 
                    <italic toggle="yes">i</italic> &#x2264; 
                    <italic toggle="yes">n</italic> only with the addition of the term:
                    <disp-formula id="e22">
                        <mml:math display="block">
                            <mml:msup>
                                <mml:mfenced close=")" open="(">
                                    <mml:mfrac>
                                        <mml:mrow>
                                            <mml:mo>&#x2212;</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                        <mml:mi>r</mml:mi>
                                    </mml:mfrac>
                                </mml:mfenced>
                                <mml:mrow>
                                    <mml:mi>n</mml:mi>
                                    <mml:mo>+</mml:mo>
                                    <mml:mn>1</mml:mn>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mi>i</mml:mi>
                                </mml:mrow>
                            </mml:msup>
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mrow>
                                    <mml:mi>n</mml:mi>
                                    <mml:mo>+</mml:mo>
                                    <mml:mi>i</mml:mi>
                                </mml:mrow>
                            </mml:msub>
                        </mml:math>
                        <label>(17)</label>
                    </disp-formula>and 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mrow>
                                    <mml:mi>n</mml:mi>
                                    <mml:mo>+</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mrow>
                                    <mml:mi>n</mml:mi>
                                    <mml:mo>+</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                            </mml:msub>
                            <mml:mo>.</mml:mo>
                        </mml:math>
                    </inline-formula> Similarly, 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> constants can be updated by adding a single term 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>e</mml:mi>
                                <mml:mrow>
                                    <mml:mi>n</mml:mi>
                                    <mml:mo>+</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>
                </p>
                <p>The system of linear equations given in 
                    <xref ref-type="disp-formula" rid="e10">equation (7)</xref>, in general, is solved by the standard solution of linear equations in the matrix form 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mi mathvariant="italic">Ax</mml:mi>
                            <mml:mo>=</mml:mo>
                            <mml:mi>b</mml:mi>
                            <mml:mo>.</mml:mo>
                        </mml:math>
                    </inline-formula> Alternatively, it could be solved for 
                    <italic toggle="yes">n</italic> variables by the recurrence relations given 
                    <xref ref-type="disp-formula" rid="e21">equations (16)</xref> and 
                    <xref ref-type="disp-formula" rid="e22">(17)</xref>. The two methods, the first using the tri-diagonal matrix-based solution for the spline coefficients is termed the Linear Equations Method (LEM) and the second one using recurrence relations is termed the Alpha Method (AM). The algorithmic procedure for LEM and AM are given below.</p>
            </sec>
            <sec id="sec5">
                <title>Algorithmic procedure for regular tridiagonal matrix-based Linear Equation Method (LEM)</title>
                <p>Step 1: Given the initial vector with missing values, separate them into two sets of vectors, the observed values vector 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>R</mml:mi>
                                <mml:mi mathvariant="italic">obs</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> and the missing values vector 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>R</mml:mi>
                                <mml:mtext mathvariant="italic">Miss</mml:mtext>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>, having sizes of 
                    <italic toggle="yes">NO</italic> and 
                    <italic toggle="yes">NM</italic>, respectively, such that 
                    <italic toggle="yes">NO</italic>+
                    <italic toggle="yes">NM</italic>=
                    <italic toggle="yes">N.</italic>
                </p>
                <p>Step 2: 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>R</mml:mi>
                                <mml:mi mathvariant="italic">obs</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> vector at 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> values of the (
                    <italic toggle="yes">NO</italic>-1) splines shall be the
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>a</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> coefficient vector.</p>
                <p>Step 3: Using
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>a</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>, generate the RHS vector 
                    <italic toggle="yes">B</italic> given in 
                    <xref ref-type="disp-formula" rid="e14">equation (11)</xref>.</p>
                <p>Step 4: Generate a square coefficient matrix 
                    <italic toggle="yes">A</italic> as given in 
                    <xref ref-type="disp-formula" rid="e14">equation (11)</xref>
                </p>
                <p>Step 5: Solve for the 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>vector is given in 
                    <xref ref-type="disp-formula" rid="e14">(11)</xref>, using the relation 
                    <italic toggle="yes">Ax</italic> = 
                    <italic toggle="yes">B</italic>
                </p>
                <p>Step 6: Applying
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> in equations 
                    <xref ref-type="disp-formula" rid="e11">(8)</xref> and 
                    <xref ref-type="disp-formula" rid="e12">(9)</xref>, compute the 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> and 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>d</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> coefficient vectors for 
                    <italic toggle="yes">n</italic>-2 points of the 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>R</mml:mi>
                                <mml:mi mathvariant="italic">obs</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>.</p>
                <p>Step 7: Using the values of 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>a</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>, 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>, 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mspace width="0.45em"/>
                            <mml:mtext>and</mml:mtext>
                            <mml:mspace width="0.45em"/>
                            <mml:msub>
                                <mml:mi>d</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>, missing values can be found by the 
                    <xref ref-type="disp-formula" rid="e1">equation (1)</xref> re-written as:
                    <disp-formula id="e23">
                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi mathvariant="italic">SF</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mfenced close=")" open="(">
                                <mml:mi>x</mml:mi>
                            </mml:mfenced>
                            <mml:mo>=</mml:mo>
                            <mml:mfenced close=")" open="(">
                                <mml:mrow>
                                    <mml:msub>
                                        <mml:mi>a</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:msub>
                                        <mml:mi>b</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:msub>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>+</mml:mo>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:msubsup>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                        <mml:mn>2</mml:mn>
                                    </mml:msubsup>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:msub>
                                        <mml:mi>d</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:msubsup>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                        <mml:mn>3</mml:mn>
                                    </mml:msubsup>
                                </mml:mrow>
                            </mml:mfenced>
                            <mml:mo>+</mml:mo>
                            <mml:mfenced close=")" open="(">
                                <mml:mrow>
                                    <mml:msub>
                                        <mml:mi>b</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mn>2</mml:mn>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:msub>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>+</mml:mo>
                                    <mml:mn>3</mml:mn>
                                    <mml:msub>
                                        <mml:mi>d</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:msubsup>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                        <mml:mn>2</mml:mn>
                                    </mml:msubsup>
                                </mml:mrow>
                            </mml:mfenced>
                            <mml:mi>x</mml:mi>
                            <mml:mo>+</mml:mo>
                            <mml:mfenced close=")" open="(">
                                <mml:mrow>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mn>3</mml:mn>
                                    <mml:msub>
                                        <mml:mi>d</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:msub>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                </mml:mrow>
                            </mml:mfenced>
                            <mml:msup>
                                <mml:mi>x</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msup>
                        </mml:math>
                        <label>(18)</label>
                    </disp-formula>
                </p>
                <p>Where 
                    <italic toggle="yes">x</italic> represents the missing positions, between 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> and 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mrow>
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>+</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> of spline 
                    <italic toggle="yes">i.</italic>
                </p>
            </sec>
            <sec id="sec6">
                <title>Algorithmic procedure for recurrent equation-based Alpha Method (AM)</title>
                <p>Step 1: Given the initial vector with missing values, separate them into two sets of vectors, the observed values vector 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>R</mml:mi>
                                <mml:mi mathvariant="italic">obs</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> and the missing values vector 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>R</mml:mi>
                                <mml:mtext mathvariant="italic">Miss</mml:mtext>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>, having sizes of 
                    <italic toggle="yes">NO</italic> and 
                    <italic toggle="yes">NM</italic>, respectively, such that 
                    <italic toggle="yes">NO</italic>+
                    <italic toggle="yes">NM</italic>=
                    <italic toggle="yes">N.</italic>
                </p>
                <p>Step 2: The 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>R</mml:mi>
                                <mml:mi mathvariant="italic">obs</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> vector at 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> values of the (
                    <italic toggle="yes">NO</italic>-1) splines is the
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.45em"/>
                            <mml:msub>
                                <mml:mi>a</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> coefficient vector.</p>
                <p>Step 3: Using
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>a</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>, generate the RHS vector 
                    <italic toggle="yes">B</italic> given in 
                    <xref ref-type="disp-formula" rid="e14">equation (11)</xref>.</p>
                <p>Step 4: Set 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mn>0</mml:mn>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mn>0</mml:mn>
                            <mml:mspace width="0.25em"/>
                            <mml:mtext>and</mml:mtext>
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mi>n</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:msub>
                                <mml:mi>e</mml:mi>
                                <mml:mi>n</mml:mi>
                            </mml:msub>
                            <mml:mo>,</mml:mo>
                        </mml:math>
                    </inline-formula> calculate the alpha vector using the relation.</p>
                <p>
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mfrac>
                                <mml:msub>
                                    <mml:mi>e</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:msub>
                                            <mml:mo>&#x221d;</mml:mo>
                                            <mml:mrow>
                                                <mml:mi>i</mml:mi>
                                                <mml:mo>&#x2212;</mml:mo>
                                                <mml:mn>1</mml:mn>
                                            </mml:mrow>
                                        </mml:msub>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:mi>r</mml:mi>
                            </mml:mfrac>
                            <mml:mo>=</mml:mo>
                            <mml:msub>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo>&#x2264;</mml:mo>
                                    <mml:mi>k</mml:mi>
                                    <mml:mo>&#x2264;</mml:mo>
                                    <mml:mfenced close=")" open="(">
                                        <mml:mrow>
                                            <mml:mi>i</mml:mi>
                                            <mml:mo>&#x2212;</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                    </mml:mfenced>
                                </mml:mrow>
                            </mml:msub>
                            <mml:msup>
                                <mml:mfenced close=")" open="(">
                                    <mml:mrow>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:mfenced>
                                <mml:mi>k</mml:mi>
                            </mml:msup>
                            <mml:mfrac>
                                <mml:msub>
                                    <mml:mi>e</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>i</mml:mi>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:mi>k</mml:mi>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:msup>
                                    <mml:mi>r</mml:mi>
                                    <mml:mrow>
                                        <mml:mi>k</mml:mi>
                                        <mml:mo>+</mml:mo>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:msup>
                            </mml:mfrac>
                        </mml:math>
                    </inline-formula> for 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mi>i</mml:mi>
                        </mml:math>
                    </inline-formula> values ranging from 1 to 
                    <italic toggle="yes">NO</italic>-1</p>
                <p>Step 5: Set 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>n</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mi>n</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> and solve for 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> values using the relation.
                    <disp-formula id="e24">
                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:munder>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo>&#x2264;</mml:mo>
                                    <mml:mi>k</mml:mi>
                                    <mml:mo>&#x2264;</mml:mo>
                                    <mml:mfenced close=")" open="(">
                                        <mml:mrow>
                                            <mml:mi>n</mml:mi>
                                            <mml:mo>&#x2212;</mml:mo>
                                            <mml:mi>i</mml:mi>
                                        </mml:mrow>
                                    </mml:mfenced>
                                </mml:mrow>
                            </mml:munder>
                            <mml:msup>
                                <mml:mfenced close=")" open="(">
                                    <mml:mfrac>
                                        <mml:mrow>
                                            <mml:mo>&#x2212;</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                        <mml:mi>r</mml:mi>
                                    </mml:mfrac>
                                </mml:mfenced>
                                <mml:mi>k</mml:mi>
                            </mml:msup>
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mrow>
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>+</mml:mo>
                                    <mml:mi>k</mml:mi>
                                </mml:mrow>
                            </mml:msub>
                        </mml:math>
                    </disp-formula>
                </p>
                <p>Step 6: Applying
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> in 
                    <xref ref-type="disp-formula" rid="e11">equations (8)</xref> and 
                    <xref ref-type="disp-formula" rid="e12">(9)</xref>, compute the 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> and 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>d</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> coefficient vectors for 
                    <italic toggle="yes">n</italic>-2 points of the 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>R</mml:mi>
                                <mml:mi mathvariant="italic">obs</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>.</p>
                <p>Step 7: Using the values of
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>a</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>,
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>, 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mspace width="0.45em"/>
                            <mml:mtext>and</mml:mtext>
                            <mml:mspace width="0.45em"/>
                            <mml:msub>
                                <mml:mi>d</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula>, missing values can also be found using 
                    <xref ref-type="disp-formula" rid="e23">equation (18)</xref>, re-written here again for convenience:
                    <disp-formula id="e25">
                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi mathvariant="italic">SF</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mfenced close=")" open="(">
                                <mml:mi>x</mml:mi>
                            </mml:mfenced>
                            <mml:mo>=</mml:mo>
                            <mml:mfenced close=")" open="(">
                                <mml:mrow>
                                    <mml:msub>
                                        <mml:mi>a</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:msub>
                                        <mml:mi>b</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:msub>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>+</mml:mo>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:msubsup>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                        <mml:mn>2</mml:mn>
                                    </mml:msubsup>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:msub>
                                        <mml:mi>d</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:msubsup>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                        <mml:mn>3</mml:mn>
                                    </mml:msubsup>
                                </mml:mrow>
                            </mml:mfenced>
                            <mml:mo>+</mml:mo>
                            <mml:mfenced close=")" open="(">
                                <mml:mrow>
                                    <mml:msub>
                                        <mml:mi>b</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mn>2</mml:mn>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:msub>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>+</mml:mo>
                                    <mml:mn>3</mml:mn>
                                    <mml:msub>
                                        <mml:mi>d</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:msubsup>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                        <mml:mn>2</mml:mn>
                                    </mml:msubsup>
                                </mml:mrow>
                            </mml:mfenced>
                            <mml:mi>x</mml:mi>
                            <mml:mo>+</mml:mo>
                            <mml:mfenced close=")" open="(">
                                <mml:mrow>
                                    <mml:msub>
                                        <mml:mi>c</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mn>3</mml:mn>
                                    <mml:msub>
                                        <mml:mi>d</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                    <mml:msub>
                                        <mml:mi>x</mml:mi>
                                        <mml:mi>i</mml:mi>
                                    </mml:msub>
                                </mml:mrow>
                            </mml:mfenced>
                            <mml:msup>
                                <mml:mi>x</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msup>
                        </mml:math>
                        <label>(18)</label>
                    </disp-formula>
                </p>
                <p>Where 
                    <italic toggle="yes">x</italic> represents the missing positions, between 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> and 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>x</mml:mi>
                                <mml:mrow>
                                    <mml:mi>i</mml:mi>
                                    <mml:mo>+</mml:mo>
                                    <mml:mn>1</mml:mn>
                                </mml:mrow>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> of spline 
                    <italic toggle="yes">i</italic>.</p>
                <p>The modifications are as follows: In AM, rather than computing 
                    <italic toggle="yes">E</italic>, alpha vectors and
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> coefficients for the full range of 
                    <italic toggle="yes">NO</italic>-1 data points only the RHS, 
                    <italic toggle="yes">E</italic> vector, was calculated for the full range of 
                    <italic toggle="yes">NO</italic>-1 data points, while alpha vector and 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> were calculated only for 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mi>i</mml:mi>
                            <mml:mspace width="0.25em"/>
                            <mml:mtext>and</mml:mtext>
                            <mml:mspace width="0.25em"/>
                            <mml:mi>i</mml:mi>
                            <mml:mo>+</mml:mo>
                            <mml:mn>1</mml:mn>
                        </mml:math>
                    </inline-formula> data elements, where
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:mi>i</mml:mi>
                        </mml:math>
                    </inline-formula> is the missing data element. For the imputation of
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mspace width="0.25em"/>
                            <mml:mi>i</mml:mi>
                        </mml:math>
                    </inline-formula> the element, only the 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>E</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> vector for all 
                    <italic toggle="yes">NO</italic>-1 data points, 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mo>&#x221d;</mml:mo>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> vector and 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>c</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> vectors for 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:mi>i</mml:mi>
                            <mml:mspace width="0.25em"/>
                            <mml:mtext>and</mml:mtext>
                            <mml:mspace width="0.25em"/>
                            <mml:mi>i</mml:mi>
                            <mml:mo>+</mml:mo>
                            <mml:mn>1</mml:mn>
                        </mml:math>
                    </inline-formula> and 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>b</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> and 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>d</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
                    </inline-formula> coefficients were essential for the calculation 
                    <inline-formula>
                        <mml:math display="inline">
                            <mml:msup>
                                <mml:mi>i</mml:mi>
                                <mml:mi mathvariant="italic">th</mml:mi>
                            </mml:msup>
                        </mml:math>
                    </inline-formula> missing element and its imputation.</p>
                <p>In addition, using the AM, an effective procedure was demonstrated for the computation of the following cases: (i) missing first and the last element of the data vector, (ii) missing multiple data points at the beginning and the end, and (iii) missing multiple elements anywhere in the data vector. That is in 
                    <xref ref-type="disp-formula" rid="e23">equation (18)</xref>, when the current values of 
                    <italic toggle="yes">A</italic> [
                    <italic toggle="yes">i</italic>] are replaced either with 
                    <italic toggle="yes">A</italic> [
                    <italic toggle="yes">N</italic>-1] or 
                    <italic toggle="yes">A</italic> [
                    <italic toggle="yes">i</italic>-1] based on the position of missing edge values or continuous values the Time of Calculation (ToC) and Root Mean Squared Error (RMSE) values have improved significantly.</p>
                <p>The formula for RMSE is:
                    <disp-formula id="e26">
                        <mml:math display="block">
                            <mml:mtext>RMSE</mml:mtext>
                            <mml:mo>=</mml:mo>
                            <mml:msqrt>
                                <mml:mfrac>
                                    <mml:mrow>
                                        <mml:msubsup>
                                            <mml:mo>&#x2211;</mml:mo>
                                            <mml:mrow>
                                                <mml:mi>i</mml:mi>
                                                <mml:mo>=</mml:mo>
                                                <mml:mn>1</mml:mn>
                                            </mml:mrow>
                                            <mml:mi>N</mml:mi>
                                        </mml:msubsup>
                                        <mml:msup>
                                            <mml:mfenced close=")" open="(">
                                                <mml:mtext>Predicted</mml:mtext>
                                                <mml:mo>&#x2212;</mml:mo>
                                                <mml:mtext>Actual</mml:mtext>
                                            </mml:mfenced>
                                            <mml:mn>2</mml:mn>
                                        </mml:msup>
                                    </mml:mrow>
                                    <mml:mi>N</mml:mi>
                                </mml:mfrac>
                            </mml:msqrt>
                        </mml:math>
                    </disp-formula>
                </p>
                <p>We have used RMSE and ToC as evaluation metrics to measure the effectiveness and efficiency of the proposed method because most literature used the same.</p>
            </sec>
        </sec>
        <sec id="sec7" sec-type="results|discussion">
            <title>Results and discussion</title>
            <p>A comparison between LEM and AM is shown here for the imputation of one-min real PMU system data having a size of 1490 data points for each of the 25 heterogeneous variables obtained from five different PMUs. Since our data does not have any missing values, we artificially introduced the missing values, of 10%, 20%, 30% in random.</p>
            <p>A sample of one-minute PMU data for five PMUs&#x2019; was used in the study.
                <sup>
                    <xref ref-type="bibr" rid="ref18">18</xref>
                </sup> One minute of PMU data with 10%, 20%, and 30% missing data for five PMUs were evaluated.</p>
            <p>When AM was employed, the average RMSE values were 0.83, 1.47, and 2.16 for 10%, 20%, and 30% of missing PMU data, respectively. This can be seen in 
                <xref ref-type="fig" rid="f1">Figure 1</xref>. Moreover, for the same performance, AM showed significant improvements in its ToC as shown in 
                <xref ref-type="fig" rid="f2">Figure 2</xref>. The average ToCs for AM were 1.35, 1.41, and 1.23s when recovering 10%, 20%, and 30% of its missing data.</p>
            <p>By comparison, LEM had ToC values of 18.83, 16.02, 16.58s for 10%, 20%, and 30% of its missing data, respectively. The proposed method reduced the ToC by a factor of approximately 10 times. LEM had higher ToC values because it needed to solve the entire set of linear equations every time it needed to find the 
                <italic toggle="yes">b
                    <sub>i</sub>
                </italic>, 
                <italic toggle="yes">c
                    <sub>i</sub>
                </italic>, and 
                <italic toggle="yes">d
                    <sub>i</sub>
                </italic> coefficients. On the other hand, AM only needed to calculate these coefficients at two successive points of 
                <italic toggle="yes">i</italic> and 
                <italic toggle="yes">i</italic>+1.</p>
            <fig fig-type="figure" id="f1" orientation="portrait" position="float">
                <label>Figure 1. </label>
                <caption>
                    <title>Comparison of Root Mean Squared Error (RMSE) values.</title>
                </caption>
                <graphic id="gr1" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/160163/c3d2c4f8-3c67-4beb-ac32-4e9c277a171a_figure1.gif"/>
            </fig>
            <fig fig-type="figure" id="f2" orientation="portrait" position="float">
                <label>Figure 2. </label>
                <caption>
                    <title>Comparison of Time of Calculation (ToC).</title>
                </caption>
                <graphic id="gr2" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/160163/c3d2c4f8-3c67-4beb-ac32-4e9c277a171a_figure2.gif"/>
            </fig>
        </sec>
        <sec id="sec8" sec-type="conclusions">
            <title>Conclusions</title>
            <p>In this study, AM was compared with LEM. However, because of the proliferation of the data, there is a need for customization of this technique to handle a high volume of data to reduce computational time and power. In the proposed method, the approaches demonstrated a reduced computational effort and time of calculation for solving the coefficient vectors. This study has made the following contributions: (i) the recurrent relation-based AM has been effectively employed in the imputation of PMU data and its advantages are demonstrated as an effective and efficient alternative to the conventional technique, and (ii) an effective procedure for handling missing values in special cases (edge, continuous values) is shown, which has not been addressed clearly in other methods. The proposed method has proven effective, and it only requires 10% effort in comparison to the LEM. Future research will focus on the application of the modified recurrent method in the analysis of real-time or stream PMU data.</p>
        </sec>
        <sec id="sec9">
            <title>Data availability</title>
            <sec id="sec10">
                <title>Underlying data</title>
                <p>Harvard Dataverse: Underlying data for &#x2018;Modified recurrent equation-based cubic spline interpolation for missing data recovery in phasor measurement unit (PMU)&#x2019;, &#x2018;PMU data&#x2019;, 
                    <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.7910/DVN/Y2LLJJ">https://doi.org/10.7910/DVN/Y2LLJJ</ext-link>.
                    <sup>
                        <xref ref-type="bibr" rid="ref18">18</xref>
                    </sup>
                </p>
                <p>This project contains the following underlying data:
                    <list list-type="bullet">
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu1-1m-10.tab &#x2013; One minute of data from PMU1 with 10% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu1-1m-20.tab &#x2013; One minute of data from PMU1 with 20% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu1-1m-30.tab &#x2013; One minute of data from PMU1 with 30% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu2-1m-10.tab &#x2013; One minute of data from PMU2 with 10% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu2-1m-20.tab &#x2013; One minute of data from PMU2 with 20% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu2-1m-30.tab &#x2013; One minute of data from PMU2 with 30% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu3-1m-10.tab &#x2013; One minute of data from PMU3 with 10% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu3-1m-20.tab &#x2013; One minute of data from PMU3 with 20% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu3-1m-30.tab &#x2013; One minute of data from PMU3 with 30% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu4-1m-10.tab &#x2013; One minute of data from PMU4 with 10% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu4-1m-20.tab &#x2013; One minute of data from PMU4 with 20% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu4-1m-30.tab &#x2013; One minute of data from PMU4 with 30% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu5-1m-10.tab &#x2013; One minute of data from PMU5 with 10% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu5-1m-20.tab &#x2013; One minute of data from PMU5 with 20% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>Data file: pmu5-1m-30.tab &#x2013; One minute of data from PMU5 with 30% missing data</p>
                        </list-item>
                        <list-item>
                            <label>-</label>
                            <p>README.txt</p>
                        </list-item>
                    </list>
                </p>
                <p>Data are available under the terms of the 
                    <ext-link ext-link-type="uri" xlink:href="http://creativecommons.org/publicdomain/zero/1.0/">Creative Commons Zero &#x201c;No rights reserved&#x201d; data waiver</ext-link> (CC0 1.0 Public domain dedication).</p>
                <p>The dataset presented in the work was obtained as real-world data from a regional Electricity authority in India. However, additional information such as the data source, the acquisition procedure, and the significance of the systemic variables are not detailed at this stage of algorithm development as the goal of this preliminary work is to demonstrate the efficacy of the proposed missing data recovery algorithm.</p>
            </sec>
        </sec>
    </body>
    <back>
        <ref-list>
            <title>References</title>
            <ref id="ref1">
                <label>1</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Phadke</surname>
                            <given-names>AG</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Bi</surname>
                            <given-names>T</given-names>
                        </name>
</person-group>:
                    <article-title>Phasor measurement units, WAMS, and their applications in protection and control of power systems.</article-title>
                    <source>

                        <italic toggle="yes">J. Mod. Power Syst. Clean Energy.</italic>
</source>
                    <year>2018</year>;<volume>6</volume>(<issue>4</issue>):<fpage>619</fpage>&#x2013;<lpage>629</lpage>.
                    <pub-id pub-id-type="doi">10.1007/s40565-018-0423-3</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref2">
                <label>2</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Usman</surname>
                            <given-names>MU</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Faruque</surname>
                            <given-names>MO</given-names>
                        </name>
</person-group>:
                    <article-title>Applications of synchrophasor technologies in power systems.</article-title>
                    <source>

                        <italic toggle="yes">J. Mod. Power Syst. Clean Energy.</italic>
</source>
                    <year>2019</year>;<volume>7</volume>(<issue>2</issue>):<fpage>211</fpage>&#x2013;<lpage>226</lpage>.
                    <pub-id pub-id-type="doi">10.1007/s40565-018-0455-8</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref3">
                <label>3</label>
                <mixed-citation publication-type="book">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Amidan</surname>
                            <given-names>B</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <source>

                        <italic toggle="yes">Data Mining Techniques and Tools for Synchrophasor Data.</italic>
</source>
                    <publisher-name>North American SynchroPhasor Initiative (NASPI)</publisher-name>;<year>2019, January</year>;<fpage>45</fpage>.</mixed-citation>
            </ref>
            <ref id="ref4">
                <label>4</label>
                <mixed-citation publication-type="other">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Miller</surname>
                            <given-names>LE</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>PMU Data Quality: A Framework for the Attributes of PMU Data Quality and a Methodology for Examining Data Quality Impacts to Synchrophasor Applications.</article-title>
                    <year>2017</year>; no.<issue>March</issue>: pp.<fpage>1</fpage>&#x2013;<lpage>77</lpage>.</mixed-citation>
            </ref>
            <ref id="ref5">
                <label>5</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Huang</surname>
                            <given-names>C</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Data quality issues for synchrophasor applications Part I: a review.</article-title>
                    <source>

                        <italic toggle="yes">J. Mod. Power Syst. Clean Energy.</italic>
</source>
                    <year>2016</year>;<volume>4</volume>(<issue>3</issue>):<fpage>342</fpage>&#x2013;<lpage>352</lpage>.
                    <pub-id pub-id-type="doi">10.1007/s40565-016-0217-4</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref6">
                <label>6</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Huang</surname>
                            <given-names>C</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Data quality issues for synchrophasor applications Part II: problem formulation and potential solutions.</article-title>
                    <source>

                        <italic toggle="yes">J. Mod. Power Syst. Clean Energy.</italic>
</source>
                    <year>2016</year>;<volume>4</volume>(<issue>3</issue>):<fpage>353</fpage>&#x2013;<lpage>361</lpage>.
                    <pub-id pub-id-type="doi">10.1007/s40565-016-0213-8</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref7">
                <label>7</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Fang</surname>
                            <given-names>X</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>PMU Data Quality: A Framework for the Attributes of PMU Data Quality and a Methodology for Examining Data Quality Impacts to Synchrophasor Applications.</article-title>
                    <source>

                        <italic toggle="yes">IEEE Trans. Power Syst.</italic>
</source>
                    <year>2017</year>;<volume>7</volume>(<issue>1</issue>):<fpage>1</fpage>&#x2013;<lpage>6</lpage>.</mixed-citation>
            </ref>
            <ref id="ref8">
                <label>8</label>
                <mixed-citation publication-type="other">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Genes</surname>
                            <given-names>C</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Esnaola</surname>
                            <given-names>I</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Perlaza</surname>
                            <given-names>SM</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Recovering missing Data via matrix completion in electricity distribution systems. IEEE Workshop on Signal Processing Advances in Wireless Communications, SPAWC, 2016-Augus (July 2016).</article-title>
                    <year>2016</year>.</mixed-citation>
            </ref>
            <ref id="ref9">
                <label>9</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Gao</surname>
                            <given-names>P</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Wang</surname>
                            <given-names>M</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Ghiocel</surname>
                            <given-names>SG</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Missing Data Recovery by Exploiting Low-Dimensionality in Power System Synchrophasor Measurements.</article-title>
                    <source>

                        <italic toggle="yes">IEEE Trans. Power Syst.</italic>
</source>
                    <year>2016</year>;<volume>31</volume>(<issue>2</issue>):<fpage>1006</fpage>&#x2013;<lpage>1013</lpage>.
                    <pub-id pub-id-type="doi">10.1109/TPWRS.2015.2413935</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref10">
                <label>10</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Cai</surname>
                            <given-names>JF</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Cand&#x00e8;s</surname>
                            <given-names>EJ</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Shen</surname>
                            <given-names>Z</given-names>
                        </name>
</person-group>:
                    <article-title>A singular value thresholding algorithm for matrix completion.</article-title>
                    <source>

                        <italic toggle="yes">SIAM J. Optim.</italic>
</source>
                    <year>2010</year>;<volume>20</volume>(<issue>4</issue>):<fpage>1956</fpage>&#x2013;<lpage>1982</lpage>.
                    <pub-id pub-id-type="doi">10.1137/080738970</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref11">
                <label>11</label>
                <mixed-citation publication-type="other">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Genes</surname>
                            <given-names>C</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Esnaola</surname>
                            <given-names>II</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Perlaza</surname>
                            <given-names>SM</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Recovering missing data via matrix completion in electricity distribution systems. IEEE Workshop on Signal Processing Advances in Wireless Communications, SPAWC, 2016-August, 1&#x2013;6.</article-title>
                    <year>2016</year>.</mixed-citation>
            </ref>
            <ref id="ref12">
                <label>12</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Hastie</surname>
                            <given-names>T</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Mazu Missing Dataer</surname>
                            <given-names>R</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Lee</surname>
                            <given-names>JD</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>Matrix completion and low-rank SVD via fast alternating least squares.</article-title>
                    <source>

                        <italic toggle="yes">J. Mach. Learn. Res.</italic>
</source>
                    <year>2015</year>;<volume>16</volume>:<fpage>3367</fpage>&#x2013;<lpage>3402</lpage>.
                    <pub-id pub-id-type="pmid">31130828</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref13">
                <label>13</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Gr&#x00e4;ler</surname>
                            <given-names>B</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Pebesma</surname>
                            <given-names>E</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Heuvelink</surname>
                            <given-names>G</given-names>
                        </name>
</person-group>:
                    <article-title>Spatio-temporal interpolation using gstat.</article-title>
                    <source>

                        <italic toggle="yes">R Journal.</italic>
</source>
                    <year>2016</year>;<volume>8</volume>(<issue>1</issue>):<fpage>204</fpage>&#x2013;<lpage>218</lpage>.
                    <pub-id pub-id-type="doi">10.32614/RJ-2016-014</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref14">
                <label>14</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Cheng</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Lu</surname>
                            <given-names>F</given-names>
                        </name>
</person-group>:
                    <article-title>A two-step method for missing spatio-temporal Data reconstruction.</article-title>
                    <source>

                        <italic toggle="yes">ISPRS Int. J. Geo Inf.</italic>
</source>
                    <year>2017</year>;<volume>6</volume>(<issue>7</issue>).
                    <pub-id pub-id-type="doi">10.3390/ijgi6070187</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref15">
                <label>15</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Deng</surname>
                            <given-names>M</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Fan</surname>
                            <given-names>Z</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Liu</surname>
                            <given-names>Q</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>A Hybrid Method for Interpolating Missing Data in Heterogeneous Spatio-Temporal Datasets.</article-title>
                    <source>

                        <italic toggle="yes">ISPRS Int. J. Geo Inf.</italic>
</source>
                    <year>2016</year>;<volume>5</volume>(<issue>2</issue>).
                    <pub-id pub-id-type="doi">10.3390/ijgi5020013</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref16">
                <label>16</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Yang</surname>
                            <given-names>Z</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Liu</surname>
                            <given-names>H</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Bi</surname>
                            <given-names>T</given-names>
                        </name>

                        <etal/>
</person-group>:
                    <article-title>A PMU data recovering method based on preferred selection strategy.</article-title>
                    <source>

                        <italic toggle="yes">Glob. Energy Interconnect.</italic>
</source>
                    <year>2018</year>;<volume>1</volume>(<issue>1</issue>):<fpage>63</fpage>&#x2013;<lpage>69</lpage>.</mixed-citation>
            </ref>
            <ref id="ref17">
                <label>17</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Revesz</surname>
                            <given-names>PZ</given-names>
                        </name>
</person-group>:
                    <article-title>A recurrence equation-based solution for the cubic spline interpolation problem.</article-title>
                    <source>

                        <italic toggle="yes">International Journal of Mathematical Models and Methods in Applied Sciences.</italic>
</source>
                    <year>2015</year>;<volume>9</volume>(<issue>16</issue>):<fpage>446</fpage>&#x2013;<lpage>452</lpage>.</mixed-citation>
            </ref>
            <ref id="ref18">
                <label>18</label>
                <mixed-citation publication-type="other">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Thangaraj</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Goh</surname>
                            <given-names>VT</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Yap</surname>
                            <given-names>TTV</given-names>
                        </name>
</person-group>:
                    <article-title>PMU Data.</article-title>
                    <year>2021</year>.
Harvard Dataverse.
                    <pub-id pub-id-type="doi">10.7910/DVN/Y2LLJJ</pub-id>
                </mixed-citation>
            </ref>
        </ref-list>
    </back>
    <sub-article article-type="reviewer-report" id="report231067">
        <front-stub>
            <article-id pub-id-type="doi">10.5256/f1000research.160163.r231067</article-id>
            <title-group>
                <article-title>Reviewer response for version 3</article-title>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author">
                    <name>
                        <surname>Yap</surname>
                        <given-names>Wun She</given-names>
                    </name>
                    <xref ref-type="aff" rid="r231067a1">1</xref>
                    <role>Referee</role>
                </contrib>
                <aff id="r231067a1">
                    <label>1</label>Lee Kong Chian Faculty of Engineering and Science, Universiti Tunku Abdul Rahman, Kajang, Malaysia</aff>
            </contrib-group>
            <author-notes>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>22</day>
                <month>12</month>
                <year>2023</year>
            </pub-date>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2023 Yap WS</copyright-statement>
                <copyright-year>2023</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access peer review report distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <related-article ext-link-type="doi" id="relatedArticleReport231067" related-article-type="peer-reviewed-article" xlink:href="10.12688/f1000research.73182.3"/>
            <custom-meta-group>
                <custom-meta>
                    <meta-name>recommendation</meta-name>
                    <meta-value>approve</meta-value>
                </custom-meta>
            </custom-meta-group>
        </front-stub>
        <body>
            <p>The authors have addressed the concerns raised in my peer review report appropriately.</p>
            <p>Is the work clearly and accurately presented and does it cite the current literature?</p>
            <p>Partly</p>
            <p>If applicable, is the statistical analysis and its interpretation appropriate?</p>
            <p>Partly</p>
            <p>Are all the source data underlying the results available to ensure full reproducibility?</p>
            <p>Yes</p>
            <p>Is the study design appropriate and is the work technically sound?</p>
            <p>Yes</p>
            <p>Are the conclusions drawn adequately supported by the results?</p>
            <p>Partly</p>
            <p>Are sufficient details of methods and analysis provided to allow replication by others?</p>
            <p>Partly</p>
            <p>Reviewer Expertise:</p>
            <p>Artificial intelligence, cryptography, information security</p>
            <p>I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard.</p>
        </body>
    </sub-article>
    <sub-article article-type="reviewer-report" id="report220241">
        <front-stub>
            <article-id pub-id-type="doi">10.5256/f1000research.142368.r220241</article-id>
            <title-group>
                <article-title>Reviewer response for version 2</article-title>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author">
                    <name>
                        <surname>Yap</surname>
                        <given-names>Wun She</given-names>
                    </name>
                    <xref ref-type="aff" rid="r220241a1">1</xref>
                    <role>Referee</role>
                </contrib>
                <aff id="r220241a1">
                    <label>1</label>Lee Kong Chian Faculty of Engineering and Science, Universiti Tunku Abdul Rahman, Kajang, Malaysia</aff>
            </contrib-group>
            <author-notes>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>27</day>
                <month>11</month>
                <year>2023</year>
            </pub-date>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2023 Yap WS</copyright-statement>
                <copyright-year>2023</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access peer review report distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <related-article ext-link-type="doi" id="relatedArticleReport220241" related-article-type="peer-reviewed-article" xlink:href="10.12688/f1000research.73182.2"/>
            <custom-meta-group>
                <custom-meta>
                    <meta-name>recommendation</meta-name>
                    <meta-value>approve-with-reservations</meta-value>
                </custom-meta>
            </custom-meta-group>
        </front-stub>
        <body>
            <p>The paper proposed a method to perform missing data recovery on PMU data. It uses a modified approach based on an established technique i.e. recurrent equation-based cubic spline interpolation. Although the paper can be difficult to follow in some sections especially the Methodology, overall, the method and its results do show some promise and is worth further investigation.</p>
            <p> </p>
            <p> This paper can be considered for publication if the suggestions below are addressed.</p>
            <p> </p>
            <p> Literature can be improved with a discussion about of some current missing data recovery techniques, especially the technique that the proposed method is based on, that is the recurrent equation-based method and tri-diagonal matrix-based conventional cubic spline interpolation. Those techniques are not discussed in the literature review despite their apparent importance to this paper.</p>
            <p> </p>
            <p> Although not required in this paper due to the need for conciseness and perhaps page limits, it is recommended that the authors use some visual aids/figures/plots to help explain the notion of cubic spline in future manuscripts.</p>
            <p> </p>
            <p> In Page 5, the section heading called "Recurrence equation-based solution" should be "Recurrent equation-based solution" for consistency with the rest of the text. Similarly, please ensure consistency throughout the paper. There are inconsistent terms such as LEM and LE (in Introduction), AM and AM Method (using method is redundant), etc.</p>
            <p> </p>
            <p> Please check the numbering for the equations and the references/citations to them. For example, in Page 5, the authors state "The first row of the new matrix in (6) is shown..." would imply that Equation 6 is a matrix but Equation 6 is just a normal formula.</p>
            <p> </p>
            <p> The dataset is lacking context but understandable due to the confidentiality of the data. It would help if more general characteristics of the dataset are given or an anonymised sampling is shown in a table. That would add depth to the discussion.</p>
            <p> </p>
            <p> The discussion provides valuable insights into the comparison of the two methods, but additional details and context in certain areas could enhance the clarity and completeness of the findings. For example, the use of RMSE as an evaluation metric is common in imputation tasks, but it would be helpful to know if other metrics were considered or if there are specific reasons for choosing RMSE. Similarly, why was ToC used as a metric?</p>
            <p> </p>
            <p> The comparison results that are provided in terms of RMSE and ToC seem to indicate that while Alpha Method has higher RMSE values compared to LE method, AM performs better in terms of time. Providing some insights in the discussion section into why this improvement occurred (e.g., the nature of the algorithm, computational complexity) would enhance the discussion.</p>
            <p> </p>
            <p> Can the proposed method be used for other datasets with missing data or is it optimised specially for PMU data? A brief explanation to clarify the impact of PMU data would further improve the discussion.</p>
            <p>Is the work clearly and accurately presented and does it cite the current literature?</p>
            <p>Partly</p>
            <p>If applicable, is the statistical analysis and its interpretation appropriate?</p>
            <p>Partly</p>
            <p>Are all the source data underlying the results available to ensure full reproducibility?</p>
            <p>Yes</p>
            <p>Is the study design appropriate and is the work technically sound?</p>
            <p>Yes</p>
            <p>Are the conclusions drawn adequately supported by the results?</p>
            <p>Partly</p>
            <p>Are sufficient details of methods and analysis provided to allow replication by others?</p>
            <p>Partly</p>
            <p>Reviewer Expertise:</p>
            <p>Artificial intelligence, cryptography, information security</p>
            <p>I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard, however I have significant reservations, as outlined above.</p>
        </body>
        <sub-article article-type="response" id="comment10767-220241">
            <front-stub>
                <contrib-group>
                    <contrib contrib-type="author">
                        <name>
                            <surname>Goh</surname>
                            <given-names>Vik Tor</given-names>
                        </name>
                        <aff>Multimedia University, Malaysia</aff>
                    </contrib>
                </contrib-group>
                <author-notes>
                    <fn fn-type="conflict">
                        <p>
                            <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                    </fn>
                </author-notes>
                <pub-date pub-type="epub">
                    <day>13</day>
                    <month>12</month>
                    <year>2023</year>
                </pub-date>
            </front-stub>
            <body>
                <p>The literature review has been amended to improve its readability and conciseness.</p>
                <p> </p>
                <p> We will include such visual aids in our future publications.&#x00a0;Thank you for the suggestion.</p>
                <p> </p>
                <p> The necessary changes have been made to ensure consistency in the nomenclatures and redundancies have been eliminated.</p>
                <p> </p>
                <p> The numbering for the equations has been amended accordingly.</p>
                <p> </p>
                <p> As pointed out, it will not be possible to share the full dataset due to confidentiality reasons. We briefly explained some characteristic in the Results and Discussion section and added some additional statements of the dataset in the Data Availability section. Furthermore, the dataset can be readily downloaded from the public repository and examined.</p>
                <p> </p>
                <p> From our literature review, we determined that most literature use RMSE as an evaluation metric. As such, we adopt the same metric to ensure that our work can be fairly compared with other methods. We have added further clarification about this in the manuscript.</p>
                <p> </p>
                <p> LEM had higher ToC values because it needed to solve the entire set of linear equations every time it needed to find the 
                    <italic>b
                        <sub>i</sub>
                    </italic>, 
                    <italic>c
                        <sub>i</sub>
                    </italic>, and 
                    <italic>d
                        <sub>i</sub>
                    </italic> coefficients. On the other hand, AM only needed to calculate these coefficients at two successive points of 
                    <italic>i</italic> and 
                    <italic>i</italic>+1. A brief discussion has been added in the Results and Discussion section explaining this.</p>
                <p> </p>
                <p> &#x200b;&#x200b;&#x200b;&#x200b;&#x200b;&#x200b;&#x200b;The proposed data recovery method is dataset-neutral and can be used in any big data system. However, in our work, we utilized PMU data as a case study because PMU data was &#x201c;big&#x201d; and most importantly, it was readily available to us. For our future work, we will apply the proposed method on other datasets to examine its viability.</p>
            </body>
        </sub-article>
    </sub-article>
    <sub-article article-type="reviewer-report" id="report158516">
        <front-stub>
            <article-id pub-id-type="doi">10.5256/f1000research.142368.r158516</article-id>
            <title-group>
                <article-title>Reviewer response for version 2</article-title>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author">
                    <name>
                        <surname>Foo</surname>
                        <given-names>Mathias</given-names>
                    </name>
                    <xref ref-type="aff" rid="r158516a1">1</xref>
                    <role>Referee</role>
                    <uri content-type="orcid">https://orcid.org/0000-0003-1400-2659</uri>
                </contrib>
                <aff id="r158516a1">
                    <label>1</label>School of Engineering, University of Warwick, Coventry, UK</aff>
            </contrib-group>
            <author-notes>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>3</day>
                <month>1</month>
                <year>2023</year>
            </pub-date>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2023 Foo M</copyright-statement>
                <copyright-year>2023</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access peer review report distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <related-article ext-link-type="doi" id="relatedArticleReport158516" related-article-type="peer-reviewed-article" xlink:href="10.12688/f1000research.73182.2"/>
            <custom-meta-group>
                <custom-meta>
                    <meta-name>recommendation</meta-name>
                    <meta-value>approve</meta-value>
                </custom-meta>
            </custom-meta-group>
        </front-stub>
        <body>
            <p>The authors have addressed all my comments and the new manuscript reads better than before.</p>
            <p>Is the work clearly and accurately presented and does it cite the current literature?</p>
            <p>Partly</p>
            <p>If applicable, is the statistical analysis and its interpretation appropriate?</p>
            <p>Partly</p>
            <p>Are all the source data underlying the results available to ensure full reproducibility?</p>
            <p>Partly</p>
            <p>Is the study design appropriate and is the work technically sound?</p>
            <p>Partly</p>
            <p>Are the conclusions drawn adequately supported by the results?</p>
            <p>Partly</p>
            <p>Are sufficient details of methods and analysis provided to allow replication by others?</p>
            <p>No</p>
            <p>Reviewer Expertise:</p>
            <p>Dynamical system modelling</p>
            <p>I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard.</p>
        </body>
    </sub-article>
    <sub-article article-type="reviewer-report" id="report139819">
        <front-stub>
            <article-id pub-id-type="doi">10.5256/f1000research.76818.r139819</article-id>
            <title-group>
                <article-title>Reviewer response for version 1</article-title>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author">
                    <name>
                        <surname>Farooq</surname>
                        <given-names>Shaik Mullapathi</given-names>
                    </name>
                    <xref ref-type="aff" rid="r139819a1">1</xref>
                    <role>Referee</role>
                    <uri content-type="orcid">https://orcid.org/0000-0003-3630-8974</uri>
                </contrib>
                <aff id="r139819a1">
                    <label>1</label>Department of Computer Science and Engineering, K. S. R. M. College of Engineering (UGC-Autonomous), Kadapa, Andhra Pradesh, India</aff>
            </contrib-group>
            <author-notes>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>12</day>
                <month>7</month>
                <year>2022</year>
            </pub-date>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2022 Farooq SM</copyright-statement>
                <copyright-year>2022</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access peer review report distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <related-article ext-link-type="doi" id="relatedArticleReport139819" related-article-type="peer-reviewed-article" xlink:href="10.12688/f1000research.73182.1"/>
            <custom-meta-group>
                <custom-meta>
                    <meta-name>recommendation</meta-name>
                    <meta-value>reject</meta-value>
                </custom-meta>
            </custom-meta-group>
        </front-stub>
        <body>
            <p>The manuscript proposes recurrent relation based alpha method to interpolate missing PMU data. Further, the authors try to prove that the proposed method reduces computational complexity.&#x00a0;</p>
            <p> </p>
            <p> However, the comments are as follows,&#x00a0; 
                <list list-type="order">
                    <list-item>
                        <p>The Implementation of the proposed method is clearly missing (Hardware or software details used) in the manuscript which does not assist reproducing the results.&#x00a0;</p>
                    </list-item>
                    <list-item>
                        <p>Most of the manuscript is dedicated for theoretical discussion about the proposed method. But a comparison between the existing methods with the proposed method is missing.&#x00a0;</p>
                    </list-item>
                    <list-item>
                        <p>Add nomenclature that improves the readability of the manuscript.&#x00a0;</p>
                    </list-item>
                    <list-item>
                        <p>Only data set of PMU values are presented (PMU Data Harvard Data verse) instead need to add discussion about the details of PMU Data.&#x00a0;</p>
                    </list-item>
                </list>
            </p>
            <p>Is the work clearly and accurately presented and does it cite the current literature?</p>
            <p>Partly</p>
            <p>If applicable, is the statistical analysis and its interpretation appropriate?</p>
            <p>I cannot comment. A qualified statistician is required.</p>
            <p>Are all the source data underlying the results available to ensure full reproducibility?</p>
            <p>Partly</p>
            <p>Is the study design appropriate and is the work technically sound?</p>
            <p>Partly</p>
            <p>Are the conclusions drawn adequately supported by the results?</p>
            <p>Yes</p>
            <p>Are sufficient details of methods and analysis provided to allow replication by others?</p>
            <p>No</p>
            <p>Reviewer Expertise:</p>
            <p>Cyber security in smart grid communication network and VANET.</p>
            <p>I confirm that I have read this submission and believe that I have an appropriate level of expertise to state that I do not consider it to be of an acceptable scientific standard, for reasons outlined above.</p>
        </body>
        <sub-article article-type="response" id="comment9135-139819">
            <front-stub>
                <contrib-group>
                    <contrib contrib-type="author">
                        <name>
                            <surname>Goh</surname>
                            <given-names>Vik Tor</given-names>
                        </name>
                        <aff>Multimedia University, Malaysia</aff>
                    </contrib>
                </contrib-group>
                <author-notes>
                    <fn fn-type="conflict">
                        <p>
                            <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                    </fn>
                </author-notes>
                <pub-date pub-type="epub">
                    <day>16</day>
                    <month>12</month>
                    <year>2022</year>
                </pub-date>
            </front-stub>
            <body>
                <p>The purpose of this preliminary paper is to introduce our work in missing data recovery using cubic spline interpolation, namely the mathematical foundation and algorithmic logic. These details have been presented and explained accordingly in the paper. Additionally, the data used is also available for download by interested parties. We aim to publish a more detailed paper soon which will contain more information such as those suggested by the reviewer. Thank you for the suggestion.</p>
                <p> </p>
                <p> As stated earlier, the purpose of this preliminary paper is to introduce our proposed method, hence the emphasis on theoretical discussion. However, we have made an initial comparison with an existing method, namely the Linear Equation Method. This can be seen in the Results and discussion section.</p>
                <p> </p>
                <p> The nomenclature is improved wherever possible to improve the readability of the manuscript.</p>
                <p> </p>
                <p> The dataset presented in the work was obtained from a regional Electricity Authority in India. It was obtained for use as realistic data and brief details of the PMU data is now included. However, additional information such as the data source, the acquisition process, and the physical significance of the systemic variables are not detailed at this stage of algorithmic development as the main idea is only to demonstrate the efficacy of the missing data imputation algorithm. Nonetheless, we take note of this suggestion for our next submission. Thank you.</p>
            </body>
        </sub-article>
    </sub-article>
    <sub-article article-type="reviewer-report" id="report125681">
        <front-stub>
            <article-id pub-id-type="doi">10.5256/f1000research.76818.r125681</article-id>
            <title-group>
                <article-title>Reviewer response for version 1</article-title>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author">
                    <name>
                        <surname>Foo</surname>
                        <given-names>Mathias</given-names>
                    </name>
                    <xref ref-type="aff" rid="r125681a1">1</xref>
                    <role>Referee</role>
                    <uri content-type="orcid">https://orcid.org/0000-0003-1400-2659</uri>
                </contrib>
                <aff id="r125681a1">
                    <label>1</label>School of Engineering, University of Warwick, Coventry, UK</aff>
            </contrib-group>
            <author-notes>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>10</day>
                <month>3</month>
                <year>2022</year>
            </pub-date>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2022 Foo M</copyright-statement>
                <copyright-year>2022</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access peer review report distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <related-article ext-link-type="doi" id="relatedArticleReport125681" related-article-type="peer-reviewed-article" xlink:href="10.12688/f1000research.73182.1"/>
            <custom-meta-group>
                <custom-meta>
                    <meta-name>recommendation</meta-name>
                    <meta-value>approve-with-reservations</meta-value>
                </custom-meta>
            </custom-meta-group>
        </front-stub>
        <body>
            <p>In general, there is promising aspect of the proposed method but it has to be conveyed in a clearer manner. Here are my comments. 
                <list list-type="order">
                    <list-item>
                        <p>In Introduction section, the authors state that the comparison will be made with LEM. Can the author explain why specifically LEM is compared? Is that the current state-of-the-art method?</p>
                    </list-item>
                    <list-item>
                        <p>In Literature Review section, NASPI is mentioned but without proper definition of the acronym.</p>
                    </list-item>
                    <list-item>
                        <p>If my understanding is right, Equation (10) is a systems of linear equation of (7). Then, why does the h value in the B matrix have an exponent of 1 instead of 2 as of Equation (7)?</p>
                    </list-item>
                    <list-item>
                        <p>Statement above Equation (11):&#x00a0;Unless I'm mistaken, there is no d coefficient to be solved from either equations (5) or (6).</p>
                    </list-item>
                    <list-item>
                        <p>Equation (11): Like Equation (10), can the authors clarify why the exponent of 1 is used for h?</p>
                    </list-item>
                    <list-item>
                        <p>Equation (13):&#x00a0;Why is r taking this value? A bit more explanation would be helpful.</p>
                    </list-item>
                    <list-item>
                        <p>Equation (16):&#x00a0;Why is there a 'for' in the equation?</p>
                    </list-item>
                    <list-item>
                        <p>Step 3 of LE method:&#x00a0;There is no vector E in Equation (11).</p>
                    </list-item>
                    <list-item>
                        <p>Step 3 of AM method:&#x00a0;There is no vector E in Equation (11).</p>
                    </list-item>
                    <list-item>
                        <p>Step 4 of AM method:&#x00a0;There is no alpha term in Equation (11).</p>
                    </list-item>
                    <list-item>
                        <p>Results and Discussions section:&#x00a0;Can the author explicitly write down the equation for RMSE?</p>
                        <p> </p>
                        <p> Also, I am quite surprised with the huge difference in terms of RMSE between the two methods even for the case of 10% missing data considering the same equation (18) is used for both algorithms. The difference in ToC is understandable, but the vast difference in RMSE is a bit out of my expectation. Could the author briefly comment on the plausible reason for this huge difference in the RMSE value despite both algorithm using equation (18).</p>
                    </list-item>
                    <list-item>
                        <p>Overall comment: The mathematical derivation is not easy to follow and there are potential mistakes in citing the equations, which makes it even harder to follow. Thus, it is difficult to ascertain whether the results can be reproduced.&#x00a0;</p>
                    </list-item>
                </list>
            </p>
            <p>Is the work clearly and accurately presented and does it cite the current literature?</p>
            <p>Partly</p>
            <p>If applicable, is the statistical analysis and its interpretation appropriate?</p>
            <p>Partly</p>
            <p>Are all the source data underlying the results available to ensure full reproducibility?</p>
            <p>Partly</p>
            <p>Is the study design appropriate and is the work technically sound?</p>
            <p>Partly</p>
            <p>Are the conclusions drawn adequately supported by the results?</p>
            <p>Partly</p>
            <p>Are sufficient details of methods and analysis provided to allow replication by others?</p>
            <p>No</p>
            <p>Reviewer Expertise:</p>
            <p>Dynamical system modelling</p>
            <p>I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard, however I have significant reservations, as outlined above.</p>
        </body>
        <sub-article article-type="response" id="comment9134-125681">
            <front-stub>
                <contrib-group>
                    <contrib contrib-type="author">
                        <name>
                            <surname>Goh</surname>
                            <given-names>Vik Tor</given-names>
                        </name>
                        <aff>Multimedia University, Malaysia</aff>
                    </contrib>
                </contrib-group>
                <author-notes>
                    <fn fn-type="conflict">
                        <p>
                            <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                    </fn>
                </author-notes>
                <pub-date pub-type="epub">
                    <day>16</day>
                    <month>12</month>
                    <year>2022</year>
                </pub-date>
            </front-stub>
            <body>
                <p>The idea of cubic spline is the development of a series of unique cubic polynomials that are fitted between the data points. Based on four continuity relations between points in the spline, the relationships between the spline coefficients shall result in a system of unique 
                    <italic>n x n</italic>&#x00a0;linear equations in the matrix form 
                    <italic>Ax = B</italic>. The solution of this unique system of linear equations results in the values of constants at each spline point. Whenever some changes occur in any one of the splines, the system of linear equations must be solved for every specific change to fit the spline. The tri-diagonal method of solving a system of linear equations was employed in this study for comparison. Hence and from the reference, we made such a comparison to linear equation method.</p>
                <p> </p>
                <p> The word is already introduced in the introduction section as North American Synchro Phasor Initiative (NASPI).</p>
                <p> </p>
                <p> The exponent for 
                    <italic>h</italic> in Equation (10) and (11) should be 2 instead of 1. We have made the corrections accordingly. Thank you.</p>
                <p> </p>
                <p> As the reviewer correctly noted, the 
                    <italic>d</italic> coefficient is not solved in Equations (5) or (6). It is instead solved using Equation (9). We have made the amendments accordingly.</p>
                <p> </p>
                <p> The r-value in Equation (13) is a non-zero rational constant; the value is adapted from our reference work [17]. We have added this citation in the text.</p>
                <p> </p>
                <p> The &#x2018;
                    <italic>for</italic>&#x2019; should not be in Equation (16). It has been corrected.</p>
                <p> </p>
                <p> Step 3 and Step 5 of the LE method has been corrected as vector 
                    <italic>B</italic> instead of 
                    <italic>E</italic>.</p>
                <p> </p>
                <p> Reference to Equation (11) in Step 4 of the AM method has been removed.</p>
                <p> </p>
                <p> The equation for RMSE has been added in the text.</p>
                <p> </p>
                <p> Upon inspection, we found that the variables 
                    <italic>b</italic>, 
                    <italic>c</italic>, and 
                    <italic>d</italic>&#x00a0;of the cubic spline is found to be similar in both methods as the reviewer correctly predicted. We re-examined our results and have determined that due to an oversight, an error occurred in the final calculations of imputation values in the LE method. Instead of the coordinate numbers, the spline values at the coordinates were used for the calculation of missing values. As such, we have made the corrections to the results and discussions, as well as the plots in Figure 1 and Figure 2.</p>
                <p> </p>
                <p> All corrections and suggestions given were incorporated and the revised version of the paper is written.&#x00a0; We really appreciate the time spent by the reviewer for the useful suggestions and corrections made.</p>
            </body>
        </sub-article>
    </sub-article>
</article>
