<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article article-type="research-article" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Energy Res.</journal-id>
<journal-title>Frontiers in Energy Research</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Energy Res.</abbrev-journal-title>
<issn pub-type="epub">2296-598X</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">1526992</article-id>
<article-id pub-id-type="doi">10.3389/fenrg.2025.1526992</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Energy Research</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>An improved model-free predictive voltage control for grid-forming inverter with adaptive ultra-local data-model in renewable energy system</article-title>
<alt-title alt-title-type="left-running-head">Lin et al.</alt-title>
<alt-title alt-title-type="right-running-head">
<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3389/fenrg.2025.1526992">10.3389/fenrg.2025.1526992</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Lin</surname>
<given-names>Yifu</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2893694/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Zhu</surname>
<given-names>Junwei</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>He</surname>
<given-names>Feng</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
</contrib-group>
<aff id="aff1">
<sup>1</sup>
<institution>Country State Grid Fujian Electric Power Co., Ltd.</institution>, <addr-line>Fuzhou</addr-line>, <country>China</country>
</aff>
<aff id="aff2">
<sup>2</sup>
<institution>Putian Electric Power Supply Company of State Grid Fujian Electric Power Co., Ltd.</institution>, <addr-line>Putian</addr-line>, <country>China</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1578745/overview">Yuqing Dong</ext-link>, The University of Tennessee, Knoxville, United States</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1484433/overview">Kaiqi Sun</ext-link>, Shandong University, China</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2931470/overview">Yan Wen</ext-link>, University of Tennessee, Knoxville, United States</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2932774/overview">Zhengfa Zhang</ext-link>, The University of Tennessee, Knoxville, United States</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Yifu Lin, <email>linyifu2024@163.com</email>
</corresp>
</author-notes>
<pub-date pub-type="epub">
<day>24</day>
<month>03</month>
<year>2025</year>
</pub-date>
<pub-date pub-type="collection">
<year>2025</year>
</pub-date>
<volume>13</volume>
<elocation-id>1526992</elocation-id>
<history>
<date date-type="received">
<day>12</day>
<month>11</month>
<year>2024</year>
</date>
<date date-type="accepted">
<day>10</day>
<month>03</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2025 Lin, Zhu and He.</copyright-statement>
<copyright-year>2025</copyright-year>
<copyright-holder>Lin, Zhu and He</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p>
</license>
</permissions>
<abstract>
<p>Conventional model-based predictive voltage control (MBPVC) for grid-forming inverters (GFIs) in renewable energy system is sensitive to parametric accuracy. To address this issue, an improved model-free predictive voltage control (MFPVC) is proposed for grid-forming inverter. First, the parametric impact on MBPVC is analyzed in GFI. Then, the adaptive ultra-local data-model (ULDM) of the GFI is established for model-free voltage prediction. The ULDM of GFI is updated in each control period by combining the capacitor voltage gradient relationship. The linear extended-state-observer with the adaptive strengthening factor is designed to enhance the performance of the ULDM. Additionally, the optimal switching sequence is proposed for further reducing voltage ripples. The duration of each voltage vector in corresponding optimal switching sequence is calculated based on the deadbeat principle. The proposed MFPVC method effectively eliminates parametric effect and improve the accuracy of model-free voltage prediction. Finally, the conventional MBPVC, conventional MFPVC and proposed MFPVC are compared by the designed hardware experimental platform of GFI.</p>
</abstract>
<kwd-group>
<kwd>grid-forming inverter</kwd>
<kwd>model-free predictive voltage control</kwd>
<kwd>adaptive ultra-local data-model</kwd>
<kwd>optimal switching sequence</kwd>
<kwd>parameter robustness</kwd>
</kwd-group>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Smart Grids</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>With the rapid development of renewable energy system, microgrids have been widely promoted and applied. They integrate renewable energy and distributed generation with traditional power systems, enhancing energy utilization and microgrid system reliability (<xref ref-type="bibr" rid="B15">Tan et al., 2024</xref>). In microgrid systems, renewable energy grid-forming inverters (GFIs) serve as key components, efficiently converting DC power to AC. By incorporating LC filters, they reduce output voltage harmonics, meeting the diverse needs of microgrid loads and providing reliable grid voltage (<xref ref-type="bibr" rid="B13">Song et al., 2022</xref>; <xref ref-type="bibr" rid="B7">Liu and Wang, 2022</xref>).</p>
<p>Model-based predictive voltage control (MBPVC) demonstrates excellent dynamic response and multi-objective optimization capabilities in voltage regulating support of GFIs, making it highly effective in complex microgrids (<xref ref-type="bibr" rid="B10">Rui et al., 2024</xref>; <xref ref-type="bibr" rid="B12">Samanta et al., 2024</xref>; <xref ref-type="bibr" rid="B7">Liu and Wang, 2022</xref>). MBPVC uses the discrete mathematical model of the GFI to predict future system states and selects the optimal voltage vector based on a predefined cost function (<xref ref-type="bibr" rid="B20">Zheng et al., 2021</xref>). However, the performance of model-based voltage prediction in conventional MBPVC is highly dependent on the accuracy of inverter system parameters. Mismatched model parameters can degrade prediction accuracy, reducing voltage prediction accuracy and potentially harming the entire system (<xref ref-type="bibr" rid="B17">Yin et al., 2024a</xref>; <xref ref-type="bibr" rid="B11">Rui et al., 2023</xref>; <xref ref-type="bibr" rid="B4">Hu et al., 2023</xref>).</p>
<p>To enhance the parameter robustness of MBPVC, researchers have proposed various robust MBPVC methods for GFIs. These include disturbance observer-based MBPVC (<xref ref-type="bibr" rid="B5">Jin et al., 2022</xref>; <xref ref-type="bibr" rid="B19">Zhao et al., 2023</xref>; <xref ref-type="bibr" rid="B18">Zhang et al., 2021</xref>), and parameter identification-based MBPVC (<xref ref-type="bibr" rid="B9">Long et al., 2022a</xref>; <xref ref-type="bibr" rid="B8">Long et al., 2022b</xref>; <xref ref-type="bibr" rid="B6">Lian et al., 2023</xref>). Disturbance observer-based MBPVC uses various observers to estimate parameters and system disturbances, improving voltage prediction accuracy in MBPVC. Ref. (<xref ref-type="bibr" rid="B5">Jin et al., 2022</xref>). employs a sliding mode observer for robust grid voltage control. Ref. (<xref ref-type="bibr" rid="B19">Zhao et al., 2023</xref>). uses a Kalman filter for the same purpose. Ref. (<xref ref-type="bibr" rid="B18">Zhang et al., 2021</xref>). applies an extended state observer to observe and suppress system disturbances, enhancing voltage robustness. However, disturbance observer-based MBPVC requires real-time adjustment of observer gains under different conditions to ensure observation accuracy.</p>
<p>Additionally, researchers have proposed parameter identification-based MBPVC, utilizing voltage and current data from GFIs along with various algorithms to estimate system parameters and build accurate models. Ref. (<xref ref-type="bibr" rid="B9">Long et al., 2022a</xref>). presents a gradient descent optimization method for online calculation of inductor and capacitor. Ref. (<xref ref-type="bibr" rid="B8">Long et al., 2022b</xref>). introduces a moth-flame optimization parameter identification method. Ref. (<xref ref-type="bibr" rid="B6">Lian et al., 2023</xref>). employs recursive least squares for online identification of inverter system parameters, enhancing MBPVC&#x2019;s parameter robustness. However, the accuracy of parameter identification is susceptible to external disturbances, and identification errors can still impact voltage prediction for GFIs.</p>
<p>In recent years, researchers have proposed model-free predictive voltage control (MFPVC) to improve the robustness of voltage prediction in GFIs. These methods use system data and historical information to predict future states without relying on accurate mathematical models. In Ref. (<xref ref-type="bibr" rid="B2">Heydari et al., 2022</xref>), researchers used an autoregressive exogenous input model to replace traditional mathematical models, but this approach requires substantial system data and employs the least squares method for gain estimation, increasing computational burden. Refs. (<xref ref-type="bibr" rid="B3">Hu et al., 2024</xref>; <xref ref-type="bibr" rid="B16">Yin et al., 2024b</xref>). introduce the voltage-current gradient based MFPVC, but these methods necessitate designing gradient update techniques to ensure accuracy. Ref. (<xref ref-type="bibr" rid="B14">Su et al., 2024</xref>). presents the ultra-local data models based MFPVC, which is simple to implement but uses multiple cycles of voltage and current data, reducing response speed.</p>
<p>To address the aforementioned issues, this paper proposes an improved model-free predictive voltage control (MFPVC) method for GFI in renewable energy system. First, the parametric impact on traditional MBPVC in GFI is analyzed. Then, an improved MFPVC method is presented, which establishes and updates the ultra-local data-model (ULDM) of the GFI by using the capacitor voltage gradient relationship for model-free voltage prediction. The performance of proposed ULDM is enhanced by the linear extended-state-observer (LESO) with strengthening. Additionally, to further improve the accuracy of model-free voltage prediction, the optimal switching sequence is designed, and its corresponding duration is calculated based on the deadbeat principle. Finally, experimental results validate the effectiveness of the proposed MFPVC method. The mainly contributions of proposed MFPVC include: (1) it eliminates parametric effect in comparison with conventional MBPVC (<xref ref-type="bibr" rid="B10">Rui et al., 2024</xref>; <xref ref-type="bibr" rid="B12">Samanta et al., 2024</xref>; <xref ref-type="bibr" rid="B7">Liu and Wang, 2022</xref>; <xref ref-type="bibr" rid="B20">Zheng et al., 2021</xref>); (2) it avoids the use of multiple cycle data and improves dynamic performance in comparison with conventional MFPVC (<xref ref-type="bibr" rid="B14">Su et al., 2024</xref>).</p>
</sec>
<sec id="s2">
<title>2 Conventional MBPVC method for GFIs under parameter mismatch</title>
<p>As shown in <xref ref-type="fig" rid="F1">Figure 1</xref>, conventional MBPVC is widely used in GFIs for capacitor voltage regulation (<xref ref-type="bibr" rid="B20">Zheng et al., 2021</xref>). The model-based voltage prediction obtains the future state of capacitor voltage for each basic voltage vector. The predicted capacitor voltage is then used in the cost function evaluation to assess the voltage error for each basic voltage vector. The vector with the smallest error is selected as the optimal voltage vector. Based on its corresponding three-phase switch state, the three-phase switch functions <italic>S</italic>
<sub>
<italic>j</italic>
</sub> are set to drive the upper half-bridge switches <italic>S</italic>
<sub>
<italic>j</italic>u</sub> and lower half-bridge switches <italic>S</italic>
<sub>
<italic>j</italic>l</sub> (<italic>j</italic> &#x3d; a, b, c).</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Control diagram of conventional MBPVC for GFI.</p>
</caption>
<graphic xlink:href="fenrg-13-1526992-g001.tif"/>
</fig>
<sec id="s2-1">
<title>2.1 Model-based voltage prediction</title>
<p>
<xref ref-type="fig" rid="F1">Figure 1</xref> shows the GFI under conventional MBPVC method, where <italic>L</italic> is the filter inductor, <italic>C</italic> is the filter capacitor and <italic>R</italic> is the resistance load. <italic>v</italic>
<sub>dc</sub> is the renewable energy DC source, <italic>v</italic>
<sub>
<italic>i</italic>
</sub> is the voltage vector (<italic>i</italic> &#x3d; 0&#x223c;7), <italic>v</italic>
<sub>c</sub> is the capacitor voltage, <italic>i</italic>
<sub>l</sub> is the inductor current and <italic>i</italic>
<sub>r</sub> is the load current. The three-phase switch functions <italic>S</italic>
<sub>
<italic>j</italic>
</sub> can be expressed as<disp-formula id="e1">
<mml:math id="m1">
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi mathvariant="normal">u</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;on&#x2002;</mml:mtext>
<mml:mo>&#x26;</mml:mo>
<mml:mtext>&#x2002;</mml:mtext>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi mathvariant="normal">l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;off</mml:mtext>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi mathvariant="normal">u</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;off&#x2002;</mml:mtext>
<mml:mo>&#x26;</mml:mo>
<mml:mtext>&#x2002;</mml:mtext>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mi>j</mml:mi>
<mml:mi mathvariant="normal">l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;on</mml:mtext>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(1)</label>
</disp-formula>
</p>
<p>Based on <xref ref-type="fig" rid="F1">Figure 1</xref>, the mathematical model of the GFI can be expressed as<disp-formula id="e2">
<mml:math id="m2">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mi mathvariant="normal">l</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>C</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mi mathvariant="normal">l</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mi mathvariant="normal">r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(2)</label>
</disp-formula>
</p>
<p>According to the forward Euler method, <xref ref-type="disp-formula" rid="e2">Equation 2</xref> can be discretized as<disp-formula id="e3">
<mml:math id="m3">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mi mathvariant="normal">l</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mi mathvariant="normal">l</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mi mathvariant="normal">l</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mi mathvariant="normal">r</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(3)</label>
</disp-formula>
</p>
<p>
<xref ref-type="disp-formula" rid="e3">Equation 3</xref> can be further deduced as<disp-formula id="e4">
<mml:math id="m4">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:msubsup>
<mml:mi>T</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mi>C</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mi mathvariant="normal">l</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mi mathvariant="normal">r</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(4)</label>
</disp-formula>
</p>
<p>According to <xref ref-type="disp-formula" rid="e4">Equation 4</xref>, by substituting different basic voltage vectors <italic>v</italic>
<sub>
<italic>i</italic>
</sub>(<italic>k</italic>&#x2b;1) and sampling <italic>v</italic>
<sub>c</sub>(<italic>k</italic>), <italic>i</italic>
<sub>l</sub>(<italic>k</italic>), <italic>i</italic>
<sub>r</sub>(<italic>k</italic>), along with parameters <italic>L</italic> and <italic>C</italic>, the model-based capacitor voltage can be predicted.</p>
</sec>
<sec id="s2-2">
<title>2.2 Cost function evaluation</title>
<p>To select the optimal voltage vector from basic voltage vectors <italic>v</italic>
<sub>0</sub> to <italic>v</italic>
<sub>7</sub>, a cost function <italic>g</italic> is defined as<disp-formula id="e5">
<mml:math id="m5">
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>cref</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(5)</label>
</disp-formula>where <italic>v</italic>
<sub>cref</sub> is the capacitor voltage reference. The optimal voltage vector obtained from <xref ref-type="disp-formula" rid="e5">Equation 5</xref> enables the control of the three-phase switches <italic>S</italic>
<sub>
<italic>j</italic>u</sub> and <italic>S</italic>
<sub>
<italic>j</italic>l</sub>.</p>
</sec>
<sec id="s2-3">
<title>2.3 Analysis of conventional MBPVC</title>
<p>According to <xref ref-type="disp-formula" rid="e4">Equation 4</xref>, the accuracy of model-based voltage prediction <italic>v</italic>
<sub>c<italic>i</italic>
</sub>(<italic>k</italic>&#x2b;1) is influenced by the inductance <italic>L</italic> and capacitance <italic>C</italic> parameters. When the model parameters <italic>L</italic>
<sub>m</sub> and <italic>C</italic>
<sub>m</sub> do not match the actual parameters <italic>L</italic> and <italic>C</italic>, the prediction performance of <italic>v</italic>
<sub>c<italic>i</italic>
</sub>(<italic>k</italic>&#x2b;1) would be affected. <xref ref-type="fig" rid="F2">Figure 2</xref> illustrates the prediction error <italic>v</italic>
<sub>cerr</sub> due to parameter mismatch, where the parameter error <italic>P</italic>
<sub>e</sub> &#x3d; <italic>L</italic>
<sub>m</sub>/<italic>L</italic> &#x3d; <italic>C</italic>
<sub>m</sub>/<italic>C</italic>. As seen in <xref ref-type="fig" rid="F2">Figure 2</xref>, the prediction error <italic>v</italic>
<sub>cerr</sub> increases with the parameter error <italic>P</italic>
<sub>e</sub>.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>Voltage prediction error of conventional MBPVC under different parameter errors <italic>P</italic>
<sub>e</sub>.</p>
</caption>
<graphic xlink:href="fenrg-13-1526992-g002.tif"/>
</fig>
<p>In addition, based on <xref ref-type="disp-formula" rid="e4">Equation 4</xref>, the accuracy of model-based voltage prediction <italic>v</italic>
<sub>c<italic>i</italic>
</sub>(<italic>k</italic>&#x2b;1) is also influenced by the basic voltage vector <italic>v</italic>
<sub>
<italic>i</italic>
</sub>(<italic>k</italic>&#x2b;1). Due to the limited number of basic voltage vectors <italic>v</italic>
<sub>
<italic>i</italic>
</sub>(<italic>k</italic>&#x2b;1) in GFIs, the prediction error <italic>v</italic>
<sub>cerr</sub> is also affected. <xref ref-type="fig" rid="F3">Figure 3</xref> illustrates the prediction error <italic>v</italic>
<sub>cerr</sub> due to the application of basic voltage vector <italic>v</italic>
<sub>
<italic>i</italic>
</sub>(<italic>k</italic>&#x2b;1), where different voltage references <italic>v</italic>
<sub>cref</sub> is set. As seen in <xref ref-type="fig" rid="F3">Figure 3</xref>, the prediction error <italic>v</italic>
<sub>cerr</sub> consistently remains around 5 V.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>Voltage prediction error of conventional MBPVC under voltage references <italic>v</italic>
<sub>
<italic>oref</italic>
</sub>.</p>
</caption>
<graphic xlink:href="fenrg-13-1526992-g003.tif"/>
</fig>
</sec>
</sec>
<sec id="s3">
<title>3 Proposed MFPVC method for GFIs</title>
<p>To mitigate the impact of parameter variations on the voltage prediction, a model-free predictive voltage control (MFPVC) method is proposed, as shown in <xref ref-type="fig" rid="F4">Figure 4</xref>. This method is composed of model-free voltage prediction and optimal switching sequence. The former is utilized for eliminating parametric effect and the latter is utilized for reducing prediction errors.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Control diagram of proposed MFPVC for GFI.</p>
</caption>
<graphic xlink:href="fenrg-13-1526992-g004.tif"/>
</fig>
<sec id="s3-1">
<title>3.1 Proposed model-free voltage prediction</title>
<sec id="s3-1-1">
<title>3.1.1 Development of ultra-local data-model</title>
<p>According to <xref ref-type="disp-formula" rid="e2">Equation 2</xref>, the ULDM of the GFI can be expressed as<disp-formula id="e6">
<mml:math id="m6">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3b1;</mml:mi>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>F</mml:mi>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(6)</label>
</disp-formula>where <italic>&#x3b1;</italic> &#x3d; <italic>T</italic>
<sub>s</sub>/<italic>L</italic>/<italic>C</italic>, <italic>U</italic>
<sub>
<italic>i</italic>
</sub> &#x3d; <italic>v</italic>
<sub>
<italic>i</italic>
</sub>&#x2212;<italic>v</italic>
<sub>c</sub>, <italic>F&#x3d;(i</italic>
<sub>l</sub>
<italic>&#x2212;i</italic>
<sub>r</sub>
<italic>)/C &#x2b; F</italic>
<sub>0</sub>, <italic>F</italic>
<sub>0</sub> are the gain, input, concentrated disturbance and nonlinear disturbance of the ULDM.</p>
</sec>
<sec id="s3-1-2">
<title>3.1.2 Updating of ultra-local data-model</title>
<p>Based on <xref ref-type="disp-formula" rid="e6">Equation 6</xref>, the capacitor voltage gradient <italic>g</italic>
<sub>c<italic>i</italic>
</sub> can be obtained as<disp-formula id="e7">
<mml:math id="m7">
<mml:mrow>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3b1;</mml:mi>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(7)</label>
</disp-formula>
</p>
<p>Similarly, <xref ref-type="disp-formula" rid="e7">Equation 7</xref> can be deduced as<disp-formula id="e8">
<mml:math id="m8">
<mml:mrow>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
</mml:msub>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3b1;</mml:mi>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(8)</label>
</disp-formula>
</p>
<p>Subtracting <xref ref-type="disp-formula" rid="e8">Equation 8</xref> from <xref ref-type="disp-formula" rid="e7">Equation 7</xref> yields that<disp-formula id="e9">
<mml:math id="m9">
<mml:mrow>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3b1;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(9)</label>
</disp-formula>
</p>
<p>Since the GFI usually operates at a high sampling and control frequency, it can be assumed that <italic>F</italic>(<italic>k</italic>)&#x2212;<italic>F</italic>(<italic>k</italic>&#x2212;1)&#x2248;0 (<xref ref-type="bibr" rid="B1">Cortes et al., 2009</xref>). Therefore, <xref ref-type="disp-formula" rid="e9">Equation 9</xref> can be further simplified to<disp-formula id="e10">
<mml:math id="m10">
<mml:mrow>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3b1;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(10)</label>
</disp-formula>
</p>
<p>Based on <xref ref-type="disp-formula" rid="e10">Equation 10</xref>, the gain of the ULDM can be expressed as<disp-formula id="e11">
<mml:math id="m11">
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(11)</label>
</disp-formula>
</p>
<p>Substituting <xref ref-type="disp-formula" rid="e11">Equation 11</xref> into <xref ref-type="disp-formula" rid="e7">Equation 7</xref>, the concentrated disturbance <italic>F</italic> of the ULDM can be expressed as<disp-formula id="e12">
<mml:math id="m12">
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(12)</label>
</disp-formula>
</p>
<p>Using <italic>&#x3b1;</italic> from <xref ref-type="disp-formula" rid="e11">Equation 11</xref> and <italic>F</italic>(<italic>k</italic>) from <xref ref-type="disp-formula" rid="e12">Equation 12</xref>, the model-free voltage prediction <italic>v</italic>
<sub>c<italic>i</italic>
</sub>(<italic>k</italic>&#x2b;1) is obtained as<disp-formula id="e13">
<mml:math id="m13">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right"/>
<mml:mtd columnalign="left">
<mml:mspace width="1em"/>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(13)</label>
</disp-formula>
</p>
<p>It can be observed from <xref ref-type="disp-formula" rid="e13">Equation 13</xref> that the capacitor voltage can be predicted based on the obtained gain and concentrated disturbance of the ULDM, which are obtained from the measuring voltage data, eliminating parametric effect on voltage prediction.</p>
</sec>
<sec id="s3-1-3">
<title>3.1.3 Design of adaptive ultra-local data-model</title>
<p>It should be noted that the calculation of <italic>&#x3b1;</italic> and <italic>F</italic> in the ULDM would have a larger error when the sampling frequency is low, leading to poor control effect of MFPC. To effectively estimate the <italic>&#x3b1;</italic> and <italic>F</italic> in the ULDM, the linear extended-state-observer (LESO) is designed to estimate the <italic>&#x3b1;</italic> and <italic>F</italic> in the ULDM. The system state equation in <xref ref-type="disp-formula" rid="e6">Equation 6</xref> can be written as<disp-formula id="e14">
<mml:math id="m14">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3b1;</mml:mi>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(14)</label>
</disp-formula>where <italic>&#x3b4;</italic>
<sub>1</sub> and <italic>&#x3b4;</italic>
<sub>2</sub> are the error gain of the voltage estimation and the concentrated disturbance estimation, respectively. The superscript &#x5e; represents the estimated value. <xref ref-type="disp-formula" rid="e14">Equation 14</xref> can be discretized and expressed as<disp-formula id="e15">
<mml:math id="m15">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(15)</label>
</disp-formula>
</p>
<p>The matrix form of <xref ref-type="disp-formula" rid="e15">Equation 15</xref> can be expressed as<disp-formula id="e16">
<mml:math id="m16">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:munder>
<mml:munder>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo stretchy="true">&#x23df;</mml:mo>
</mml:munder>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:munder>
<mml:munder>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</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:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo stretchy="true">&#x23df;</mml:mo>
</mml:munder>
<mml:mrow>
<mml:mi>G</mml:mi>
</mml:mrow>
</mml:munder>
<mml:munder>
<mml:munder>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo stretchy="true">&#x23df;</mml:mo>
</mml:munder>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:munder>
<mml:mo>&#x2b;</mml:mo>
<mml:munder>
<mml:munder>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo stretchy="true">&#x23df;</mml:mo>
</mml:munder>
<mml:mrow>
<mml:mi>H</mml:mi>
</mml:mrow>
</mml:munder>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right"/>
<mml:mtd columnalign="left">
<mml:mspace width="1em"/>
<mml:mo>&#x2b;</mml:mo>
<mml:munder>
<mml:munder>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo stretchy="true">&#x23df;</mml:mo>
</mml:munder>
<mml:mrow>
<mml:mi>K</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(16)</label>
</disp-formula>
</p>
<p>In order to ensure the stability of the LESO, the eigenvalue of <xref ref-type="disp-formula" rid="e16">Equation 16</xref> should be set in the unit circle of the z-plane. The characteristic polynomial of <xref ref-type="disp-formula" rid="e16">Equation 16</xref> can be expressed as<disp-formula id="e17">
<mml:math id="m17">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mi>I</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>G</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>K</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>z</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(17)</label>
</disp-formula>where <italic>I</italic> is the second-order identity matrix. To obtain better robustness, the characteristic polynomial can be set as<disp-formula id="e18">
<mml:math id="m18">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mi>I</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>G</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>K</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(18)</label>
</disp-formula>where <italic>&#x3c9;</italic>
<sub>0</sub> is the bandwidth of the LESO. By combining <xref ref-type="disp-formula" rid="e17">Equations 17</xref>, <xref ref-type="disp-formula" rid="e18">18</xref>, error gains <italic>&#x3b4;</italic>
<sub>1</sub> and <italic>&#x3b4;</italic>
<sub>2</sub> can be obtained as<disp-formula id="e19">
<mml:math id="m19">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mfrac>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(19)</label>
</disp-formula>
</p>
<p>By substituting the error gains <italic>&#x3b4;</italic>
<sub>1</sub> and <italic>&#x3b4;</italic>
<sub>2</sub> in <xref ref-type="disp-formula" rid="e19">Equation 19</xref> into <xref ref-type="disp-formula" rid="e15">Equation 15</xref>, the observation of concentrated disturbance <italic>F</italic>(<italic>k</italic>&#x2b;1) can be achieved. To respond to the nonlinear changes of the GFI, the adaptive strengthening factor is designed in the LESO. <xref ref-type="disp-formula" rid="e14">Equation 14</xref> can be further expressed as<disp-formula id="e20">
<mml:math id="m20">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3b1;</mml:mi>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3c4;</mml:mi>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3c4;</mml:mi>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(20)</label>
</disp-formula>where <italic>&#x3c4;</italic> is the adaptive strengthening factor, which can be expressed as<disp-formula id="e21">
<mml:math id="m21">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3b8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3b8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(21)</label>
</disp-formula>where <italic>&#x3b8;</italic>
<sub>1</sub> and <italic>&#x3b8;</italic>
<sub>2</sub> are the system parameter vectors, which can be estimated in real time using the least square method, as<disp-formula id="e22">
<mml:math id="m22">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>&#x3b8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mover accent="true">
<mml:mi>&#x3b8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>K</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mi>&#x3c6;</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mover accent="true">
<mml:mi>&#x3b8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>K</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>&#x3c6;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi>&#x3c6;</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>&#x3c6;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>I</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>K</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msup>
<mml:mi>&#x3c6;</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mfrac>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(22)</label>
</disp-formula>where <italic>&#x3c6;</italic> &#x3d; [<italic>&#x3c4; e</italic>]<sup>T</sup>, <italic>&#x3b8;</italic> &#x3d; [<italic>&#x3b8;</italic>
<sub>1</sub> <italic>&#x3b8;</italic>
<sub>2</sub>]<sup>T</sup>, <italic>&#x3bb;</italic> is the forgetting factor, <italic>&#x3bb;</italic>&#x2208;[0.9,1]. <italic>K</italic> and <italic>P</italic> are the intermediate variables of the identification process, where the initial value of <italic>P</italic>(0) can be set to 10<sup>6</sup>. By combining the adaptive strengthening factor <italic>&#x3c4;</italic>(k) in <xref ref-type="fig" rid="F5">Figure 5</xref> and the forward Euler method, <xref ref-type="disp-formula" rid="e20">Equation 20</xref> can be discretized as<disp-formula id="e23">
<mml:math id="m23">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mi>&#x3c4;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mi>&#x3c4;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(23)</label>
</disp-formula>
</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Diagram of adaptive ULDM.</p>
</caption>
<graphic xlink:href="fenrg-13-1526992-g005.tif"/>
</fig>
<p>The ULDM relies on real-time estimation of the concentrated disturbance <italic>F</italic> and the gain <italic>&#x3b1;</italic>. The LESO dynamically adjusts these parameters by observing voltage tracking errors and updating <inline-formula id="inf1">
<mml:math id="m24">
<mml:mrow>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> through <xref ref-type="disp-formula" rid="e21">Equations 21</xref>&#x2013;<xref ref-type="disp-formula" rid="e23">23</xref>. Specifically, the LESO feeds the estimated <inline-formula id="inf2">
<mml:math id="m25">
<mml:mrow>
<mml:mover accent="true">
<mml:mi>F</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> back into the ULDM <xref ref-type="disp-formula" rid="e13">Equation 13</xref>, enabling the model-free prediction to adapt to parameter variations and external disturbances. This closed-loop interaction ensures accurate voltage prediction even under parameter mismatches.</p>
</sec>
</sec>
<sec id="s3-2">
<title>3.2 Proposed optimal switching sequence for GFI</title>
<sec id="s3-2-1">
<title>3.2.1 Design of optimal switching sequence</title>
<p>To reduce the error of the proposed model-free voltage prediction, the basic voltage vector <italic>v</italic>
<sub>
<italic>i</italic>
</sub>(<italic>k</italic>&#x2b;1) in <xref ref-type="disp-formula" rid="e13">Equation 13</xref> could be replaced with the combined voltage vector <italic>v</italic>
<sub>i<italic>s</italic>
</sub>(<italic>k</italic>&#x2b;1) (<italic>s</italic> &#x3d; 1, &#x2026; 6), which is composed of two basic non-zero voltage vectors <italic>v</italic>
<sub>i_o</sub>, <italic>v</italic>
<sub>i_t</sub> (<italic>v</italic>
<sub>1</sub>&#x223c;<italic>v</italic>
<sub>6</sub>), and two zero voltage vectors <italic>v</italic>
<sub>i_z</sub> (<italic>v</italic>
<sub>0</sub>, <italic>v</italic>
<sub>7</sub>). The optimal switching sequence of the combined voltage vector corresponding to each sector is summarized in <xref ref-type="table" rid="T1">Table 1</xref>. From <xref ref-type="table" rid="T1">Table 1</xref>, it can be observed that <italic>v</italic>
<sub>i_o</sub> is <italic>v</italic>
<sub>1</sub>, <italic>v</italic>
<sub>i_t</sub> is <italic>v</italic>
<sub>2</sub>, and <italic>v</italic>
<sub>i_z</sub> is <italic>v</italic>
<sub>0</sub> and <italic>v</italic>
<sub>7</sub> in section I. In other sections, <italic>v</italic>
<sub>i_o</sub> and <italic>v</italic>
<sub>i_t</sub> are replaced with others non-zero voltage vectors.</p>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>Optimal switching sequence.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Sector</th>
<th align="center">Switching sequence</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">I</td>
<td align="center">
<italic>v</italic>
<sub>0</sub> <italic>v</italic>
<sub>1</sub> <italic>v</italic>
<sub>2</sub> <italic>v</italic>
<sub>7</sub> <italic>v</italic>
<sub>7</sub> <italic>v</italic>
<sub>2</sub> <italic>v</italic>
<sub>1</sub> <italic>v</italic>
<sub>0</sub>
</td>
</tr>
<tr>
<td align="center">II</td>
<td align="center">
<italic>v</italic>
<sub>0</sub> <italic>v</italic>
<sub>3</sub> <italic>v</italic>
<sub>2</sub> <italic>v</italic>
<sub>7</sub> <italic>v</italic>
<sub>7</sub> <italic>v</italic>
<sub>2</sub> <italic>v</italic>
<sub>3</sub> <italic>v</italic>
<sub>0</sub>
</td>
</tr>
<tr>
<td align="center">III</td>
<td align="center">
<italic>v</italic>
<sub>0</sub> <italic>v</italic>
<sub>3</sub> <italic>v</italic>
<sub>4</sub> <italic>v</italic>
<sub>7</sub> <italic>v</italic>
<sub>7</sub> <italic>v</italic>
<sub>4</sub> <italic>v</italic>
<sub>3</sub> <italic>v</italic>
<sub>0</sub>
</td>
</tr>
<tr>
<td align="center">IV</td>
<td align="center">
<italic>v</italic>
<sub>0</sub> <italic>v</italic>
<sub>5</sub> <italic>v</italic>
<sub>4</sub> <italic>v</italic>
<sub>7</sub> <italic>v</italic>
<sub>7</sub> <italic>v</italic>
<sub>4</sub> <italic>v</italic>
<sub>5</sub> <italic>v</italic>
<sub>0</sub>
</td>
</tr>
<tr>
<td align="center">V</td>
<td align="center">
<italic>v</italic>
<sub>0</sub> <italic>v</italic>
<sub>5</sub> <italic>v</italic>
<sub>6</sub> <italic>v</italic>
<sub>7</sub> <italic>v</italic>
<sub>7</sub> <italic>v</italic>
<sub>6</sub> <italic>v</italic>
<sub>5</sub> <italic>v</italic>
<sub>0</sub>
</td>
</tr>
<tr>
<td align="center">VI</td>
<td align="center">
<italic>v</italic>
<sub>0</sub> <italic>v</italic>
<sub>1</sub> <italic>v</italic>
<sub>6</sub> <italic>v</italic>
<sub>7</sub> <italic>v</italic>
<sub>7</sub> <italic>v</italic>
<sub>6</sub> <italic>v</italic>
<sub>1</sub> <italic>v</italic>
<sub>0</sub>
</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s3-2-2">
<title>3.2.2 Design of optimal switching sequence</title>
<p>The durations <italic>t</italic>
<sub>vio</sub>, <italic>t</italic>
<sub>vit</sub> and <italic>t</italic>
<sub>viz</sub> corresponding to <italic>v</italic>
<sub>i_o</sub>, <italic>v</italic>
<sub>i_t</sub>, and <italic>v</italic>
<sub>i_z</sub>, respectively, can be obtained based on the deadbeat principle, as<disp-formula id="e24">
<mml:math id="m26">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="{" close="" separators="|">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x2202;</mml:mi>
<mml:mi>g</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>vio</mml:mtext>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>vit</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>/</mml:mo>
<mml:mi mathvariant="normal">&#x2202;</mml:mi>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>vio</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mrow>
<mml:mi mathvariant="normal">&#x2202;</mml:mi>
<mml:mi>g</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>vio</mml:mtext>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>vit</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>/</mml:mo>
<mml:mi mathvariant="normal">&#x2202;</mml:mi>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>vit</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>viz</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi mathvariant="normal">s</mml:mi>
</mml:msub>
<mml:mo>/</mml:mo>
<mml:mn>4</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>vio</mml:mtext>
</mml:msub>
<mml:mo>/</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>vit</mml:mtext>
</mml:msub>
<mml:mo>/</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(24)</label>
</disp-formula>
</p>
<p>Based on the durations <italic>t</italic>
<sub>vio</sub>, <italic>t</italic>
<sub>vit</sub> and <italic>t</italic>
<sub>viz</sub> from <xref ref-type="disp-formula" rid="e24">Equation 24</xref> and the optimal switching sequence in <xref ref-type="table" rid="T1">Table 1</xref>, the model-free voltage prediction with optimal switching sequence can be obtained as<disp-formula id="e25">
<mml:math id="m27">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>vio</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>vit</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close="" separators="|">
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi mathvariant="normal">t</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right"/>
<mml:mtd columnalign="left">
<mml:mspace width="1em"/>
<mml:mrow>
<mml:mfenced open="" close=")" separators="|">
<mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>4</mml:mn>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>viz</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:msub>
<mml:mi>U</mml:mi>
<mml:mi mathvariant="normal">z</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(25)</label>
</disp-formula>
</p>
<p>Based on <xref ref-type="disp-formula" rid="e7">Equations 7</xref>, <xref ref-type="disp-formula" rid="e25">25</xref> can be simplified as<disp-formula id="e26">
<mml:math id="m28">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">c</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>vio</mml:mtext>
</mml:msub>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mtext>co</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>vit</mml:mtext>
</mml:msub>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mtext>ct</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>4</mml:mn>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mtext>viz</mml:mtext>
</mml:msub>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mtext>cz</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(26)</label>
</disp-formula>
</p>
<p>Based on <xref ref-type="disp-formula" rid="e16">Equation 16</xref>, the model-free voltage prediction with optimal switching sequence can be obtained, which not only eliminate parametric effect, but also improve accuracy of voltage prediction, enabling the capacitor voltage performance in GFIs.</p>
</sec>
</sec>
<sec id="s3-3">
<title>3.3 Proposed MFPVC strategy</title>
<p>
<xref ref-type="fig" rid="F6">Figure 6</xref> illustrates the implementation flowchart of the proposed MFPVC strategy for GFIs. Initially, the capacitor voltage <italic>v</italic>
<sub>c</sub>(<italic>k</italic>)<italic>&#x223c;v</italic>
<sub>c</sub>(<italic>k</italic>&#x2212;2) and voltage vector <italic>v</italic>
<sub>is</sub>(<italic>k</italic>)<italic>&#x223c;v</italic>
<sub>is</sub>(<italic>k</italic>&#x2212;2) are sampled and substituted into <xref ref-type="disp-formula" rid="e11">Equations 11</xref>, <xref ref-type="disp-formula" rid="e23">23</xref> to calculate the gain <italic>&#x3b1;</italic> and the concentrated disturbance <italic>F</italic>(<italic>k</italic>) of the ULDM, respectively. Subsequently, <xref ref-type="disp-formula" rid="e13">Equation 13</xref> is used to predict the capacitor voltage <italic>v</italic>
<sub>c<italic>i</italic>
</sub>(<italic>k</italic>&#x2b;1) corresponding to the basic voltage vector. By integrating the concept of deadbeat control and using <xref ref-type="disp-formula" rid="e24">Equation 24</xref>, the durations <italic>t</italic>
<sub>vio</sub>, <italic>t</italic>
<sub>vit</sub> and <italic>t</italic>
<sub>viz</sub> corresponding to the non-zero voltage vectors <italic>v</italic>
<sub>i_o</sub>, <italic>v</italic>
<sub>i_t</sub>, and two zero voltage vectors <italic>v</italic>
<sub>i_z</sub>, respectively, can be obtained. Based on the durations <italic>t</italic>
<sub>vio</sub>, <italic>t</italic>
<sub>vit</sub> and <italic>t</italic>
<sub>viz</sub>, the model-free voltage prediction with optimal switching sequence can be obtained with <xref ref-type="disp-formula" rid="e26">Equation 26</xref>, eliminating the influence of parameters on the voltage prediction. The combined voltage vector is substituted into <xref ref-type="disp-formula" rid="e5">Equation 5</xref> to evaluate the prediction error corresponding to each combined voltage vector. The combined voltage vector with smallest prediction error is selected as the optimal vector. The three-phase switch signals are applied based on <xref ref-type="disp-formula" rid="e1">Equation 1</xref> in the next control period.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Proposed MFPVC for GFI.</p>
</caption>
<graphic xlink:href="fenrg-13-1526992-g006.tif"/>
</fig>
</sec>
</sec>
<sec id="s4">
<title>4 Experimental verification</title>
<p>To validate the effectiveness of the proposed MFPVC method, this section compares the grid-forming voltage performance of the conventional MBPVC method (<xref ref-type="bibr" rid="B20">Zheng et al., 2021</xref>), the conventional MFPVC method (<xref ref-type="bibr" rid="B14">Su et al., 2024</xref>), and the proposed MFPVC. The comparisons are conducted using the three-phase renewable energy grid-forming inverter experimental platform, as shown in <xref ref-type="fig" rid="F7">Figure 7</xref>. The controller utilized is the TMS320C28335, and the experimental parameters are listed in <xref ref-type="table" rid="T2">Table 2</xref>.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Experimental platform of GFI.</p>
</caption>
<graphic xlink:href="fenrg-13-1526992-g007.tif"/>
</fig>
<table-wrap id="T2" position="float">
<label>TABLE 2</label>
<caption>
<p>Systems parameters.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Parameter</th>
<th align="center">Value</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">DC voltage <italic>v</italic>
<sub>dc</sub>/V</td>
<td align="center">200</td>
</tr>
<tr>
<td align="center">Capacitor voltage reference <italic>v</italic>
<sub>cref</sub>/V</td>
<td align="center">50, 80</td>
</tr>
<tr>
<td align="center">Filter inductor <italic>L</italic>/mH</td>
<td align="center">1.7</td>
</tr>
<tr>
<td align="center">Filter capacitor <italic>C</italic>/&#x3bc;F</td>
<td align="center">15</td>
</tr>
<tr>
<td align="center">Load resistance <italic>R</italic>/&#x3a9;</td>
<td align="center">10</td>
</tr>
<tr>
<td align="center">Control period <italic>T</italic>
<sub>s</sub>/&#x3bc;s</td>
<td align="center">50</td>
</tr>
</tbody>
</table>
</table-wrap>
<sec id="s4-1">
<title>4.1 Experimental comparison of steady-state voltage performance</title>
<p>
<xref ref-type="fig" rid="F8">Figure 8</xref> compares the steady-state voltage performance of the proposed MFPVC method, the conventional MBPVC method, and the conventional MFPVC method. The capacitor voltage reference <italic>v</italic>
<sub>cref</sub> is set at 80 V.</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Experimental comparison of steady-state voltage performance. <bold>(a)</bold> Conventional MBPVC; <bold>(b)</bold> Conventional MFPVC; <bold>(c)</bold> Proposed MFPVC.</p>
</caption>
<graphic xlink:href="fenrg-13-1526992-g008.tif"/>
</fig>
<p>As shown in <xref ref-type="fig" rid="F8">Figure 8a</xref>, when the conventional MBPVC method is applied, the steady-state voltage performance is good, with a Total Harmonic Distortion (THD) of 2.02%. In <xref ref-type="fig" rid="F8">Figure 8b</xref>, the steady-state voltage performance reduces when the conventional MFPVC method is used, increasing the THD to 2.33%.</p>
<p>As illustrated in <xref ref-type="fig" rid="F8">Figure 8c</xref>, the proposed MFPVC method achieves a voltage performance similar to that of the MBPVC method, with a THD of 1.72%, verifying the effectiveness of the proposed MFPVC method.</p>
</sec>
<sec id="s4-2">
<title>4.2 Experimental comparison of dynamic-state voltage performance</title>
<p>
<xref ref-type="fig" rid="F9">Figure 9</xref> compares the dynamic-state voltage performance of the proposed MFPVC method, the conventional MBPVC method, and the conventional MFPVC method. The capacitor voltage reference <italic>v</italic>
<sub>cref</sub> is changed from 80 V to 50 V.</p>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>Experimental comparison of dynamic-state voltage performance. <bold>(a)</bold> Conventional MBPVC; <bold>(b)</bold> Conventional MFPVC; <bold>(c)</bold> Proposed MFPVC.</p>
</caption>
<graphic xlink:href="fenrg-13-1526992-g009.tif"/>
</fig>
<p>As shown in <xref ref-type="fig" rid="F9">Figure 9a</xref>, when the conventional MBPVC method is applied, its dynamic-state voltage performance is relatively poor, with a response speed of 0.48 ms. In <xref ref-type="fig" rid="F9">Figure 9b</xref>, the dynamic voltage performance improves when the conventional MFPVC method is used due to that the conventional MFPVC is applied based on the voltage and current difference, which is simpler than conventional mathematical model, reducing the response speed to 0.34 ms.</p>
<p>As illustrated in <xref ref-type="fig" rid="F9">Figure 9c</xref>, the proposed MFPVC method achieves the best dynamic-state voltage performance due to the use of adaptive ULMD, with a response speed of 0.19 ms, verifying the effectiveness of the proposed MFPVC method.</p>
</sec>
<sec id="s4-3">
<title>4.3 Experimental comparison of robustness voltage performance</title>
<p>
<xref ref-type="fig" rid="F10">Figure 10</xref> compares the robustness voltage performance of the proposed MFPVC method, the conventional MBPVC method, and the conventional MFPVC method. The capacitor voltage reference <italic>v</italic>
<sub>cref</sub> is 80 V. The parameter error <italic>P</italic>
<sub>e</sub> is changed from 0.2 to 1.8.</p>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>Experimental comparison of robustness voltage performance. <bold>(a)</bold> Conventional MBPVC; <bold>(b)</bold> Conventional MFPVC; <bold>(c)</bold> Proposed MFPVC.</p>
</caption>
<graphic xlink:href="fenrg-13-1526992-g010.tif"/>
</fig>
<p>As shown in <xref ref-type="fig" rid="F10">Figure 10a</xref>, when the conventional MBPVC method is applied, its robustness voltage performance is obviously affected due to that the conventional MBPVC depends on the accurate parameter. When parameter errors <italic>P</italic>
<sub>e</sub> increase, the voltage errors also increase. In <xref ref-type="fig" rid="F10">Figure 10b</xref>, the robustness voltage performance improves when the conventional MFPVC method is used due to the use of the voltage and current difference, which replaces the conventional mathematical model, improving the robustness. However, conventional MFPVC is easily affected by sampling noise, increasing voltage errors.</p>
<p>As illustrated in <xref ref-type="fig" rid="F10">Figure 10c</xref>, the proposed MFPVC method achieves the best robustness voltage performance due to the use of ultra-local data-model, verifying the effectiveness of the proposed MFPVC.</p>
</sec>
<sec id="s4-4">
<title>4.4 Experimental comparison summary</title>
<p>As illustrated in <xref ref-type="table" rid="T3">Table 3</xref>, the proposed MFPVC with THD of 1.72% achieves comparable steady-state voltage performance to the conventional MBPVC with THD of 2.02% and superior voltage performance compared to the conventional MFPVC with THD of 2.33%. Besides, the dynamic performance of proposed MFPVC is 0.29 ms, which has the best dynamic-state voltage performance compared to conventional MBPVC method and conventional MFPVC method. Furthermore, proposed MFPVC demonstrates the best robustness compared to conventional MBPVC and conventional MFPVC under mismatched parameters.</p>
<table-wrap id="T3" position="float">
<label>TABLE 3</label>
<caption>
<p>Voltage performance comparison.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th rowspan="2" align="center">Voltage performance</th>
<th colspan="3" align="center">Methods</th>
</tr>
<tr>
<th align="center">Conventional MBPVC</th>
<th align="center">Conventional MFPVC</th>
<th align="center">Proposed MFPVC</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">Steady-state voltage performance</td>
<td align="center">THD &#x3d; 2.02%</td>
<td align="center">THD &#x3d; 2.33%</td>
<td align="center">THD &#x3d; 1.72%</td>
</tr>
<tr>
<td align="center">Dynamic-state voltage performance</td>
<td align="center">0.48 ms</td>
<td align="center">0.34 ms</td>
<td align="center">0.19 ms</td>
</tr>
<tr>
<td align="center">Robustness voltage performance</td>
<td align="center">&#x2606;</td>
<td align="center">&#x2606;&#x2606;</td>
<td align="center">&#x2606;&#x2606;&#x2606;</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn>
<p>Note: &#x2606; represents the worst performance; &#x2606;&#x2606; represents the medium performance; &#x2606;&#x2606;&#x2606; represents the optimal performance.</p>
</fn>
</table-wrap-foot>
</table-wrap>
</sec>
</sec>
<sec sec-type="conclusion" id="s5">
<title>5 Conclusion</title>
<p>This paper proposes an improved model-free predictive voltage control (MFPVC) for grid-forming inverters (GFIs) in renewable energy systems. The proposed MFPVC establishes and updates the adaptive ultra-local data-model (ULDM) for the GFI, eliminating the impact of parameters on voltage prediction. Additionally, to further reduce prediction errors, the proposed MFPVC designs an optimal switching sequence and calculates the duration using the deadbeat principle.</p>
<p>Various experiments are conducted to validate the effectiveness of the proposed MFPVC, showing: (1) When parameters are accurate, the proposed MFPVC with THD of 1.72% achieves comparable steady-state performance to the conventional MBPVC with THD of 2.02% and superior voltage performance compared to the conventional MFPVC with THD of 2.33%; (2) The dynamic performance of the proposed method is 0.29 ms faster than that of the conventional MBPVC method and 0.15 ms faster than that of the conventional MFPVC method; (3) It demonstrates greater robustness compared to conventional MBPVC under mismatched parameters.</p>
<p>In the future, we can study the application of the proposed MFPVC in LCL filter grid-connected inverters and study the application of the proposed MFPVC in high-power and low-switching frequency GFIs, improving the application range of the proposed MFPVC in more complex micro-grid.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s6">
<title>Data availability statement</title>
<p>The original contributions presented in the study are included in the article/supplementary material, further inquiries can be directed to the corresponding author.</p>
</sec>
<sec sec-type="author-contributions" id="s7">
<title>Author contributions</title>
<p>YL: Conceptualization, Writing&#x2013;original draft, Writing&#x2013;review and editing. JZ: Funding acquisition, Writing&#x2013;review and editing. FH: Investigation, Writing&#x2013;review and editing.</p>
</sec>
<sec sec-type="funding-information" id="s8">
<title>Funding</title>
<p>The author(s) declare that financial support was received for the research, authorship, and/or publication of this article. This research was funded by State Grid Fujian Electric Power Technology Project, grant number 52132024000H.</p>
</sec>
<sec sec-type="COI-statement" id="s9">
<title>Conflict of interest</title>
<p>Author YL was employed by Country State Grid Fujian Electric Power Co., Ltd. Authors JZ and FH were employed by Putian Electric Power Supply Company of State Grid Fujian Electric Power Co., Ltd.</p>
</sec>
<sec sec-type="ai-statement" id="s10">
<title>Generative AI statement</title>
<p>The authors declare that no Generative AI was used in the creation of this manuscript.</p>
</sec>
<sec sec-type="disclaimer" id="s11">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Cortes</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Ortiz</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Yuz</surname>
<given-names>J. I.</given-names>
</name>
<name>
<surname>Rodriguez</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Vazquez</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Franquelo</surname>
<given-names>L. G.</given-names>
</name>
</person-group> (<year>2009</year>). <article-title>Model predictive control of an inverter with output $LC$ filter for UPS applications</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>56</volume> (<issue>6</issue>), <fpage>1875</fpage>&#x2013;<lpage>1883</lpage>. <pub-id pub-id-type="doi">10.1109/tie.2009.2015750</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Heydari</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Young</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Bahamonde</surname>
<given-names>F. F.</given-names>
</name>
<name>
<surname>Zadeh</surname>
<given-names>S. V.</given-names>
</name>
<name>
<surname>Castano</surname>
<given-names>C. G.</given-names>
</name>
<name>
<surname>Sabzevari</surname>
<given-names>S.</given-names>
</name>
<etal/>
</person-group> (<year>2022</year>). <article-title>Model-free predictive control of grid-forming inverters with LCL filters</article-title>. <source>IEEE Trans. Power Electron.</source> <volume>37</volume> (<issue>8</issue>), <fpage>9200</fpage>&#x2013;<lpage>9211</lpage>. <pub-id pub-id-type="doi">10.1109/TPEL.2022.3159730</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hu</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Yin</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Rui</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Lu</surname>
<given-names>G.</given-names>
</name>
<etal/>
</person-group> (<year>2024</year>). <article-title>A novel modulated model-free predictive control for LC-filtered grid-forming inverters with double-difference updating</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>71</volume> (<issue>9</issue>), <fpage>10806</fpage>&#x2013;<lpage>10817</lpage>. <pub-id pub-id-type="doi">10.1109/tie.2023.3335463</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hu</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Yin</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Rui</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Shen</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Cao</surname>
<given-names>W.</given-names>
</name>
<etal/>
</person-group> (<year>2023</year>). <article-title>A novel double-voltage-vector model-free predictive current control method for two-level voltage source inverters</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>70</volume> (<issue>6</issue>), <fpage>5872</fpage>&#x2013;<lpage>5884</lpage>. <pub-id pub-id-type="doi">10.1109/tie.2022.3199947</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Jin</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Guo</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Double-vector model-free predictive control method for voltage source inverter with visualization analysis</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>69</volume> (<issue>10</issue>), <fpage>10066</fpage>&#x2013;<lpage>10078</lpage>. <pub-id pub-id-type="doi">10.1109/tie.2021.3128905</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lian</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Xiao</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Gao</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Parameter and VSI nonlinearity hybrid estimation for PMSM drives based on recursive least square</article-title>. <source>IEEE Trans. Transp. Electrification</source> <volume>9</volume> (<issue>2</issue>), <fpage>2195</fpage>&#x2013;<lpage>2206</lpage>. <pub-id pub-id-type="doi">10.1109/tte.2022.3206606</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Physical insight into hybrid-synchronization-controlled grid-forming inverters under large disturbances</article-title>. <source>IEEE Trans. Power Electron.</source> <volume>37</volume> (<issue>10</issue>), <fpage>11475</fpage>&#x2013;<lpage>11480</lpage>. <pub-id pub-id-type="doi">10.1109/tpel.2022.3168902</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Long</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Hu</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Guerrero</surname>
<given-names>J. M.</given-names>
</name>
<name>
<surname>Carcia</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Rodriguez</surname>
<given-names>J.</given-names>
</name>
<etal/>
</person-group> (<year>2022b</year>). <article-title>Moth&#x2013;flame-optimization-based parameter estimation for FCS-MPC-Controlled grid-connected converter with LCL filter</article-title>. <source>IEEE J. Emerg. Sel. Top. Power Electron.</source> <volume>10</volume> (<issue>4</issue>), <fpage>4102</fpage>&#x2013;<lpage>4114</lpage>. <pub-id pub-id-type="doi">10.1109/jestpe.2022.3140228</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Long</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Zhu</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Chong</surname>
<given-names>K. T.</given-names>
</name>
<name>
<surname>Rodriguez</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Guerrero</surname>
<given-names>J. M.</given-names>
</name>
</person-group> (<year>2022a</year>). <article-title>Gradient descent optimization based parameter identification for FCS-MPC Control of LCL-type grid connected converter</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>69</volume> (<issue>3</issue>), <fpage>2631</fpage>&#x2013;<lpage>2643</lpage>. <pub-id pub-id-type="doi">10.1109/tie.2021.3063867</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rui</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Feng</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Hu</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Yin</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Cao</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Lu</surname>
<given-names>G.</given-names>
</name>
<etal/>
</person-group> (<year>2024</year>). <article-title>Double-vector model-free predictive current control method for voltage source inverters with sampling noise suppression</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>71</volume> (<issue>6</issue>), <fpage>5797</fpage>&#x2013;<lpage>5806</lpage>. <pub-id pub-id-type="doi">10.1109/tie.2023.3273241</pub-id>
</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rui</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Yin</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Hu</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Lu</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Shen</surname>
<given-names>W.</given-names>
</name>
<etal/>
</person-group> (<year>2023</year>). <article-title>Modulated model-free predictive current control for voltage source inverters with stagnation elimination and sampling disturbance suppression</article-title>. <source>IEEE Trans. Power Electron.</source> <volume>38</volume> (<issue>6</issue>), <fpage>6996</fpage>&#x2013;<lpage>7008</lpage>. <pub-id pub-id-type="doi">10.1109/tpel.2023.3247811</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Samanta</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Lagoa</surname>
<given-names>C. M.</given-names>
</name>
<name>
<surname>Chaudhuri</surname>
<given-names>N. R.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Nonlinear model predictive control for droop-based grid forming converters providing fast frequency support</article-title>. <source>IEEE Trans. Power Deliv.</source> <volume>39</volume> (<issue>2</issue>), <fpage>790</fpage>&#x2013;<lpage>800</lpage>. <pub-id pub-id-type="doi">10.1109/tpwrd.2023.3336868</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Song</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Cao</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Chang</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Review of grid-forming inverters in support of power system operation</article-title>. <source>Chin. J. Electr. Eng.</source> <volume>8</volume> (<issue>1</issue>), <fpage>1</fpage>&#x2013;<lpage>15</lpage>. <pub-id pub-id-type="doi">10.23919/cjee.2022.000001</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Su</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Model-free control of permanent magnet synchronous linear motor based on ultra-local model</article-title>. <source>Chin. J. Electr. Eng.</source> <volume>10</volume> (<issue>4</issue>), <fpage>73</fpage>&#x2013;<lpage>82</lpage>. <pub-id pub-id-type="doi">10.23919/CJEE.2024.000050</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Tan</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Xie</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Guerrero</surname>
<given-names>J. M.</given-names>
</name>
<name>
<surname>Vasquez</surname>
<given-names>J. C.</given-names>
</name>
<name>
<surname>Alcala</surname>
<given-names>J. M.</given-names>
</name>
<name>
<surname>Carreno</surname>
<given-names>J. E. M.</given-names>
</name>
<etal/>
</person-group> (<year>2024</year>). <article-title>Lyapunov-based resilient cooperative control for DC microgrid clusters against false data injection cyber-attacks</article-title>. <source>IEEE Trans. Smart Grid</source> <volume>15</volume> (<issue>3</issue>), <fpage>3208</fpage>&#x2013;<lpage>3222</lpage>. <pub-id pub-id-type="doi">10.1109/tsg.2023.3332946</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yin</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Deng</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Ghanem</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Kaddah</surname>
<given-names>S. S.</given-names>
</name>
<name>
<surname>Abulanwar</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2024b</year>). <article-title>PLPR-based predictive control for LCL-filtered voltage source inverters</article-title>. <source>IEEE Trans. Power Electron.</source> <volume>39</volume> (<issue>6</issue>), <fpage>7468</fpage>&#x2013;<lpage>7480</lpage>. <pub-id pub-id-type="doi">10.1109/tpel.2024.3371053</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yin</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Deng</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Kaddah</surname>
<given-names>S. S.</given-names>
</name>
<name>
<surname>Abulanwar</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2024a</year>). <article-title>Modulated PLPR-based predictive control with noise suppression for LC-filtered voltage source inverters</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>72</volume> (<issue>3</issue>), <fpage>2588</fpage>&#x2013;<lpage>2598</lpage>. <pub-id pub-id-type="doi">10.1109/tie.2024.3433438</pub-id>
</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Jin</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Huang</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Model-free predictive current control of PMSM drives based on extended state observer using ultralocal model</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>68</volume> (<issue>2</issue>), <fpage>993</fpage>&#x2013;<lpage>1003</lpage>. <pub-id pub-id-type="doi">10.1109/tie.2020.2970660</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhao</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>Q.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Model-free predictive current control of three-level grid-connected inverters with LCL filters based on kalman filter</article-title>. <source>IEEE Access</source> <volume>11</volume>, <fpage>21631</fpage>&#x2013;<lpage>21640</lpage>. <pub-id pub-id-type="doi">10.1109/access.2023.3251410</pub-id>
</citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zheng</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Dragi&#x10d;evi&#x107;</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Rodriguez</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Blaabjerg</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Model predictive control of LC-filtered voltage source inverters with optimal switching sequence</article-title>. <source>IEEE Trans. Power Electron.</source> <volume>36</volume> (<issue>3</issue>), <fpage>3422</fpage>&#x2013;<lpage>3436</lpage>. <pub-id pub-id-type="doi">10.1109/tpel.2020.3015540</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>