<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing with OASIS Tables v3.0 20080202//EN" "https://jats.nlm.nih.gov/nlm-dtd/publishing/3.0/journalpub-oasis3.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:oasis="http://docs.oasis-open.org/ns/oasis-exchange/table" xml:lang="en" dtd-version="3.0" article-type="research-article">
  <front>
    <journal-meta><journal-id journal-id-type="publisher">AMT</journal-id><journal-title-group>
    <journal-title>Atmospheric Measurement Techniques</journal-title>
    <abbrev-journal-title abbrev-type="publisher">AMT</abbrev-journal-title><abbrev-journal-title abbrev-type="nlm-ta">Atmos. Meas. Tech.</abbrev-journal-title>
  </journal-title-group><issn pub-type="epub">1867-8548</issn><publisher>
    <publisher-name>Copernicus Publications</publisher-name>
    <publisher-loc>Göttingen, Germany</publisher-loc>
  </publisher></journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.5194/amt-19-5211-2026</article-id><title-group><article-title>Radar data smoothing using the Discrete Cosine Transform: a fast spectral domain algorithm</article-title><alt-title>Radar data smoothing using DCT</alt-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author" corresp="yes" rid="aff1">
          <name><surname>Valdivia</surname><given-names>Jairo M.</given-names></name>
          <email>jairo.valdiviaprado@colorado.edu</email>
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Chapman</surname><given-names>Will</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Friedrich</surname><given-names>Katja</given-names></name>
          
        </contrib>
        <aff id="aff1"><label>1</label><institution>Department of Atmospheric and Oceanic Sciences, University of Colorado Boulder, Boulder, CO, USA</institution>
        </aff>
      </contrib-group>
      <author-notes><corresp id="corr1">Jairo M. Valdivia (jairo.valdiviaprado@colorado.edu)</corresp></author-notes><pub-date><day>10</day><month>August</month><year>2026</year></pub-date>
      
      <volume>19</volume>
      <issue>15</issue>
      <fpage>5211</fpage><lpage>5222</lpage>
      <history>
        <date date-type="received"><day>23</day><month>January</month><year>2026</year></date>
           <date date-type="rev-request"><day>27</day><month>February</month><year>2026</year></date>
           <date date-type="rev-recd"><day>30</day><month>June</month><year>2026</year></date>
           <date date-type="accepted"><day>17</day><month>July</month><year>2026</year></date>
      </history>
      <permissions>
        <copyright-statement>Copyright: © 2026 Jairo M. Valdivia et al.</copyright-statement>
        <copyright-year>2026</copyright-year>
      <license license-type="open-access"><license-p>This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this licence, visit <ext-link ext-link-type="uri" xlink:href="https://creativecommons.org/licenses/by/4.0/">https://creativecommons.org/licenses/by/4.0/</ext-link></license-p></license></permissions><self-uri xlink:href="https://amt.copernicus.org/articles/19/5211/2026/amt-19-5211-2026.html">This article is available from https://amt.copernicus.org/articles/19/5211/2026/amt-19-5211-2026.html</self-uri><self-uri xlink:href="https://amt.copernicus.org/articles/19/5211/2026/amt-19-5211-2026.pdf">The full text article is available as a PDF file from https://amt.copernicus.org/articles/19/5211/2026/amt-19-5211-2026.pdf</self-uri>
      <abstract><title>Abstract</title>

      <p id="d2e97">This study introduces a computationally efficient and methodologically robust approach for smoothing radar data using the Discrete Cosine Transform (DCT). Traditional spatial convolution methods for noise reduction in polar coordinates suffer from geometric inconsistencies and prohibitive computational costs, particularly when implementing range-dependent dynamic kernels to maintain physical scale. We propose a spectral-domain alternative that utilizes the convolution theorem to perform equivalent smoothing operations. By deriving analytical transfer functions for various kernels – including Boxcar, Gaussian, and Savitzky–Golay – we demonstrate that the DCT method achieves identical performance to spatial convolution while effectively handling boundary conditions. Performance benchmarks on real C-band weather radar data reveal that the DCT-based approach offers speedup factors exceeding 800 times for large kernel sizes. Furthermore, for large-scale datasets (180 million pixels), equivalent processing time is reduced from over 1 h to under 18 s. The proposed method ensures physically consistent smoothing across ranges, preserving small-scale meteorological features while enabling real-time data quality improvement.</p>
  </abstract>
    
<funding-group>
<award-group id="gs1">
<funding-source>National Science Foundation</funding-source>
<award-id>AGS 2114011</award-id>
</award-group>
</funding-group>
</article-meta>
  </front>
<body>
      

<sec id="Ch1.S1" sec-type="intro">
  <label>1</label><title>Introduction</title>
      <p id="d2e109">Weather radar observations often show large spatial variability, which is typically exacerbated by various sources of noise and observational artifacts. Some gradients are related to the nature of precipitation, others result from oversampling, and non-meteorological features such as partial or complete beam blockage <xref ref-type="bibr" rid="bib1.bibx7 bib1.bibx2" id="paren.1"/>, data gaps related to data filtering, non-uniform beam filling around cloud edges <xref ref-type="bibr" rid="bib1.bibx4" id="paren.2"/>, and range-dependent beam broadening <xref ref-type="bibr" rid="bib1.bibx21 bib1.bibx9" id="paren.3"><named-content content-type="pre">e.g.</named-content></xref>.  While significant progress has been made in removing structured non-meteorological echoes (e.g., ground clutter filtering), high-frequency fluctuations in the signal remains a computational expensive process, particularly for improving data quality for visualization and automated analysis.</p>
      <p id="d2e123">Traditional spatial domain smoothing techniques, such as the moving window average <xref ref-type="bibr" rid="bib1.bibx18" id="paren.4"><named-content content-type="pre">boxcar filter;</named-content></xref>, have been widely used to mitigate this “noise”. However, applying these filters in the native polar coordinate system of radar data presents geometric challenges. A constant window size in the range-angle domain corresponds to a physically varying spatial scale; a small window at close range covers a much smaller physical area than the same window at long range. This leads to inconsistent smoothing: data at long ranges may be undersmoothed while data at close ranges may be oversmoothed, or vice-versa.  To visualize this issue, Fig. <xref ref-type="fig" rid="F1"/> illustrates how a constant angular window corresponds to drastically different physical areas at different ranges, highlighting the need for range-dependent kernel adaptation which is computationally expensive in the spatial domain.</p>

      <fig id="F1" specific-use="star"><label>Figure 1</label><caption><p id="d2e135">Conceptual comparison of coordinate distortion for <bold>(a)</bold> a window of constant size in grid space (range-angle indices) that corresponds to <bold>(b)</bold> physically different areas in a physical space depending on the range. At close range, the physical area is small, whereas at far range, it expands significantly. This distortion necessitates dynamic kernel sizing to maintain a constant physical smoothing scale.</p></caption>
        <graphic xlink:href="https://amt.copernicus.org/articles/19/5211/2026/amt-19-5211-2026-f01.png"/>

      </fig>

      <p id="d2e151">In this work, we propose a spectral-domain approach using the Discrete Cosine Transform <xref ref-type="bibr" rid="bib1.bibx1" id="paren.5"><named-content content-type="pre">DCT;</named-content></xref> to perform radar data smoothing in the native polar coordinate space. This smoothing technique help us to filter out high-frequency oscillations in the signal that is treated as “noise”. We demonstrate that DCT-based convolution offers a computationally efficient and mathematically equivalent alternative to spatial convolution, with the added benefit of easily handling range-dependent kernel scaling and boundary conditions that mitigate artifacts like the Gibbs phenomenon.  Specifically, the DCT method allows us to perform convolution in <inline-formula><mml:math id="M1" display="inline"><mml:mrow><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log⁡</mml:mi><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> time, which is significantly faster than the <inline-formula><mml:math id="M2" display="inline"><mml:mrow><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>⋅</mml:mo><mml:msup><mml:mi>W</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> complexity of spatial convolution with large windows. This speed advantage allows for real-time processing of large radar volumes with physically correct range-variant smoothing, which was previously computationally prohibitive.  DCT method requires a complete, continuous dataset. Unlike spatial convolution which can simply skip invalid pixels (NaNs) or adjust normalization, spectral transforms technically require defined values everywhere. Therefore, data gaps due to filtering or beam blockage must be filled (e.g., via interpolation) prior to applying the transform. This prefilling requirement is a known limitation of spectral methods; its consequences and the alternative strategies that address them are discussed in Sect. 3.</p>
      <p id="d2e198">This paper is organized as follows. Section <xref ref-type="sec" rid="Ch1.S2"/> establishes the theoretical framework, detailing the convolution theorem and its application in polar coordinates. Section <xref ref-type="sec" rid="Ch1.S3"/> demonstrates the application of this method to real radar observations. Section <xref ref-type="sec" rid="Ch1.S4"/> presents a performance benchmark comparing the proposed DCT method against traditional spatial algorithms. Finally, Sect. <xref ref-type="sec" rid="Ch1.S5"/> discusses the implications and Sect. <xref ref-type="sec" rid="Ch1.S6"/> concludes the study.</p>
</sec>
<sec id="Ch1.S2">
  <label>2</label><title>Theoretical Framework and Geometric Considerations</title>
<sec id="Ch1.S2.SS1">
  <label>2.1</label><title>Convolution Theorem and Transfer Function</title>
      <p id="d2e226">The fundamental mathematical principle underlying this work is the Convolution Theorem, which states that convolution in the spatial domain is equivalent to point-wise multiplication in the spectral domain <xref ref-type="bibr" rid="bib1.bibx15" id="paren.6"/>. For two discrete signals <inline-formula><mml:math id="M3" display="inline"><mml:mrow><mml:mi>f</mml:mi><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M4" display="inline"><mml:mrow><mml:mi>g</mml:mi><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>, their linear convolution <inline-formula><mml:math id="M5" display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">f</mml:mi><mml:mo>×</mml:mo><mml:mi mathvariant="bold-italic">g</mml:mi><mml:mo>)</mml:mo><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> corresponds to:

            <disp-formula id="Ch1.E1" content-type="numbered"><label>1</label><mml:math id="M6" display="block"><mml:mrow><mml:mi mathvariant="script">T</mml:mi><mml:mo mathvariant="italic">{</mml:mo><mml:mi mathvariant="bold-italic">f</mml:mi><mml:mo>×</mml:mo><mml:mi mathvariant="bold-italic">g</mml:mi><mml:mo mathvariant="italic">}</mml:mo><mml:mo>=</mml:mo><mml:mi mathvariant="script">T</mml:mi><mml:mo mathvariant="italic">{</mml:mo><mml:mi>f</mml:mi><mml:mo mathvariant="italic">}</mml:mo><mml:mo>⋅</mml:mo><mml:mi mathvariant="script">T</mml:mi><mml:mo mathvariant="italic">{</mml:mo><mml:mi>g</mml:mi><mml:mo mathvariant="italic">}</mml:mo></mml:mrow></mml:math></disp-formula>

          where <inline-formula><mml:math id="M7" display="inline"><mml:mi mathvariant="script">T</mml:mi></mml:math></inline-formula> denotes a linear transform. While this is commonly associated with the Discrete Fourier Transform (DFT) under periodic boundary conditions (circular convolution), it also applies to the Discrete Cosine Transform (DCT) under the assumption of symmetric boundary conditions <xref ref-type="bibr" rid="bib1.bibx13" id="paren.7"/>.  We utilize the DCT-II, defined for a signal <inline-formula><mml:math id="M8" display="inline"><mml:mrow><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> of length <inline-formula><mml:math id="M9" display="inline"><mml:mi>N</mml:mi></mml:math></inline-formula> as:

            <disp-formula id="Ch1.E2" content-type="numbered"><label>2</label><mml:math id="M10" display="block"><mml:mrow><mml:mi>X</mml:mi><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>n</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow><mml:mrow><mml:mi>N</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:munderover><mml:mi>x</mml:mi><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo><mml:mi>cos⁡</mml:mi><mml:mfenced close=")" open="("><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="italic">π</mml:mi><mml:mi>k</mml:mi><mml:mo>(</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi>n</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>N</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:mspace linebreak="nobreak" width="0.33em"/><mml:mo>,</mml:mo><mml:mspace width="1em" linebreak="nobreak"/><mml:mn mathvariant="normal">0</mml:mn><mml:mo>≤</mml:mo><mml:mi>k</mml:mi><mml:mo>&lt;</mml:mo><mml:mi>N</mml:mi></mml:mrow></mml:math></disp-formula></p>
      <p id="d2e437">The DCT-II corresponds to a discretization of the Neumann boundary condition (zero derivative at the endpoints) in the continuum limit. In the discrete domain, this implies a <italic>half-sample symmetric extension</italic> of the data at the boundaries <xref ref-type="bibr" rid="bib1.bibx19" id="paren.8"/>.</p>
      <p id="d2e446"><xref ref-type="bibr" rid="bib1.bibx14" id="text.9"/> demonstrated that while the DFT diagonalizes circulant matrices (periodic convolution), the DCT-II diagonalizes (or approximately diagonalizes, depending on the kernel symmetry) matrices with Toeplitz-plus-Hankel structure. This structure mathematically represents the sum of a standard linear convolution (Toeplitz) and the convolution with the reflected data at the boundaries (Hankel). Therefore, point-wise multiplication in the DCT domain is equivalent to spatial convolution where data outside the domain is modeled as a symmetric reflection of the data inside, effectively mitigating the edge artifacts associated with periodic DFT assumptions.</p>
      <p id="d2e451">For a symmetric filter <inline-formula><mml:math id="M11" display="inline"><mml:mrow><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> of width <inline-formula><mml:math id="M12" display="inline"><mml:mi>M</mml:mi></mml:math></inline-formula> (where <inline-formula><mml:math id="M13" display="inline"><mml:mi>M</mml:mi></mml:math></inline-formula> is odd), centered at <inline-formula><mml:math id="M14" display="inline"><mml:mrow><mml:mi>n</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:math></inline-formula>, the coefficients are <inline-formula><mml:math id="M15" display="inline"><mml:mrow><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>/</mml:mo><mml:mi>M</mml:mi></mml:mrow></mml:math></inline-formula> for <inline-formula><mml:math id="M16" display="inline"><mml:mrow><mml:mo>|</mml:mo><mml:mi>n</mml:mi><mml:mo>|</mml:mo><mml:mo>≤</mml:mo><mml:mo>(</mml:mo><mml:mi>M</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:math></inline-formula> and 0 otherwise.  The frequency response (or transfer function) <inline-formula><mml:math id="M17" display="inline"><mml:mrow><mml:mi mathvariant="bold">H</mml:mi><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> in the DCT domain corresponds to the DFT of the symmetric extension of the filter. Since <inline-formula><mml:math id="M18" display="inline"><mml:mrow><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> is real and even, its frequency response is given by the sum of cosine terms:

            <disp-formula id="Ch1.E3" content-type="numbered"><label>3</label><mml:math id="M19" display="block"><mml:mrow><mml:mi mathvariant="bold">H</mml:mi><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>n</mml:mi><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mo>(</mml:mo><mml:mi>M</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>M</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:munderover><mml:mi>h</mml:mi><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo><mml:mi>cos⁡</mml:mi><mml:mfenced close=")" open="("><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="italic">π</mml:mi><mml:mi>k</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mi>N</mml:mi></mml:mfrac></mml:mstyle></mml:mfenced></mml:mrow></mml:math></disp-formula></p>
      <p id="d2e651">Substituting <inline-formula><mml:math id="M20" display="inline"><mml:mrow><mml:mi>h</mml:mi><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>/</mml:mo><mml:mi>M</mml:mi></mml:mrow></mml:math></inline-formula>:

            <disp-formula id="Ch1.E4" content-type="numbered"><label>4</label><mml:math id="M21" display="block"><mml:mtable columnspacing="1em" class="aligned" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mi mathvariant="bold">H</mml:mi><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mi>M</mml:mi></mml:mfrac></mml:mstyle><mml:mo mathsize="2.0em">(</mml:mo><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>)</mml:mo><mml:mo>+</mml:mo><mml:msubsup><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>n</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>M</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msubsup><mml:mi>cos⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="italic">π</mml:mi><mml:mi>k</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mi>N</mml:mi></mml:mfrac></mml:mstyle></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mstyle displaystyle="true" class="stylechange"/></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mo>+</mml:mo><mml:msubsup><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>n</mml:mi><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mo>(</mml:mo><mml:mi>M</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msubsup><mml:mi>cos⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="italic">π</mml:mi><mml:mi>k</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mi>N</mml:mi></mml:mfrac></mml:mstyle></mml:mfenced><mml:mo mathsize="2.0em">)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
      <p id="d2e811">Since <inline-formula><mml:math id="M22" display="inline"><mml:mrow><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mo>-</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, the negative indices sum is identical to the positive indices sum. Therefore, for a boxcar filter of width <inline-formula><mml:math id="M23" display="inline"><mml:mi>M</mml:mi></mml:math></inline-formula> in the DCT-II domain, the transfer function <inline-formula><mml:math id="M24" display="inline"><mml:mrow><mml:mi mathvariant="bold">H</mml:mi><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> is given by:

            <disp-formula id="Ch1.E5" content-type="numbered"><label>5</label><mml:math id="M25" display="block"><mml:mrow><mml:mi mathvariant="bold">H</mml:mi><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mi>M</mml:mi></mml:mfrac></mml:mstyle><mml:mfenced open="(" close=")"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>M</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:munderover><mml:mi>cos⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi>j</mml:mi><mml:mi mathvariant="italic">π</mml:mi><mml:mi>k</mml:mi></mml:mrow><mml:mi>N</mml:mi></mml:mfrac></mml:mstyle></mml:mfenced></mml:mrow></mml:mfenced></mml:mrow></mml:math></disp-formula></p>
      <p id="d2e929">To generalize this for continuous widths <inline-formula><mml:math id="M26" display="inline"><mml:mi>W</mml:mi></mml:math></inline-formula> (essential for polar coordinate smoothing where the effective kernel width varies continuously with range), we utilize the Dirichlet kernel identity <xref ref-type="bibr" rid="bib1.bibx12" id="paren.10"/>. This extension effectively defines a continuous spectral filter that approximates a fractional-width moving average:

            <disp-formula id="Ch1.E6" content-type="numbered"><label>6</label><mml:math id="M27" display="block"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi>K</mml:mi></mml:munderover><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>j</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:mo>(</mml:mo><mml:mi>K</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mo>)</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mo>)</mml:mo></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:math></disp-formula>

          This is a standard result in Fourier analysis <xref ref-type="bibr" rid="bib1.bibx15" id="paren.11"/>.  Substituting <inline-formula><mml:math id="M28" display="inline"><mml:mrow><mml:mi>K</mml:mi><mml:mo>=</mml:mo><mml:mo>(</mml:mo><mml:mi>W</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M29" display="inline"><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="italic">ω</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mo>(</mml:mo><mml:mi mathvariant="italic">π</mml:mi><mml:mi>k</mml:mi><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mi>N</mml:mi></mml:mrow></mml:math></inline-formula>, we obtain the analytical transfer function:

            <disp-formula id="Ch1.E7" content-type="numbered"><label>7</label><mml:math id="M30" display="block"><mml:mrow><mml:mi mathvariant="bold">H</mml:mi><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mi>W</mml:mi></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>W</mml:mi><mml:msub><mml:mi mathvariant="italic">ω</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="italic">ω</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mo>)</mml:mo></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:math></disp-formula>

          Note that <inline-formula><mml:math id="M31" display="inline"><mml:mrow><mml:msub><mml:mo>lim⁡</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="italic">ω</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>→</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:msub><mml:mi mathvariant="bold">H</mml:mi><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:math></inline-formula>. This closed-form expression allows us to compute the smoothing operation efficiently for any real-valued width <inline-formula><mml:math id="M32" display="inline"><mml:mi>W</mml:mi></mml:math></inline-formula>, mitigating discretization errors associated with forcing integer kernel sizes.  It is important to emphasize that while we refer to this as an “analytical boxcar convolution” due to its spatial equivalent, in the DCT domain it is strictly a spectral filter. This distinction allows us to bypass the constraints of discrete grid indices entirely, operating on the continuous frequency response of the underlying function rather than a pixelated approximation.</p>
</sec>
<sec id="Ch1.S2.SS2">
  <label>2.2</label><title>2D Convolution and Separability</title>
      <p id="d2e1177">The 2D spatial convolution of a matrix <inline-formula><mml:math id="M33" display="inline"><mml:mrow><mml:mi>x</mml:mi><mml:mo>[</mml:mo><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> with a kernel <inline-formula><mml:math id="M34" display="inline"><mml:mrow><mml:mi>h</mml:mi><mml:mo>[</mml:mo><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> is defined as:

            <disp-formula id="Ch1.E8" content-type="numbered"><label>8</label><mml:math id="M35" display="block"><mml:mrow><mml:mi mathvariant="bold">y</mml:mi><mml:mo>[</mml:mo><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:mo>(</mml:mo><mml:mi mathvariant="bold">x</mml:mi><mml:mo>×</mml:mo><mml:mi mathvariant="bold">h</mml:mi><mml:mo>)</mml:mo><mml:mo>[</mml:mo><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:munder><mml:mo movablelimits="false">∑</mml:mo><mml:mi>i</mml:mi></mml:munder><mml:munder><mml:mo movablelimits="false">∑</mml:mo><mml:mi>j</mml:mi></mml:munder><mml:mi>x</mml:mi><mml:mo>[</mml:mo><mml:mi>m</mml:mi><mml:mo>-</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo>-</mml:mo><mml:mi>j</mml:mi><mml:mo>]</mml:mo><mml:mi>h</mml:mi><mml:mo>[</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula>

          In our experiments, we use a boxcar filter of size <inline-formula><mml:math id="M36" display="inline"><mml:mrow><mml:mi>M</mml:mi><mml:mo>×</mml:mo><mml:mi>M</mml:mi></mml:mrow></mml:math></inline-formula>. A key property of this filter is its separability, meaning it can be decomposed into two 1D filters:

            <disp-formula id="Ch1.E9" content-type="numbered"><label>9</label><mml:math id="M37" display="block"><mml:mrow><mml:mi mathvariant="bold">h</mml:mi><mml:mo>[</mml:mo><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi>m</mml:mi><mml:mo>]</mml:mo><mml:mo>⋅</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mtext>range</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula>

          where <inline-formula><mml:math id="M38" display="inline"><mml:mrow><mml:msub><mml:mi>h</mml:mi><mml:mtext>ang</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M39" display="inline"><mml:mrow><mml:msub><mml:mi>h</mml:mi><mml:mtext>range</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> are 1D boxcar filters. Similarly, the 2D DCT is separable:

            <disp-formula id="Ch1.E10" content-type="numbered"><label>10</label><mml:math id="M40" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mtext>2D</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi>u</mml:mi><mml:mo>,</mml:mo><mml:mi>v</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mtext>DCT</mml:mtext><mml:mtext>range</mml:mtext></mml:msub><mml:mo>(</mml:mo><mml:msub><mml:mtext>DCT</mml:mtext><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="bold">x</mml:mi><mml:mo>[</mml:mo><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo><mml:mo>)</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>

          For a standard separable convolution with a constant kernel, the 2D transfer function is simply the outer product of the 1D transfer functions: <inline-formula><mml:math id="M41" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">H</mml:mi><mml:mtext>2D</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi>u</mml:mi><mml:mo>,</mml:mo><mml:mi>v</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi>u</mml:mi><mml:mo>]</mml:mo><mml:mo>⋅</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mtext>range</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi>v</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>.</p>
</sec>
<sec id="Ch1.S2.SS3">
  <label>2.3</label><title>2D Convolution in Polar Coordinates</title>
      <p id="d2e1493">Radar observations are collected on a polar grid <inline-formula><mml:math id="M42" display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mi>r</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> through scanning strategies such as the Plane Position Indicator (PPI) for horizontal surveys or the Range Height Indicator (RHI) for vertical cross-sections. While these datasets are frequently projected onto Cartesian coordinates for integration with numerical models, performing smoothing directly in the native polar domain avoids interpolation artifacts but introduces geometric complexities. To ensure physically consistent smoothing, the effective kernel size must dynamically adapt to the range-dependent expansion of the radar sampling volume, accounting for the linear increase in transverse resolution with distance from the sensor. Throughout this section, “angle” refers to the polar angular coordinate <inline-formula><mml:math id="M43" display="inline"><mml:mi mathvariant="italic">θ</mml:mi></mml:math></inline-formula>, which is the azimuth for PPI scans and the elevation for RHI scans; the analysis applies to either case.</p>
      <p id="d2e1519">We adopt three related kernel-width quantities to describe this range dependence. Let <inline-formula><mml:math id="M44" display="inline"><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mtext>phys</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> denote the physical smoothing width in units of length (e.g., meters or kilometers), which is held constant in the angle direction at every range. The equivalent width in pixels is <inline-formula><mml:math id="M45" display="inline"><mml:mrow><mml:mi>W</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi>W</mml:mi><mml:mtext>phys</mml:mtext></mml:msub><mml:mo>/</mml:mo><mml:mo>(</mml:mo><mml:mi>r</mml:mi><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, a continuous real-valued parameter identical to the <inline-formula><mml:math id="M46" display="inline"><mml:mi>W</mml:mi></mml:math></inline-formula> of Eq. (7). In the range dimension the resolution is constant, so a fixed kernel is used. In the angle dimension the arc length <inline-formula><mml:math id="M47" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi>s</mml:mi><mml:mo>=</mml:mo><mml:mi>r</mml:mi><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:mrow></mml:math></inline-formula> grows with range, so the discrete kernel applied at each angle index is <inline-formula><mml:math id="M48" display="inline"><mml:mrow><mml:msub><mml:mi>N</mml:mi><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>(</mml:mo><mml:mi>r</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, the odd integer obtained by symmetrically rounding <inline-formula><mml:math id="M49" display="inline"><mml:mi>W</mml:mi></mml:math></inline-formula> to keep the kernel centered on the target cell:

            <disp-formula id="Ch1.E11" content-type="numbered"><label>11</label><mml:math id="M50" display="block"><mml:mrow><mml:msub><mml:mi>N</mml:mi><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>(</mml:mo><mml:mi>r</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mfenced close="⌋" open="⌊"><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mtext>phys</mml:mtext></mml:msub></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>r</mml:mi><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:mo>+</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:math></disp-formula>

          The factor <inline-formula><mml:math id="M51" display="inline"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>/</mml:mo><mml:mi>r</mml:mi></mml:mrow></mml:math></inline-formula> makes <inline-formula><mml:math id="M52" display="inline"><mml:mi>W</mml:mi></mml:math></inline-formula> decrease with range even though <inline-formula><mml:math id="M53" display="inline"><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mtext>phys</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is constant, so <inline-formula><mml:math id="M54" display="inline"><mml:mrow><mml:msub><mml:mi>N</mml:mi><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>(</mml:mo><mml:mi>r</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is small near the radar and grows toward long range.</p>
      <p id="d2e1700">In the spectral domain this range dependence implies that the operation cannot be expressed as a single global 2D transfer function. Instead we treat it as a sequence of separable operations: for each angle <inline-formula><mml:math id="M55" display="inline"><mml:mi mathvariant="italic">α</mml:mi></mml:math></inline-formula>, angle-direction smoothing uses a range-specific 1D filter <inline-formula><mml:math id="M56" display="inline"><mml:mrow><mml:msub><mml:mi>h</mml:mi><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi mathvariant="italic">α</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>, which in the 1D DCT along the angle direction corresponds to multiplying by a range-dependent transfer-function matrix <inline-formula><mml:math id="M57" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">H</mml:mi><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi mathvariant="italic">α</mml:mi><mml:mo>,</mml:mo><mml:mi>v</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>. Range smoothing uses a fixed filter, which in the 1D DCT along the range direction corresponds to multiplying by a constant transfer function <inline-formula><mml:math id="M58" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">H</mml:mi><mml:mtext>range</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi>u</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d2e1765">The separable form is exact for a kernel that is itself separable: a 2D boxcar <inline-formula><mml:math id="M59" display="inline"><mml:mrow><mml:mi>h</mml:mi><mml:mo>[</mml:mo><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi>m</mml:mi><mml:mo>]</mml:mo><mml:mo>⋅</mml:mo><mml:msub><mml:mi>h</mml:mi><mml:mtext>range</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> is mathematically identical to two sequential 1D boxcars, not an approximation of one. In polar geometry the resulting effective kernel is intentionally axis-aligned in (range, angle) to match the polar sampling volume <xref ref-type="bibr" rid="bib1.bibx4" id="paren.12"/>, so the anisotropy of the smoothing is the anisotropy of the radar geometry, not an artifact of the method.</p>
      <p id="d2e1817">The full 2D smoothing operation <inline-formula><mml:math id="M60" display="inline"><mml:mi>Y</mml:mi></mml:math></inline-formula> can be decomposed into a sequence of separable steps. First, we perform the angle-direction smoothing, whose transfer function depends on range:

                <disp-formula specific-use="align" content-type="numbered"><mml:math id="M61" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E12"><mml:mtd><mml:mtext>12</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">X</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mtext>ang</mml:mtext></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mo>=</mml:mo><mml:msub><mml:mtext>DCT</mml:mtext><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>(</mml:mo><mml:mi>X</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E13"><mml:mtd><mml:mtext>13</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">Y</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mtext>ang</mml:mtext></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mo>=</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">X</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>∘</mml:mo><mml:msub><mml:mi mathvariant="bold">H</mml:mi><mml:mtext>ang</mml:mtext></mml:msub></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E14"><mml:mtd><mml:mtext>14</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msub><mml:mi mathvariant="bold">Y</mml:mi><mml:mtext>ang</mml:mtext></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mo>=</mml:mo><mml:msub><mml:mtext>IDCT</mml:mtext><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>(</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">Y</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

          where <inline-formula><mml:math id="M62" display="inline"><mml:mo>∘</mml:mo></mml:math></inline-formula> denotes the Hadamard (element-wise) product and <inline-formula><mml:math id="M63" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">H</mml:mi><mml:mtext>ang</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is the matrix of range-dependent transfer functions. Next, we apply the constant smoothing along the range direction:

                <disp-formula specific-use="align" content-type="numbered"><mml:math id="M64" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E15"><mml:mtd><mml:mtext>15</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">Y</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mtext>range</mml:mtext></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mo>=</mml:mo><mml:msub><mml:mtext>DCT</mml:mtext><mml:mtext>range</mml:mtext></mml:msub><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="bold">Y</mml:mi><mml:mtext>ang</mml:mtext></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E16"><mml:mtd><mml:mtext>16</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">Y</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mtext>final</mml:mtext></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mo>=</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">Y</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover><mml:mtext>range</mml:mtext></mml:msub><mml:mo>⋅</mml:mo><mml:msub><mml:mi mathvariant="bold">H</mml:mi><mml:mtext>range</mml:mtext></mml:msub></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E17"><mml:mtd><mml:mtext>17</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mi mathvariant="bold">Y</mml:mi></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mo>=</mml:mo><mml:msub><mml:mtext>IDCT</mml:mtext><mml:mtext>range</mml:mtext></mml:msub><mml:mo>(</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">Y</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover><mml:mtext>final</mml:mtext></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

          This step-by-step formulation explicitly shows the intermediate return to the spatial domain (<inline-formula><mml:math id="M65" display="inline"><mml:mrow><mml:msub><mml:mi>Y</mml:mi><mml:mtext>ang</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>) required to transition from the per-angle smoothing (where the transfer function varies along the range) to the per-range smoothing (where the transfer function is constant).</p>
      <p id="d2e2069">Figure <xref ref-type="fig" rid="F2"/> validates the equivalence between the spatial and spectral operations using a synthetic dataset with known geometry. Both, the DCT and dynamic kernel methods utilized a boxcar window of 15 pixels in the range direction (approx. 1.1 km for a 75 m range resolution). The detailed analysis in Fig. <xref ref-type="fig" rid="F2"/> shows the original ground truth (Fig. <xref ref-type="fig" rid="F2"/>a) and the noisy signal (Fig. <xref ref-type="fig" rid="F2"/>b) side-by-side with the denoised outputs (Fig. <xref ref-type="fig" rid="F2"/>d and e). Crucially, the difference map (Fig. <xref ref-type="fig" rid="F2"/>f) and error plots (Fig. <xref ref-type="fig" rid="F2"/>g–i) confirm that the DCT method produces results that are nearly indistinguishable from the computationally expensive spatial convolution, solving the geometric smoothing problem without the performance penalty. The minor edge effects seen in the difference map are due to the difference in boundary conditions of the DCT (symmetric extension) versus the zero-padding or truncation often used in spatial implementations.</p>

      <fig id="F2" specific-use="star"><label>Figure 2</label><caption><p id="d2e2089">Comparison of synthetic ground truth, noisy observation, and smoothing performance. <bold>(a)</bold> Ground-truth synthetic Range-Height Indicator (RHI) radar image in polar coordinates. The field value mimics reflectivity (<inline-formula><mml:math id="M66" display="inline"><mml:mrow><mml:msub><mml:mi>Z</mml:mi><mml:mi>e</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>), but could be any dual-polarization variable. <bold>(b)</bold> Noisy observation (<inline-formula><mml:math id="M67" display="inline"><mml:mrow><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">2.00</mml:mn></mml:mrow></mml:math></inline-formula>). <bold>(c)</bold> The added noise pattern. <bold>(d)</bold> DCT-based smoothed result. <bold>(e)</bold> Spatial Dynamic Kernel (DK) smoothed result. <bold>(f)</bold> Difference between DCT and DK results. <bold>(g)</bold> DCT error map. <bold>(h)</bold> DK error map. <bold>(i)</bold> Difference of absolute errors (<inline-formula><mml:math id="M68" display="inline"><mml:mrow><mml:mo>|</mml:mo><mml:msub><mml:mtext>Error</mml:mtext><mml:mtext>DCT</mml:mtext></mml:msub><mml:mo>|</mml:mo><mml:mo>-</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mtext>Error</mml:mtext><mml:mtext>DK</mml:mtext></mml:msub><mml:mo>|</mml:mo></mml:mrow></mml:math></inline-formula>), where positive values indicate the DCT method performed worse and negative values indicate the DK method performed worse. Performance metrics include Root Mean Square Error (RMSE) and Mean Absolute Error (MAE).</p></caption>
          <graphic xlink:href="https://amt.copernicus.org/articles/19/5211/2026/amt-19-5211-2026-f02.jpg"/>

        </fig>


</sec>
<sec id="Ch1.S2.SS4">
  <label>2.4</label><title>Alternative DCT Kernels: Gaussian, Savitzky–Golay, and Hanning</title>
      <p id="d2e2186">A key advantage of the spectral approach is the flexibility of the transfer function. We can instantly switch between different smoothing characteristics by changing the analytical transfer function <inline-formula><mml:math id="M69" display="inline"><mml:mrow><mml:mi mathvariant="bold">H</mml:mi><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>:</p>
      <p id="d2e2203">For a Gaussian filter with standard deviation <inline-formula><mml:math id="M70" display="inline"><mml:mi mathvariant="italic">σ</mml:mi></mml:math></inline-formula>, the normalized transfer function is <xref ref-type="bibr" rid="bib1.bibx18" id="paren.13"/>:

            <disp-formula id="Ch1.E18" content-type="numbered"><label>18</label><mml:math id="M71" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="bold">H</mml:mi><mml:mtext>Gaussian</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:msup><mml:mi mathvariant="normal">e</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mstyle scriptlevel="+1"><mml:mfrac><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="italic">ω</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mi mathvariant="italic">σ</mml:mi><mml:msup><mml:mo>)</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:msup></mml:mrow></mml:math></disp-formula>

          where <inline-formula><mml:math id="M72" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ω</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mo>(</mml:mo><mml:mi mathvariant="italic">π</mml:mi><mml:mi>k</mml:mi><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mi>N</mml:mi></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d2e2286">The Savitzky–Golay filter fits a polynomial of order <inline-formula><mml:math id="M73" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> within a window <inline-formula><mml:math id="M74" display="inline"><mml:mi>W</mml:mi></mml:math></inline-formula>. It acts as a symmetric Finite Impulse Response (FIR) filter with coefficients <inline-formula><mml:math id="M75" display="inline"><mml:mrow><mml:mi>c</mml:mi><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> <xref ref-type="bibr" rid="bib1.bibx17" id="paren.14"/>. Its transfer function is:

            <disp-formula id="Ch1.E19" content-type="numbered"><label>19</label><mml:math id="M76" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="bold">H</mml:mi><mml:mtext>SG</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:mi>c</mml:mi><mml:mo>[</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>]</mml:mo><mml:mo>+</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>W</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:munderover><mml:mi>c</mml:mi><mml:mo>[</mml:mo><mml:mi>j</mml:mi><mml:mo>]</mml:mo><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>j</mml:mi><mml:msub><mml:mi mathvariant="italic">ω</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
      <p id="d2e2397">Similarly, for a Hanning window <inline-formula><mml:math id="M77" display="inline"><mml:mrow><mml:mi>w</mml:mi><mml:mo>[</mml:mo><mml:mi>n</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> <xref ref-type="bibr" rid="bib1.bibx6 bib1.bibx3" id="paren.15"/>, calculation of the transfer function follows the general symmetric FIR case:

            <disp-formula id="Ch1.E20" content-type="numbered"><label>20</label><mml:math id="M78" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="bold">H</mml:mi><mml:mtext>Hann</mml:mtext></mml:msub><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo><mml:mo>=</mml:mo><mml:mi>w</mml:mi><mml:mo>[</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>]</mml:mo><mml:mo>+</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>W</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:munderover><mml:mi>w</mml:mi><mml:mo>[</mml:mo><mml:mi>j</mml:mi><mml:mo>]</mml:mo><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>j</mml:mi><mml:msub><mml:mi mathvariant="italic">ω</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
      <p id="d2e2495">Figure <xref ref-type="fig" rid="F3"/> details the spectral characteristics of these kernels. Figure <xref ref-type="fig" rid="F3"/>a corresponds to the discrete boxcar transfer function calculated using Eq. (4), while (b) displays the analytical continuous formulation from Eq. (7). Comparison of these two confirms the accuracy of the analytical model. Figure <xref ref-type="fig" rid="F3"/>c shows the Gaussian kernel response (Eq. 18), where the width parameter was set to <inline-formula><mml:math id="M79" display="inline"><mml:mrow><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>=</mml:mo><mml:mi>W</mml:mi><mml:mo>/</mml:mo><mml:msqrt><mml:mn mathvariant="normal">12</mml:mn></mml:msqrt></mml:mrow></mml:math></inline-formula> to ensure variance consistency with the boxcar window. The Savitzky–Golay filter (Fig. <xref ref-type="fig" rid="F3"/>d), implemented with polynomial order <inline-formula><mml:math id="M80" display="inline"><mml:mrow><mml:mi>p</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">3</mml:mn></mml:mrow></mml:math></inline-formula> via Eq. (19), exhibits a broader passband but introduces evident spectral ringing. Finally, the Hanning window (Fig. <xref ref-type="fig" rid="F3"/>e), computed using Eq. (20), demonstrates superior sidelobe suppression. These behavioral properties remain consistent across different window sizes (Fig. <xref ref-type="fig" rid="F3"/>g–l). Practical guidance for selecting among these kernels is given in Sect. <xref ref-type="sec" rid="Ch1.S5"/>.</p>

      <fig id="F3" specific-use="star"><label>Figure 3</label><caption><p id="d2e2544">Spectral response of different kernels for two window sizes. Window 5: <bold>(a–e)</bold> 2D angle transfer functions, and <bold>(f)</bold> Range transfer function. Window 15: <bold>(g–k)</bold> Angle transfer functions, and <bold>(l)</bold> Range transfer function.</p></caption>
          <graphic xlink:href="https://amt.copernicus.org/articles/19/5211/2026/amt-19-5211-2026-f03.jpg"/>

        </fig>

</sec>
</sec>
<sec id="Ch1.S3">
  <label>3</label><title>Application to Real Radar Observations</title>
      <p id="d2e2574">Real radar data typically suffers from issues such as beam blockage, attenuation, and removal of data points during quality control, leading to gaps in the observational field.  Figure <xref ref-type="fig" rid="F4"/> demonstrates the application of the DCT method to C-band radar reflectivity data collected on 23 February 2022. The raw data (Fig. <xref ref-type="fig" rid="F4"/>a) exhibits characteristic speckle noise.  Even with a compact window size of 5 pixels, the method achieves substantial noise reduction while retaining feature definition. A notable implementation difference is that the spatial kernel (Fig. <xref ref-type="fig" rid="F4"/>b) explicitly ignores <monospace>NaN</monospace> values, whereas the DCT method (Fig. <xref ref-type="fig" rid="F4"/>c) requires a continuous field, handled here via linear interpolation. Despite this, the DCT approach, using a range-adaptive continuous boxcar window, effectively preserves mesoscale (1–2 km) features like cloud-top generating cells shown at cloud top in Fig. <xref ref-type="fig" rid="F4"/>e–h, where sharp gradients are maintained against the noise floor, solving a common challenge where aggressive smoothing often washes out such fine structures.</p>

      <fig id="F4" specific-use="star"><label>Figure 4</label><caption><p id="d2e2593">Application to C-band radar observations on 23 February 2022 at 02:28 UTC. <bold>(a)</bold> Original observational field with noise and gaps. <bold>(b)</bold> Result of spatial dynamic kernel smoothing (window 5 pixels). <bold>(c)</bold> Result of DCT-based smoothing (analytical continuous boxcar, window 5 pixels). <bold>(d)</bold> Difference between spatial and spectral methods. The red dashed box indicates the zoom region shown in panels <bold>(e)</bold>–<bold>(h)</bold>.</p></caption>
        <graphic xlink:href="https://amt.copernicus.org/articles/19/5211/2026/amt-19-5211-2026-f04.jpg"/>

      </fig>

      <p id="d2e2621">One caveat of the DCT method is that it requires a continuous data field without missing entries, and the present work fills gaps with linear interpolation prior to the DCT. Linear interpolation across a gap replaces the missing segment with a piecewise-linear bridge whose slope is unrelated to the underlying field, so two effects can bias the smoothed result. First, the bridge contributes a low-frequency trend across the gap; for gaps narrower than the local kernel width <inline-formula><mml:math id="M81" display="inline"><mml:mi>W</mml:mi></mml:math></inline-formula> this trend is small relative to the smoothing noise floor, but for wide gaps (large beam-blockage sectors, broad clutter removals) it can dominate the smoothed values within and near the gap. Second, the slope of the bridge generally differs from the local slope of the underlying field, producing a derivative discontinuity (a kink) at each gap boundary. The kink injects localized high-frequency content into the DCT spectrum; for <inline-formula><mml:math id="M82" display="inline"><mml:mi>W</mml:mi></mml:math></inline-formula> larger than the gap width this content is removed by the smoothing filter, but for narrow kernels residual kinks can survive as faint stripes parallel to the gap edge. The Astropy convolution-based interpolation <xref ref-type="bibr" rid="bib1.bibx20" id="paren.16"/> is a robust drop-in upgrade that addresses both the low-frequency bias and the kink. More generally, support-normalized filtering <xref ref-type="bibr" rid="bib1.bibx11 bib1.bibx25 bib1.bibx16" id="paren.17"/>, which avoids prefilling by treating missing entries as a separate certainty mask, has been developed by the authors as a methodological extension of the present framework <xref ref-type="bibr" rid="bib1.bibx23" id="paren.18"/>.</p>
      <p id="d2e2648">The uniqueness of the DCT approach compared to other methods lies in its ability to leverage the separable convolution property even when the physical kernel size varies dynamically. In spatial domain methods, a range-dependent kernel requires recalculating window indices for every range bin, a process that breaks vectorization and incurs heavy branch prediction penalties inside nested loops. In contrast, the DCT method handles this complexity through simple element-wise matrix multiplication in the spectral domain, utilizing the analytical transfer function to represent the continuous variation of the kernel width. This separation of geometry (kernel definition) from computation (filtering) is the core advantage that distinguishes DCT from traditional spatial iterative methods, allowing it to scale entirely differently with problem size.</p>
</sec>
<sec id="Ch1.S4">
  <label>4</label><title>Performance Benchmarking and Efficiency Analysis</title>
      <p id="d2e2659">To evaluate the computational efficiency, we compared the DCT method against a typical spatial dynamic kernel implementation.</p>
<sec id="Ch1.S4.SS1">
  <label>4.1</label><title>Experimental Setup</title>
      <p id="d2e2669">The benchmarks were conducted in two parts to isolate the effects of window size and total data volume: <list list-type="custom"><list-item><label>-</label>
      <p id="d2e2674"><italic>Window Size Test.</italic> Performed using RHI radar observations  with dimensions <inline-formula><mml:math id="M83" display="inline"><mml:mrow><mml:mn mathvariant="normal">474</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">1180</mml:mn><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mrow class="unit"><mml:mi mathvariant="normal">pixels</mml:mi></mml:mrow></mml:mrow></mml:math></inline-formula> (approx. 0.56 million pixels). Here, the window size was varied across <inline-formula><mml:math id="M84" display="inline"><mml:mrow><mml:mi>W</mml:mi><mml:mo>∈</mml:mo><mml:mo mathvariant="italic">{</mml:mo><mml:mn mathvariant="normal">5</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">9</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">15</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">31</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">51</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">101</mml:mn><mml:mo mathvariant="italic">}</mml:mo></mml:mrow></mml:math></inline-formula> pixels to capture the realistic overhead of handling jagged array edges and memory access patterns in operational data.</p></list-item><list-item><label>-</label>
      <p id="d2e2733"><italic>Data Size Test.</italic> Performed using a fixed window size of <inline-formula><mml:math id="M85" display="inline"><mml:mrow><mml:mi>W</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">5</mml:mn></mml:mrow></mml:math></inline-formula> pixels across random noise arrays with dimensions representative of various operational scenarios: <list list-type="custom"><list-item><label>-</label>
      <p id="d2e2752">Small (<inline-formula><mml:math id="M86" display="inline"><mml:mrow><mml:mn mathvariant="normal">100</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">500</mml:mn></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M87" display="inline"><mml:mrow><mml:mn mathvariant="normal">200</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">1000</mml:mn></mml:mrow></mml:math></inline-formula> pixels): Typical of single RHI scans or low-resolution grids.</p></list-item><list-item><label>-</label>
      <p id="d2e2780">Medium (<inline-formula><mml:math id="M88" display="inline"><mml:mrow><mml:mn mathvariant="normal">360</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">1500</mml:mn></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M89" display="inline"><mml:mrow><mml:mn mathvariant="normal">720</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">2500</mml:mn></mml:mrow></mml:math></inline-formula> pixels): Corresponding to standard PPI sweeps or single volume files.</p></list-item><list-item><label>-</label>
      <p id="d2e2808">Large (<inline-formula><mml:math id="M90" display="inline"><mml:mrow><mml:mn mathvariant="normal">7200</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">2500</mml:mn></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M91" display="inline"><mml:mrow><mml:mn mathvariant="normal">72</mml:mn><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mn mathvariant="normal">000</mml:mn><mml:mo>×</mml:mo><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mn mathvariant="normal">2500</mml:mn></mml:mrow></mml:math></inline-formula> pixels): Representing aggregated datasets, such as a full volume scan or approximately 1 h of continuous volume data (up to 180 million pixels).</p></list-item></list> This ensures a controlled environment to measure pure algorithmic scaling as a function of <inline-formula><mml:math id="M92" display="inline"><mml:mi>N</mml:mi></mml:math></inline-formula>.</p></list-item></list></p>
</sec>
<sec id="Ch1.S4.SS2">
  <label>4.2</label><title>Results</title>
      <p id="d2e2855">As shown in Fig. <xref ref-type="fig" rid="F5"/>, the spatial convolution algorithm exhibits <inline-formula><mml:math id="M93" display="inline"><mml:mrow><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>⋅</mml:mo><mml:msup><mml:mi>W</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> complexity. Our benchmarks reveal that as the window size increases from 5–101 pixels, the execution time for the spatial dynamic kernel escalates drastically from 8.5 s to over 44 s. In sharp contrast, the DCT method's complexity is dominated by the <inline-formula><mml:math id="M94" display="inline"><mml:mrow><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log⁡</mml:mi><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> transform step, making the smoothing operation effectively independent of window size. The analytical kernels (Gaussian and Analytical Boxcar) maintain a near-constant execution time of approximately 60 ms regardless of the filter width due to the analytical representation of the kernel (see Eqs. <xref ref-type="disp-formula" rid="Ch1.E7"/> and <xref ref-type="disp-formula" rid="Ch1.E18"/>).  This results in massive performance gains: for a large <inline-formula><mml:math id="M95" display="inline"><mml:mrow><mml:mn mathvariant="normal">101</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">101</mml:mn></mml:mrow></mml:math></inline-formula> pixels window, the Gaussian kernel achieves a speedup factor exceeding 800 times, and the Analytical Boxcar over 700 times. Even discrete DCT kernels like Savitzky–Golay and Hanning, which require iterative summation, outperform the spatial approach by factors of 60–100 times.</p>

      <fig id="F5" specific-use="star"><label>Figure 5</label><caption><p id="d2e2918">Computational benchmark results. <bold>(a)</bold> Execution time versus window size for a fixed data volume. <bold>(b)</bold> DCT speedup factors relative to the spatial dynamic kernel as a function of window size. <bold>(c)</bold> Execution time versus total number of pixels for a fixed window size. <bold>(d)</bold> DCT speedup factors as a function of total number of pixels.</p></caption>
          <graphic xlink:href="https://amt.copernicus.org/articles/19/5211/2026/amt-19-5211-2026-f05.png"/>

        </fig>

      <p id="d2e2939">The scalability analysis on dataset size further underscores the operational viability of the spectral approach. For a massive dataset representing approximately 1 h of volume data (180 million pixels), the spatial dynamic kernel required over 42 min (2518 <inline-formula><mml:math id="M96" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">s</mml:mi></mml:mrow></mml:math></inline-formula>) to complete. The Gaussian DCT implementation processed the same volume in less than 12 <inline-formula><mml:math id="M97" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">s</mml:mi></mml:mrow></mml:math></inline-formula>. This orders-of-magnitude improvement transforms computationally prohibitive geometric processing into a task feasible for real-time operational pipelines.</p>
</sec>
</sec>
<sec id="Ch1.S5">
  <label>5</label><title>Discussion</title>
      <p id="d2e2968">Noise removal remains a critical challenge in scientific signal processing. In radar meteorology, noise manifests in diverse forms, ranging from ground clutter in the Doppler spectrum to thermal noise in <inline-formula><mml:math id="M98" display="inline"><mml:mrow><mml:mi>I</mml:mi><mml:mo>/</mml:mo><mml:mi>Q</mml:mi></mml:mrow></mml:math></inline-formula> voltage data. This study specifically targets high-frequency fluctuations, or speckle, within moment data such as reflectivity. While we model this noise as randomly distributed and range-independent, the intrinsic polar geometry of radar data introduces a spatial dependency: data point density decreases inversely with range (<inline-formula><mml:math id="M99" display="inline"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>/</mml:mo><mml:mi>r</mml:mi></mml:mrow></mml:math></inline-formula>). Consequently, scaling the smoothing window with range implies using fewer data points at longer distances, potentially compromising noise reduction efficacy. Given that the signal-to-noise ratio (SNR) typically degrades with range and beam broadening obscures fine-scale features, there is a theoretical basis for adaptive window scaling. Such an approach would need to balance noise suppression against the preservation of detectable spatial features. Within the present spectral framework, statistical adaptation is a natural direction: the analytical transfer function <inline-formula><mml:math id="M100" display="inline"><mml:mrow><mml:mi mathvariant="bold">H</mml:mi><mml:mo>[</mml:mo><mml:mi>k</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> is an explicit object that can be modulated on a per-angle basis to widen or narrow the effective passband in regions of low or high local variance, respectively. Progress in this direction is already reported in the local-statistics extension of the present framework <xref ref-type="bibr" rid="bib1.bibx23" id="paren.19"/>, which extends the present method to local statistics in polar coordinates through support-normalized filtering.</p>
      <p id="d2e3012">A common approach to denoising is to simply truncate high frequencies in the spectral domain, effectively applying an Ideal Low-Pass Filter. However, a hard cutoff in the frequency domain takes the shape of a boxcar function; by the convolution theorem, the inverse transform of this boxcar is a Sinc function (<inline-formula><mml:math id="M101" display="inline"><mml:mrow><mml:mi>sin⁡</mml:mi><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mi>x</mml:mi></mml:mrow></mml:math></inline-formula>) in the spatial domain. The Sinc function is characterized by prominent oscillating tails, which manifest as spurious ringing artifacts near sharp signal transitions – a distinct error known as the Gibbs phenomenon <xref ref-type="bibr" rid="bib1.bibx5" id="paren.20"/>. Unlike the hard cutoff, the proposed DCT method multiplies the spectrum by a smooth shaping function (e.g., Gaussian or Hanning, as shown in Eq. 6), which decays gradually. This avoids the abrupt spectral discontinuity that causes the spatial ringing, effectively preserving the monotonicity of step-like features. Furthermore, the DCT's implicit even symmetry at boundaries significantly reduces edge artifacts compared to the DFT (FFT), which assumes periodic boundaries <xref ref-type="bibr" rid="bib1.bibx1 bib1.bibx13" id="paren.21"/>. This property is a primary reason why DCT is the standard for image compression algorithms like JPEG <xref ref-type="bibr" rid="bib1.bibx8" id="paren.22"/>.  To visualize the Gibbs phenomenon, Fig. <xref ref-type="fig" rid="F6"/> presents a comparison between an Ideal Low-Pass filter (which causes ringing) and the proposed DCT smoothing. The sharp cutoff in the frequency domain for the low-pass filter creates oscillations in the spatial domain near discontinuities. The DCT method, using a smooth Gaussian-like transfer function, avoids this issue entirely, preserving the monotonicity of the step function without artificial ringing.</p>

      <fig id="F6" specific-use="star"><label>Figure 6</label><caption><p id="d2e3046">Illustration of the Gibbs phenomenon. <bold>(a)</bold> Reconstructed signal comparison: an ideal low-pass filter (red line) produces ringing artifacts (Gibbs effect) near sharp transitions, whereas the DCT-based smoothing with a continuous Gaussian taper (blue line) provides a clean, physically consistent result compared to the reference signal (dashed black). <bold>(b)</bold> Corresponding DCT spectral domain visualization showing the hard cut vs. the smooth Gaussian weighting.</p></caption>
        <graphic xlink:href="https://amt.copernicus.org/articles/19/5211/2026/amt-19-5211-2026-f06.png"/>

      </fig>

      <p id="d2e3062">The Gibbs phenomenon will behave differently on different radar variables. While this study focused on reflectivity (<inline-formula><mml:math id="M102" display="inline"><mml:mrow><mml:msub><mml:mi>Z</mml:mi><mml:mi>e</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>), the DCT smoothing method is applicable to all radar moments, provided their physical characteristics are respected. Doppler velocity presents a unique challenge due to aliasing, where the velocity value wraps around the Nyquist interval (e.g., jumping from <inline-formula><mml:math id="M103" display="inline"><mml:mrow><mml:mo>+</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mtext>max</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> to <inline-formula><mml:math id="M104" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:msub><mml:mi>V</mml:mi><mml:mtext>max</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>), creating sharp, artificial discontinuities. Smoothing across these folded boundaries is problematic because it mathematically averages physically disparate velocities (e.g., averaging <inline-formula><mml:math id="M105" display="inline"><mml:mrow><mml:mo>+</mml:mo><mml:mn mathvariant="normal">15</mml:mn></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M106" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">15</mml:mn></mml:mrow></mml:math></inline-formula> to 0 <inline-formula><mml:math id="M107" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">m</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula>), and the extreme artificial gradients at the fold trigger severe Gibbs ringing if not handled correctly. Consequently, velocity unfolding (de-aliasing) is a strict prerequisite for spectral smoothing to ensure the underlying field is continuous and physically meaningful before the transform is applied.  For differential reflectivity (<inline-formula><mml:math id="M108" display="inline"><mml:mrow><mml:msub><mml:mi>Z</mml:mi><mml:mtext>dr</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>) and differential phase (<inline-formula><mml:math id="M109" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mtext>dp</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>), the smoothing process is identical to that of reflectivity. Furthermore, this technique could be advantageous for estimating the specific differential phase (<inline-formula><mml:math id="M110" display="inline"><mml:mrow><mml:msub><mml:mi>K</mml:mi><mml:mtext>dp</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>), which typically requires substantial smoothing to mitigate noise. However, for correlation coefficient (<inline-formula><mml:math id="M111" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mtext>hv</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>), care must be taken to ensure smoothed values remain within the valid [0, 1] interval, although a normalized convolution naturally preserves the convex hull of the data.</p>
      <p id="d2e3184">While the Fast Fourier Transform (FFT) is often the default choice for spectral convolution, the DCT offers distinct advantages for real-valued radar data. Since the DCT involves only real arithmetic, it avoids the storage and computation overhead of complex numbers inherent to the FFT. This results in faster execution and simpler implementation, as supported by the benchmarks (Sect. <xref ref-type="sec" rid="Ch1.S4"/>) and literature <xref ref-type="bibr" rid="bib1.bibx13" id="paren.23"/>.</p>
      <p id="d2e3192">For general-purpose range-dependent smoothing of polar radar data we recommend the analytical continuous Gaussian kernel (Eq. 18) as the default: it provides the smoothest taper (no spectral sidelobes, no ringing), it allows the fractional pixel widths required by the <inline-formula><mml:math id="M112" display="inline"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>/</mml:mo><mml:mi>r</mml:mi></mml:mrow></mml:math></inline-formula> angular geometry, and its performance is superior. The analytical continuous boxcar (Eq. 7) is the appropriate choice when a hard cutoff kernel is desired, while the discrete boxcar (Eq. 4) should be reserved for cases that require an integer kernel width matching a spatial reference. The Savitzky–Golay kernel (Eq. 19) preserves low-order polynomial features such as the peak and area of reflectivity cores and is worth exploiting further in the present framework; its coefficients depend only on the window width <inline-formula><mml:math id="M113" display="inline"><mml:mi>W</mml:mi></mml:math></inline-formula> and the polynomial order <inline-formula><mml:math id="M114" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> (not on the data values), are pre-computed once from the polynomial basis, and are applied as a fixed-weight FIR filter with the same <inline-formula><mml:math id="M115" display="inline"><mml:mrow><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:mi>W</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> per-pixel cost as any other kernel in this paper. Window families that are common in other application domains, such as the Hamming, Blackman, Tukey, Kaiser, and Welch windows <xref ref-type="bibr" rid="bib1.bibx3 bib1.bibx6 bib1.bibx10 bib1.bibx24" id="paren.24"/>, are not the focus of the present study.</p>
</sec>
<sec id="Ch1.S6" sec-type="conclusions">
  <label>6</label><title>Conclusions</title>
      <p id="d2e3246">We have presented a comprehensive method for smoothing polarimetric radar data using the Discrete Cosine Transform. By deriving the analytical transfer function for continuous kernels and formulating the 2D range-dependent convolution in the spectral domain, we achieved a method that is both physically consistent and computationally superior to spatial domain alternatives.</p>
      <p id="d2e3249">The primary contribution of this work is the resolution of the conflict between geometric accuracy and computational efficiency. Traditional spatial methods require <inline-formula><mml:math id="M116" display="inline"><mml:mrow><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mo>⋅</mml:mo><mml:msup><mml:mi>W</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> operations, meaning the computational cost explodes as the smoothing window <inline-formula><mml:math id="M117" display="inline"><mml:mi>W</mml:mi></mml:math></inline-formula> increases to match beam broadening at long ranges. In contrast, the DCT method operates in <inline-formula><mml:math id="M118" display="inline"><mml:mrow><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:mi>N</mml:mi><mml:mi>log⁡</mml:mi><mml:mi>N</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> time, rendering the processing time effectively independent of the kernel size.</p>
      <p id="d2e3298">Our performance benchmarks demonstrate that this theoretical advantage translates into massive operational gains: <list list-type="order"><list-item>
      <p id="d2e3303"><italic>Kernel Scalability.</italic> For large smoothing windows (e.g., 101 pixels), the analytical DCT kernels (Gaussian and Boxcar) provided speedup factors exceeding 800 times compared to the spatial dynamic kernel.</p></list-item><list-item>
      <p id="d2e3309"><italic>Data Volume Scalability.</italic> For a dataset representing approximately 1 h of continuous volume scans (180 million pixels), the spatial algorithm required over 42 min (2518 <inline-formula><mml:math id="M119" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">s</mml:mi></mml:mrow></mml:math></inline-formula>) to complete. The DCT implementation processed the same volume in less than 12 <inline-formula><mml:math id="M120" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">s</mml:mi></mml:mrow></mml:math></inline-formula>.</p></list-item></list></p>
      <p id="d2e3330">This orders-of-magnitude improvement reduces hours of processing time to seconds. Complex geometric corrections that were previously computationally prohibitive can now be integrated into standard operational pipelines with negligible latency.</p>
      <p id="d2e3334">While the method requires a continuous data field, necessitating a preprocessing step to interpolate gaps (e.g., removed clutter or beam blockage), the resulting low-frequency bias and gap-edge kinks are bounded for gap widths smaller than the local kernel and can be eliminated by the support-normalized extension developed by the authors <xref ref-type="bibr" rid="bib1.bibx23" id="paren.25"/>. The DCT approach avoids the Gibbs phenomenon associated with the Ideal Low-Pass Filter discussed in Sect. <xref ref-type="sec" rid="Ch1.S5"/> and preserves the convex hull of the data, making it safe for variables such as correlation coefficient (<inline-formula><mml:math id="M121" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mtext>hv</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>). For Doppler velocity, de-aliasing is a strict prerequisite: the wrapped-velocity fold is an artificial discontinuity that the spectral transform will treat as a sharp physical edge and propagate as ringing. Overall, this spectral framework offers a robust, high-performance standard for modern weather radar analysis.</p>
</sec>

      
      </body>
    <back><notes notes-type="codeavailability"><title>Code availability</title>

      <p id="d2e3357">The code used for the benchmarks and smoothing algorithms is available at  <uri>https://github.com/JValdivia23/radar-dct-smoothing</uri>  (last access: 13 January 2026) and archived on Zenodo at <ext-link xlink:href="https://doi.org/10.5281/zenodo.18226677" ext-link-type="DOI">10.5281/zenodo.18226677</ext-link> <xref ref-type="bibr" rid="bib1.bibx22" id="paren.26"/>.</p>
  </notes><notes notes-type="dataavailability"><title>Data availability</title>

      <p id="d2e3372">Data from the WINTRE-MIX campaign are available at  <uri>https://data.eol.ucar.edu/master_lists/generated/wintre-mix/</uri> (last access: 13 January 2026), and the COW dataset can be accessed at <ext-link xlink:href="https://doi.org/10.48514/WZ46-W047" ext-link-type="DOI">10.48514/WZ46-W047</ext-link> <xref ref-type="bibr" rid="bib1.bibx26" id="paren.27"/>. The specific weather radar file and benchmark results analyzed in this study are available in the project repository at <uri>https://github.com/JValdivia23/radar-dct-smoothing/tree/main/_legacy_data</uri> (last access: 13 January 2026).</p>
  </notes><notes notes-type="authorcontribution"><title>Author contributions</title>

      <p id="d2e3390">JMV, WC, and KF designed the study; JMV performed the analysis and wrote the manuscript.</p>
  </notes><notes notes-type="competinginterests"><title>Competing interests</title>

      <p id="d2e3396">The contact author has declared that none of the authors has any competing interests.</p>
  </notes><notes notes-type="disclaimer"><title>Disclaimer</title>

      <p id="d2e3402">Publisher's note: Copernicus Publications remains neutral with regard to jurisdictional claims made in the text, published maps, institutional affiliations, or any other geographical representation in this paper. The authors bear the ultimate responsibility for providing appropriate place names. Views expressed in the text are those of the authors and do not necessarily reflect the views of the publisher.</p>
  </notes><ack><title>Acknowledgements</title><p id="d2e3408">This research was sponsored by the National Science Foundation grant AGS 2114011. The authors acknowledge the use of generative AI tools (Google Gemini and OpenAI GPT) for proofreading, improving writing clarity, and verifying mathematical formulations. All original ideas, analysis, and conclusions remain the sole responsibility of the authors.</p></ack><notes notes-type="financialsupport"><title>Financial support</title>

      <p id="d2e3413">This research has been supported by the National Science Foundation (grant no. AGS 2114011).</p>
  </notes><notes notes-type="reviewstatement"><title>Review statement</title>

      <p id="d2e3420">This paper was edited by Jorge Luis Chau and reviewed by two anonymous referees.</p>
  </notes><ref-list>
    <title>References</title>

      <ref id="bib1.bibx1"><label>Ahmed et al.(1974)Ahmed, Natarajan, and Rao</label><mixed-citation>Ahmed, N., Natarajan, T., and Rao, K.: Discrete Cosine Transform, IEEE T. Comput., C-23, 90–93, <ext-link xlink:href="https://doi.org/10.1109/T-C.1974.223784" ext-link-type="DOI">10.1109/T-C.1974.223784</ext-link>, 1974.</mixed-citation></ref>
      <ref id="bib1.bibx2"><label>Atlas(1990)</label><mixed-citation>Atlas, D.: Radar in Meteorology: Battan Memorial and 40th Anniversary Radar  Meteorology Conference, American Meteorological Society, Boston, MA, <ext-link xlink:href="https://doi.org/10.1007/978-1-935704-15-7" ext-link-type="DOI">10.1007/978-1-935704-15-7</ext-link>, 1990.</mixed-citation></ref>
      <ref id="bib1.bibx3"><label>Blackman and Tukey(1959)</label><mixed-citation>Blackman, R. B. and Tukey, J. W.: The Measurement of Power Spectra from the Point of View of Communications Engineering, Dover Publications, New York, <ext-link xlink:href="https://doi.org/10.1002/j.1538-7305.1958.tb03874.x" ext-link-type="DOI">10.1002/j.1538-7305.1958.tb03874.x</ext-link>, 1959.</mixed-citation></ref>
      <ref id="bib1.bibx4"><label>Bringi and Chandrasekar(2001)</label><mixed-citation>Bringi, V. N. and Chandrasekar, V.: Polarimetric Doppler Weather Radar: Principles and Applications, Cambridge University Press, Cambridge, UK, <ext-link xlink:href="https://doi.org/10.1017/CBO9780511541094" ext-link-type="DOI">10.1017/CBO9780511541094</ext-link>, 2001.</mixed-citation></ref>
      <ref id="bib1.bibx5"><label>Gottlieb and Shu(1997)</label><mixed-citation>Gottlieb, D. and Shu, C.-W.: On the Gibbs Phenomenon and Its Resolution, SIAM Rev., 39, 644–668, <ext-link xlink:href="https://doi.org/10.1137/S0036144596301390" ext-link-type="DOI">10.1137/S0036144596301390</ext-link>, 1997.</mixed-citation></ref>
      <ref id="bib1.bibx6"><label>Harris(1978)</label><mixed-citation>Harris, F.: On the use of windows for harmonic analysis with the discrete Fourier transform, Proc. IEEE, 66, 51–83, <ext-link xlink:href="https://doi.org/10.1109/PROC.1978.10837" ext-link-type="DOI">10.1109/PROC.1978.10837</ext-link>, 1978.</mixed-citation></ref>
      <ref id="bib1.bibx7"><label>Hubbert et al.(2009)Hubbert, Dixon, Ellis, and Meymaris</label><mixed-citation>Hubbert, J. C., Dixon, M., Ellis, S. M., and Meymaris, G.: Weather Radar Ground Clutter. Part I: Identification, Modeling, and Simulation, J. Atmos. Ocean. Tech., 26, 1165–1180, <ext-link xlink:href="https://doi.org/10.1175/2009JTECHA1159.1" ext-link-type="DOI">10.1175/2009JTECHA1159.1</ext-link>, 2009.</mixed-citation></ref>
      <ref id="bib1.bibx8"><label>ITU-T(1992)</label><mixed-citation>ITU-T: Recommendation T.871: Information technology – Digital compression and coding of continuous-tone still images: JPEG File Interchange Format (JFIF), Tech. rep., International Telecommunication Union, <uri>https://www.itu.int/rec/T-REC-T.871</uri> (last access: 25 July 2026), 1992.</mixed-citation></ref>
      <ref id="bib1.bibx9"><label>Ivić et al.(2003)Ivić, Zrnić, and Torres</label><mixed-citation>Ivić, I. R., Zrnić, D. S., and Torres, S. M.: Whitening in Range to Improve Weather Radar Spectral Moment Estimates. Part II: Experimental Evaluation, J. Atmos. Ocean. Tech., 20, 1449–1459, <ext-link xlink:href="https://doi.org/10.1175/1520-0426(2003)020&lt;1449:WIRTIW&gt;2.0.CO;2" ext-link-type="DOI">10.1175/1520-0426(2003)020&lt;1449:WIRTIW&gt;2.0.CO;2</ext-link>, 2003.</mixed-citation></ref>
      <ref id="bib1.bibx10"><label>Kaiser(1966)</label><mixed-citation> Kaiser, J. F.: Digital Filters, in: System Analysis by Digital Computer, edited by: Kuo, F. F. and Kaiser, J. F., Chap. 7, John Wiley &amp; Sons, New York, 218–285, LCCN: 66025226, OCLC: 561634, 1966.</mixed-citation></ref>
      <ref id="bib1.bibx11"><label>Knutsson and Westin(1993)</label><mixed-citation>Knutsson, H. and Westin, C.-F.: Normalized and Differential Convolution: Methods for Interpolation and Filtering of Incomplete and Uncertain Data, Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 515–523, <ext-link xlink:href="https://doi.org/10.1109/CVPR.1993.341081" ext-link-type="DOI">10.1109/CVPR.1993.341081</ext-link>, 1993.</mixed-citation></ref>
      <ref id="bib1.bibx12"><label>Levi(1974)</label><mixed-citation>Levi, H.: A geometric construction of the Dirichlet kernel, T. New York Acad. Sci., 36, 640–643, <ext-link xlink:href="https://doi.org/10.1111/j.2164-0947.1974.tb03023.x" ext-link-type="DOI">10.1111/j.2164-0947.1974.tb03023.x</ext-link>, 1974.</mixed-citation></ref>
      <ref id="bib1.bibx13"><label>Makhoul(1980)</label><mixed-citation>Makhoul, J.: A Fast Cosine Transform in One and Two Dimensions, IEEE T. Acoust. Speech, 28, 27–34, <ext-link xlink:href="https://doi.org/10.1109/TASSP.1980.1163351" ext-link-type="DOI">10.1109/TASSP.1980.1163351</ext-link>, 1980.</mixed-citation></ref>
      <ref id="bib1.bibx14"><label>Ng et al.(1999)Ng, Chan, and Tang</label><mixed-citation>Ng, M. K., Chan, R. H., and Tang, W.-C.: A Fast Algorithm for Deblurring Models with Neumann Boundary Conditions, SIAM J. Sci. Comput., 21, 851–866, <ext-link xlink:href="https://doi.org/10.1137/S1064827598341384" ext-link-type="DOI">10.1137/S1064827598341384</ext-link>, 1999.</mixed-citation></ref>
      <ref id="bib1.bibx15"><label>Oppenheim et al.(1999)Oppenheim, Schafer, and Buck</label><mixed-citation>Oppenheim, A. V., Schafer, R. W., and Buck, J. R.: Discrete-Time Signal Processing, 2nd edn., Prentice Hall, Upper Saddle River, NJ, ISBN 8131704920, 9788131704929, 1999.  </mixed-citation></ref>
      <ref id="bib1.bibx16"><label>Pham et al.(2006)Pham, van Vliet, and Schutte</label><mixed-citation>Pham, T. Q., van Vliet, L. J., and Schutte, K.: Robust Fusion of Irregularly Sampled Data Using Adaptive Normalized Convolution, EURASIP J. Adv. Sig.  Pr., 2006, <ext-link xlink:href="https://doi.org/10.1155/ASP/2006/83268" ext-link-type="DOI">10.1155/ASP/2006/83268</ext-link>, 2006.</mixed-citation></ref>
      <ref id="bib1.bibx17"><label>Savitzky and Golay(1964)</label><mixed-citation>Savitzky, A. and Golay, M. J. E.: Smoothing and Differentiation of Data by Simplified Least Squares Procedures, Anal. Chem., 36, 1627–1639, <ext-link xlink:href="https://doi.org/10.1021/ac60214a047" ext-link-type="DOI">10.1021/ac60214a047</ext-link>, 1964.</mixed-citation></ref>
      <ref id="bib1.bibx18"><label>Smith(1997)</label><mixed-citation> Smith, S. W.: The Scientist and Engineer's Guide to Digital Signal Processing, California Technical Publishing, San Diego, CA, ISBN 0966017633, 1997.</mixed-citation></ref>
      <ref id="bib1.bibx19"><label>Strang(1999)</label><mixed-citation>Strang, G.: The Discrete Cosine Transform, SIAM Rev., 41, 135–147,  <ext-link xlink:href="https://doi.org/10.1137/S0036144598336745" ext-link-type="DOI">10.1137/S0036144598336745</ext-link>, 1999.</mixed-citation></ref>
      <ref id="bib1.bibx20"><label>The Astropy Collaboration et al.(2022)</label><mixed-citation>The Astropy Collaboration, Price-Whelan, A. M., Lim, P. L., et al.: The Astropy Project: Sustaining and Growing a Community-oriented Open-source Project and the Latest Major Release (v5.0) of the Core Package, Astrophys. J., 935, 167, <ext-link xlink:href="https://doi.org/10.3847/1538-4357/ac7c74" ext-link-type="DOI">10.3847/1538-4357/ac7c74</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx21"><label>Torres and Zrnić(2003)</label><mixed-citation>Torres, S. M. and Zrnić, D. S.: Whitening in Range to Improve Weather Radar Spectral Moment Estimates. Part I: Formulation and Simulation, J Atmos. Ocean. Tech., 20, 1433–1448, <ext-link xlink:href="https://doi.org/10.1175/1520-0426(2003)020&lt;1433:WIRTIW&gt;2.0.CO;2" ext-link-type="DOI">10.1175/1520-0426(2003)020&lt;1433:WIRTIW&gt;2.0.CO;2</ext-link>, 2003.</mixed-citation></ref>
      <ref id="bib1.bibx22"><label>Valdivia(2026)</label><mixed-citation>Valdivia, J.:  JValdivia23/radar-dct-smoothing: Initial release for AMT paper, Version v1.0.0, Zenodo [computer software], <ext-link xlink:href="https://doi.org/10.5281/zenodo.18226677" ext-link-type="DOI">10.5281/zenodo.18226677</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bibx23"><label>Valdivia-Prado et al.(2026)Valdivia-Prado, Chapman, and Friedrich</label><mixed-citation>Valdivia-Prado, J. M., Chapman, W. E., and Friedrich, K.: Spectral-Domain Local Statistics with Missing-Data Support for Cartesian and Polar Grids, arXiv [preprint], <ext-link xlink:href="https://doi.org/10.48550/arXiv.2604.22721" ext-link-type="DOI">10.48550/arXiv.2604.22721</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bibx24"><label>Welch(1967)</label><mixed-citation> Welch, P. D.: The Use of Fast Fourier Transform for the Estimation of Power Spectra: A Method Based on Time Averaging Over Short, Modified Periodograms, IEEE Transactions on Audio and Electroacoustics, AU-15, 70–73, 1967.</mixed-citation></ref>
      <ref id="bib1.bibx25"><label>Westin et al.(1994)Westin, Nordberg, and Knutsson</label><mixed-citation>Westin, C.-F., Nordberg, K., and Knutsson, H.: On the Equivalence of Normalized Convolution and Normalized Differential Convolution, in: Proceedings of ICASSP '94, IEEE International Conference on Acoustics, Speech and Signal Processing, V/457–V/460, <ext-link xlink:href="https://doi.org/10.1109/ICASSP.1994.389389" ext-link-type="DOI">10.1109/ICASSP.1994.389389</ext-link>, 1994.</mixed-citation></ref>
      <ref id="bib1.bibx26"><label>Wurman and Kosiba(2022)</label><mixed-citation>Wurman, J. and Kosiba, K.: WINTRE-MIX FARM Data, Flexible Array of Radars and Mesonets [data set], <ext-link xlink:href="https://doi.org/10.48514/WZ46-W047" ext-link-type="DOI">10.48514/WZ46-W047</ext-link>, 2022.</mixed-citation></ref>

  </ref-list></back>
    <!--<article-title-html>Radar data smoothing using the Discrete Cosine Transform: a fast spectral domain algorithm</article-title-html>
<abstract-html/>
<ref-html id="bib1.bib1"><label>Ahmed et al.(1974)Ahmed, Natarajan, and Rao</label><mixed-citation>
       Ahmed, N., Natarajan, T., and Rao, K.: Discrete
Cosine Transform, IEEE T. Comput., C-23, 90–93, <a href="https://doi.org/10.1109/T-C.1974.223784" target="_blank">https://doi.org/10.1109/T-C.1974.223784</a>, 1974.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib2"><label>Atlas(1990)</label><mixed-citation>
      
Atlas, D.: Radar in Meteorology: Battan Memorial and 40th Anniversary Radar  Meteorology Conference, American Meteorological Society, Boston, MA, <a href="https://doi.org/10.1007/978-1-935704-15-7" target="_blank">https://doi.org/10.1007/978-1-935704-15-7</a>, 1990.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib3"><label>Blackman and Tukey(1959)</label><mixed-citation>
       Blackman, R. B. and Tukey, J. W.: The Measurement of Power Spectra
from the Point of View of Communications Engineering, Dover Publications, New York, <a href="https://doi.org/10.1002/j.1538-7305.1958.tb03874.x" target="_blank">https://doi.org/10.1002/j.1538-7305.1958.tb03874.x</a>, 1959.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib4"><label>Bringi and Chandrasekar(2001)</label><mixed-citation>
       Bringi, V. N. and Chandrasekar, V.: Polarimetric Doppler Weather
Radar: Principles and Applications, Cambridge University Press, Cambridge, UK, <a href="https://doi.org/10.1017/CBO9780511541094" target="_blank">https://doi.org/10.1017/CBO9780511541094</a>, 2001.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib5"><label>Gottlieb and Shu(1997)</label><mixed-citation>
       Gottlieb, D. and Shu, C.-W.: On the Gibbs Phenomenon and Its
Resolution, SIAM Rev., 39, 644–668, <a href="https://doi.org/10.1137/S0036144596301390" target="_blank">https://doi.org/10.1137/S0036144596301390</a>, 1997.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib6"><label>Harris(1978)</label><mixed-citation>
       Harris, F.: On the use of windows for harmonic analysis with the discrete Fourier
transform, Proc. IEEE, 66, 51–83, <a href="https://doi.org/10.1109/PROC.1978.10837" target="_blank">https://doi.org/10.1109/PROC.1978.10837</a>, 1978.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib7"><label>Hubbert et al.(2009)Hubbert, Dixon, Ellis, and Meymaris</label><mixed-citation>
       Hubbert, J. C., Dixon, M.,
Ellis, S. M., and Meymaris, G.: Weather Radar Ground Clutter. Part I: Identification, Modeling, and Simulation,
J. Atmos. Ocean. Tech., 26, 1165–1180, <a href="https://doi.org/10.1175/2009JTECHA1159.1" target="_blank">https://doi.org/10.1175/2009JTECHA1159.1</a>, 2009.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib8"><label>ITU-T(1992)</label><mixed-citation>
      
ITU-T: Recommendation T.871: Information technology – Digital compression and coding of continuous-tone still images: JPEG File Interchange Format (JFIF), Tech. rep., International Telecommunication Union, <a href="https://www.itu.int/rec/T-REC-T.871" target="_blank"/> (last access: 25 July 2026), 1992.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib9"><label>Ivić et al.(2003)Ivić, Zrnić, and Torres</label><mixed-citation>
       Ivić, I. R., Zrnić, D. S., and
Torres, S. M.: Whitening in Range to Improve Weather Radar Spectral Moment Estimates. Part II: Experimental
Evaluation, J. Atmos. Ocean. Tech., 20, 1449–1459, <a href="https://doi.org/10.1175/1520-0426(2003)020&lt;1449:WIRTIW&gt;2.0.CO;2" target="_blank">https://doi.org/10.1175/1520-0426(2003)020&lt;1449:WIRTIW&gt;2.0.CO;2</a>, 2003.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib10"><label>Kaiser(1966)</label><mixed-citation>
      
Kaiser, J. F.: Digital Filters, in: System Analysis by Digital Computer, edited by: Kuo, F. F. and Kaiser, J. F., Chap. 7, John Wiley &amp; Sons, New York, 218–285, LCCN:&thinsp;66025226, OCLC:&thinsp;561634, 1966.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib11"><label>Knutsson and Westin(1993)</label><mixed-citation>
       Knutsson, H. and Westin, C.-F.: Normalized and Differential
Convolution: Methods for Interpolation and Filtering of Incomplete and Uncertain Data, Proceedings of the IEEE
Computer Society Conference on Computer Vision and Pattern Recognition, 515–523, <a href="https://doi.org/10.1109/CVPR.1993.341081" target="_blank">https://doi.org/10.1109/CVPR.1993.341081</a>,
1993.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib12"><label>Levi(1974)</label><mixed-citation>
       Levi, H.: A geometric construction of the Dirichlet kernel, T. New York Acad. Sci.,
36, 640–643, <a href="https://doi.org/10.1111/j.2164-0947.1974.tb03023.x" target="_blank">https://doi.org/10.1111/j.2164-0947.1974.tb03023.x</a>, 1974.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib13"><label>Makhoul(1980)</label><mixed-citation>
       Makhoul, J.: A Fast Cosine Transform in One and Two Dimensions, IEEE T.
Acoust. Speech, 28, 27–34, <a href="https://doi.org/10.1109/TASSP.1980.1163351" target="_blank">https://doi.org/10.1109/TASSP.1980.1163351</a>, 1980.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib14"><label>Ng et al.(1999)Ng, Chan, and Tang</label><mixed-citation>
       Ng, M. K., Chan, R. H., and Tang, W.-C.: A Fast Algorithm for
Deblurring Models with Neumann Boundary Conditions, SIAM J. Sci. Comput., 21, 851–866,
<a href="https://doi.org/10.1137/S1064827598341384" target="_blank">https://doi.org/10.1137/S1064827598341384</a>, 1999.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib15"><label>Oppenheim et al.(1999)Oppenheim, Schafer, and Buck</label><mixed-citation>
      
Oppenheim, A. V., Schafer, R. W., and Buck, J. R.: Discrete-Time Signal Processing, 2nd edn., Prentice Hall, Upper Saddle River, NJ, ISBN&thinsp;8131704920, 9788131704929, 1999.


    </mixed-citation></ref-html>
<ref-html id="bib1.bib16"><label>Pham et al.(2006)Pham, van Vliet, and Schutte</label><mixed-citation>
       Pham, T. Q., van Vliet, L. J., and Schutte, K.:
Robust Fusion of Irregularly Sampled Data Using Adaptive Normalized Convolution, EURASIP J. Adv. Sig.  Pr., 2006,
<a href="https://doi.org/10.1155/ASP/2006/83268" target="_blank">https://doi.org/10.1155/ASP/2006/83268</a>, 2006.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib17"><label>Savitzky and Golay(1964)</label><mixed-citation>
       Savitzky, A. and Golay, M. J. E.: Smoothing and Differentiation of
Data by Simplified Least Squares Procedures, Anal. Chem., 36, 1627–1639, <a href="https://doi.org/10.1021/ac60214a047" target="_blank">https://doi.org/10.1021/ac60214a047</a>, 1964.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib18"><label>Smith(1997)</label><mixed-citation>
      
Smith, S. W.: The Scientist and Engineer's Guide to Digital Signal Processing, California Technical Publishing, San Diego, CA, ISBN&thinsp;0966017633, 1997.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib19"><label>Strang(1999)</label><mixed-citation>
      
Strang, G.: The Discrete Cosine Transform, SIAM Rev., 41, 135–147,  <a href="https://doi.org/10.1137/S0036144598336745" target="_blank">https://doi.org/10.1137/S0036144598336745</a>, 1999.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib20"><label>The Astropy Collaboration et al.(2022)</label><mixed-citation>
      
The Astropy Collaboration, Price-Whelan, A. M., Lim, P. L., et al.: The Astropy Project: Sustaining and Growing a Community-oriented Open-source Project and the Latest Major Release (v5.0) of the Core Package, Astrophys. J., 935, 167, <a href="https://doi.org/10.3847/1538-4357/ac7c74" target="_blank">https://doi.org/10.3847/1538-4357/ac7c74</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib21"><label>Torres and Zrnić(2003)</label><mixed-citation>
       Torres, S. M. and Zrnić, D. S.: Whitening in Range to Improve
Weather Radar Spectral Moment Estimates. Part I: Formulation and Simulation, J Atmos. Ocean. Tech., 20, 1433–1448,
<a href="https://doi.org/10.1175/1520-0426(2003)020&lt;1433:WIRTIW&gt;2.0.CO;2" target="_blank">https://doi.org/10.1175/1520-0426(2003)020&lt;1433:WIRTIW&gt;2.0.CO;2</a>, 2003.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib22"><label>Valdivia(2026)</label><mixed-citation>
      
Valdivia, J.:  JValdivia23/radar-dct-smoothing: Initial release for AMT paper, Version v1.0.0, Zenodo [computer software], <a href="https://doi.org/10.5281/zenodo.18226677" target="_blank">https://doi.org/10.5281/zenodo.18226677</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib23"><label>Valdivia-Prado et al.(2026)Valdivia-Prado, Chapman, and Friedrich</label><mixed-citation>
      
Valdivia-Prado, J. M., Chapman, W. E., and Friedrich, K.: Spectral-Domain Local Statistics with Missing-Data Support for Cartesian and Polar Grids, arXiv [preprint], <a href="https://doi.org/10.48550/arXiv.2604.22721" target="_blank">https://doi.org/10.48550/arXiv.2604.22721</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib24"><label>Welch(1967)</label><mixed-citation>
       Welch, P. D.: The Use of Fast Fourier Transform for the Estimation of Power
Spectra: A Method Based on Time Averaging Over Short, Modified Periodograms, IEEE Transactions on Audio and
Electroacoustics, AU-15, 70–73, 1967.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib25"><label>Westin et al.(1994)Westin, Nordberg, and Knutsson</label><mixed-citation>
      
Westin, C.-F., Nordberg, K., and Knutsson, H.: On the Equivalence of Normalized Convolution and Normalized Differential Convolution, in: Proceedings of ICASSP '94, IEEE International Conference on Acoustics, Speech and Signal Processing, V/457–V/460, <a href="https://doi.org/10.1109/ICASSP.1994.389389" target="_blank">https://doi.org/10.1109/ICASSP.1994.389389</a>, 1994.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib26"><label>Wurman and Kosiba(2022)</label><mixed-citation>
      
Wurman, J. and Kosiba, K.: WINTRE-MIX FARM Data, Flexible Array of Radars and Mesonets [data set], <a href="https://doi.org/10.48514/WZ46-W047" target="_blank">https://doi.org/10.48514/WZ46-W047</a>, 2022.

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