<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.4 20241031//EN" "JATS-journalpublishing1-4.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article" dtd-version="1.4" xml:lang="en">
  <front>
    <journal-meta>
      <journal-id journal-id-type="publisher-id">sgre</journal-id>
      <journal-title-group>
        <journal-title>Smart Grid and Renewable Energy</journal-title>
      </journal-title-group>
      <issn pub-type="epub">2151-4844</issn>
      <issn pub-type="ppub">2151-481X</issn>
      <publisher>
        <publisher-name>Scientific Research Publishing</publisher-name>
      </publisher>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.4236/sgre.2026.1710015</article-id>
      <article-id pub-id-type="publisher-id">sgre-154812</article-id>
      <article-categories>
        <subj-group>
          <subject>Article</subject>
        </subj-group>
        <subj-group>
          <subject>Earth</subject>
          <subject>Environmental Sciences</subject>
          <subject>Engineering</subject>
        </subj-group>
      </article-categories>
      <title-group>
        <article-title>Optical Retention and Actuator Demand in Dual Axis Solar Furnace Tracking</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author" corresp="yes">
          <contrib-id contrib-id-type="orcid">0009-0000-3945-5019</contrib-id>
          <name name-style="western">
            <surname>Hamidine</surname>
            <given-names>Mahamadou</given-names>
          </name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <name name-style="western">
            <surname>Abdou</surname>
            <given-names>Adamou Boueye</given-names>
          </name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <name name-style="western">
            <surname>Adamou</surname>
            <given-names>Alio Mahamadou</given-names>
          </name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
      </contrib-group>
      <aff id="aff1"><label>1</label> Department of Physics, Dan Dicko Dankoulodo University of Maradi, Maradi, Niger </aff>
      <author-notes>
        <fn fn-type="conflict" id="fn-conflict">
          <p>The authors declare no conflicts of interest regarding the publication of this paper.</p>
        </fn>
      </author-notes>
      <pub-date pub-type="epub">
        <day>27</day>
        <month>10</month>
        <year>2026</year>
      </pub-date>
      <pub-date pub-type="collection">
        <month>10</month>
        <year>2026</year>
      </pub-date>
      <volume>17</volume>
      <issue>10</issue>
      <fpage>314</fpage>
      <lpage>338</lpage>
      <history>
        <date date-type="received">
          <day>29</day>
          <month>09</month>
          <year>2026</year>
        </date>
        <date date-type="accepted">
          <day>24</day>
          <month>10</month>
          <year>2026</year>
        </date>
        <date date-type="published">
          <day>27</day>
          <month>10</month>
          <year>2026</year>
        </date>
      </history>
      <permissions>
        <copyright-statement>© 2026 by the authors and Scientific Research Publishing Inc.</copyright-statement>
        <copyright-year>2026</copyright-year>
        <license license-type="open-access">
          <license-p> This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license ( <ext-link ext-link-type="uri" xlink:href="https://creativecommons.org/licenses/by/4.0/">https://creativecommons.org/licenses/by/4.0/</ext-link> ). </license-p>
        </license>
      </permissions>
      <self-uri content-type="doi" xlink:href="https://doi.org/10.4236/sgre.2026.1710015">https://doi.org/10.4236/sgre.2026.1710015</self-uri>
      <abstract>
        <p>This numerical study quantifies the trade-off between receiver-energy retention and actuator demand when automating a two-reflection solar furnace in Niger. A plane mirror follows the solar-target bisector and feeds a fixed paraboloid with a 0.90 m aperture and 0.20 m sag. Ray tracing resolves receiver interception while a sampled servo represents rate limits, backlash, encoder errors and irradiance holds. Verification combines analytical limits, independent geometric calculations, solar-position benchmarking, resolution checks and reproduction of MATLAB R2024b results in Python. With common Solar Position Algorithm trajectories, hysteretic tracking retains 99.75% of continuous-tracking optical energy on the September reference day; one-minute periodic updates retain 99.62% with greater energized-time demand under the same servo. Across 128 paired uncertain-parameter scenarios, median retention is 99.64% and median energized axis time reduction is 89.0%. The least favorable refined case retains 98.27%, so a sub-1% optical penalty is not guaranteed. Seasonal threshold and combined-defect cases identify further conditions on that compromise. The contribution is a verified quantification of optical retention and actuation for the specified furnace, rather than a new tracking law. Electrical savings remain conditional on assumed active and holding power; torque capacity and useful thermal efficiency are not established. No experimental validation is claimed.</p>
      </abstract>
      <kwd-group kwd-group-type="author-generated" xml:lang="en">
        <kwd>Actuator Demand</kwd>
        <kwd>Heliostat</kwd>
        <kwd>Hysteresis Control</kwd>
        <kwd>Ray Tracing</kwd>
        <kwd>Solar Furnace</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec1">
      <title>1. Introduction</title>
      <p>A solar furnace with a moving plane mirror and a stationary concentrator can keep the heated load fixed while collecting a changing solar beam. Its tracking requirement differs from photovoltaic surface alignment: the mirror must redirect sunlight toward a specified target, and useful optical performance depends on the downstream receiver aperture. Villeda <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B1">1</xref>] developed dedicated two-axis heliostat tracking for a solar furnace. Heliostat studies further establish the importance of calibration, structural accuracy and target alignment [<xref ref-type="bibr" rid="B2">2</xref>]-[<xref ref-type="bibr" rid="B4">4</xref>].</p>
      <p>We investigate automated tracking for a manually oriented, two-reflection furnace at the Agence Nationale d’Énergie Solaire (ANERSOL, formerly the Centre National d’Énergie Solaire, CNES), Niger. The configuration and dimensional information come from the authors’ design records. The proposed mechanical redesign motivates a numerical assessment of how closely the mirror must track to preserve receiver interception, and how much actuation that requires.</p>
      <p>Two distinctions guide the analysis. Equal illumination of a four-quadrant sensor fixed to a mirror does not generally enforce heliostat target alignment; travel switches cannot supply the missing geometric transformation. Likewise, slow solar motion does not justify an arbitrary waiting time between corrections. A displaced beam may still strike the dish while its second reflection misses a small receiver. Energy must therefore be evaluated at the receiver, together with the actuation required to maintain it.</p>
      <p>Kribus <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B5">5</xref>] corrected aiming errors using measurements around a receiver aperture. Sattler <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B2">2</xref>] distinguish axis-encoder feedback from feedback on the actual optical beam, while Maiga <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B6">6</xref>] review structural, drive, sensing and environmental tracking errors. Our controller uses encoder feedback to follow a calculated reference. Receiver interception is evaluated by ray tracing and is not fed back into the servo.</p>
      <p>Díaz-Ponce <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B7">7</xref>] assessed optical penalties and actuator demand jointly in a concentrating photovoltaic (CPV) system. Their experimental performance is not a numerical benchmark for this furnace, but their approach motivates evaluating tracking effort alongside optical yield. Relative to that assessment and the furnace tracker of Villeda <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B1">1</xref>], the present study focuses on the acceptance of a receiver after two successive reflections and on the conditions under which intermittent motion preserves that acceptance.</p>
      <p>Recent studies address error mechanisms that remain simplified here. Moreno-Cruz <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B8">8</xref>] predict annual heliostat drift from a measured daily drift curve. Blume <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B9">9</xref>] relate wind loads to tracking deviations through structural response parameters, while Liu <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B10">10</xref>] propagate load-induced surface deformation into ray tracing. The SolarPACES guideline [<xref ref-type="bibr" rid="B11">11</xref>] distinguishes underlying heliostat parameters from derived beam-performance measures. These distinctions motivate reporting numerical optical retention separately from calibration quality and mechanical qualification.</p>
      <p>The contribution is a quantified, application-specific relationship between receiver-energy retention, energized axis time and activation frequency, together with its sensitivity to seasonal geometry, combined parameter uncertainty and unobserved output motion. We compare hysteretic control with continuous tracking and periodic updates from one to thirty minutes, using common plant assumptions. The bisector law and hysteresis are established methods; their combination is evaluated here through analytical checks, independent optical calculations, implementation comparisons and refinement. This provides a conditional numerical design assessment, with no experimental validation claim.</p>
    </sec>
    <sec id="sec2">
      <title>2. Furnace Configuration and Mechanical Redesign</title>
      <p>The system consists of a plane mirror rotating about azimuth and elevation axes, a stationary parabolic reflector, and a receiver close to the paraboloid focus. Only the second reflector concentrates an initially parallel beam. Accordingly, “two-reflection furnace” is used here to describe the optical chain without implying two independently focusing stages.</p>
      <p><xref ref-type="fig" rid="fig1">Figure 1</xref> compares the manual furnace with the proposed SolidWorks redesign. Manual azimuth adjustment and a threaded-rod elevation mechanism are replaced conceptually by separate motor-driven sprocket-and-chain transmissions and an adapted frame. The mirror, dish and receiver retain their optical roles. The computer-aided design (CAD) view establishes the arrangement, but does not specify a verified gear ratio, holding brake or torque capacity. These requirements are discussed in Section 7; the simulated drive is defined in Section 3.2.</p>
      <fig id="fig1">
        <label>Figure 1</label>
        <graphic xlink:href="https://html.scirp.org/file/6401960-rId15.jpeg?20261027010845" />
      </fig>
      <p><bold>Figure 1.</bold> Initial furnace and proposed mechanical redesign: (a) Photograph of the manually oriented assembly; (b) SolidWorks view with provisions for separate azimuth and elevation drives.</p>
      <p>The mirror design drawing annotates a 1000 mm mirror dimension and depicts a square plate. A 1.00 m × 1.00 m active mirror is adopted as a modeling interpretation, because a second independent side dimension and the unobstructed reflective area are not documented. The dish drawing annotates a 900 mm diameter and a 200 mm depth. Treating these as the optical aperture and parabolic sag gives a focal length of 0.2531 m. These dimensions define the idealized optical geometry; the peripheral frame shown in the drawing is excluded from the active aperture.</p>
      <p><xref ref-type="fig" rid="fig2">Figure 2</xref> defines the optical arrangement and computational sequence; <bold>Table 1</bold> distinguishes documented geometry from simulation assumptions. The dish is placed 2.00 m north of the mirror, with a horizontal axis. This installation and the Niamey-area coordinates are illustrative. No measured irradiance, tracking, motor-current, reflector-slope or receiver heat-balance records are available for calibration.</p>
      <p><bold>Table 1.</bold> Geometric inputs and explicit design assumptions.</p>
      <table-wrap id="tbl1">
        <label>Table 1</label>
        <table>
          <tbody>
            <tr>
              <td>
                <bold>Quantity</bold>
              </td>
              <td>
                <bold>Value</bold>
                <bold>used</bold>
              </td>
              <td>
                <bold>Evidence</bold>
                <bold>or</bold>
                <bold>status</bold>
              </td>
            </tr>
            <tr>
              <td>Optical architecture</td>
              <td>Plane mirror and fixed paraboloid</td>
              <td>Authors’ design records</td>
            </tr>
            <tr>
              <td>Mirror active area</td>
              <td>1.00 × 1.00 m</td>
              <td>Square interpretation of one 1000 mm annotation</td>
            </tr>
            <tr>
              <td>Dish aperture and sag</td>
              <td>0.90 m and 0.20 m</td>
              <td>Drawing dimensions treated as optical geometry</td>
            </tr>
            <tr>
              <td>Focal length</td>
              <td>0.2531 m</td>
              <td>Derived for an ideal paraboloid</td>
            </tr>
            <tr>
              <td>Mirror to dish vertex</td>
              <td>2.00 m north</td>
              <td>Assumed installation</td>
            </tr>
            <tr>
              <td>Receiver radius</td>
              <td>25 mm</td>
              <td>Assumed; sensitivity 5 - 50 mm</td>
            </tr>
            <tr>
              <td>Representative coordinates</td>
              <td>13.51˚N and 2.11˚E</td>
              <td>Niamey-area scenario; not a site survey</td>
            </tr>
            <tr>
              <td>Reflectances and absorptance</td>
              <td>0.88; 0.82; 0.95</td>
              <td>Assumed optical coefficients</td>
            </tr>
            <tr>
              <td>Surface slope error</td>
              <td>2 mrad per tangent axis</td>
              <td>Assumed at both reflections; sensitivity 0 - 10 mrad</td>
            </tr>
            <tr>
              <td>Velocity response</td>
              <td>
                2 s; maximum 0.4˚ s
                <sup>−1</sup>
              </td>
              <td>Assumed time constant and rate limit</td>
            </tr>
            <tr>
              <td>Backlash and encoder offsets</td>
              <td>0.06˚; +0.03˚ and −0.02˚</td>
              <td>Assumed total play and residual biases</td>
            </tr>
            <tr>
              <td>Axis limits</td>
              <td>Azimuth ±90˚; elevation 0˚ - 85˚</td>
              <td>Assumed operating envelope</td>
            </tr>
            <tr>
              <td>Drive and supervisory power</td>
              <td>12 W per active axis; 1 W</td>
              <td>Electrical budgeting assumptions</td>
            </tr>
          </tbody>
        </table>
      </table-wrap>
      <fig id="fig2">
        <label>Figure 2</label>
        <graphic xlink:href="https://html.scirp.org/file/6401960-rId16.jpeg?20261027010845" />
      </fig>
      <p><bold>Figure 2.</bold> Modeled optical arrangement and computational chain. The mirror normal follows the solar-target bisector. The optical model includes receiver obscuration and two reflections; encoder feedback acts on shaft angle.</p>
    </sec>
    <sec id="sec3">
      <title>3. Mathematical and Optical Model</title>
      <sec id="sec3dot1">
        <title>3.1. Solar Coordinates and Heliostat Reference</title>
        <p>The global frame is east-north-up (ENU), with the mirror rotation center at the origin and <inline-formula><mml:math><mml:mstyle mathvariant="bold" mathsize="normal"><mml:mi> s </mml:mi></mml:mstyle></mml:math></inline-formula> pointing toward the Sun. A diagnostic trajectory uses the National Oceanic and Atmospheric Administration (NOAA) fractional-year approximation [<xref ref-type="bibr" rid="B12">12</xref>], including its leap-year denominator. Civil time is converted to true solar time with east-positive longitude and local time one hour ahead of Coordinated Universal Time (UTC + 1), giving</p>
        <disp-formula id="FD1">
          <label>(1)</label>
          <mml:math>
            <mml:mrow>
              <mml:mstyle mathvariant="bold" mathsize="normal">
                <mml:mi>s</mml:mi>
              </mml:mstyle>
              <mml:mo>=</mml:mo>
              <mml:mrow>
                <mml:mo>[</mml:mo>
                <mml:mrow>
                  <mml:mtable>
                    <mml:mtr>
                      <mml:mtd>
                        <mml:mrow>
                          <mml:mo>−</mml:mo>
                          <mml:mi>cos</mml:mi>
                          <mml:mi>δ</mml:mi>
                          <mml:mi>sin</mml:mi>
                          <mml:mi>H</mml:mi>
                        </mml:mrow>
                      </mml:mtd>
                    </mml:mtr>
                    <mml:mtr>
                      <mml:mtd>
                        <mml:mrow>
                          <mml:mi>cos</mml:mi>
                          <mml:mi>ϕ</mml:mi>
                          <mml:mi>sin</mml:mi>
                          <mml:mi>δ</mml:mi>
                          <mml:mo>−</mml:mo>
                          <mml:mi>sin</mml:mi>
                          <mml:mi>ϕ</mml:mi>
                          <mml:mi>cos</mml:mi>
                          <mml:mi>δ</mml:mi>
                          <mml:mi>cos</mml:mi>
                          <mml:mi>H</mml:mi>
                        </mml:mrow>
                      </mml:mtd>
                    </mml:mtr>
                    <mml:mtr>
                      <mml:mtd>
                        <mml:mrow>
                          <mml:mi>sin</mml:mi>
                          <mml:mi>ϕ</mml:mi>
                          <mml:mi>sin</mml:mi>
                          <mml:mi>δ</mml:mi>
                          <mml:mo>+</mml:mo>
                          <mml:mi>cos</mml:mi>
                          <mml:mi>ϕ</mml:mi>
                          <mml:mi>cos</mml:mi>
                          <mml:mi>δ</mml:mi>
                          <mml:mi>cos</mml:mi>
                          <mml:mi>H</mml:mi>
                        </mml:mrow>
                      </mml:mtd>
                    </mml:mtr>
                  </mml:mtable>
                </mml:mrow>
                <mml:mo>]</mml:mo>
              </mml:mrow>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>Here, <inline-formula><mml:math><mml:mi> ϕ </mml:mi></mml:math></inline-formula> is latitude, <inline-formula><mml:math><mml:mi> δ </mml:mi></mml:math></inline-formula> is solar declination and <inline-formula><mml:math><mml:mi> H </mml:mi></mml:math></inline-formula> is hour angle. Atmospheric refraction is omitted. The main controller and robustness comparisons instead use the Solar Position Algorithm (SPA) of Reda and Andreas [<xref ref-type="bibr" rid="B13">13</xref>], implemented independently in pvlib [<xref ref-type="bibr" rid="B14">14</xref>]. Section 5.3 defines common and mismatched ephemeris cases; the NOAA cases provide diagnostic comparisons rather than the primary accuracy reference.</p>
        <p>The required central reflected direction is <inline-formula><mml:math><mml:mrow><mml:mstyle mathvariant="bold" mathsize="normal"><mml:mi> t </mml:mi></mml:mstyle><mml:mo> = </mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mo> [ </mml:mo><mml:mrow><mml:mn> 0 </mml:mn><mml:mo> , </mml:mo><mml:mn> 1 </mml:mn><mml:mo> , </mml:mo><mml:mn> 0 </mml:mn></mml:mrow><mml:mo> ] </mml:mo></mml:mrow></mml:mrow><mml:mtext> T </mml:mtext></mml:msup></mml:mrow></mml:math></inline-formula> . For a general installation, this vector must be obtained from the surveyed optical axis and target geometry. Specular reflection of the incoming direction <inline-formula><mml:math><mml:mrow><mml:mo> − </mml:mo><mml:mstyle mathvariant="bold" mathsize="normal"><mml:mi> s </mml:mi></mml:mstyle></mml:mrow></mml:math></inline-formula> by a mirror of unit normal <inline-formula><mml:math><mml:mstyle mathvariant="bold" mathsize="normal"><mml:mi> n </mml:mi></mml:mstyle></mml:math></inline-formula> gives</p>
        <disp-formula id="FD2">
          <label>(2)</label>
          <mml:math>
            <mml:mrow>
              <mml:mstyle mathvariant="bold" mathsize="normal">
                <mml:mi>r</mml:mi>
              </mml:mstyle>
              <mml:mo>=</mml:mo>
              <mml:mo>−</mml:mo>
              <mml:mstyle mathvariant="bold" mathsize="normal">
                <mml:mi>s</mml:mi>
              </mml:mstyle>
              <mml:mo>+</mml:mo>
              <mml:mn>2</mml:mn>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:mstyle mathvariant="bold" mathsize="normal">
                    <mml:mi>s</mml:mi>
                  </mml:mstyle>
                  <mml:mo>⋅</mml:mo>
                  <mml:mstyle mathvariant="bold" mathsize="normal">
                    <mml:mi>n</mml:mi>
                  </mml:mstyle>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:mstyle mathvariant="bold" mathsize="normal">
                <mml:mi>n</mml:mi>
              </mml:mstyle>
              <mml:mo>,</mml:mo>
              <mml:mtext>
              </mml:mtext>
              <mml:msup>
                <mml:mstyle mathvariant="bold" mathsize="normal">
                  <mml:mi>n</mml:mi>
                </mml:mstyle>
                <mml:mtext>*</mml:mtext>
              </mml:msup>
              <mml:mo>=</mml:mo>
              <mml:mfrac>
                <mml:mrow>
                  <mml:mstyle mathvariant="bold" mathsize="normal">
                    <mml:mi>s</mml:mi>
                  </mml:mstyle>
                  <mml:mo>+</mml:mo>
                  <mml:mstyle mathvariant="bold" mathsize="normal">
                    <mml:mi>t</mml:mi>
                  </mml:mstyle>
                </mml:mrow>
                <mml:mrow>
                  <mml:mrow>
                    <mml:mo>‖</mml:mo>
                    <mml:mrow>
                      <mml:mstyle mathvariant="bold" mathsize="normal">
                        <mml:mi>s</mml:mi>
                      </mml:mstyle>
                      <mml:mo>+</mml:mo>
                      <mml:mstyle mathvariant="bold" mathsize="normal">
                        <mml:mi>t</mml:mi>
                      </mml:mstyle>
                    </mml:mrow>
                    <mml:mo>‖</mml:mo>
                  </mml:mrow>
                </mml:mrow>
              </mml:mfrac>
              <mml:mo>.</mml:mo>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>The second relation is the heliostat bisector law [<xref ref-type="bibr" rid="B2">2</xref>][<xref ref-type="bibr" rid="B3">3</xref>]. Substitution into the first gives <inline-formula><mml:math><mml:mrow><mml:mstyle mathvariant="bold" mathsize="normal"><mml:mi> r </mml:mi></mml:mstyle><mml:mo> = </mml:mo><mml:mstyle mathvariant="bold" mathsize="normal"><mml:mi> t </mml:mi></mml:mstyle></mml:mrow></mml:math></inline-formula> when the geometry is nonsingular. With azimuth measured from north toward east and elevation measured from the horizontal plane, the actuator reference is</p>
        <disp-formula id="FD3">
          <label>(3)</label>
          <mml:math>
            <mml:mrow>
              <mml:msubsup>
                <mml:mi>q</mml:mi>
                <mml:mi>a</mml:mi>
                <mml:mtext>*</mml:mtext>
              </mml:msubsup>
              <mml:mo>=</mml:mo>
              <mml:mtext>atan</mml:mtext>
              <mml:mn>2</mml:mn>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:msubsup>
                    <mml:mi>n</mml:mi>
                    <mml:mi>x</mml:mi>
                    <mml:mtext>*</mml:mtext>
                  </mml:msubsup>
                  <mml:mo>,</mml:mo>
                  <mml:msubsup>
                    <mml:mi>n</mml:mi>
                    <mml:mi>y</mml:mi>
                    <mml:mtext>*</mml:mtext>
                  </mml:msubsup>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:mo>,</mml:mo>
              <mml:mtext>
              </mml:mtext>
              <mml:msubsup>
                <mml:mi>q</mml:mi>
                <mml:mi>e</mml:mi>
                <mml:mtext>*</mml:mtext>
              </mml:msubsup>
              <mml:mo>=</mml:mo>
              <mml:mtext>arcsin</mml:mtext>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:msubsup>
                    <mml:mi>n</mml:mi>
                    <mml:mi>z</mml:mi>
                    <mml:mtext>*</mml:mtext>
                  </mml:msubsup>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:mo>.</mml:mo>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>If the mirror instead points directly toward the Sun, <inline-formula><mml:math><mml:mrow><mml:mstyle mathvariant="bold" mathsize="normal"><mml:mi> n </mml:mi></mml:mstyle><mml:mo> = </mml:mo><mml:mstyle mathvariant="bold" mathsize="normal"><mml:mi> s </mml:mi></mml:mstyle></mml:mrow></mml:math></inline-formula> and Equation (2) gives <inline-formula><mml:math><mml:mrow><mml:mstyle mathvariant="bold" mathsize="normal"><mml:mi> r </mml:mi></mml:mstyle><mml:mo> = </mml:mo><mml:mstyle mathvariant="bold" mathsize="normal"><mml:mi> s </mml:mi></mml:mstyle></mml:mrow></mml:math></inline-formula> : light returns toward the solar direction. This does not deliver the required northward beam in the modeled furnace. Thus, a sensor with four light-dependent resistors (LDRs) can be used only with an appropriate geometric transformation, independent sun-sensing mechanism, or receiver-related optical feedback. End-of-travel switches alone do not resolve the geometry.</p>
      </sec>
      <sec id="sec3dot2">
        <title>3.2. Sampled Actuator Dynamics and Backlash</title>
        <p>Each axis is represented by a rate-limited, first-order velocity response. This is a reduced drive model, not an identified armature circuit or a torque-capacity calculation. For shaft angle <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> θ </mml:mi><mml:mi> j </mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> , angular velocity <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> v </mml:mi><mml:mi> j </mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and held rate command <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> u </mml:mi><mml:mi> j </mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> ,</p>
        <disp-formula id="FD4">
          <label>(4)</label>
          <mml:math>
            <mml:mrow>
              <mml:msub>
                <mml:mover accent="true">
                  <mml:mi>θ</mml:mi>
                  <mml:mo>˙</mml:mo>
                </mml:mover>
                <mml:mi>j</mml:mi>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:msub>
                <mml:mi>v</mml:mi>
                <mml:mi>j</mml:mi>
              </mml:msub>
              <mml:mo>,</mml:mo>
              <mml:mtext>
              </mml:mtext>
              <mml:mi>τ</mml:mi>
              <mml:msub>
                <mml:mover accent="true">
                  <mml:mi>v</mml:mi>
                  <mml:mo>˙</mml:mo>
                </mml:mover>
                <mml:mi>j</mml:mi>
              </mml:msub>
              <mml:mo>+</mml:mo>
              <mml:msub>
                <mml:mi>v</mml:mi>
                <mml:mi>j</mml:mi>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:msub>
                <mml:mi>u</mml:mi>
                <mml:mi>j</mml:mi>
              </mml:msub>
              <mml:mo>,</mml:mo>
              <mml:mtext>
              </mml:mtext>
              <mml:mrow>
                <mml:mo>|</mml:mo>
                <mml:mrow>
                  <mml:msub>
                    <mml:mi>u</mml:mi>
                    <mml:mi>j</mml:mi>
                  </mml:msub>
                </mml:mrow>
                <mml:mo>|</mml:mo>
              </mml:mrow>
              <mml:mo>≤</mml:mo>
              <mml:msub>
                <mml:mi>v</mml:mi>
                <mml:mrow>
                  <mml:mtext>max</mml:mtext>
                </mml:mrow>
              </mml:msub>
              <mml:mo>.</mml:mo>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>The controller is sampled every <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> T </mml:mi><mml:mi> s </mml:mi></mml:msub><mml:mo> = </mml:mo><mml:mn> 1 </mml:mn><mml:mtext>   </mml:mtext><mml:mtext> s </mml:mtext></mml:mrow></mml:math></inline-formula> . The plant is integrated exactly over each interval for the held command. Defining <inline-formula><mml:math><mml:mrow><mml:mi> a </mml:mi><mml:mo> = </mml:mo><mml:mtext> exp </mml:mtext><mml:mrow><mml:mo> ( </mml:mo><mml:mrow><mml:mo> − </mml:mo><mml:mrow><mml:mrow><mml:msub><mml:mi> T </mml:mi><mml:mi> s </mml:mi></mml:msub></mml:mrow><mml:mo> / </mml:mo><mml:mi> τ </mml:mi></mml:mrow></mml:mrow><mml:mo> ) </mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> ,</p>
        <disp-formula id="FD5">
          <label>(5)</label>
          <mml:math>
            <mml:mrow>
              <mml:msub>
                <mml:mi>v</mml:mi>
                <mml:mrow>
                  <mml:mi>j</mml:mi>
                  <mml:mo>,</mml:mo>
                  <mml:mi>k</mml:mi>
                  <mml:mo>+</mml:mo>
                  <mml:mn>1</mml:mn>
                </mml:mrow>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:msub>
                <mml:mi>u</mml:mi>
                <mml:mrow>
                  <mml:mi>j</mml:mi>
                  <mml:mo>,</mml:mo>
                  <mml:mi>k</mml:mi>
                </mml:mrow>
              </mml:msub>
              <mml:mo>+</mml:mo>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:msub>
                    <mml:mi>v</mml:mi>
                    <mml:mrow>
                      <mml:mi>j</mml:mi>
                      <mml:mo>,</mml:mo>
                      <mml:mi>k</mml:mi>
                    </mml:mrow>
                  </mml:msub>
                  <mml:mo>−</mml:mo>
                  <mml:msub>
                    <mml:mi>u</mml:mi>
                    <mml:mrow>
                      <mml:mi>j</mml:mi>
                      <mml:mo>,</mml:mo>
                      <mml:mi>k</mml:mi>
                    </mml:mrow>
                  </mml:msub>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:mi>a</mml:mi>
              <mml:mo>,</mml:mo>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:msub>
                <mml:mi>θ</mml:mi>
                <mml:mrow>
                  <mml:mi>j</mml:mi>
                  <mml:mo>,</mml:mo>
                  <mml:mi>k</mml:mi>
                  <mml:mo>+</mml:mo>
                  <mml:mn>1</mml:mn>
                </mml:mrow>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:msub>
                <mml:mi>θ</mml:mi>
                <mml:mrow>
                  <mml:mi>j</mml:mi>
                  <mml:mo>,</mml:mo>
                  <mml:mi>k</mml:mi>
                </mml:mrow>
              </mml:msub>
              <mml:mo>+</mml:mo>
              <mml:msub>
                <mml:mi>u</mml:mi>
                <mml:mrow>
                  <mml:mi>j</mml:mi>
                  <mml:mo>,</mml:mo>
                  <mml:mi>k</mml:mi>
                </mml:mrow>
              </mml:msub>
              <mml:msub>
                <mml:mi>T</mml:mi>
                <mml:mi>s</mml:mi>
              </mml:msub>
              <mml:mo>+</mml:mo>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:msub>
                    <mml:mi>v</mml:mi>
                    <mml:mrow>
                      <mml:mi>j</mml:mi>
                      <mml:mo>,</mml:mo>
                      <mml:mi>k</mml:mi>
                    </mml:mrow>
                  </mml:msub>
                  <mml:mo>−</mml:mo>
                  <mml:msub>
                    <mml:mi>u</mml:mi>
                    <mml:mrow>
                      <mml:mi>j</mml:mi>
                      <mml:mo>,</mml:mo>
                      <mml:mi>k</mml:mi>
                    </mml:mrow>
                  </mml:msub>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:mi>τ</mml:mi>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:mn>1</mml:mn>
                  <mml:mo>−</mml:mo>
                  <mml:mi>a</mml:mi>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:mo>.</mml:mo>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>A symmetric play operator approximates total angular lost motion <inline-formula><mml:math><mml:mi> b </mml:mi></mml:math></inline-formula> between the shaft and optical output angle <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> q </mml:mi><mml:mi> j </mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> :</p>
        <disp-formula id="FD6">
          <label>(6)</label>
          <mml:math display="inline">
            <mml:mrow>
              <mml:msub>
                <mml:mi>q</mml:mi>
                <mml:mrow>
                  <mml:mi>j</mml:mi>
                  <mml:mo>,</mml:mo>
                  <mml:mi>k</mml:mi>
                  <mml:mo>+</mml:mo>
                  <mml:mn>1</mml:mn>
                </mml:mrow>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:mtext>max</mml:mtext>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:msub>
                    <mml:mi>θ</mml:mi>
                    <mml:mrow>
                      <mml:mi>j</mml:mi>
                      <mml:mo>,</mml:mo>
                      <mml:mi>k</mml:mi>
                      <mml:mo>+</mml:mo>
                      <mml:mn>1</mml:mn>
                    </mml:mrow>
                  </mml:msub>
                  <mml:mo>−</mml:mo>
                  <mml:mfrac>
                    <mml:mi>b</mml:mi>
                    <mml:mn>2</mml:mn>
                  </mml:mfrac>
                  <mml:mo>,</mml:mo>
                  <mml:mtext>
                     
                  </mml:mtext>
                  <mml:mtext>min</mml:mtext>
                  <mml:mrow>
                    <mml:mo>(</mml:mo>
                    <mml:mrow>
                      <mml:msub>
                        <mml:mi>θ</mml:mi>
                        <mml:mrow>
                          <mml:mi>j</mml:mi>
                          <mml:mo>,</mml:mo>
                          <mml:mi>k</mml:mi>
                          <mml:mo>+</mml:mo>
                          <mml:mn>1</mml:mn>
                        </mml:mrow>
                      </mml:msub>
                      <mml:mo>+</mml:mo>
                      <mml:mfrac>
                        <mml:mi>b</mml:mi>
                        <mml:mn>2</mml:mn>
                      </mml:mfrac>
                      <mml:mo>,</mml:mo>
                      <mml:msub>
                        <mml:mi>q</mml:mi>
                        <mml:mrow>
                          <mml:mi>j</mml:mi>
                          <mml:mo>,</mml:mo>
                          <mml:mi>k</mml:mi>
                        </mml:mrow>
                      </mml:msub>
                    </mml:mrow>
                    <mml:mo>)</mml:mo>
                  </mml:mrow>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:mo>.</mml:mo>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>Hard position limits suppress outward commands and reset velocity at the bounds. Nominal total lost motion is 0.06˚, with encoder offsets of +0.03˚ in azimuth and −0.02˚ in elevation for all active strategies. When disabled, the output stops after velocity decays and then holds its position. This assumes adequate passive retention or a holding mechanism; it is not established by the CAD transmission. Prescribed perturbations applied after the play operator test sensitivity to unobserved output motion, without representing structural wind dynamics.</p>
      </sec>
      <sec id="sec3dot3">
        <title>3.3. Two Successive Reflections and Receiver Interception</title>
        <p>An explicit ray model avoids treating dish interception as receiver absorption. In the adopted frame, the dish vertex is <inline-formula><mml:math><mml:mrow><mml:mrow><mml:mo> ( </mml:mo><mml:mrow><mml:mn> 0 </mml:mn><mml:mo> , </mml:mo><mml:mi> L </mml:mi><mml:mo> , </mml:mo><mml:mn> 0 </mml:mn></mml:mrow><mml:mo> ) </mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> and the paraboloid is</p>
        <disp-formula id="FD7">
          <label>(7)</label>
          <mml:math display="inline">
            <mml:mrow>
              <mml:mi>y</mml:mi>
              <mml:mo>=</mml:mo>
              <mml:mi>L</mml:mi>
              <mml:mo>−</mml:mo>
              <mml:mfrac>
                <mml:mrow>
                  <mml:msup>
                    <mml:mi>x</mml:mi>
                    <mml:mn>2</mml:mn>
                  </mml:msup>
                  <mml:mo>+</mml:mo>
                  <mml:msup>
                    <mml:mi>z</mml:mi>
                    <mml:mn>2</mml:mn>
                  </mml:msup>
                </mml:mrow>
                <mml:mrow>
                  <mml:mn>4</mml:mn>
                  <mml:mi>f</mml:mi>
                </mml:mrow>
              </mml:mfrac>
              <mml:mo>,</mml:mo>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mi>f</mml:mi>
              <mml:mo>=</mml:mo>
              <mml:mfrac>
                <mml:mrow>
                  <mml:msup>
                    <mml:mi>D</mml:mi>
                    <mml:mn>2</mml:mn>
                  </mml:msup>
                </mml:mrow>
                <mml:mrow>
                  <mml:mn>16</mml:mn>
                  <mml:mi>d</mml:mi>
                </mml:mrow>
              </mml:mfrac>
              <mml:mo>,</mml:mo>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:msup>
                <mml:mi>x</mml:mi>
                <mml:mn>2</mml:mn>
              </mml:msup>
              <mml:mo>+</mml:mo>
              <mml:msup>
                <mml:mi>z</mml:mi>
                <mml:mn>2</mml:mn>
              </mml:msup>
              <mml:mo>≤</mml:mo>
              <mml:msup>
                <mml:mrow>
                  <mml:mrow>
                    <mml:mo>(</mml:mo>
                    <mml:mrow>
                      <mml:mfrac>
                        <mml:mi>D</mml:mi>
                        <mml:mn>2</mml:mn>
                      </mml:mfrac>
                    </mml:mrow>
                    <mml:mo>)</mml:mo>
                  </mml:mrow>
                </mml:mrow>
                <mml:mn>2</mml:mn>
              </mml:msup>
              <mml:mo>.</mml:mo>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>Here, <inline-formula><mml:math><mml:mi> D </mml:mi></mml:math></inline-formula> is aperture diameter, <inline-formula><mml:math><mml:mi> d </mml:mi></mml:math></inline-formula> is sag and <inline-formula><mml:math><mml:mi> L </mml:mi></mml:math></inline-formula> is the mirror-to-vertex distance. Rays are launched from points distributed over the actual oriented plane mirror. Substituting each reflected ray into Equation (7) produces a quadratic equation; the nearest positive physical intersection is retained. Rays outside the circular aperture are rejected. The ideal dish normal is proportional to <inline-formula><mml:math><mml:mrow><mml:msup><mml:mrow><mml:mrow><mml:mo> [ </mml:mo><mml:mrow><mml:mrow><mml:mi> x </mml:mi><mml:mo> / </mml:mo><mml:mrow><mml:mrow><mml:mo> ( </mml:mo><mml:mrow><mml:mn> 2 </mml:mn><mml:mi> f </mml:mi></mml:mrow><mml:mo> ) </mml:mo></mml:mrow></mml:mrow></mml:mrow><mml:mo> , </mml:mo><mml:mn> 1 </mml:mn><mml:mo> , </mml:mo><mml:mrow><mml:mi> z </mml:mi><mml:mo> / </mml:mo><mml:mrow><mml:mrow><mml:mo> ( </mml:mo><mml:mrow><mml:mn> 2 </mml:mn><mml:mi> f </mml:mi></mml:mrow><mml:mo> ) </mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:mrow><mml:mo> ] </mml:mo></mml:mrow></mml:mrow><mml:mtext> T </mml:mtext></mml:msup></mml:mrow></mml:math></inline-formula> , and a second application of the reflection law gives the outgoing direction from the dish.</p>
        <p>The square aperture has a specified orientation in its own plane. Let a and e be the actual output azimuth and elevation after backlash and any imposed angular disturbance. At <italic>a</italic> = <italic>e</italic> = 0, the width direction is east, the height direction is up, and the normal points north. Using active, right-handed rotations of column vectors, the rotation is</p>
        <disp-formula id="FD8">
          <label>(8)</label>
          <mml:math>
            <mml:mrow>
              <mml:mi>R</mml:mi>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:mi>a</mml:mi>
                  <mml:mo>,</mml:mo>
                  <mml:mi>e</mml:mi>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:mo>=</mml:mo>
              <mml:msub>
                <mml:mi>R</mml:mi>
                <mml:mi>z</mml:mi>
              </mml:msub>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:mo>−</mml:mo>
                  <mml:mi>a</mml:mi>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:msub>
                <mml:mi>R</mml:mi>
                <mml:mi>x</mml:mi>
              </mml:msub>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mi>e</mml:mi>
                <mml:mo>)</mml:mo>
              </mml:mrow>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>with the rightmost factor acting first. Equivalently, rotate by −a about global up, then by e about the rotated east axis. The local width and height unit vectors, and the aperture normal, are</p>
        <disp-formula id="FD9">
          <label>(9)</label>
          <mml:math>
            <mml:mrow>
              <mml:mstyle mathvariant="bold" mathsize="normal">
                <mml:mi>u</mml:mi>
              </mml:mstyle>
              <mml:mo>=</mml:mo>
              <mml:mi>R</mml:mi>
              <mml:msub>
                <mml:mstyle mathvariant="bold" mathsize="normal">
                  <mml:mi>e</mml:mi>
                </mml:mstyle>
                <mml:mi>x</mml:mi>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:msup>
                <mml:mrow>
                  <mml:mrow>
                    <mml:mo>(</mml:mo>
                    <mml:mrow>
                      <mml:mi>cos</mml:mi>
                      <mml:mi>a</mml:mi>
                      <mml:mo>,</mml:mo>
                      <mml:mo>−</mml:mo>
                      <mml:mi>sin</mml:mi>
                      <mml:mi>a</mml:mi>
                      <mml:mo>,</mml:mo>
                      <mml:mn>0</mml:mn>
                    </mml:mrow>
                    <mml:mo>)</mml:mo>
                  </mml:mrow>
                </mml:mrow>
                <mml:mi>T</mml:mi>
              </mml:msup>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <disp-formula id="FD10">
          <label>(10)</label>
          <mml:math>
            <mml:mrow>
              <mml:mstyle mathvariant="bold" mathsize="normal">
                <mml:mi>v</mml:mi>
              </mml:mstyle>
              <mml:mo>=</mml:mo>
              <mml:mi>R</mml:mi>
              <mml:msub>
                <mml:mstyle mathvariant="bold" mathsize="normal">
                  <mml:mi>e</mml:mi>
                </mml:mstyle>
                <mml:mi>z</mml:mi>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:msup>
                <mml:mrow>
                  <mml:mrow>
                    <mml:mo>(</mml:mo>
                    <mml:mrow>
                      <mml:mo>−</mml:mo>
                      <mml:mi>sin</mml:mi>
                      <mml:mi>e</mml:mi>
                      <mml:mi>sin</mml:mi>
                      <mml:mi>a</mml:mi>
                      <mml:mo>,</mml:mo>
                      <mml:mo>−</mml:mo>
                      <mml:mi>sin</mml:mi>
                      <mml:mi>e</mml:mi>
                      <mml:mi>cos</mml:mi>
                      <mml:mi>a</mml:mi>
                      <mml:mo>,</mml:mo>
                      <mml:mi>cos</mml:mi>
                      <mml:mi>e</mml:mi>
                    </mml:mrow>
                    <mml:mo>)</mml:mo>
                  </mml:mrow>
                </mml:mrow>
                <mml:mi>T</mml:mi>
              </mml:msup>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <disp-formula id="FD11">
          <label>(11)</label>
          <mml:math>
            <mml:mrow>
              <mml:mstyle mathvariant="bold" mathsize="normal">
                <mml:mi>n</mml:mi>
              </mml:mstyle>
              <mml:mo>=</mml:mo>
              <mml:mi>R</mml:mi>
              <mml:msub>
                <mml:mstyle mathvariant="bold" mathsize="normal">
                  <mml:mi>e</mml:mi>
                </mml:mstyle>
                <mml:mi>y</mml:mi>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:msup>
                <mml:mrow>
                  <mml:mrow>
                    <mml:mo>(</mml:mo>
                    <mml:mrow>
                      <mml:mi>cos</mml:mi>
                      <mml:mi>e</mml:mi>
                      <mml:mi>sin</mml:mi>
                      <mml:mi>a</mml:mi>
                      <mml:mo>,</mml:mo>
                      <mml:mi>cos</mml:mi>
                      <mml:mi>e</mml:mi>
                      <mml:mi>cos</mml:mi>
                      <mml:mi>a</mml:mi>
                      <mml:mo>,</mml:mo>
                      <mml:mi>sin</mml:mi>
                      <mml:mi>e</mml:mi>
                    </mml:mrow>
                    <mml:mo>)</mml:mo>
                  </mml:mrow>
                </mml:mrow>
                <mml:mi>T</mml:mi>
              </mml:msup>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>There is no additional rotation about the normal. With the mirror center at the origin, width <italic>W</italic> and height <italic>H,</italic> ray origins are</p>
        <disp-formula id="FD12">
          <label>(12)</label>
          <mml:math>
            <mml:mrow>
              <mml:mstyle mathvariant="bold" mathsize="normal">
                <mml:mi>o</mml:mi>
              </mml:mstyle>
              <mml:mo>=</mml:mo>
              <mml:mi>W</mml:mi>
              <mml:mi>ξ</mml:mi>
              <mml:mstyle mathvariant="bold" mathsize="normal">
                <mml:mi>u</mml:mi>
              </mml:mstyle>
              <mml:mo>+</mml:mo>
              <mml:mi>H</mml:mi>
              <mml:mi>η</mml:mi>
              <mml:mstyle mathvariant="bold" mathsize="normal">
                <mml:mi>v</mml:mi>
              </mml:mstyle>
              <mml:mo>,</mml:mo>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mi>ξ</mml:mi>
              <mml:mo>,</mml:mo>
              <mml:mi>η</mml:mi>
              <mml:mo>∈</mml:mo>
              <mml:mrow>
                <mml:mo>[</mml:mo>
                <mml:mrow>
                  <mml:mo>−</mml:mo>
                  <mml:mrow>
                    <mml:mn>1</mml:mn>
                    <mml:mo>/</mml:mo>
                    <mml:mn>2</mml:mn>
                  </mml:mrow>
                  <mml:mo>,</mml:mo>
                  <mml:mrow>
                    <mml:mn>1</mml:mn>
                    <mml:mo>/</mml:mo>
                    <mml:mn>2</mml:mn>
                  </mml:mrow>
                </mml:mrow>
                <mml:mo>]</mml:mo>
              </mml:mrow>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>Here ξ and η are the centered Halton aperture coordinates. This basis fixes the square edges relative to the circular dish and therefore its clipping. Slope-error perturbations change the reflecting normals only; they do not rotate the aperture or move its sampled points.</p>
        <p>The receiver is modeled as a circular disk in the plane <inline-formula><mml:math><mml:mrow><mml:mi> y </mml:mi><mml:mo> = </mml:mo><mml:mi> L </mml:mi><mml:mo> − </mml:mo><mml:mi> f </mml:mi></mml:mrow></mml:math></inline-formula> , centered at the ideal focus. A ray contributes only when it reaches that plane in the forward direction and intersects the disk. Rays that encounter the receiver before reaching the dish are excluded as central obscuration. Frame and support shading, mutual shading by other structures, circumsolar radiation and multiple scattering are omitted. No usable diffuse contribution is added to the concentrator input.</p>
        <p>The angular solar source is a uniform disk of radius 4.65 mrad. At each reflection, two independent Gaussian perturbations with nominal standard deviation 2 mrad per tangent component are added to the surface normal and the result is renormalized. These errors describe an assumed angular distribution; they are not a measured, spatially correlated reflector map. The ray-tracing approach follows the geometric principles used in dedicated solar optical tools [<xref ref-type="bibr" rid="B15">15</xref>]. Explicit treatment of sunshape, slope error and verification is motivated by the cross-code assessment of Wang <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B16">16</xref>].</p>
        <p>Deterministic Halton coordinates [<xref ref-type="bibr" rid="B17">17</xref>], using bases 2, 3, 5, 7, 11, 13, 17 and 19, sample mirror position, solar disk position and the two surface-error pairs. Box-Muller transformations generate the Gaussian components. Reusing the same ray coordinates across strategies reduces sampling differences in paired comparisons. The nominal count is 4096 rays per optical evaluation. Increasing the count is a quadrature check, not a statistical replication of independent weather days.</p>
        <p>For mirror area <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> A </mml:mi><mml:mi> m </mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> , mirror and dish reflectances <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> ρ </mml:mi><mml:mi> m </mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> ρ </mml:mi><mml:mi> d </mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> , receiver absorptance <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> α </mml:mi><mml:mi> r </mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> , direct normal irradiance (DNI) <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> G </mml:mi><mml:mi> b </mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and receiver-hit indicator <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> χ </mml:mi><mml:mi> i </mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> ,</p>
        <disp-formula id="FD13">
          <label>(13)</label>
          <mml:math>
            <mml:mrow>
              <mml:msub>
                <mml:mi>P</mml:mi>
                <mml:mrow>
                  <mml:mtext>abs</mml:mtext>
                </mml:mrow>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:msub>
                <mml:mi>G</mml:mi>
                <mml:mi>b</mml:mi>
              </mml:msub>
              <mml:msub>
                <mml:mi>A</mml:mi>
                <mml:mi>m</mml:mi>
              </mml:msub>
              <mml:msub>
                <mml:mi>ρ</mml:mi>
                <mml:mi>m</mml:mi>
              </mml:msub>
              <mml:msub>
                <mml:mi>ρ</mml:mi>
                <mml:mi>d</mml:mi>
              </mml:msub>
              <mml:msub>
                <mml:mi>α</mml:mi>
                <mml:mi>r</mml:mi>
              </mml:msub>
              <mml:mfrac>
                <mml:mn>1</mml:mn>
                <mml:mrow>
                  <mml:msub>
                    <mml:mi>N</mml:mi>
                    <mml:mi>r</mml:mi>
                  </mml:msub>
                </mml:mrow>
              </mml:mfrac>
              <mml:munderover>
                <mml:mstyle mathsize="140%" displaystyle="true">
                  <mml:mo>∑</mml:mo>
                </mml:mstyle>
                <mml:mrow>
                  <mml:mi>i</mml:mi>
                  <mml:mo>=</mml:mo>
                  <mml:mn>1</mml:mn>
                </mml:mrow>
                <mml:mrow>
                  <mml:msub>
                    <mml:mi>N</mml:mi>
                    <mml:mi>r</mml:mi>
                  </mml:msub>
                </mml:mrow>
              </mml:munderover>
              <mml:mi>max</mml:mi>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:msub>
                    <mml:mstyle mathvariant="bold" mathsize="normal">
                      <mml:mi>s</mml:mi>
                    </mml:mstyle>
                    <mml:mi>i</mml:mi>
                  </mml:msub>
                  <mml:mo>⋅</mml:mo>
                  <mml:mstyle mathvariant="bold" mathsize="normal">
                    <mml:mi>n</mml:mi>
                  </mml:mstyle>
                  <mml:mo>,</mml:mo>
                  <mml:mn>0</mml:mn>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:msub>
                <mml:mi>χ</mml:mi>
                <mml:mi>i</mml:mi>
              </mml:msub>
              <mml:mo>.</mml:mo>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>The projected area uses the nominal planar aperture normal; the perturbed normals affect reflected directions. The reflectances are 0.88 and 0.82, and absorptance is 0.95. These are scenario values. <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> P </mml:mi><mml:mrow><mml:mtext> abs </mml:mtext></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> is optical power absorbed by the modeled receiver; it is not useful cooking power. Receiver conduction, convection, radiation loss, thermal inertia and load coupling are not modeled.</p>
      </sec>
    </sec>
    <sec id="sec4">
      <title>4. Tracking Strategies and Supervisory Logic</title>
      <p><bold>Table 2</bold> defines the controller families. The 30-minute comparator uses the correct bisector and the same actuator model, isolating update interval from aiming geometry. SPA comparisons also include one-, five- and fifteen-minute updates. Ideal direct solar alignment is evaluated separately as a geometric failure case.</p>
      <p>For the active servo strategies, the measured shaft angle is <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> θ </mml:mi><mml:mrow><mml:mi> j </mml:mi><mml:mo> , </mml:mo><mml:mi> k </mml:mi></mml:mrow></mml:msub><mml:mo> + </mml:mo><mml:msub><mml:mi> β </mml:mi><mml:mi> j </mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and the position error is <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> e </mml:mi><mml:mrow><mml:mi> j </mml:mi><mml:mo> , </mml:mo><mml:mi> k </mml:mi></mml:mrow></mml:msub><mml:mo> = </mml:mo><mml:msubsup><mml:mi> q </mml:mi><mml:mrow><mml:mi> j </mml:mi><mml:mo> , </mml:mo><mml:mi> k </mml:mi></mml:mrow><mml:mtext> * </mml:mtext></mml:msubsup><mml:mo> − </mml:mo><mml:mrow><mml:mo> ( </mml:mo><mml:mrow><mml:msub><mml:mi> θ </mml:mi><mml:mrow><mml:mi> j </mml:mi><mml:mo> , </mml:mo><mml:mi> k </mml:mi></mml:mrow></mml:msub><mml:mo> + </mml:mo><mml:msub><mml:mi> β </mml:mi><mml:mi> j </mml:mi></mml:msub></mml:mrow><mml:mo> ) </mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> . The rate command is a saturated proportional law with gain <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> K </mml:mi><mml:mi> p </mml:mi></mml:msub><mml:mo> = </mml:mo><mml:mn> 0.25 </mml:mn><mml:mtext>   </mml:mtext><mml:msup><mml:mtext> s </mml:mtext><mml:mrow><mml:mo> − </mml:mo><mml:mn> 1 </mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula> and maximum rate 0.4˚ s<sup>−</sup><sup>1</sup>. In the hysteretic strategy, each axis has an activation state <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> a </mml:mi><mml:mi> j </mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> :</p>
      <disp-formula id="FD14">
        <label>(14)</label>
        <mml:math>
          <mml:mrow>
            <mml:msub>
              <mml:mi>a</mml:mi>
              <mml:mrow>
                <mml:mi>j</mml:mi>
                <mml:mo>,</mml:mo>
                <mml:mi>k</mml:mi>
              </mml:mrow>
            </mml:msub>
            <mml:mo>=</mml:mo>
            <mml:mrow>
              <mml:mo>{</mml:mo>
              <mml:mrow>
                <mml:mtable columnalign="left">
                  <mml:mtr columnalign="left">
                    <mml:mtd columnalign="left">
                      <mml:mrow>
                        <mml:mn>1</mml:mn>
                        <mml:mo>,</mml:mo>
                      </mml:mrow>
                    </mml:mtd>
                    <mml:mtd columnalign="left">
                      <mml:mrow>
                        <mml:mrow>
                          <mml:mo>|</mml:mo>
                          <mml:mrow>
                            <mml:msub>
                              <mml:mi>e</mml:mi>
                              <mml:mrow>
                                <mml:mi>j</mml:mi>
                                <mml:mo>,</mml:mo>
                                <mml:mi>k</mml:mi>
                              </mml:mrow>
                            </mml:msub>
                          </mml:mrow>
                          <mml:mo>|</mml:mo>
                        </mml:mrow>
                        <mml:mo>≥</mml:mo>
                        <mml:msub>
                          <mml:mi>e</mml:mi>
                          <mml:mrow>
                            <mml:mtext>on</mml:mtext>
                          </mml:mrow>
                        </mml:msub>
                        <mml:mo>,</mml:mo>
                      </mml:mrow>
                    </mml:mtd>
                  </mml:mtr>
                  <mml:mtr columnalign="left">
                    <mml:mtd columnalign="left">
                      <mml:mrow>
                        <mml:mn>0</mml:mn>
                        <mml:mo>,</mml:mo>
                      </mml:mrow>
                    </mml:mtd>
                    <mml:mtd columnalign="left">
                      <mml:mrow>
                        <mml:mrow>
                          <mml:mo>|</mml:mo>
                          <mml:mrow>
                            <mml:msub>
                              <mml:mi>e</mml:mi>
                              <mml:mrow>
                                <mml:mi>j</mml:mi>
                                <mml:mo>,</mml:mo>
                                <mml:mi>k</mml:mi>
                              </mml:mrow>
                            </mml:msub>
                          </mml:mrow>
                          <mml:mo>|</mml:mo>
                        </mml:mrow>
                        <mml:mo>≤</mml:mo>
                        <mml:msub>
                          <mml:mi>e</mml:mi>
                          <mml:mrow>
                            <mml:mtext>off</mml:mtext>
                          </mml:mrow>
                        </mml:msub>
                        <mml:mo>,</mml:mo>
                      </mml:mrow>
                    </mml:mtd>
                  </mml:mtr>
                  <mml:mtr columnalign="left">
                    <mml:mtd columnalign="left">
                      <mml:mrow>
                        <mml:msub>
                          <mml:mi>a</mml:mi>
                          <mml:mrow>
                            <mml:mi>j</mml:mi>
                            <mml:mo>,</mml:mo>
                            <mml:mi>k</mml:mi>
                            <mml:mo>−</mml:mo>
                            <mml:mn>1</mml:mn>
                          </mml:mrow>
                        </mml:msub>
                        <mml:mo>,</mml:mo>
                      </mml:mrow>
                    </mml:mtd>
                    <mml:mtd columnalign="left">
                      <mml:mrow>
                        <mml:mtext>otherwise</mml:mtext>
                        <mml:mo>,</mml:mo>
                      </mml:mrow>
                    </mml:mtd>
                  </mml:mtr>
                </mml:mtable>
              </mml:mrow>
            </mml:mrow>
            <mml:mtext>
               
            </mml:mtext>
            <mml:mtext>
               
            </mml:mtext>
            <mml:mtext>
               
            </mml:mtext>
            <mml:mtext>
               
            </mml:mtext>
            <mml:msub>
              <mml:mi>u</mml:mi>
              <mml:mrow>
                <mml:mi>j</mml:mi>
                <mml:mo>,</mml:mo>
                <mml:mi>k</mml:mi>
              </mml:mrow>
            </mml:msub>
            <mml:mo>=</mml:mo>
            <mml:msub>
              <mml:mi>a</mml:mi>
              <mml:mrow>
                <mml:mi>j</mml:mi>
                <mml:mo>,</mml:mo>
                <mml:mi>k</mml:mi>
              </mml:mrow>
            </mml:msub>
            <mml:mtext>
               
            </mml:mtext>
            <mml:mtext>sat</mml:mtext>
            <mml:mrow>
              <mml:mo>(</mml:mo>
              <mml:mrow>
                <mml:msub>
                  <mml:mi>K</mml:mi>
                  <mml:mi>p</mml:mi>
                </mml:msub>
                <mml:msub>
                  <mml:mi>e</mml:mi>
                  <mml:mrow>
                    <mml:mi>j</mml:mi>
                    <mml:mo>,</mml:mo>
                    <mml:mi>k</mml:mi>
                  </mml:mrow>
                </mml:msub>
                <mml:mo>,</mml:mo>
                <mml:mtext>
                   
                </mml:mtext>
                <mml:mo>±</mml:mo>
                <mml:msub>
                  <mml:mi>v</mml:mi>
                  <mml:mrow>
                    <mml:mtext>max</mml:mtext>
                  </mml:mrow>
                </mml:msub>
              </mml:mrow>
              <mml:mo>)</mml:mo>
            </mml:mrow>
            <mml:mo>.</mml:mo>
          </mml:mrow>
        </mml:math>
      </disp-formula>
      <p><bold>Table 2.</bold> Controller comparison with common geometry and actuator assumptions.</p>
      <table-wrap id="tbl2">
        <label>Table 2</label>
        <table>
          <tbody>
            <tr>
              <td>
                <bold>Strategy</bold>
              </td>
              <td>
                <bold>Reference and actuation</bold>
              </td>
              <td>
                <bold>Purpose</bold>
              </td>
            </tr>
            <tr>
              <td>Fixed</td>
              <td>Solar-noon bisector held all day; no motion</td>
              <td>Limiting optical reference</td>
            </tr>
            <tr>
              <td>Periodic 30</td>
              <td>Bisector reference updated every 1800 s; proportional servo</td>
              <td>Effect of long update intervals</td>
            </tr>
            <tr>
              <td>Continuous</td>
              <td>Bisector updated every 1 s; proportional servo</td>
              <td>Accuracy reference with the same plant</td>
            </tr>
            <tr>
              <td>Event</td>
              <td>Bisector updated every 1 s; 0.12˚ and 0.03˚ hysteresis</td>
              <td>Optical and energized-time trade-off</td>
            </tr>
          </tbody>
        </table>
      </table-wrap>
      <p>The nominal activation and release thresholds are 0.12˚ and 0.03˚. Continuous tracking applies the same proportional law without the angular activation state. Both share the same irradiance supervisor. Motion is disabled below 120 W∙m<sup>−</sup><sup>2</sup> and enabled at or above 180 W∙m<sup>−</sup><sup>2</sup>; the preceding state is retained between thresholds. The simulated supervisor receives DNI directly. An LDR voltage cannot be substituted for this quantity without calibration, particularly under diffuse or partly shaded conditions.</p>
      <p>Nominal cases start prealigned at 08:00 with zero velocity and the specified encoder bias. Startup acquisition, night return and emergency stow energy are excluded. The fixed mirror holds the solar-noon bisector throughout. Section 6.3 reports a separate initial-misalignment test.</p>
    </sec>
    <sec id="sec5">
      <title>5. Numerical Protocol and Performance Measures</title>
      <sec id="sec5dot1">
        <title>5.1. Synthetic Scenarios and Implementation</title>
        <p>Four 10 h windows, from 08:00 to 18:00 local civil time, are evaluated on 21 March, 21 June, 23 September and 21 December 2026. These dates sample seasonal geometry; they are not observations on those dates and are not sufficient for an annual yield estimate. The illustrative clear-input profile is</p>
        <disp-formula id="FD15">
          <label>(15)</label>
          <mml:math>
            <mml:mrow>
              <mml:msub>
                <mml:mi>G</mml:mi>
                <mml:mi>b</mml:mi>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:mn>900</mml:mn>
              <mml:mi>exp</mml:mi>
              <mml:mrow>
                <mml:mo>[</mml:mo>
                <mml:mrow>
                  <mml:mo>−</mml:mo>
                  <mml:mfrac>
                    <mml:mrow>
                      <mml:mn>0.15</mml:mn>
                    </mml:mrow>
                    <mml:mrow>
                      <mml:mtext>max</mml:mtext>
                      <mml:mrow>
                        <mml:mo>(</mml:mo>
                        <mml:mrow>
                          <mml:msub>
                            <mml:mi>s</mml:mi>
                            <mml:mi>z</mml:mi>
                          </mml:msub>
                          <mml:mo>,</mml:mo>
                          <mml:mn>0.05</mml:mn>
                        </mml:mrow>
                        <mml:mo>)</mml:mo>
                      </mml:mrow>
                    </mml:mrow>
                  </mml:mfrac>
                </mml:mrow>
                <mml:mo>]</mml:mo>
              </mml:mrow>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mtext>W</mml:mtext>
              <mml:mo>⋅</mml:mo>
              <mml:msup>
                <mml:mtext>m</mml:mtext>
                <mml:mrow>
                  <mml:mo>−</mml:mo>
                  <mml:mn>2</mml:mn>
                </mml:mrow>
              </mml:msup>
              <mml:mo>,</mml:mo>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:msub>
                <mml:mi>s</mml:mi>
                <mml:mi>z</mml:mi>
              </mml:msub>
              <mml:mo>&gt;</mml:mo>
              <mml:mn>0</mml:mn>
              <mml:mo>,</mml:mo>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>with zero DNI below the horizon. This smooth profile is an imposed test signal, not a validated Niamey clear-sky model. The intermittent case multiplies it by 0.12 from 10:30 to 11:00, by 0.08 from 13:12 to 13:36, and by 0.25 from 15:09 to 15:18. Abrupt edges stress the supervisor and reacquisition behavior.</p>
        <p>The model was executed in base MATLAB R2024b (24.2.0.2712019) on 64-bit Windows (MATLAB platform identifier PCWIN64), without Simulink or specialized toolboxes. A separate Python/NumPy implementation uses the same equations and deterministic rays. The executed sets comprise 16 NOAA reference scenarios with sensitivity and resolution sweeps, and 340 cases covering SPA comparisons, joint uncertainty and disturbances. Section 5.4 consolidates implementation agreement and numerical verification.</p>
        <p>The controller period is 1 s, with exact held-input plant propagation. For the NOAA cases, optical power is sampled every 60 s in smooth continuous and hysteretic runs, and every 15 s in periodic and intermittent runs. SPA comparison intervals are specified in Section 6.1; uncertainty and stress resolutions are defined below. Energy uses trapezoidal integration. Optical refinement and changes to the discrete controller period are assessed separately in Section 5.4.</p>
        <p>We used ChatGPT (OpenAI, accessed in September-October 2026) to help develop the optical and control models, prepare MATLAB and Python simulation and plotting scripts, design verification and robustness tests, and refine the numerical calculations. It also helped with manuscript writing and language editing. We checked the calculations using the methods described in Section 5.4, including analytical checks, independent calculations, comparisons between implementations, and refinement tests. The authors take full responsibility for the methods, results, and final manuscript.</p>
      </sec>
      <sec id="sec5dot2">
        <title>5.2. Optical and Actuation Metrics</title>
        <p>The reflected central-ray pointing error is the angle between the actual ray and the required dish-axis direction:</p>
        <disp-formula id="FD16">
          <label>(16)</label>
          <mml:math>
            <mml:mrow>
              <mml:msub>
                <mml:mi>ε</mml:mi>
                <mml:mi>r</mml:mi>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:mtext>atan</mml:mtext>
              <mml:mn>2</mml:mn>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:mrow>
                    <mml:mo>‖</mml:mo>
                    <mml:mrow>
                      <mml:mstyle mathvariant="bold" mathsize="normal">
                        <mml:mi>r</mml:mi>
                      </mml:mstyle>
                      <mml:mo>×</mml:mo>
                      <mml:mstyle mathvariant="bold" mathsize="normal">
                        <mml:mi>t</mml:mi>
                      </mml:mstyle>
                    </mml:mrow>
                    <mml:mo>‖</mml:mo>
                  </mml:mrow>
                  <mml:mo>,</mml:mo>
                  <mml:mstyle mathvariant="bold" mathsize="normal">
                    <mml:mi>r</mml:mi>
                  </mml:mstyle>
                  <mml:mo>⋅</mml:mo>
                  <mml:mstyle mathvariant="bold" mathsize="normal">
                    <mml:mi>t</mml:mi>
                  </mml:mstyle>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:mo>,</mml:mo>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:msub>
                <mml:mi>E</mml:mi>
                <mml:mrow>
                  <mml:mtext>abs</mml:mtext>
                </mml:mrow>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:mfrac>
                <mml:mn>1</mml:mn>
                <mml:mrow>
                  <mml:mn>3.6</mml:mn>
                  <mml:mo>×</mml:mo>
                  <mml:msup>
                    <mml:mrow>
                      <mml:mn>10</mml:mn>
                    </mml:mrow>
                    <mml:mn>6</mml:mn>
                  </mml:msup>
                </mml:mrow>
              </mml:mfrac>
              <mml:mstyle displaystyle="true">
                <mml:mrow>
                  <mml:mo>∫</mml:mo>
                  <mml:mrow>
                    <mml:msub>
                      <mml:mi>P</mml:mi>
                      <mml:mrow>
                        <mml:mtext>abs</mml:mtext>
                      </mml:mrow>
                    </mml:msub>
                    <mml:mtext>
                       
                    </mml:mtext>
                    <mml:mtext>d</mml:mtext>
                    <mml:mi>t</mml:mi>
                  </mml:mrow>
                </mml:mrow>
              </mml:mstyle>
              <mml:mo>.</mml:mo>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>Energy is in kWh for power in watts and time in seconds. The root-mean-square error (RMSE) and 95th percentile of pointing error use only times with DNI at least 180 W∙m<sup>−</sup><sup>2</sup>; energy includes the full 10 h window. This separates daytime pointing accuracy from large errors during near-dark holds while retaining their optical consequences.</p>
        <p>Accumulated energized axis time sums the enabled duration of the two axes separately. Thus, two continuously enabled axes over 10 h give approximately 20 axis-hours. The electrical budget is</p>
        <disp-formula id="FD17">
          <label>(17)</label>
          <mml:math>
            <mml:mrow>
              <mml:msub>
                <mml:mi>E</mml:mi>
                <mml:mrow>
                  <mml:mtext>el</mml:mtext>
                </mml:mrow>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:msub>
                <mml:mi>P</mml:mi>
                <mml:mi>c</mml:mi>
              </mml:msub>
              <mml:mi>T</mml:mi>
              <mml:mo>+</mml:mo>
              <mml:msub>
                <mml:mi>P</mml:mi>
                <mml:mi>a</mml:mi>
              </mml:msub>
              <mml:munderover>
                <mml:mstyle mathsize="140%" displaystyle="true">
                  <mml:mo>∑</mml:mo>
                </mml:mstyle>
                <mml:mrow>
                  <mml:mi>j</mml:mi>
                  <mml:mo>=</mml:mo>
                  <mml:mn>1</mml:mn>
                </mml:mrow>
                <mml:mn>2</mml:mn>
              </mml:munderover>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:msub>
                <mml:mi>T</mml:mi>
                <mml:mrow>
                  <mml:mi>a</mml:mi>
                  <mml:mo>,</mml:mo>
                  <mml:mi>j</mml:mi>
                </mml:mrow>
              </mml:msub>
              <mml:mo>,</mml:mo>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>with time in hours, supervisory power <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> P </mml:mi><mml:mi> c </mml:mi></mml:msub><mml:mo> = </mml:mo><mml:mn> 1 </mml:mn><mml:mtext>   </mml:mtext><mml:mtext> W </mml:mtext></mml:mrow></mml:math></inline-formula> and enabled-axis power <inline-formula><mml:math><mml:mrow><mml:msub><mml:mi> P </mml:mi><mml:mi> a </mml:mi></mml:msub><mml:mo> = </mml:mo><mml:mn> 12 </mml:mn><mml:mtext>   </mml:mtext><mml:mtext> W </mml:mtext></mml:mrow></mml:math></inline-formula> . A command magnitude above 10<sup>−</sup><sup>7</sup>˚ s<sup>−</sup><sup>1</sup> counts as enabled. This numerical criterion assigns the full axis power even to very small commands; it is not a measured current or driver threshold. We report energized time, activation count and absolute angular travel separately from this conditional electrical budget. Optical and electrical energy are not combined into a net-energy or economic optimum.</p>
        <p>Activation count is the sum of inactive-to-active command transitions over the two axes. For axis j and held-command interval k, define</p>
        <disp-formula id="FD18">
          <label>(18)</label>
          <mml:math>
            <mml:mrow>
              <mml:msub>
                <mml:mi>b</mml:mi>
                <mml:mrow>
                  <mml:mi>j</mml:mi>
                  <mml:mo>,</mml:mo>
                  <mml:mi>k</mml:mi>
                </mml:mrow>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:mn>1</mml:mn>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:mrow>
                    <mml:mo>|</mml:mo>
                    <mml:mrow>
                      <mml:msub>
                        <mml:mi>u</mml:mi>
                        <mml:mrow>
                          <mml:mi>j</mml:mi>
                          <mml:mo>,</mml:mo>
                          <mml:mi>k</mml:mi>
                        </mml:mrow>
                      </mml:msub>
                    </mml:mrow>
                    <mml:mo>|</mml:mo>
                  </mml:mrow>
                  <mml:mo>&gt;</mml:mo>
                  <mml:msup>
                    <mml:mrow>
                      <mml:mn>10</mml:mn>
                    </mml:mrow>
                    <mml:mrow>
                      <mml:mo>−</mml:mo>
                      <mml:mn>7</mml:mn>
                    </mml:mrow>
                  </mml:msup>
                  <mml:mtext>
                     
                  </mml:mtext>
                  <mml:mtext>deg</mml:mtext>
                  <mml:mtext>
                     
                  </mml:mtext>
                  <mml:msup>
                    <mml:mtext>s</mml:mtext>
                    <mml:mrow>
                      <mml:mo>−</mml:mo>
                      <mml:mn>1</mml:mn>
                    </mml:mrow>
                  </mml:msup>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <disp-formula id="FD19">
          <label>(19)</label>
          <mml:math>
            <mml:mrow>
              <mml:msub>
                <mml:mi>N</mml:mi>
                <mml:mrow>
                  <mml:mtext>act</mml:mtext>
                </mml:mrow>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:munder>
                <mml:mstyle mathsize="140%" displaystyle="true">
                  <mml:mo>∑</mml:mo>
                </mml:mstyle>
                <mml:mrow>
                  <mml:mi>j</mml:mi>
                  <mml:mo>∈</mml:mo>
                  <mml:mrow>
                    <mml:mo>{</mml:mo>
                    <mml:mrow>
                      <mml:mtext>az</mml:mtext>
                      <mml:mo>,</mml:mo>
                      <mml:mtext>el</mml:mtext>
                    </mml:mrow>
                    <mml:mo>}</mml:mo>
                  </mml:mrow>
                </mml:mrow>
              </mml:munder>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:munderover>
                <mml:mstyle mathsize="140%" displaystyle="true">
                  <mml:mo>∑</mml:mo>
                </mml:mstyle>
                <mml:mrow>
                  <mml:mi>k</mml:mi>
                  <mml:mo>=</mml:mo>
                  <mml:mn>0</mml:mn>
                </mml:mrow>
                <mml:mrow>
                  <mml:mi>K</mml:mi>
                  <mml:mo>−</mml:mo>
                  <mml:mn>1</mml:mn>
                </mml:mrow>
              </mml:munderover>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:msub>
                <mml:mi>b</mml:mi>
                <mml:mrow>
                  <mml:mi>j</mml:mi>
                  <mml:mo>,</mml:mo>
                  <mml:mi>k</mml:mi>
                </mml:mrow>
              </mml:msub>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mrow>
                  <mml:mn>1</mml:mn>
                  <mml:mo>−</mml:mo>
                  <mml:msub>
                    <mml:mi>b</mml:mi>
                    <mml:mrow>
                      <mml:mi>j</mml:mi>
                      <mml:mo>,</mml:mo>
                      <mml:mi>k</mml:mi>
                      <mml:mo>−</mml:mo>
                      <mml:mn>1</mml:mn>
                    </mml:mrow>
                  </mml:msub>
                </mml:mrow>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:mo>,</mml:mo>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:mtext>
                 
              </mml:mtext>
              <mml:msub>
                <mml:mi>b</mml:mi>
                <mml:mrow>
                  <mml:mi>j</mml:mi>
                  <mml:mo>,</mml:mo>
                  <mml:mo>−</mml:mo>
                  <mml:mn>1</mml:mn>
                </mml:mrow>
              </mml:msub>
              <mml:mo>=</mml:mo>
              <mml:mn>0</mml:mn>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>There are <italic>K</italic> = 36,000 intervals for the 10 h window at a 1 s controller period; the terminal sample has no following interval and is excluded. An initially nonzero command is counted, as is each irradiance-driven restart that crosses this threshold after an inactive interval. Prealignment excludes a separate acquisition maneuver, not the first qualifying activation. A direction reversal without an inactive interval adds no activation. Thus, the count measures command-state transitions, not reference updates or hysteresis-state changes alone.</p>
      </sec>
      <sec id="sec5dot3">
        <title>5.3. Ephemeris Separation and Robustness Cases</title>
        <p>An independent optical calculation uses Newton intersection with the paraboloid and Householder reflection matrices. Twelve configurations combine six times of day, receiver radii of 5 and 25 mm, pointing offsets, finite sunshape and slope errors. It shares the production geometry and rays, but changes the intersection and reflection implementations. Separate encircled-energy tests compare a uniform solar disk and a normally incident Gaussian-slope mirror with exact cumulative distributions, following the simplified-test rationale of Wang <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B16">16</xref>]. These are verification tests, not a SolTrace comparison or physical validation.</p>
        <p>Solar positions are independently generated by the National Renewable Energy Laboratory (NREL) SPA implementation in pvlib 0.15.0 [<xref ref-type="bibr" rid="B13">13</xref>][<xref ref-type="bibr" rid="B14">14</xref>]. The published 17 October 2003 example is checked before generating four scenario trajectories. Tables contain east-north-up unit vectors every 60 s; the controller uses linearly interpolated, renormalized vectors. Direct 1 s SPA evaluation bounds this interpolation error. Scenario coordinates remain 13.51˚N and 2.11˚E, with UTC + 1, zero reference altitude, an assumed <inline-formula><mml:math><mml:mrow><mml:mi> Δ </mml:mi><mml:mi> T </mml:mi><mml:mo> = </mml:mo><mml:mn> 69.2 </mml:mn><mml:mtext>   </mml:mtext><mml:mtext> s </mml:mtext></mml:mrow></mml:math></inline-formula> and atmospheric refraction disabled. Three cases separate numerical roles: common NOAA input and reference; SPA input with a NOAA controller reference; and common SPA input and reference. Thus, the second case exposes ephemeris mismatch instead of concealing it inside a shared trajectory.</p>
        <p>Common-SPA trajectories are used for the primary controller and robustness comparisons. Periodic references update every 60, 300, 900 or 1800 s, with optical evaluation every 5 s. Activation thresholds of 0.06˚, 0.12˚, 0.24˚ and 0.48˚, each releasing at one quarter of activation, are evaluated on all four reference days.</p>
        <p>The joint ensemble contains 128 independent draws from the nine uniform ranges in <bold>Table 3</bold>. Each draw is applied to continuous and hysteretic tracking with identical inputs and rays. The NumPy permuted congruential generator with 64-bit output (PCG64) uses seed 28092026; the generated matrix is archived for identical MATLAB inputs. September screening uses 2048 rays every 60 s, followed by refinement of the six lowest retention ratios. Prefixes of 32, 64 and 128 pairs assess ensemble-size sensitivity. The ranges and their independence are design assumptions; empirical percentiles do not estimate a measured field population or bound the entire parameter domain.</p>
        <p>The bounds are engineering sensitivity envelopes around the nominal design assumptions, not measured tolerances or manufacturer specifications. Receiver radii of 10 - 30 mm and slope errors of 1 - 5 mrad bracket the nominal 25 mm and 2 mrad values to test aperture acceptance and optical quality together. The total backlash range extends to 0.16˚, above the 0.12˚ activation threshold, to include commands partly absorbed by transmission play. Encoder offsets of ±0.15˚ exceed both the nominal biases and that threshold, testing residual calibration errors that the same shaft feedback cannot identify.</p>
        <p><bold>Table 3.</bold> Joint uncertainty assumptions. Inputs are independent within this design ensemble; the distributions are not inferred from measurements.</p>
        <table-wrap id="tbl3">
          <label>Table 3</label>
          <table>
            <tbody>
              <tr>
                <td>
                  <bold>Uncertain input</bold>
                </td>
                <td>
                  <bold>Assumed uniform range</bold>
                </td>
                <td>
                  <bold>Unit</bold>
                </td>
              </tr>
              <tr>
                <td>Receiver radius</td>
                <td>10 to 30</td>
                <td>mm</td>
              </tr>
              <tr>
                <td>Slope error per tangent axis</td>
                <td>1 to 5</td>
                <td>mrad</td>
              </tr>
              <tr>
                <td>Total backlash</td>
                <td>0 to 0.16</td>
                <td>deg</td>
              </tr>
              <tr>
                <td>Azimuth encoder offset</td>
                <td>−0.15 to +0.15</td>
                <td>deg</td>
              </tr>
              <tr>
                <td>Elevation encoder offset</td>
                <td>−0.15 to +0.15</td>
                <td>deg</td>
              </tr>
              <tr>
                <td>Velocity time constant</td>
                <td>1 to 5</td>
                <td>s</td>
              </tr>
              <tr>
                <td>Maximum axis rate</td>
                <td>0.10 to 0.50</td>
                <td>
                  deg∙s
                  <sup>−1</sup>
                </td>
              </tr>
              <tr>
                <td>Encoder quantization step</td>
                <td>0 to 0.05</td>
                <td>deg</td>
              </tr>
              <tr>
                <td>Proportional gain</td>
                <td>0.15 to 0.35</td>
                <td>
                  s
                  <sup>−1</sup>
                </td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
        <p>The maximum encoder step, 0.05˚, exceeds the 0.03˚ release threshold and tests discrete measurement effects. The 1 - 5 s response time, 0.10 - 0.50˚ s<sup>−</sup><sup>1</sup> rate limit and 0.15 - 0.35 s<sup>−</sup><sup>1</sup> gain bracket the nominal drive settings and include slower or more rate-limited responses. Independent uniform draws give transparent coverage of these selected ranges; they do not assign field probabilities or establish motor and transmission adequacy. Fixed encoder offsets represent residual angular-reference errors only; they do not reproduce the installation-dependent daily and seasonal drift addressed by Moreno-Cruz <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B8">8</xref>].</p>
        <p>Additional paired tests impose cloud interruptions, initial offsets of +5˚ and −3˚, a 0.05˚ encoder step, 0.16˚ lost motion, and unobserved output-angle disturbances. The encoder step uses nearest rounding, with half-integers rounded away from zero. For disturbance amplitude <inline-formula><mml:math><mml:mi> A </mml:mi></mml:math></inline-formula> in degrees and time <inline-formula><mml:math><mml:mi> t </mml:mi></mml:math></inline-formula> in seconds, the two perturbations are</p>
        <disp-formula id="FD20">
          <label>(20)</label>
          <mml:math>
            <mml:mrow>
              <mml:msub>
                <mml:mi>d</mml:mi>
                <mml:mi>a</mml:mi>
              </mml:msub>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mi>t</mml:mi>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:mo>=</mml:mo>
              <mml:mi>A</mml:mi>
              <mml:mrow>
                <mml:mo>[</mml:mo>
                <mml:mrow>
                  <mml:mn>0.6</mml:mn>
                  <mml:mi>sin</mml:mi>
                  <mml:mrow>
                    <mml:mo>(</mml:mo>
                    <mml:mrow>
                      <mml:mfrac>
                        <mml:mrow>
                          <mml:mn>2</mml:mn>
                          <mml:mi>π</mml:mi>
                          <mml:mi>t</mml:mi>
                        </mml:mrow>
                        <mml:mrow>
                          <mml:mn>137</mml:mn>
                        </mml:mrow>
                      </mml:mfrac>
                    </mml:mrow>
                    <mml:mo>)</mml:mo>
                  </mml:mrow>
                  <mml:mo>+</mml:mo>
                  <mml:mn>0.4</mml:mn>
                  <mml:mi>exp</mml:mi>
                  <mml:mrow>
                    <mml:mo>(</mml:mo>
                    <mml:mrow>
                      <mml:mo>−</mml:mo>
                      <mml:msup>
                        <mml:mrow>
                          <mml:mrow>
                            <mml:mo>(</mml:mo>
                            <mml:mrow>
                              <mml:mfrac>
                                <mml:mrow>
                                  <mml:mi>t</mml:mi>
                                  <mml:mo>−</mml:mo>
                                  <mml:mn>18000</mml:mn>
                                </mml:mrow>
                                <mml:mrow>
                                  <mml:mn>180</mml:mn>
                                </mml:mrow>
                              </mml:mfrac>
                            </mml:mrow>
                            <mml:mo>)</mml:mo>
                          </mml:mrow>
                        </mml:mrow>
                        <mml:mn>2</mml:mn>
                      </mml:msup>
                    </mml:mrow>
                    <mml:mo>)</mml:mo>
                  </mml:mrow>
                </mml:mrow>
                <mml:mo>]</mml:mo>
              </mml:mrow>
              <mml:mo>,</mml:mo>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <disp-formula id="FD21">
          <label>(21)</label>
          <mml:math>
            <mml:mrow>
              <mml:msub>
                <mml:mi>d</mml:mi>
                <mml:mi>e</mml:mi>
              </mml:msub>
              <mml:mrow>
                <mml:mo>(</mml:mo>
                <mml:mi>t</mml:mi>
                <mml:mo>)</mml:mo>
              </mml:mrow>
              <mml:mo>=</mml:mo>
              <mml:mi>A</mml:mi>
              <mml:mrow>
                <mml:mo>[</mml:mo>
                <mml:mrow>
                  <mml:mn>0.6</mml:mn>
                  <mml:mi>sin</mml:mi>
                  <mml:mrow>
                    <mml:mo>(</mml:mo>
                    <mml:mrow>
                      <mml:mfrac>
                        <mml:mrow>
                          <mml:mn>2</mml:mn>
                          <mml:mi>π</mml:mi>
                          <mml:mi>t</mml:mi>
                        </mml:mrow>
                        <mml:mrow>
                          <mml:mn>173</mml:mn>
                        </mml:mrow>
                      </mml:mfrac>
                    </mml:mrow>
                    <mml:mo>)</mml:mo>
                  </mml:mrow>
                  <mml:mo>+</mml:mo>
                  <mml:mn>0.4</mml:mn>
                  <mml:mi>exp</mml:mi>
                  <mml:mrow>
                    <mml:mo>(</mml:mo>
                    <mml:mrow>
                      <mml:mo>−</mml:mo>
                      <mml:msup>
                        <mml:mrow>
                          <mml:mrow>
                            <mml:mo>(</mml:mo>
                            <mml:mrow>
                              <mml:mfrac>
                                <mml:mrow>
                                  <mml:mi>t</mml:mi>
                                  <mml:mo>−</mml:mo>
                                  <mml:mn>22500</mml:mn>
                                </mml:mrow>
                                <mml:mrow>
                                  <mml:mn>180</mml:mn>
                                </mml:mrow>
                              </mml:mfrac>
                            </mml:mrow>
                            <mml:mo>)</mml:mo>
                          </mml:mrow>
                        </mml:mrow>
                        <mml:mn>2</mml:mn>
                      </mml:msup>
                    </mml:mrow>
                    <mml:mo>)</mml:mo>
                  </mml:mrow>
                </mml:mrow>
                <mml:mo>]</mml:mo>
              </mml:mrow>
              <mml:mo>.</mml:mo>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>The tested amplitudes are 0.05˚, 0.15˚ and 0.30˚. These kinematic signals combine periodic motion and a smooth gust-shaped pulse; they have no assigned wind-speed or torque equivalence. A combined case adds cloud interruptions, 0.05˚ encoder quantization, 0.16˚ backlash, offsets of +0.15˚ and −0.15˚, a 5 s velocity time constant and <inline-formula><mml:math><mml:mrow><mml:mi> A </mml:mi><mml:mo> = </mml:mo><mml:mn> 0.15 </mml:mn><mml:mo> ˚ </mml:mo></mml:mrow></mml:math></inline-formula> . Stress cases use 4096 rays every 10 s. Recovery from the initial offset is the first instant after which the central-ray error remains at or below 0.5˚ for 60 consecutive seconds. These tests preserve the same safety bounds, irradiance supervisor and electrical-budget assumptions as the baseline.</p>
      </sec>
      <sec id="sec5dot4">
        <title>5.4. Numerical Verification and Resolution</title>
        <p>Verification covers reflection and ideal-focus identities, the held-input actuator update, axis bounds, irradiance interlocks and the optical-power bound. The six Python checks pass; MATLAB passes three analytical checks and the per-scenario assertions. Maximum reflection and focus residuals are 7.7 × 10<sup>−</sup><sup>16</sup> and 8.9 × 10<sup>−</sup><sup>16</sup> m. The actuator recurrence differs from an independently stepped Runge-Kutta calculation by 7.1 × 10<sup>−</sup><sup>12</sup>, within the 10<sup>−</sup><sup>10</sup> tolerance. These checks establish numerical consistency of the equations and implementation.</p>
        <p>All 64 MATLAB-Python metric comparisons pass for the 16 NOAA scenarios. Maximum optical-energy and ray-RMSE differences are 8.9 × 10<sup>−</sup><sup>16</sup> kWh and 2.9 × 10<sup>−</sup><sup>14</sup> degrees. For the 340-case set, all 2040 comparisons pass, with maxima of 4.2 × 10<sup>−</sup><sup>13</sup> kWh and 2.2 × 10<sup>−</sup><sup>11</sup> degrees. Activation counts agree exactly. Export audits also pass using <inline-formula><mml:math><mml:mrow><mml:msup><mml:mrow><mml:mn> 10 </mml:mn></mml:mrow><mml:mrow><mml:mo> − </mml:mo><mml:mn> 10 </mml:mn></mml:mrow></mml:msup><mml:mo> + </mml:mo><mml:msup><mml:mrow><mml:mn> 10 </mml:mn></mml:mrow><mml:mrow><mml:mo> − </mml:mo><mml:mn> 12 </mml:mn></mml:mrow></mml:msup><mml:mrow><mml:mo> | </mml:mo><mml:mrow><mml:msub><mml:mi> x </mml:mi><mml:mrow><mml:mtext> ref </mml:mtext></mml:mrow></mml:msub></mml:mrow><mml:mo> | </mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula> in the respective units. Shared equations can preserve modeling bias despite this implementation agreement.</p>
        <p>The independent optical calculation agrees within 5.6 × 10<sup>−</sup><sup>17</sup> m<sup>2</sup> in optical factor, with a maximum surface residual of 3.6 × 10<sup>−</sup><sup>16</sup> m. Encircled-energy discrepancies are below 4.3 × 10<sup>−</sup><sup>5</sup> at 131,072 samples. SPA reproduces its published example within 2.1 × 10<sup>−</sup><sup>6</sup> degrees; interpolating the four 60 s vector tables differs from direct 1 s evaluation by at most 5.0 × 10<sup>−</sup><sup>5</sup> degrees.</p>
        <p><bold>Table 4</bold> reports the resolution checks for the NOAA diagnostic cases. Increasing rays from 4096 to 16,384 changes hysteretic energy by 0.078%; halving its optical interval from 60 to 30 s changes it by 0.004%. Periodic tracking is more sensitive: 60 s sampling gives 0.982 kWh, whereas 15 s gives 1.009 kWh. The adopted 15 s result differs from the 5 s check by 0.18%.</p>
        <p><bold>Table 4.</bold> September NOAA numerical-resolution checks. Controller-period changes alter the discrete control law; they are not plant-integration refinements.</p>
        <table-wrap id="tbl4">
          <label>Table 4</label>
          <table>
            <tbody>
              <tr>
                <td>
                  <bold>Check</bold>
                </td>
                <td>
                  <bold>Setting</bold>
                </td>
                <td>
                  <bold>Optical energy kWh</bold>
                </td>
                <td>
                  <bold>Electrical budget Wh</bold>
                </td>
              </tr>
              <tr>
                <td>Event ray count</td>
                <td>1024</td>
                <td>2.589762</td>
                <td>37.46</td>
              </tr>
              <tr>
                <td>Event ray count</td>
                <td>4096</td>
                <td>2.586213</td>
                <td>37.46</td>
              </tr>
              <tr>
                <td>Event ray count</td>
                <td>16,384</td>
                <td>2.588240</td>
                <td>37.46</td>
              </tr>
              <tr>
                <td>Event optical interval s</td>
                <td>120</td>
                <td>2.586055</td>
                <td>37.46</td>
              </tr>
              <tr>
                <td>Event optical interval s</td>
                <td>30</td>
                <td>2.586316</td>
                <td>37.46</td>
              </tr>
              <tr>
                <td>Event controller period s</td>
                <td>0.5</td>
                <td>2.586339</td>
                <td>38.32</td>
              </tr>
              <tr>
                <td>Event controller period s</td>
                <td>0.25</td>
                <td>2.586122</td>
                <td>38.76</td>
              </tr>
              <tr>
                <td>Periodic30 optical interval s</td>
                <td>60</td>
                <td>0.981622</td>
                <td>19.83</td>
              </tr>
              <tr>
                <td>Periodic30 optical interval s</td>
                <td>30</td>
                <td>1.002444</td>
                <td>19.83</td>
              </tr>
              <tr>
                <td>Periodic30 optical interval s</td>
                <td>15</td>
                <td>1.008539</td>
                <td>19.83</td>
              </tr>
              <tr>
                <td>Periodic30 optical interval s</td>
                <td>5</td>
                <td>1.006729</td>
                <td>19.83</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
        <p>Reducing the controller period from 1 to 0.25 s changes optical energy little but raises the budget from 37.46 to 38.76 Wh (3.45%). This changes event timing in the discrete controller; it is not plant-solver error because propagation is exact for held inputs. The reported actuation results therefore apply to the stated 1 s controller.</p>
        <p><bold>Table 5</bold> checks the primary common-SPA September ratio directly, with continuous and hysteretic energy recomputed at every resolution. Geometry, ephemeris, plant parameters, the 1 s controller period and deterministic Halton ray prefixes are shared within each pair. The retained-energy percentage is</p>
        <disp-formula id="FD22">
          <label>(22)</label>
          <mml:math>
            <mml:mrow>
              <mml:mi>ℛ</mml:mi>
              <mml:mo>=</mml:mo>
              <mml:mrow>
                <mml:mrow>
                  <mml:mn>100</mml:mn>
                  <mml:mtext>
                     
                  </mml:mtext>
                  <mml:msub>
                    <mml:mi>E</mml:mi>
                    <mml:mtext>H</mml:mtext>
                  </mml:msub>
                </mml:mrow>
                <mml:mo>/</mml:mo>
                <mml:mrow>
                  <mml:msub>
                    <mml:mi>E</mml:mi>
                    <mml:mtext>C</mml:mtext>
                  </mml:msub>
                </mml:mrow>
              </mml:mrow>
            </mml:mrow>
          </mml:math>
        </disp-formula>
        <p>These additional refinements use the unchanged Python implementation. Its primary 4096-ray, 30 s pair reproduces the archived native MATLAB energies to within 3 × 10<sup>−15</sup> kWh and gives identical activation counts; native MATLAB execution of the additional resolutions is not claimed.</p>
        <p><bold>Table 5</bold><bold>.</bold> Paired resolution check for the primary September common-SPA comparison. Change is relative to the 4096-ray, 30 s ratio, in percentage points (pp); the controller period remains 1 s.</p>
        <table-wrap id="tbl5">
          <label>Table 5</label>
          <table>
            <tbody>
              <tr>
                <td>
                  <bold>Rays</bold>
                </td>
                <td>
                  <bold>Optical</bold>
                  <bold>interval s</bold>
                </td>
                <td>
                  <bold>Continuous</bold>
                  <bold>kWh</bold>
                </td>
                <td>
                  <bold>Hysteretic</bold>
                  <bold>kWh</bold>
                </td>
                <td>
                  <bold>Retained</bold>
                  <bold>%</bold>
                </td>
                <td>
                  <bold>Change</bold>
                  <bold>pp</bold>
                </td>
              </tr>
              <tr>
                <td>4096</td>
                <td>30</td>
                <td>2.581894</td>
                <td>2.575393</td>
                <td>99.7482</td>
                <td>0.0000</td>
              </tr>
              <tr>
                <td>8192</td>
                <td>30</td>
                <td>2.582414</td>
                <td>2.576226</td>
                <td>99.7604</td>
                <td>+0.0122</td>
              </tr>
              <tr>
                <td>16384</td>
                <td>30</td>
                <td>2.583752</td>
                <td>2.577430</td>
                <td>99.7553</td>
                <td>+0.0071</td>
              </tr>
              <tr>
                <td>16384</td>
                <td>15</td>
                <td>2.583757</td>
                <td>2.577469</td>
                <td>99.7566</td>
                <td>+0.0084</td>
              </tr>
              <tr>
                <td>16384</td>
                <td>5</td>
                <td>2.583759</td>
                <td>2.577486</td>
                <td>99.7572</td>
                <td>+0.0090</td>
              </tr>
              <tr>
                <td>32768</td>
                <td>5</td>
                <td>2.584123</td>
                <td>2.577500</td>
                <td>99.7437</td>
                <td>-0.0045</td>
              </tr>
              <tr>
                <td>65536</td>
                <td>5</td>
                <td>2.583853</td>
                <td>2.577400</td>
                <td>99.7502</td>
                <td>+0.0020</td>
              </tr>
              <tr>
                <td>32768</td>
                <td>1</td>
                <td>2.584122</td>
                <td>2.577501</td>
                <td>99.7438</td>
                <td>-0.0044</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
        <p>The primary ratio is 99.7482%. Across the tested refinements, retention ranges from 99.7437% to 99.7604% (loss 0.2396% - 0.2563%), with a maximum deviation of 0.0122 percentage points from the primary ratio. At 32768 rays, reducing the optical interval from 5 to 1 s changes retention by +0.0001 percentage points; at 5 s, increasing the count from 32768 to 65536 changes it by +0.0065 percentage points. The approximately 0.25% optical loss is therefore supported at the observed resolution sensitivity, while its last reported decimal is not a certified error bound. The nonmonotone ray-count response is reported explicitly; these deterministic checks do not supply a statistical confidence interval.</p>
      </sec>
    </sec>
    <sec id="sec6">
      <title>6. Results and Interpretation</title>
      <sec id="sec6dot1">
        <title>6.1. Optical Retention and Actuation Demand with SPA</title>
        <p><bold>Table 6</bold> gives the primary September comparison with SPA defining both sunlight and the controller reference. Hysteretic tracking retains 99.75% of continuous-tracking energy at the primary resolution; <bold>Table 5</bold> quantifies the numerical sensitivity of this approximately 0.25% loss. One-minute updates give similar retention (99.62%), but a larger assumed budget (234.7 versus 37.6 Wh) and more activations (1333 versus 1169). Five-minute updates reduce the budget to 60.7 Wh while retaining only 93.40%. Hysteresis therefore offers a favorable optical-actuation compromise for this plant, including against frequent periodic updates. The comparison does not establish dominance over periodic controllers with different stopping rules or drive models.</p>
        <p><bold>Table 6</bold><bold>.</bold> Primary September comparison with common-SPA input and reference. Optical intervals are 5 s for periodic cases and 30 s for continuous and hysteretic cases. Budgets assume 12 W per enabled axis and 1 W supervision.</p>
        <table-wrap id="tbl6">
          <label>Table 6</label>
          <table>
            <tbody>
              <tr>
                <td>
                  <bold>Strategy</bold>
                </td>
                <td>
                  <bold>Optical kWh</bold>
                </td>
                <td>
                  <bold>Retained %</bold>
                </td>
                <td>
                  <bold>Budget Wh</bold>
                </td>
                <td>
                  <bold>Activations</bold>
                </td>
              </tr>
              <tr>
                <td>Continuous</td>
                <td>2.582</td>
                <td>100.00</td>
                <td>250.0</td>
                <td>3</td>
              </tr>
              <tr>
                <td>Hysteretic</td>
                <td>2.575</td>
                <td>99.75</td>
                <td>37.6</td>
                <td>1169</td>
              </tr>
              <tr>
                <td>Periodic 1 min</td>
                <td>2.572</td>
                <td>99.62</td>
                <td>234.7</td>
                <td>1333</td>
              </tr>
              <tr>
                <td>Periodic 5 min</td>
                <td>2.412</td>
                <td>93.40</td>
                <td>60.7</td>
                <td>361</td>
              </tr>
              <tr>
                <td>Periodic 15 min</td>
                <td>1.799</td>
                <td>69.66</td>
                <td>28.5</td>
                <td>154</td>
              </tr>
              <tr>
                <td>Periodic 30 min</td>
                <td>1.003</td>
                <td>38.85</td>
                <td>19.9</td>
                <td>76</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
      </sec>
      <sec id="sec6dot2">
        <title>6.2. Seasonal Thresholds and Joint Uncertainty</title>
        <p><xref ref-type="fig" rid="fig3">Figure 3</xref> shows why the deadband cannot be selected from September alone. The 0.12˚ activation threshold retains at least 99.50% on all four nominal SPA days. Increasing it to 0.24˚ remains within 1% loss in March, September and December, but reduces June retention to 98.37%; 0.48˚ gives 94.49% in June. The nominal 0.12˚ setting is thus supported for these four geometries, without being a universal optimum.</p>
        <p>Under the joint assumptions in <bold>Table 3</bold>, median retained energy is 99.64%, with 5th and 95th percentiles of 99.00% and 99.91% (<xref ref-type="fig" rid="fig4">Figure 4</xref>). Median energized axis time reduction is 88.95%, with corresponding percentiles of 81.13% and 92.12%. The median budget reduction is 85.40% under Equation (17). The difference reflects the supervisory load, which does not decrease with axis duty.</p>
        <p>Seven of 128 screening pairs retain less than 99% of continuous-tracking energy. Median retention changes from 99.71% to 99.66% and 99.64% for 32, 64 and 128 pairs, while the lower-tail percentile is less stable. The ensemble resolves its central tendency more reliably than a tail probability. Ratios marginally above 100% do not demonstrate a superior optical optimum.</p>
        <fig id="fig3">
          <label>Figure 3</label>
          <graphic xlink:href="https://html.scirp.org/file/6401960-rId143.jpeg?20261027010851" />
        </fig>
        <p><bold>Figure 3.</bold> Seasonal threshold trade-off using SPA trajectories. The dashed line marks 99% retained optical energy. Lower electrical budgets at wider deadbands are accompanied by season-dependent optical penalties.</p>
        <fig id="fig4">
          <label>Figure 4</label>
          <graphic xlink:href="https://html.scirp.org/file/6401960-rId144.jpeg?20261027010851" />
        </fig>
        <p><bold>Figure 4.</bold> The 128 paired uncertainty scenarios. Left: empirical cumulative energy retention. Right: retention versus reduction in energized axis time, colored by receiver radius. Percentiles describe assumed parameter distributions, not field-confidence bounds.</p>
        <p>Refining the six lowest screening ratios to 4096 rays every 15 s and 8192 rays every 5 s gives a least favorable retention of 98.27%, compared with 98.33% in the screen. The largest change between refined resolutions is 0.081 percentage points. The nominal sub-1% penalty therefore fails for some adverse combinations; 98.27% is an observed scenario result, not a global lower bound.</p>
        <p>The 98.27% result is uncertainty pair 001 on the clear 23 September common-SPA case. Its parameters are a receiver radius of 12.2411 mm, slope error of 1.72126 mrad per tangent axis at each reflector, total backlash of 0.139983˚, azimuth and elevation encoder offsets of −0.128763˚ and −0.078782˚, respectively, a velocity time constant of 3.71454 s, gain of 0.201938 s<sup>−</sup><sup>1</sup>, maximum rate of 0.486628˚ s<sup>−</sup><sup>1</sup> and encoder step of 0.033626˚. The activation and release thresholds remain 0.12˚ and 0.03˚.</p>
        <p>At 8192 rays and 5 s optical sampling, with the 1 s controller unchanged, hysteretic and paired continuous energies are 2.350063 and 2.391462 kWh, respectively, giving 98.2689% retention. There is no imposed cloud interruption, initial misalignment or output-angle forcing in this pair. The penalty belongs to this joint parameter combination; it is not a separately identified effect of any one parameter.</p>
      </sec>
      <sec id="sec6dot3">
        <title>6.3. Initial Alignment and Combined Defects</title>
        <p><bold>Table 7</bold> pairs each hysteretic case with continuous control under identical defects. Both controllers recover from the +5˚ and −3˚ initial offsets in 15 s under the 60 s persistence criterion. Quantization and backlash affect the actuation sequence and optical yield. The combined-defect case retains 99.79% of the equally degraded continuous result, not 99.79% of an undegraded clear day.</p>
        <p><bold>Table 7</bold><bold>.</bold> Paired stress cases. Retention and axis-time reductions use the continuous controller under the same defect and weather inputs as the denominator.</p>
        <table-wrap id="tbl7">
          <label>Table 7</label>
          <table>
            <tbody>
              <tr>
                <td>
                  <bold>Stress scenario</bold>
                </td>
                <td>
                  <bold>Event kWh</bold>
                </td>
                <td>
                  <bold>Retained %</bold>
                </td>
                <td>
                  <bold>Axis time</bold>
                  <bold>reduction %</bold>
                </td>
                <td>
                  <bold>Activations</bold>
                </td>
              </tr>
              <tr>
                <td>Cloud interruptions</td>
                <td>2.308</td>
                <td>99.74</td>
                <td>88.6</td>
                <td>1051</td>
              </tr>
              <tr>
                <td>Initial offset +5˚ and −3˚</td>
                <td>2.575</td>
                <td>99.75</td>
                <td>88.4</td>
                <td>1173</td>
              </tr>
              <tr>
                <td>Encoder step 0.05˚</td>
                <td>2.576</td>
                <td>99.79</td>
                <td>88.0</td>
                <td>1180</td>
              </tr>
              <tr>
                <td>Backlash 0.16˚</td>
                <td>2.566</td>
                <td>99.59</td>
                <td>88.5</td>
                <td>1169</td>
              </tr>
              <tr>
                <td>Angular forcing 0.05˚</td>
                <td>2.575</td>
                <td>99.74</td>
                <td>88.5</td>
                <td>1169</td>
              </tr>
              <tr>
                <td>Angular forcing 0.15˚</td>
                <td>2.571</td>
                <td>99.74</td>
                <td>88.5</td>
                <td>1169</td>
              </tr>
              <tr>
                <td>Angular forcing 0.30˚</td>
                <td>2.559</td>
                <td>99.72</td>
                <td>88.5</td>
                <td>1169</td>
              </tr>
              <tr>
                <td>Combined defects</td>
                <td>2.287</td>
                <td>99.79</td>
                <td>88.9</td>
                <td>785</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
        <p>Refining the largest angular-forcing case and the combined case from 4096 rays every 10 s to 8192 rays every 5 s changes absolute energies by less than 0.07%. Perturbations act after shaft feedback and cannot be directly rejected by this controller. Their limited optical effect for the 25 mm receiver reflects aperture tolerance, not demonstrated wind compensation.</p>
      </sec>
      <sec id="sec6dot4">
        <title>6.4. Optical Mechanisms and Coarse Updates</title>
        <p>The NOAA diagnostic cases explain the optical mechanisms behind the comparison. The exact bisector identity has a maximum vector residual of 7.7 × 10<sup>−</sup><sup>16</sup>. Direct solar alignment at 09:00, 12:00, 15:00 and 17:00 instead produces 95.7˚ - 103.0˚ errors relative to the northward dish axis and no captured receiver rays. The numerical range is installation-specific; the distinction between solar alignment and target alignment is general.</p>
        <p>Correct aiming does not make dish interception equivalent to receiver absorption. Continuous tracking sends 3.369 kWh to the dish after the first reflection, but the receiver absorbs 2.593 kWh after the second. Periodic tracking still illuminates the dish while focal-plane displacement and off-axis aberration cause greater receiver losses.</p>
        <p><bold>Table 8</bold> and <xref ref-type="fig" rid="fig5">Figure 5</xref> show the September NOAA diagnostic response. The 30-minute controller has a 4.331˚ ray RMSE, compared with 0.070˚ for continuous and 0.171˚ for hysteretic control. Its held reference becomes obsolete between updates, causing receiver power to fall before the next correction.</p>
        <p><bold>Table 8</bold><bold>.</bold> Clear September NOAA baseline over 08:00 - 18:00. Electrical values are estimates from assumed powers; activations are summed across axes.</p>
        <table-wrap id="tbl8">
          <label>Table 8</label>
          <table>
            <tbody>
              <tr>
                <td>
                  <bold>Strategy</bold>
                </td>
                <td>
                  <bold>Optical</bold>
                  <bold>energy kWh</bold>
                </td>
                <td>
                  <bold>Ray RMSE deg</bold>
                </td>
                <td>
                  <bold>Axis</bold>
                  <bold>time h</bold>
                </td>
                <td>
                  <bold>Electrical budget Wh</bold>
                </td>
                <td>
                  <bold>Activations</bold>
                </td>
              </tr>
              <tr>
                <td>Fixed</td>
                <td>0.103</td>
                <td>43.500</td>
                <td>0.00</td>
                <td>10.0</td>
                <td>0</td>
              </tr>
              <tr>
                <td>Periodic30</td>
                <td>1.009</td>
                <td>4.331</td>
                <td>0.82</td>
                <td>19.8</td>
                <td>76</td>
              </tr>
              <tr>
                <td>Continuous</td>
                <td>2.593</td>
                <td>0.070</td>
                <td>20.00</td>
                <td>250.0</td>
                <td>4</td>
              </tr>
              <tr>
                <td>Event</td>
                <td>2.586</td>
                <td>0.171</td>
                <td>2.29</td>
                <td>37.5</td>
                <td>1165</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
        <p>Hysteretic tracking retains 99.74% of continuous energy (2.586 versus 2.593 kWh) while reducing energized axis time by 88.6%. The associated budget falls from 250.0 to 37.5 Wh under the fixed-power assumptions. This agrees qualitatively with the primary SPA comparison; the two ephemeris datasets are kept separate.</p>
        <fig id="fig5">
          <label>Figure 5</label>
          <graphic xlink:href="https://html.scirp.org/file/6401960-rId145.jpeg?20261027010852" />
        </fig>
        <p><bold>Figure 5</bold><bold>.</bold> September NOAA diagnostic response: absorbed optical power and central-ray error. Periodic30 uses 15 s optical samples; other strategies use 60 s samples.</p>
        <p>Absolute angular travel is almost unchanged: 172.95˚ for hysteretic versus 173.18˚ for continuous tracking. Hysteresis traverses this path in shorter enabled intervals, with 1165 activations rather than four. Reduced duty therefore does not establish reduced wear or mechanical work. The fixed-mirror result of 0.103 kWh is a limiting reference specific to this narrow receiver.</p>
        <p>The focal-plane samples at 14:24 in <xref ref-type="fig" rid="fig6">Figure 6</xref> explain the receiver losses. With its reference held since 14:00, the periodic strategy places much of the spot beyond the 25 mm aperture. Continuous and hysteretic tracking keep it substantially centered despite broadening by sunshape and slope errors.</p>
        <fig id="fig6">
          <label>Figure 6</label>
          <graphic xlink:href="https://html.scirp.org/file/6401960-rId146.jpeg?20261027010852" />
        </fig>
        <p><bold>Figure 6.</bold> Focal-plane samples at 14:24 on the clear September day, using 16,384 launched rays. The black circle marks the 25 mm receiver radius. Samples outside the plotting window are not shown.</p>
      </sec>
      <sec id="sec6dot5">
        <title>6.5. Seasonal Geometry and Irradiance Hold</title>
        <p>The NOAA seasonal diagnostics in <xref ref-type="fig" rid="fig7">Figure 7</xref> and <bold>Table 9</bold> give hysteretic energies of 1.824 - 2.960 kWh, with losses of 0.11% - 0.51% relative to continuous tracking. Budgets range from 29.8 to 52.4 Wh as the axis trajectories change. These common synthetic irradiance inputs isolate seasonal geometry; they are not a measured climatology.</p>
        <p><bold>Table 9</bold><bold>.</bold> Seasonal NOAA baseline scenarios with the same synthetic DNI expression.</p>
        <table-wrap id="tbl9">
          <label>Table 9</label>
          <table>
            <tbody>
              <tr>
                <td>
                  <bold>Reference date</bold>
                </td>
                <td>
                  <bold>Periodic30 kWh</bold>
                </td>
                <td>
                  <bold>Continuous kWh</bold>
                </td>
                <td>
                  <bold>Event kWh</bold>
                </td>
                <td>
                  <bold>Event</bold>
                  <bold>electrical Wh</bold>
                </td>
              </tr>
              <tr>
                <td>21 March</td>
                <td>1.007</td>
                <td>2.593</td>
                <td>2.587</td>
                <td>37.6</td>
              </tr>
              <tr>
                <td>21 June</td>
                <td>1.233</td>
                <td>2.975</td>
                <td>2.960</td>
                <td>29.8</td>
              </tr>
              <tr>
                <td>23 September</td>
                <td>1.009</td>
                <td>2.593</td>
                <td>2.586</td>
                <td>37.5</td>
              </tr>
              <tr>
                <td>21 December</td>
                <td>0.810</td>
                <td>1.826</td>
                <td>1.824</td>
                <td>52.4</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
        <fig id="fig7">
          <label>Figure 7</label>
          <graphic xlink:href="https://html.scirp.org/file/6401960-rId147.jpeg?20261027010852" />
        </fig>
        <p><bold>Figure 7.</bold> Four synthetic seasonal scenarios. Optical energy and the assumed electrical budget are shown separately. The electrical comparison assumes constant power while each axis is enabled.</p>
        <p>In the intermittent NOAA case (<xref ref-type="fig" rid="fig8">Figure 8</xref>), hysteretic and continuous energies are 2.317 and 2.324 kWh, with budgets of 34.8 and 228.4 Wh. Both drives stop during the two deepest irradiance reductions. Misalignment grows during the hold and decreases after re-enabling; hysteretic daytime RMSE is 0.223˚. The supervisor therefore reduces low-irradiance actuation but introduces reacquisition excursions.</p>
        <fig id="fig8">
          <label>Figure 8</label>
          <graphic xlink:href="https://html.scirp.org/file/6401960-rId148.jpeg?20261027010852" />
        </fig>
        <p><bold>Figure 8.</bold> Intermittent-irradiance response with 15 s optical evaluation. Shading identifies the two deepest imposed cloud intervals. Ray error rises during the low-irradiance hold and falls after reacquisition.</p>
        <p>This behavior assumes a deterministic solar reference and a perfect DNI signal. Local shading, soiling, diffuse illumination and LDR electronic errors are not simulated. Receiver feedback, as used by Kribus <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B5">5</xref>], could reveal optical misalignment, but is absent from the present controller.</p>
      </sec>
      <sec id="sec6dot6">
        <title>6.6. Receiver Aperture and Optical Tolerances</title>
        <p>The NOAA threshold sweep (<xref ref-type="fig" rid="fig9">Figure 9</xref>) illustrates the aperture dependence of the compromise. For a 25 mm receiver, widening activation from 0.12˚ to 0.24˚ reduces the budget from 37.5 to 23.4 Wh and energy from 2.586 to 2.572 kWh. This remains within 1% loss on the September case, but the SPA seasonal results in Section 6.2 show why that setting cannot be adopted for all dates.</p>
        <p>At 10 mm receiver radius, widening the threshold from 0.12˚ to 1.00˚ reduces energy from 2.325 to 1.464 kWh; the corresponding 25 mm values are 2.586 and 2.303 kWh. A control deadband must therefore be chosen jointly with receiver acceptance.</p>
        <p><xref ref-type="fig" rid="fig10">Figure 10</xref> shows the interaction with surface quality. Raising slope error from 2 to 10 mrad reduces energy from 2.586 to 1.913 kWh for a 25 mm receiver, and from 1.776 to 0.258 kWh at 5 mm. A larger receiver intercepts more scattered rays but increases obscuration: under nearly ideal surfaces, 50 mm does not necessarily outperform 25 mm. Thermal losses are not included in this aperture comparison.</p>
        <fig id="fig9">
          <label>Figure 9</label>
          <graphic xlink:href="https://html.scirp.org/file/6401960-rId149.jpeg?20261027010853" />
        </fig>
        <p><bold>Figure 9.</bold> Hysteresis threshold sensitivity for receiver radii of 10 and 25 mm. The release threshold is one quarter of the activation threshold. Reduced motor duty comes with increased optical loss.</p>
        <fig id="fig10">
          <label>Figure 10</label>
          <graphic xlink:href="https://html.scirp.org/file/6401960-rId150.jpeg?20261027010853" />
        </fig>
        <p><bold>Figure 10</bold>. Sensitivity to prescribed slope-error standard deviation at both reflectors and receiver radius. The trade-off includes central receiver obscuration; thermal losses are outside the model.</p>
        <p>Increasing opposite-sign encoder biases from ±0.1˚ to ±1.0˚ reduces energy from 2.581 to 1.813 kWh with essentially unchanged energized time. A shaft servo cannot identify its own static calibration bias from the same encoder signal. Motor activity is consequently an incomplete indicator of optical alignment.</p>
      </sec>
      <sec id="sec6dot7">
        <title>6.7. Sensitivity to Ephemeris Mismatch</title>
        <p>NOAA-to-SPA direction discrepancies are 0.436˚, 0.111˚, 0.426˚ and 0.053˚ RMS in March, June, September and December. In September, using NOAA commands with SPA sunlight raises hysteretic ray RMSE from 0.169˚ to 0.451˚ and lowers energy from 2.575 to 2.544 kWh (<xref ref-type="fig" rid="fig11">Figure 11</xref>). Ephemeris error can compound or partly cancel encoder bias and lag, so the effect varies by date. This motivates the common-SPA comparisons in Sections 6.1 - 6.3 and shows why agreement between implementations sharing one trajectory is insufficient.</p>
        <fig id="fig11">
          <label>Figure 11</label>
          <graphic xlink:href="https://html.scirp.org/file/6401960-rId151.jpeg?20261027010854" />
        </fig>
        <p><bold>Figure 11.</bold> Separation of solar input and controller ephemeris. Left: hysteretic central-ray RMSE. Right: optical-energy change when NOAA drives the controller while SPA defines the incoming rays, relative to common-SPA tracking.</p>
      </sec>
    </sec>
    <sec id="sec7">
      <title>7. Electrical and Mechanical Interpretation</title>
      <p>The clearest actuation result is reduced energized axis time under the stated servo and holding assumptions. Translating that result into actual electricity use requires a drive model. Equation (17) assigns 12 W whenever the command exceeds a very small numerical threshold, regardless of speed, torque or supply modulation. This can overestimate a continuously modulated drive’s demand at low speed and exaggerate its budget relative to intermittent operation. The median 85.40% budget reduction is therefore conditional accounting, whereas the 88.95% axis-time reduction directly describes the simulated activation histories.</p>
      <p>For those same histories, a common supervisory load reduces the percentage electrical benefit without changing the difference attributable to axis duty. Changing the assumed axis power from 12 W to 4 W or 24 W changes the nominal NOAA budget reduction from 85.0% to approximately 78.7% or 86.7%. These are alternative constant-power budgets, not evidence of current-torque behavior. Driver losses, startup transients, braking and any holding current could change the comparison further. In particular, the additional activation energy must be smaller than the energy avoided during disabled intervals for intermittent control to retain an electrical advantage.</p>
      <p>For the primary common-SPA pair, passive holding allows a direct activation-energy break-even calculation. Let ε be the same additional energy per counted axis activation for both controllers, beyond the active-axis and supervisory terms already included in Equation (17). The base budgets are 249.9900 Wh for continuous tracking and 37.5833 Wh for hysteretic tracking, with 3 and 1169 activations, respectively. With ε in Wh per activation, the total budgets in Wh are</p>
      <disp-formula id="FD23">
        <label>(23)</label>
        <mml:math>
          <mml:mrow>
            <mml:msub>
              <mml:mi>E</mml:mi>
              <mml:mrow>
                <mml:mtext>C</mml:mtext>
                <mml:mo>,</mml:mo>
                <mml:mtext>total</mml:mtext>
              </mml:mrow>
            </mml:msub>
            <mml:mo>=</mml:mo>
            <mml:mn>249.9900</mml:mn>
            <mml:mo>+</mml:mo>
            <mml:mn>3</mml:mn>
            <mml:mi>ε</mml:mi>
          </mml:mrow>
        </mml:math>
      </disp-formula>
      <disp-formula id="FD24">
        <label>(24)</label>
        <mml:math>
          <mml:mrow>
            <mml:msub>
              <mml:mi>E</mml:mi>
              <mml:mrow>
                <mml:mtext>H</mml:mtext>
                <mml:mo>,</mml:mo>
                <mml:mtext>total</mml:mtext>
              </mml:mrow>
            </mml:msub>
            <mml:mo>=</mml:mo>
            <mml:mn>37.5833</mml:mn>
            <mml:mo>+</mml:mo>
            <mml:mn>1169</mml:mn>
            <mml:mi>ε</mml:mi>
          </mml:mrow>
        </mml:math>
      </disp-formula>
      <p>The 1166 additional hysteretic activations therefore consume the base advantage of 212.4067 Wh when</p>
      <disp-formula id="FD25">
        <label>(25)</label>
        <mml:math>
          <mml:mrow>
            <mml:msub>
              <mml:mi>ε</mml:mi>
              <mml:mrow>
                <mml:mtext>BE</mml:mtext>
              </mml:mrow>
            </mml:msub>
            <mml:mo>=</mml:mo>
            <mml:mfrac>
              <mml:mrow>
                <mml:mn>249.9900</mml:mn>
                <mml:mo>−</mml:mo>
                <mml:mn>37.5833</mml:mn>
              </mml:mrow>
              <mml:mrow>
                <mml:mn>1169</mml:mn>
                <mml:mo>−</mml:mo>
                <mml:mn>3</mml:mn>
              </mml:mrow>
            </mml:mfrac>
            <mml:mo>=</mml:mo>
            <mml:mn>0.18217</mml:mn>
            <mml:mtext>
               
            </mml:mtext>
            <mml:mtext>Wh</mml:mtext>
            <mml:mo>≃</mml:mo>
            <mml:mn>656</mml:mn>
            <mml:mtext>
               
            </mml:mtext>
            <mml:mtext>J</mml:mtext>
          </mml:mrow>
        </mml:math>
      </disp-formula>
      <p>Hysteretic tracking retains the estimated electrical advantage below this common per-activation allowance, reaches equality at the threshold, and loses that advantage above it. The threshold concerns additional activation energy under zero-power holding; it is neither a measured startup cost nor a torque-based motor specification. If the controllers or axes have different per-activation costs, their total extra energies must instead be compared directly against 212.4067 Wh.</p>
      <p>Mechanical feasibility also remains conditional. The approximately 70 kg documented assembly mass does not determine axis inertia, gravity torque or required motor rating. Sizing requires the rotating mass distribution, center-of-mass offsets, transmission ratios, efficiencies, friction, wind loading and acceleration demands. The assumed 0.4˚ s<sup>−</sup><sup>1</sup> rate limit and 2 s velocity response do not establish that the proposed motors can meet these loads. An Arduino and L293D implementation concept [<xref ref-type="bibr" rid="B18">18</xref>][<xref ref-type="bibr" rid="B19">19</xref>] identifies a control architecture, not verified motor, driver or transmission adequacy.</p>
      <p>The off-state hold is especially consequential because it creates the long-disabled intervals. The sprocket-and-chain layout alone does not establish resistance to backdriving; a brake, suitable reduction stage or other retaining mechanism must support that assumption. An electrically maintained hold would add consumption omitted from Equation (17), whereas brake release and re-engagement would add cycles. The fixed backlash operator likewise omits load-dependent compliance and wear. Nearly equal angular travel and more frequent starts mean that lower duty cannot be interpreted as longer service life.</p>
      <p>The prescribed output-angle disturbances test optical tolerance rather than a wind-load response: they bypass shaft feedback and have no assigned force or torque. Similarly, independent uniform parameter ranges explore design sensitivity without establishing field probabilities. The useful conclusion is that the nominal compromise survives many specified combinations, while the refined adverse cases delimit that conclusion. Unlike the wind-response model of Blume <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B9">9</xref>], this study does not connect angular excursions to wind loading, stiffness, damping or inertia. The disturbance results therefore cannot establish a permissible operating wind speed.</p>
      <p>The ideal paraboloid, fixed reflectance and uncorrelated slope errors omit deformation, support shading, spectral effects and thermal coupling. Absorbed optical energy is therefore distinct from useful heating. Four synthetic days cannot support annual yield estimates. Further numerical development could introduce torque-dependent drives, correlated surface maps and receiver heat transfer with separate verification benchmarks. Load-dependent surface deformation can be coupled to ray tracing, as demonstrated by Liu <italic>et</italic><italic>al.</italic> [<xref ref-type="bibr" rid="B10">10</xref>]; this would be needed to replace the assumed slope-error distribution with a structural prediction. Performance testing under the SolarPACES guideline [<xref ref-type="bibr" rid="B11">11</xref>] remains distinct from the numerical verification reported here.</p>
    </sec>
    <sec id="sec8">
      <title>8. Conclusions</title>
      <p>For the modeled two-reflection furnace, hysteretic tracking preserves receiver interception while substantially reducing energized axis time. The contribution is the quantified optical-actuation compromise and its limits, rather than a new bisector law or controller principle. Independent geometry checks, analytical limits, SPA benchmarking and MATLAB-Python agreement support the numerical assessment.</p>
      <p>With common SPA trajectories, September energy retention is 99.75%; one-minute periodic updates give similar optical yield but greater enabled-time demand under the same servo. Across 128 paired uncertainty scenarios, median retention is 99.64% and median axis-time reduction is 89.0%. The least favorable refined case retains 98.27%, and wider thresholds fail a 1% loss criterion in some seasonal cases. These results support a conditional design choice, not a universal sub-1% penalty.</p>
      <p>The electrical benefit depends on active and holding power, while mechanical feasibility depends on torque capacity and position retention. The reported evidence concerns simulated optical absorption and actuation; it does not establish useful thermal efficiency, hardware adequacy or annual yield. The verified calculations provide a reproducible basis for selecting thresholds within the modeled operating conditions.</p>
    </sec>
    <sec id="sec9">
      <title>Acknowledgements</title>
      <p>The authors thank Dan Dicko Dankoulodo University of Maradi and the management and technical personnel of ANERSOL for their institutional and technical support and access to furnace configuration and design records.</p>
    </sec>
    <sec id="sec10">
      <title>Data Availability</title>
      <p>Data are available upon request from the corresponding author.</p>
    </sec>
    <sec id="sec11">
      <title>Author Contributions</title>
      <p>Mahamadou Hamidine: Conceptualization; Methodology; Formal analysis; Software; Validation; Supervision; Writing—original draft; Writing—review and editing. Adamou Boueye Abdou: Data curation; Investigation; Formal analysis; Visualization; Software. Alio Mahamadou Adamou: Validation; Visualization; Writing—review and editing.</p>
    </sec>
    <sec id="sec12">
      <title>Abbreviations</title>
      <table-wrap id="tbl10">
        <label>Table 10</label>
        <table>
          <tbody>
            <tr>
              <td>
                <bold>Abbreviation</bold>
              </td>
              <td>
                <bold>Definition</bold>
              </td>
            </tr>
            <tr>
              <td>ANERSOL</td>
              <td>Agence Nationale d’Énergie Solaire</td>
            </tr>
            <tr>
              <td>CAD</td>
              <td>Computer-aided design</td>
            </tr>
            <tr>
              <td>CNES</td>
              <td>Centre National d’Énergie Solaire</td>
            </tr>
            <tr>
              <td>CPV</td>
              <td>Concentrating photovoltaics</td>
            </tr>
            <tr>
              <td>DNI</td>
              <td>Direct normal irradiance</td>
            </tr>
            <tr>
              <td>ENU</td>
              <td>East–north–up</td>
            </tr>
            <tr>
              <td>LDR</td>
              <td>Light-dependent resistor</td>
            </tr>
            <tr>
              <td>NOAA</td>
              <td>National Oceanic and Atmospheric Administration</td>
            </tr>
            <tr>
              <td>NREL</td>
              <td>National Renewable Energy Laboratory</td>
            </tr>
            <tr>
              <td>PCG64</td>
              <td>Permuted congruential generator with 64-bit output</td>
            </tr>
            <tr>
              <td>PCWIN64</td>
              <td>MATLAB platform identifier for 64-bit Windows</td>
            </tr>
            <tr>
              <td>RMSE</td>
              <td>Root-mean-square error</td>
            </tr>
            <tr>
              <td>SolarPACES</td>
              <td>Solar Power and Chemical Energy Systems</td>
            </tr>
            <tr>
              <td>SPA</td>
              <td>Solar Position Algorithm</td>
            </tr>
            <tr>
              <td>UTC</td>
              <td>Coordinated Universal Time</td>
            </tr>
          </tbody>
        </table>
      </table-wrap>
    </sec>
  </body>
  <back>
    <ref-list>
      <title>References</title>
      <ref id="B1">
        <label>1.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Villeda, G., Castañeda, A., Vega, J.T. and Pineda, J. (2011) Seguidor Solar de Dos Ejes para un Horno Solar. <italic>Información tecnológica</italic>, 22, 95-106. https://doi.org/10.4067/s0718-07642011000200011 <pub-id pub-id-type="doi">10.4067/s0718-07642011000200011</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.4067/s0718-07642011000200011">https://doi.org/10.4067/s0718-07642011000200011</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Villeda, G.</string-name>
              <string-name>Vega, J.T.</string-name>
              <string-name>Pineda, J.</string-name>
            </person-group>
            <year>2011</year>
            <article-title>Seguidor Solar de Dos Ejes para un Horno Solar</article-title>
            <source>Información tecnológica</source>
            <volume>22</volume>
            <pub-id pub-id-type="doi">10.4067/s0718-07642011000200011</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B2">
        <label>2.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Sattler, J.C., Röger, M., Schwarzbözl, P., Buck, R., Macke, A., Raeder, C., <italic>et al</italic>. (2020) Review of Heliostat Calibration and Tracking Control Methods. <italic>Solar Energy</italic>, 207, 110-132. https://doi.org/10.1016/j.solener.2020.06.030 <pub-id pub-id-type="doi">10.1016/j.solener.2020.06.030</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.solener.2020.06.030">https://doi.org/10.1016/j.solener.2020.06.030</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Sattler, J.C.</string-name>
              <string-name>Buck, R.</string-name>
              <string-name>Macke, A.</string-name>
              <string-name>Raeder, C.</string-name>
            </person-group>
            <year>2020</year>
            <article-title>Review of Heliostat Calibration and Tracking Control Methods</article-title>
            <source>Solar Energy</source>
            <volume>207</volume>
            <pub-id pub-id-type="doi">10.1016/j.solener.2020.06.030</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B3">
        <label>3.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Grigoriev, V., Milidonis, K., Blanco, M. and Constantinou, M. (2021) Method to Determine the Tracking Angles of Heliostats. <italic>MethodsX</italic>, 8, Article 101244. https://doi.org/10.1016/j.mex.2021.101244 <pub-id pub-id-type="doi">10.1016/j.mex.2021.101244</pub-id><pub-id pub-id-type="pmid">34434767</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.mex.2021.101244">https://doi.org/10.1016/j.mex.2021.101244</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Grigoriev, V.</string-name>
              <string-name>Milidonis, K.</string-name>
              <string-name>Blanco, M.</string-name>
              <string-name>Constantinou, M.</string-name>
            </person-group>
            <year>2021</year>
            <article-title>Method to Determine the Tracking Angles of Heliostats</article-title>
            <source>MethodsX</source>
            <volume>8</volume>
            <elocation-id>101244</elocation-id>
            <pub-id pub-id-type="doi">10.1016/j.mex.2021.101244</pub-id>
            <pub-id pub-id-type="pmid">34434767</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B4">
        <label>4.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Pfahl, A., Coventry, J., Röger, M., Wolfertstetter, F., Vásquez-Arango, J.F., Gross, F., <italic>et al</italic>. (2017) Progress in Heliostat Development. <italic>Solar Energy</italic>, 152, 3-37. https://doi.org/10.1016/j.solener.2017.03.029 <pub-id pub-id-type="doi">10.1016/j.solener.2017.03.029</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.solener.2017.03.029">https://doi.org/10.1016/j.solener.2017.03.029</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Pfahl, A.</string-name>
              <string-name>Coventry, J.</string-name>
              <string-name>Wolfertstetter, F.</string-name>
              <string-name>Arango, J.F.</string-name>
              <string-name>Gross, F.</string-name>
            </person-group>
            <year>2017</year>
            <article-title>Progress in Heliostat Development</article-title>
            <source>Solar Energy</source>
            <volume>152</volume>
            <pub-id pub-id-type="doi">10.1016/j.solener.2017.03.029</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B5">
        <label>5.</label>
        <citation-alternatives>
          <mixed-citation publication-type="journal">Kribus, A., Vishnevetsky, I., Yogev, A. and Rubinov, T. (2004) Closed Loop Control of Heliostats. <italic>Energy</italic>, 29, 905-913. https://doi.org/10.1016/s0360-5442(03)00195-6 <pub-id pub-id-type="doi">10.1016/s0360-5442(03)00195-6</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/s0360-5442(03)00195-6">https://doi.org/10.1016/s0360-5442(03)00195-6</ext-link></mixed-citation>
          <element-citation publication-type="journal">
            <person-group person-group-type="author">
              <string-name>Kribus, A.</string-name>
              <string-name>Vishnevetsky, I.</string-name>
              <string-name>Yogev, A.</string-name>
              <string-name>Rubinov, T.</string-name>
            </person-group>
            <year>2004</year>
            <article-title>Closed Loop Control of Heliostats</article-title>
            <source>Energy</source>
            <volume>5442</volume>
            <issue>03</issue>
            <pub-id pub-id-type="doi">10.1016/s0360-5442(03)00195-6</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B6">
        <label>6.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Maiga, M., N’Tsoukpoe, K.E., Gomna, A. and Fiagbe, Y.K. (2024) Sources of Solar Tracking Errors and Correction Strategies for Heliostats. <italic>Renewable and Sustainable Energy Reviews</italic>, 203, Article 114770. https://doi.org/10.1016/j.rser.2024.114770 <pub-id pub-id-type="doi">10.1016/j.rser.2024.114770</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.rser.2024.114770">https://doi.org/10.1016/j.rser.2024.114770</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Maiga, M.</string-name>
              <string-name>Tsoukpoe, K.E.</string-name>
              <string-name>Gomna, A.</string-name>
              <string-name>Fiagbe, Y.K.</string-name>
            </person-group>
            <year>2024</year>
            <article-title>Sources of Solar Tracking Errors and Correction Strategies for Heliostats</article-title>
            <source>Renewable and Sustainable Energy Reviews</source>
            <volume>203</volume>
            <elocation-id>114770</elocation-id>
            <pub-id pub-id-type="doi">10.1016/j.rser.2024.114770</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B7">
        <label>7.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Diaz-Ponce, A., Romero-Lomelí, R., García, N.E., Trejo-Zúñiga, I., Keshtkar, S., Kojima, H., <italic>et al</italic>. (2026) Experimental Technology Assessment of Active Solar-Tracker Control Strategies: CPV Yield Penalties, Actuator Demand, and Net-Energy Trade-Offs. <italic>Sustainable Energy Technologies and Assessments</italic>, 93, Article 105237. https://doi.org/10.1016/j.seta.2026.105237 <pub-id pub-id-type="doi">10.1016/j.seta.2026.105237</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.seta.2026.105237">https://doi.org/10.1016/j.seta.2026.105237</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Diaz-Ponce, A.</string-name>
              <string-name>Keshtkar, S.</string-name>
              <string-name>Kojima, H.</string-name>
              <string-name>Penalties, A</string-name>
            </person-group>
            <year>2026</year>
            <article-title>Experimental Technology Assessment of Active Solar-Tracker Control Strategies: CPV Yield Penalties, Actuator Demand, and Net-Energy Trade-Offs</article-title>
            <source>Sustainable Energy Technologies and Assessments</source>
            <volume>93</volume>
            <elocation-id>105237</elocation-id>
            <pub-id pub-id-type="doi">10.1016/j.seta.2026.105237</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B8">
        <label>8.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Moreno-Cruz, I., Paredes-Orta, C., Martell-Chávez, F. and Salgado-Tránsito, I. (2025) Heliostat Drift Prediction Model to Improve Heliostat Position Control in Solar Fields. <italic>Solar Energy</italic>, 289, Article 113323. https://doi.org/10.1016/j.solener.2025.113323 <pub-id pub-id-type="doi">10.1016/j.solener.2025.113323</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.solener.2025.113323">https://doi.org/10.1016/j.solener.2025.113323</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Moreno-Cruz, I.</string-name>
              <string-name>Paredes-Orta, C.</string-name>
            </person-group>
            <year>2025</year>
            <article-title>Heliostat Drift Prediction Model to Improve Heliostat Position Control in Solar Fields</article-title>
            <source>Solar Energy</source>
            <volume>289</volume>
            <elocation-id>113323</elocation-id>
            <pub-id pub-id-type="doi">10.1016/j.solener.2025.113323</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B9">
        <label>9.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Blume, K., Röger, M. and Pitz-Paal, R. (2023) Simplified Analytical Model to Describe Wind Loads and Wind-Induced Tracking Deviations of Heliostats. <italic>Solar Energy</italic>, 256, 96-109. https://doi.org/10.1016/j.solener.2023.03.055 <pub-id pub-id-type="doi">10.1016/j.solener.2023.03.055</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.solener.2023.03.055">https://doi.org/10.1016/j.solener.2023.03.055</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Blume, K.</string-name>
              <string-name>Pitz-Paal, R.</string-name>
            </person-group>
            <year>2023</year>
            <article-title>Simplified Analytical Model to Describe Wind Loads and Wind-Induced Tracking Deviations of Heliostats</article-title>
            <source>Solar Energy</source>
            <volume>256</volume>
            <pub-id pub-id-type="doi">10.1016/j.solener.2023.03.055</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B10">
        <label>10.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Liu, Z., Zhao, Y. and Feng, J. (2025) Heliostat Surface Deformation and Encoding under Gravity and Wind Loads for Optical Performance Analysis. <italic>Renewable</italic><italic>Energy</italic>, 250, Article 123179. https://doi.org/10.1016/j.renene.2025.123179 <pub-id pub-id-type="doi">10.1016/j.renene.2025.123179</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.renene.2025.123179">https://doi.org/10.1016/j.renene.2025.123179</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Liu, Z.</string-name>
              <string-name>Zhao, Y.</string-name>
              <string-name>Feng, J.</string-name>
            </person-group>
            <year>2025</year>
            <article-title>Heliostat Surface Deformation and Encoding under Gravity and Wind Loads for Optical Performance Analysis</article-title>
            <source>Renewable Energy</source>
            <volume>250</volume>
            <elocation-id>123179</elocation-id>
            <pub-id pub-id-type="doi">10.1016/j.renene.2025.123179</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B11">
        <label>11.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Röger, M. (2023) SolarPACES Guideline for Heliostat Performance Testing. Version 1.0. SolarPACES.</mixed-citation>
          <element-citation publication-type="other">
            <year>2023</year>
            <article-title>SolarPACES Guideline for Heliostat Performance Testing</article-title>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B12">
        <label>12.</label>
        <mixed-citation publication-type="web">NOAA Global Monitoring Division (n.d.) General Solar Position Calculations. https://gml.noaa.gov/grad/solcalc/solareqns.PDF</mixed-citation>
      </ref>
      <ref id="B13">
        <label>13.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Reda, I. and Andreas, A. (2004) Solar Position Algorithm for Solar Radiation Applications. <italic>Solar</italic><italic>Energy</italic>, 76, 577-589. https://doi.org/10.1016/j.solener.2003.12.003 <pub-id pub-id-type="doi">10.1016/j.solener.2003.12.003</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.solener.2003.12.003">https://doi.org/10.1016/j.solener.2003.12.003</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Reda, I.</string-name>
              <string-name>Andreas, A.</string-name>
            </person-group>
            <year>2004</year>
            <article-title>Solar Position Algorithm for Solar Radiation Applications</article-title>
            <source>Solar Energy</source>
            <volume>76</volume>
            <pub-id pub-id-type="doi">10.1016/j.solener.2003.12.003</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B14">
        <label>14.</label>
        <mixed-citation publication-type="web">pvlib python Developers (n.d.) pvlib.solarposition.spa_python. Version 0.15.0 Documentation. https://pvlib-python.readthedocs.io/en/v0.15.0/reference/generated/pvlib.solarposition.spa_python.html</mixed-citation>
      </ref>
      <ref id="B15">
        <label>15.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Wendelin, T., Dobos, A. and Lewandowski, A. (2013) SolTrace: A Ray-Tracing Code for Complex Solar Optical Systems. NREL/TP-5500-59163.</mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Wendelin, T.</string-name>
              <string-name>Dobos, A.</string-name>
              <string-name>Lewandowski, A.</string-name>
            </person-group>
            <year>2013</year>
            <article-title>SolTrace: A Ray-Tracing Code for Complex Solar Optical Systems</article-title>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B16">
        <label>16.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Wang, Y., Potter, D., Asselineau, C.A., Corsi, C., Wagner, M., Caliot, C., <italic>et al</italic>. (2020) Verification of Optical Modelling of Sunshape and Surface Slope Error for Concentrating Solar Power Systems. <italic>Solar Energy</italic>, 195, 461-474. https://doi.org/10.1016/j.solener.2019.11.035 <pub-id pub-id-type="doi">10.1016/j.solener.2019.11.035</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.solener.2019.11.035">https://doi.org/10.1016/j.solener.2019.11.035</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Wang, Y.</string-name>
              <string-name>Potter, D.</string-name>
              <string-name>Asselineau, C.A.</string-name>
              <string-name>Corsi, C.</string-name>
              <string-name>Wagner, M.</string-name>
              <string-name>Caliot, C.</string-name>
            </person-group>
            <year>2020</year>
            <article-title>Verification of Optical Modelling of Sunshape and Surface Slope Error for Concentrating Solar Power Systems</article-title>
            <source>Solar Energy</source>
            <volume>195</volume>
            <pub-id pub-id-type="doi">10.1016/j.solener.2019.11.035</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B17">
        <label>17.</label>
        <citation-alternatives>
          <mixed-citation publication-type="other">Halton, J.H. (1960) On the Efficiency of Certain Quasi-Random Sequences of Points in Evaluating Multi-Dimensional Integrals. <italic>Numerische Mathematik</italic>, 2, 84-90. https://doi.org/10.1007/bf01386213 <pub-id pub-id-type="doi">10.1007/bf01386213</pub-id><ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1007/bf01386213">https://doi.org/10.1007/bf01386213</ext-link></mixed-citation>
          <element-citation publication-type="other">
            <person-group person-group-type="author">
              <string-name>Halton, J.H.</string-name>
            </person-group>
            <year>1960</year>
            <article-title>On the Efficiency of Certain Quasi-Random Sequences of Points in Evaluating Multi-Dimensional Integrals</article-title>
            <source>Numerische Mathematik</source>
            <volume>2</volume>
            <pub-id pub-id-type="doi">10.1007/bf01386213</pub-id>
          </element-citation>
        </citation-alternatives>
      </ref>
      <ref id="B18">
        <label>18.</label>
        <mixed-citation publication-type="web">Arduino (n.d.) UNO R3 Documentation. https://docs.arduino.cc/hardware/uno-rev3/</mixed-citation>
      </ref>
      <ref id="B19">
        <label>19.</label>
        <citation-alternatives>
          <mixed-citation publication-type="web">Texas Instruments (2016) L293x Quadruple Half-H Drivers. Datasheet SLRS008D. https://www.ti.com/lit/ds/symlink/l293.pdf</mixed-citation>
          <element-citation publication-type="web">
            <year>2016</year>
            <article-title>L293x Quadruple Half-H Drivers</article-title>
          </element-citation>
        </citation-alternatives>
      </ref>
    </ref-list>
  </back>
</article>