<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "https://jats.nlm.nih.gov/nlm-dtd/publishing/3.0/journalpublishing3.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article" specific-use="SMUR" dtd-version="3.0" xml:lang="en">
<front>
<journal-meta>
<journal-id journal-id-type="publisher">EGUsphere</journal-id>
<journal-title-group>
<journal-title>EGUsphere</journal-title>
<abbrev-journal-title abbrev-type="publisher">EGUsphere</abbrev-journal-title>
<abbrev-journal-title abbrev-type="nlm-ta">EGUsphere</abbrev-journal-title>
</journal-title-group>
<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/egusphere-2026-5708</article-id>
<title-group>
<article-title>KrigeKit v0.3.2: a parallel Python&amp;ndash;Fortran engine for variogram analysis, kriging, and geostatistical simulation</article-title>
</title-group>
<contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Ou</surname>
<given-names>Gengxin</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Bedekar</surname>
<given-names>Vivek</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Tonkin</surname>
<given-names>Matthew</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Barth</surname>
<given-names>Gilbert</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
</contrib>
<contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Karanovic</surname>
<given-names>Marinko</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
</contrib>
</contrib-group><aff id="aff1">
<label>1</label>
<addr-line>S.S. Papadopulos &amp; Associates, Inc. 1801 Rockville Pike, Suite 220, Rockville, MD 20852</addr-line>
</aff>
<pub-date pub-type="epub">
<day>03</day>
<month>11</month>
<year>2026</year>
</pub-date>
<volume>2026</volume>
<fpage>1</fpage>
<lpage>38</lpage>
<permissions>
<copyright-statement>Copyright: &#x000a9; 2026 Gengxin Ou 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://egusphere.copernicus.org/preprints/2026/egusphere-2026-5708/">This article is available from https://egusphere.copernicus.org/preprints/2026/egusphere-2026-5708/</self-uri>
<self-uri xlink:href="https://egusphere.copernicus.org/preprints/2026/egusphere-2026-5708/egusphere-2026-5708.pdf">The full text article is available as a PDF file from https://egusphere.copernicus.org/preprints/2026/egusphere-2026-5708/egusphere-2026-5708.pdf</self-uri>
<abstract>
<p>Kriging and geostatistical simulation underpin environmental modeling, yet practitioners must choose between aging file-driven Fortran codes such as GSLIB and convenient but slower high-level packages. We present KrigeKit, an open-source (MIT) library pairing an OpenMP-parallel Fortran engine with a dependency-light Python layer. A single engine provides ordinary, simple, and co-kriging, kriging with external drift, sequential Gaussian and indicator simulation, and space-time kriging. Its hallmark is the breadth of advanced capabilities it exposes together &amp;mdash; multiplicative covariance structures, gradient constraints, spatially varying anisotropy, and positive-semidefinite co-kriging fitting &amp;mdash; seldom available in one package. Performance comes from parallel block estimation, tabular variogram evaluation, and a per-thread Cholesky cache that cuts the per-block cost from &lt;em&gt;O&lt;/em&gt;(&lt;em&gt;n&lt;/em&gt;&lt;sup&gt;3&lt;/sup&gt;) to &lt;em&gt;O&lt;/em&gt;(&lt;em&gt;n&lt;/em&gt;&lt;sup&gt;2&lt;/sup&gt;) on repeated neighborhoods. We verify KrigeKit against analytic results and established packages, characterize its parallel scaling, and demonstrate it on three environmental case studies. KrigeKit ships as pre-built wheels on PyPI for Linux, macOS, and Windows.</p>
</abstract>
<counts><page-count count="38"/></counts>
</article-meta>
</front>
<body/>
<back>
</back>
</article>