<?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">GMD</journal-id><journal-title-group>
    <journal-title>Geoscientific Model Development</journal-title>
    <abbrev-journal-title abbrev-type="publisher">GMD</abbrev-journal-title><abbrev-journal-title abbrev-type="nlm-ta">Geosci. Model Dev.</abbrev-journal-title>
  </journal-title-group><issn pub-type="epub">1991-9603</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/gmd-19-5669-2026</article-id><title-group><article-title>MESMER v1.0.0: consolidating the modular Earth system model emulator into a sustainable research software package</article-title><alt-title>MESMER v1.0.0</alt-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author" corresp="yes" rid="aff1">
          <name><surname>Bauer</surname><given-names>Victoria M.</given-names></name>
          <email>victoria.bauer@env.ethz.ch</email>
        <ext-link>https://orcid.org/0009-0000-9675-5958</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Hauser</surname><given-names>Mathias</given-names></name>
          
        <ext-link>https://orcid.org/0000-0002-0057-4878</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Quilcaille</surname><given-names>Yann</given-names></name>
          
        <ext-link>https://orcid.org/0000-0002-1474-0144</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Schöngart</surname><given-names>Sarah</given-names></name>
          
        <ext-link>https://orcid.org/0009-0002-2030-9139</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Gudmundsson</surname><given-names>Lukas</given-names></name>
          
        <ext-link>https://orcid.org/0000-0003-3539-8621</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Seneviratne</surname><given-names>Sonia I.</given-names></name>
          
        <ext-link>https://orcid.org/0000-0001-9528-2917</ext-link></contrib>
        <aff id="aff1"><label>1</label><institution>Institute for Atmospheric and Climate Science, Department of Environmental Systems Science, ETH Zurich, Zurich, Switzerland</institution>
        </aff>
      </contrib-group>
      <author-notes><corresp id="corr1">Victoria M. Bauer (victoria.bauer@env.ethz.ch)</corresp></author-notes><pub-date><day>29</day><month>June</month><year>2026</year></pub-date>
      
      <volume>19</volume>
      <issue>12</issue>
      <fpage>5669</fpage><lpage>5688</lpage>
      <history>
        <date date-type="received"><day>4</day><month>October</month><year>2025</year></date>
           <date date-type="rev-request"><day>19</day><month>December</month><year>2025</year></date>
           <date date-type="rev-recd"><day>1</day><month>June</month><year>2026</year></date>
           <date date-type="accepted"><day>11</day><month>June</month><year>2026</year></date>
      </history>
      <permissions>
        <copyright-statement>Copyright: © 2026 Victoria M. Bauer 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://gmd.copernicus.org/articles/19/5669/2026/gmd-19-5669-2026.html">This article is available from https://gmd.copernicus.org/articles/19/5669/2026/gmd-19-5669-2026.html</self-uri><self-uri xlink:href="https://gmd.copernicus.org/articles/19/5669/2026/gmd-19-5669-2026.pdf">The full text article is available as a PDF file from https://gmd.copernicus.org/articles/19/5669/2026/gmd-19-5669-2026.pdf</self-uri>
      <abstract><title>Abstract</title>

      <p id="d2e126">We present version v1.0.0 of MESMER – the Modular Earth System Model Emulator with spatially Resolved output. MESMER is a comprehensive software package for spatially resolved climate emulation. Version 1.0.0 revises the source code of several emulation approaches developed as part of earlier versions of MESMER and integrates them into a single python package that is readily available to the scientific community. We present the different MESMER components and the development strategy used to integrate them. MESMER v1.0.0 is numerically stable, faster than previous versions, employs a modern data structure, and better disentangles data handling and the statistical core. We demonstrate that MESMER v1.0.0 is now a sustainable research software according to requirements for modularity, code quality, documentation, and reproducibility. Available output variables are annual and monthly mean temperature as well as several climate extreme indicators. The calibration of MESMER can take from a few seconds up to half an hour, while large ensembles of climate realizations can now be produced (emulated) in just a few minutes. We facilitate the adoption of MESMER for the broad research community by providing pre-calibrated parameters for multiple variables. MESMER v1.0.0 represents a crucial milestone in the coordination of on-going and upcoming developments of the MESMER Earth System Model emulator.</p>
  </abstract>
    
<funding-group>
<award-group id="gs1">
<funding-source>HORIZON EUROPE Climate, Energy and Mobility</funding-source>
<award-id>101081369</award-id>
</award-group>
<award-group id="gs2">
<funding-source>Staatssekretariat für Bildung, Forschung und Innovation</funding-source>
<award-id>23.00376</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="d2e140">Climate model emulators are statistical models trained to reproduce – emulate – the output of Earth System Models (ESMs) <xref ref-type="bibr" rid="bib1.bibx46" id="paren.1"/>. Such emulators reproduce the statistical properties of a reduced set of climate variables through training on ESM output. This makes emulators more computationally efficient than ESMs, which explicitly resolve the physical processes that govern the Earth system. While simple climate models emulate only the response of the Earth system at a global scale <xref ref-type="bibr" rid="bib1.bibx28 bib1.bibx27" id="paren.2"/>, spatially-resolved climate model emulators approximate the local response of ESMs <xref ref-type="bibr" rid="bib1.bibx5 bib1.bibx45 bib1.bibx50 bib1.bibx23" id="paren.3"/>. Some of these emulators also have the capacity to represent natural variability on a regional scale <xref ref-type="bibr" rid="bib1.bibx5" id="paren.4"><named-content content-type="pre">e.g.</named-content></xref> and can thus be used to produce large ensembles of realizations consistent with ESMs at a much smaller computational cost.</p>
      <p id="d2e157">Their reduced complexity and low computational cost makes spatially-resolved climate model emulators a powerful tool for assessing a wide range of future scenarios or counterfactual climate trajectories. As such, spatially-resolved climate model emulators have recently been applied in a variety of research fields such as exploring overshoot scenarios <xref ref-type="bibr" rid="bib1.bibx39" id="paren.5"/>, the modelling of natural variability <xref ref-type="bibr" rid="bib1.bibx26" id="paren.6"/>, the attribution of climate extremes to emissions from countries <xref ref-type="bibr" rid="bib1.bibx6" id="paren.7"/> and income groups <xref ref-type="bibr" rid="bib1.bibx41" id="paren.8"/>, and the integration of local observations in climate projections <xref ref-type="bibr" rid="bib1.bibx5" id="paren.9"/>. Given this large range of applications, spatially-resolved climate model emulators matter not only for the exploration of scenarios and the linking to other modeling frameworks, but are also powerful tools for e.g., climate impact assessments and policy design. Consequently, there is a need to make such spatially-resolved emulators accessible to a broad community of researchers and to provide detailed documentation on how to use them. The emulators' source code should be easily available, understandable and extensible in order to open possibilities for new applications and further democratize climate information.</p>
      <p id="d2e175">Here we present MESMER v1.0.0 (hereafter called MESMER v1), a comprehensive software package for spatially-resolved climate model emulation. MESMER is a climate model emulator that translates annual mean climate trajectories into spatial fields of selected climate variables over land, based on training data from ESM simulations. It accounts for the local forced climate response as well as internal variability of the respective ESM and produces spatio-temporally coherent realizations. Since its original development by <xref ref-type="bibr" rid="bib1.bibx5" id="text.10"/>, several components have been added to MESMER to emulate additional variables and temporal resolutions, resulting in an organic growth of the code base <xref ref-type="bibr" rid="bib1.bibx5 bib1.bibx4 bib1.bibx25 bib1.bibx33 bib1.bibx35 bib1.bibx40" id="paren.11"/>.</p>
      <p id="d2e184">In MESMER v1, multiple former components are integrated into a single package. This new and integrated version of MESMER comes with a complete redesign of the Application Programming Interface (API) to make the source code more modular and user-friendly. We implement a new data structure that simplifies the data flow within MESMER as well as the loading and saving of data. Furthermore, we update parts of the previously published methodologies to improve the stability of MESMER output and reduce its run time. This work presents the first integral release of MESMER and also constitutes a guide to future users and contributors.</p>
</sec>
<sec id="Ch1.S2">
  <label>2</label><title>MESMER: past developments</title>
<sec id="Ch1.S2.SS1">
  <label>2.1</label><title>Overview</title>
      <p id="d2e202">The initial version of MESMER was developed to generate large ensembles of spatially resolved annual mean daily land surface air temperature (“tas”) time series that mimic ESM output <xref ref-type="bibr" rid="bib1.bibx5 bib1.bibx4" id="paren.12"/>. Subsequently, the MESMER ecosystem grew, adding more capabilities: MESMER-M extends the emulator to monthly local temperatures <xref ref-type="bibr" rid="bib1.bibx25" id="paren.13"/>. Similarly, MESMER-M-TP emulates monthly local temperature and precipitation <xref ref-type="bibr" rid="bib1.bibx40" id="paren.14"/>. Lastly, MESMER-X introduced capabilities to emulate various annual indicators of climate extremes and climate impact drivers, such as the annual maximum of daily maximum land surface air temperature (“txx”) <xref ref-type="bibr" rid="bib1.bibx33" id="paren.15"/> or soil moisture <xref ref-type="bibr" rid="bib1.bibx35" id="paren.16"/>. Despite using different statistical methods, each approach separates the local signal into a <italic>local response</italic> and <italic>local variability</italic>, providing a common ground for the design of MESMER v1. In the next sections we will shortly discuss the (statistical) methods used for each of these MESMER components.</p>
</sec>
<sec id="Ch1.S2.SS2">
  <label>2.2</label><title>Annual temperature (MESMER)</title>
      <p id="d2e235">The emulation of spatially resolved annual mean land surface air temperatures consists of two main modules: (1) the local response module, which translates the global mean temperature into the local temperature response on a gridcell level <xref ref-type="bibr" rid="bib1.bibx44 bib1.bibx20 bib1.bibx42 bib1.bibx48" id="paren.17"/> using linear regression. (2) The local residual variability module generates temporally and spatially correlated random samples, with an order 1 auto-regressive (AR(1)) process and spatially correlated innovations. To dampen spurious correlations from rank deficient empirical covariance matrices, a Gaspari-Cohn localization is employed <xref ref-type="bibr" rid="bib1.bibx11 bib1.bibx22" id="paren.18"/> (see Table <xref ref-type="table" rid="T1"/>, and <xref ref-type="bibr" rid="bib1.bibx5" id="text.19"/>). We refer to the state of the MESMER code base before the rewrite as the original MESMER version <xref ref-type="bibr" rid="bib1.bibx18" id="paren.20"><named-content content-type="pre">MESMER v0.8.3 in</named-content></xref>, corresponding to the release for <xref ref-type="bibr" rid="bib1.bibx7" id="text.21"/>.</p>

<table-wrap id="T1" specific-use="star"><label>Table 1</label><caption><p id="d2e261">Overview of MESMER components. Each component estimates a local response and the local residual variability. AR(1) stands for auto-regressive process of order 1, PCA stands for principal component analysis.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="5">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="justify" colwidth="3cm"/>
     <oasis:colspec colnum="3" colname="col3" align="justify" colwidth="2.6cm" colsep="1"/>
     <oasis:colspec colnum="4" colname="col4" align="justify" colwidth="3.8cm"/>
     <oasis:colspec colnum="5" colname="col5" align="justify" colwidth="3.8cm"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Component</oasis:entry>
         <oasis:entry rowsep="1" namest="col2" nameend="col3" align="center" colsep="1">Local response </oasis:entry>
         <oasis:entry rowsep="1" namest="col4" nameend="col5" align="center">Local variability </oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">Description</oasis:entry>
         <oasis:entry colname="col3">Statistical Methods</oasis:entry>
         <oasis:entry colname="col4">Description</oasis:entry>
         <oasis:entry colname="col5">Statistical Methods</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">MESMER</oasis:entry>
         <oasis:entry colname="col2">Estimate local response to global mean temperature</oasis:entry>
         <oasis:entry colname="col3">Linear regression</oasis:entry>
         <oasis:entry colname="col4">Generate local   temperature variability</oasis:entry>
         <oasis:entry colname="col5">AR(1) process with spatially correlated innovations, Gaspari-Cohn localization</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">MESMER-M</oasis:entry>
         <oasis:entry colname="col2">Generate monthly seasonal cycle around annual mean temperature</oasis:entry>
         <oasis:entry colname="col3">Harmonic model</oasis:entry>
         <oasis:entry rowsep="1" colname="col4">Transform skewed local residuals to more closely follow a normal distribution</oasis:entry>
         <oasis:entry rowsep="1" colname="col5">Yeo-Johnson Power Transformer</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">Generate local monthly temperature variability</oasis:entry>
         <oasis:entry colname="col5">Cyclo-stationary AR(1) process with spatially correlated innovations, Gaspari-Cohn localization</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">MESMER-M-TP</oasis:entry>
         <oasis:entry colname="col2">Generate precipitation component that co-varies with temperature</oasis:entry>
         <oasis:entry colname="col3">PCA, Generalized Linear Model</oasis:entry>
         <oasis:entry colname="col4">Generate spatially-coherent residual precipitation variability</oasis:entry>
         <oasis:entry colname="col5">PCA, Kernel Density Estimation</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">MESMER-X</oasis:entry>
         <oasis:entry colname="col2">Estimate parameters of the distribution conditioned on a function of a global mean climate variable</oasis:entry>
         <oasis:entry colname="col3">Conditional distribution</oasis:entry>
         <oasis:entry colname="col4">Generate realizations of the desired climate variable and transform to the target distribution</oasis:entry>
         <oasis:entry colname="col5">AR(1) process with spatially correlated innovations, Gaspari-Cohn localization, Probability IntegralTransform</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

</sec>
<sec id="Ch1.S2.SS3">
  <label>2.3</label><title>Monthly temperature (MESMER-M)</title>
      <p id="d2e424">MESMER-M is the  monthly emulation component of MESMER. It takes in gridded local annual mean temperature and emulates gridded local monthly temperature. MESMER-M relates the annual mean temperature at each gridcell to its monthly temperature response using a harmonic model. To make potentially skewed residuals more normal a Yeo-Yohnson Power Transformer <xref ref-type="bibr" rid="bib1.bibx51" id="paren.22"/> is employed. The residual variability module emulates spatially and temporally correlated noise for each month, employing a cyclo-stationary AR(1) process <xref ref-type="bibr" rid="bib1.bibx43" id="paren.23"/>. The same approach is used to localize the empirical covariance matrix as in the original MESMER. The details of the method are presented in <xref ref-type="bibr" rid="bib1.bibx25" id="text.24"/> and outlined in Table <xref ref-type="table" rid="T1"/>.</p>
</sec>
<sec id="Ch1.S2.SS4">
  <label>2.4</label><title>Monthly temperature and precipitation (MESMER-M-TP)</title>
      <p id="d2e446">MESMER-M-TP is a monthly precipitation extension to MESMER-M <xref ref-type="bibr" rid="bib1.bibx40" id="paren.25"/>. It generates gridded monthly mean precipitation fields using gridded monthly mean temperature fields as input. The emulator is designed to realistically capture the covariance structure between temperature and precipitation, ensuring that the generated precipitation fields are spatially and temporally consistent with the input temperature fields. Precipitation at each gridcell and for each individual month is modeled as the product of two components: The first component describes how precipitation statistically co-varies with temperature, modeled with a Generalized Linear Model, specifically with a gamma distribution with a logarithmic link. Here, temperatures from neighboring gridcells (within a configurable radius) serve as predictors for local precipitation responses. The second component accounts for variability in precipitation not explained by temperature. While assumed temperature-independent, this residual term can still reflect spatial correlations across the precipitation field. To capture this structure, the residuals are transformed via principal component analysis (PCA), and their distribution is estimated using kernel density estimation with a Gaussian kernel for resampling (Table <xref ref-type="table" rid="T1"/>).</p>
      <p id="d2e454">We note that MESMER-M-TP is not fully integrated in MESMER v1, but we include it here for completeness. The full integration of MESMER-M-TP is expected to follow in the next MESMER release.</p>
</sec>
<sec id="Ch1.S2.SS5">
  <label>2.5</label><title>Annual extremes and climate impact drivers (MESMER-X)</title>
      <p id="d2e466">MESMER-X was developed to emulate local climate extremes and climate impact drivers <xref ref-type="bibr" rid="bib1.bibx33" id="paren.26"/>. Instead of a local response module as employed in MESMER it uses non-stationary distributions, i.e. distributions of the climate variable that are conditional on covariates, e.g., the global mean temperature. Therefore it can accommodate non-normal distributions and non-linear responses to changes in global climate. This module is designed to be applicable for a large range of variables, thus allows various distributions (Normal, Generalized Extreme Value, etc.) and covariate responses (linear, polynomial, sigmoid, etc.). The generation of realizations is achieved by sampling an AR(1) process as in MESMER, and subsequently using Probability Integral Transforms <xref ref-type="bibr" rid="bib1.bibx1 bib1.bibx14" id="paren.27"/> to transform the drawn samples to the distributions of the climate indicators (Table <xref ref-type="table" rid="T1"/>).</p>
</sec>
<sec id="Ch1.S2.SS6">
  <label>2.6</label><title>State of the legacy Software</title>
      <p id="d2e485">Previously, the individual MESMER components listed above were published in separate repositories, or, in the case of MESMER-X, not accessible to the public at all. Overall, there was no overarching software architecture. While all components were written in Python, the structure varied across components. Some components were written in an object-oriented style, others were a collection of scripts that had to be executed in the right order, and others were collections of function definitions and execution code in single Jupyter Notebooks. Across all four components, there were about 12 000 lines of code in 60 files.</p>
      <p id="d2e488">External documentation for MESMER-M, MESMER-M-TP and MESMER-X was limited to the model description papers <xref ref-type="bibr" rid="bib1.bibx25 bib1.bibx40 bib1.bibx33 bib1.bibx35" id="paren.28"/>, whereas MESMER already had a documentation webpage with an API reference. Around 60 % of public function and class definitions were documented with docstrings in the legacy code. The code quality of the legacy components was mixed, scoring pylint scores <xref ref-type="bibr" rid="bib1.bibx15" id="paren.29"/> between 0 and 8.03, were 0 is the smallest (worst) score possible and 10 the highest (best).</p>
      <p id="d2e499">The comprehensibility of the software was further hampered by a rather in-transparent data structure consisting of nested dictionaries, where data was stored as plain <italic>numpy</italic> arrays <xref ref-type="bibr" rid="bib1.bibx17" id="paren.30"/>. To navigate the data one had to know the dictionary structure, the appropriate keys, and data dimensions. Lastly, MESMER-M, MESMER-M-TP and MESMER-X had no testing suite, ensuring correctness and stability of the code. As of the release of MESMER v0.8.3 in <xref ref-type="bibr" rid="bib1.bibx18" id="text.31"/>, MESMER had a test coverage of around 78 %.</p>
</sec>
</sec>
<sec id="Ch1.S3">
  <label>3</label><title>Design of MESMER v1</title>
      <p id="d2e520">The development of MESMER and its extensions took part over several years and  was guided by scientific interest and relevance. The code was developed by multiple researchers, to a large extent independently of one another, and without a focus on software design. Due to its relevance to the community and use in various international projects, a rewrite, integration of all extensions, and unification of the code base was deemed necessary. In doing so, we followed requirements for sustainable research software, which are that the software is maintainable, extensible, testable, accessible, flexible, has a defined software architecture and is documented <xref ref-type="bibr" rid="bib1.bibx2" id="paren.32"/>.</p>
      <p id="d2e526">As shown above, each MESMER component has a unique structure and uses different methods to achieve its objective. However, each of the components is calibrated on ESM output to obtain parameters specific to each ESM. Further, each component emulates a <italic>local response</italic> to their respective predictor variable(s) and then generates <italic>local variability</italic>. Figure <xref ref-type="fig" rid="F1"/> shows the synergies between the existing MESMER components, e.g., all use the same method for localizing the empirical covariance matrix for the non-parametric sampling of local variability. This perspective opens possibilities for future developments. Additions to MESMER need not be limited to one component or span all of them but can fall into any of the domains defined here.</p>

      <fig id="F1" specific-use="star"><label>Figure 1</label><caption><p id="d2e539">Synergies between previously published MESMER components (indicated by color) showing predictors <bold>(a)</bold>, methods for the local response <bold>(b)</bold>, local variability <bold>(c)</bold>, and output variables <bold>(d)</bold> that are used within MESMER.</p></caption>
        <graphic xlink:href="https://gmd.copernicus.org/articles/19/5669/2026/gmd-19-5669-2026-f01.png"/>

      </fig>

<sec id="Ch1.S3.SS1">
  <label>3.1</label><title>The modular user interface</title>
      <p id="d2e568">MESMER v1 is a pure python package and contains statistical functionality and utilities to process ESM data to be used in the statistical functions. The statistical functions and classes are organized in two modules:  <monospace>mesmer.stats</monospace>, and <monospace>mesmer.distrib</monospace> (Fig. <xref ref-type="fig" rid="F2"/>).  The module <monospace>mesmer.distrib</monospace> holds classes and functions related to conditional probability distributions, i.e., functionality that is mainly used in MESMER-X such as fitting a conditional distribution (<monospace>mesmer.distrib.</monospace>
<monospace>ConditionalDistribtion().fit</monospace>) or the probability integral transform (<monospace>mesmer.distrib.Probability</monospace></p>

      <fig id="F2" specific-use="star"><label>Figure 2</label><caption><p id="d2e593">Public API of MESMER v1. Light yellow boxes indicate functions, blue boxes classes, and lilac boxes class methods. Gray frames mark individual python files, i.e. (sub-)modules.</p></caption>
          <graphic xlink:href="https://gmd.copernicus.org/articles/19/5669/2026/gmd-19-5669-2026-f02.png"/>

        </fig>

      <p id="d2e602"><monospace>IntegralTransform</monospace>). The module <monospace>mesmer.stats</monospace> contains all other statistical classes and functions, including linear regression (<monospace>mesmer.stats.LinearRegression</monospace>), auto-regression (e.g., <monospace>mesmer.stats.select_ar_order</monospace>), and others. The data handling functionality is distributed over several modules, and includes functions to compute anomalies (<monospace>mesmer.anomaly.calc_anomaly</monospace>), the global mean (<monospace>mesmer.weighted.global_mean</monospace>), or for pooling data of several scenarios and ensemble members of ESM runs (<monospace>mesmer.datatree.pool_scen_ens</monospace>).</p>
      <p id="d2e627">This layout leads to the following new workflow for the user: for <italic>calibrating</italic> MESMER they need to (1) load the predictor data, (2) calibrate the parameters using the statistical functionalities and (3) save the parameters. To <italic>create emulations</italic>, users need to (1) load the ESM-specific parameters again, (2) calculate the (deterministic) local response, (3) draw samples of the local variability, and (4) save the emulations. This workflow is demonstrated in the tutorials delivered with MESMER and on the documentation webpage. The restructured workflow is more in line with the framework shown in Fig. <xref ref-type="fig" rid="F1"/>. It allows users to interact with the statistical methods directly, and every step of the computation is clearly separated. It disentangles the data handling from the statistical functionality, and the data loading and saving, and organizes the code into small units only concerned with one well-defined task, making the code more modular <xref ref-type="bibr" rid="bib1.bibx47" id="paren.33"/>.</p>
</sec>
<sec id="Ch1.S3.SS2">
  <label>3.2</label><title>Data Structure</title>
      <p id="d2e649">MESMER v1 uses a new data structure based on <italic>xarray</italic> <xref ref-type="bibr" rid="bib1.bibx21" id="paren.34"/>. <italic>xarray</italic> provides multi-dimensional labeled arrays and datasets in Python. It adopts Unidata’s self-describing Common Data Model on which the network Common Data Form (netCDF) <xref ref-type="bibr" rid="bib1.bibx38" id="paren.35"/> is built. One main advantage over the previously-used <italic>numpy</italic> array manipulation library <xref ref-type="bibr" rid="bib1.bibx17" id="paren.36"/> is the introduction of labeled array dimensions, as well as providing coordinates to these named dimensions and adding attributes to arrays and datasets. This facilitates keeping track of multiple dimensions present in the climate data used in MESMER, e.g. latitude, longitude, time, or initial condition member. Several <italic>xarray</italic> arrays (<monospace>xarray.DataArray</monospace>) can be collected into <monospace>Dataset</monospace> objects in the form of named data variables if their coordinates align, e.g. they live on the same grid and have the same time steps. Several datasets in turn can be held in a so called <monospace>DataTree</monospace>, which allows for a hierarchical storage of data that lives on different coordinate systems.</p>
      <p id="d2e683">MESMER was designed to be calibrated on ESM model output from the Coupled Model Intercomparison Projects (CMIP), e.g. CMIP6 <xref ref-type="bibr" rid="bib1.bibx12" id="paren.37"/>. We combine historical simulations with future projections, such as the shared socioeconomic pathways (SSPs), <xref ref-type="bibr" rid="bib1.bibx31" id="paren.38"/>. Most models provide several scenarios, and historical and future data do not have the same time coordinates. Therefore, different scenarios are stored in <monospace>DataTree</monospace> objects in MESMER. Predictor data for, e.g. global mean temperature (<monospace>tas</monospace>) and optionally squared global mean temperature (<monospace>tas2</monospace>) or global mean ocean heat content (<monospace>hfds</monospace>), are held in Datasets at each node of the tree (Fig. <xref ref-type="fig" rid="F3"/>a). Similarly, the target variable for each scenario, e.g., gridded near surface air temperature, is stored in a separate <monospace>DataTree</monospace> object (Fig. <xref ref-type="fig" rid="F3"/>b). Each variable in the datasets is a <monospace>DataArray</monospace> with a time dimension, and for the gridded data, an additional gridcell dimension. If several initial condition members are available for the same scenario, these can be stored along a member dimension. It is thereby important, that the predictor and target trees are isomorphic, i.e. they hold the same scenarios, and that in each scenario, the coordinates align, so that each target sample also has a corresponding sample in the predictor data. For several of the statistical routines, the data must be pooled into a single sample dimension, where  scenario, time, and member dimensions are stacked into one (Fig. <xref ref-type="fig" rid="F3"/>c and d). MESMER provides a routine for the pooling, ensuring that no missing values occur from incorrect stacking and predictor and target data are aligned (<monospace>mesmer.datatree.broadcast_and_pool_scen</monospace><monospace>_ens</monospace>).</p>

      <fig id="F3" specific-use="star"><label>Figure 3</label><caption><p id="d2e726">Data structure in MESMER. DataTrees holding predictor <bold>(a)</bold>, and target data <bold>(b)</bold>, respectively, where each scenario is in a separate node. Predictor <bold>(c)</bold>, and target data <bold>(d)</bold> stacked into Datasets along a sample dimension, respectively.</p></caption>
          <graphic xlink:href="https://gmd.copernicus.org/articles/19/5669/2026/gmd-19-5669-2026-f03.png"/>

        </fig>

</sec>
<sec id="Ch1.S3.SS3">
  <label>3.3</label><title>Persisting calibrated parameters and emulations</title>
      <p id="d2e755">The adoption of <italic>xarray</italic> data structures allowed us to effortlessly save parameters as <italic>netCDF</italic> files, instead of the previously used <italic>pickle</italic> format. <italic>netCDF</italic> is a widely used scientific data format and has several advantages over <italic>pickle</italic> files in that it saves independent of the underlying python structures, which makes it more secure, interoperable with most common programming languages and ensures it can seamlessly be read in the future <xref ref-type="bibr" rid="bib1.bibx38" id="paren.39"/>.</p>
      <p id="d2e777">Together with MESMER v1 we publish pre-calibrated parameters for the emulation of multiple variables <xref ref-type="bibr" rid="bib1.bibx36" id="paren.40"/>: annual mean air temperature, monthly mean air temperature, annual maximum air temperature, annual average of soil moisture, annual minimum of the monthly average soil moisture, annual maximum of the Fire Weather Index, seasonal average of the Fire Weather Index, annual number of days with extreme fire weather, and length of the fire season. For information on the Fire Weather Index please refer to <xref ref-type="bibr" rid="bib1.bibx34" id="text.41"/>. The parameters are calibrated for 58 CMIP6 models <xref ref-type="bibr" rid="bib1.bibx12" id="paren.42"/> post-processed according to <xref ref-type="bibr" rid="bib1.bibx10" id="text.43"/>, using all available initial condition members of SSP1-1.9, SSP1-2.6, SSP2-4.5, SSP3-7.0, SSP4-6.0, SSP5-8.5, and SSP5-3.4-OS for each model. We calibrate using only global mean surface air temperature as a predictor. The pre-calibrated parameters allow users who are interested in emulations of the listed variables to omit the calibration step. We thereby establish a consistent parameter-set for future applications. This parameter-set will be maintained together with MESMER and can be extended depending on the interest of the research community.</p>
</sec>
<sec id="Ch1.S3.SS4">
  <label>3.4</label><title>Documentation</title>
      <p id="d2e800">To ensure that MESMER v1 is accessible to a broad range of users, we considerably extended the documentation of the software. We created a MESMER documentation webpage (<uri>https://mesmer-emulator.readthedocs.io/</uri>, last access: 26 June 2026, Fig. <xref ref-type="fig" rid="F4"/>a), which is automatically generated for each version of the code to ensure it is always up-to-date. Highlights of the new documentation webpage include the API reference, which consists of the rendered in-code documentation of all public functions and classes (Fig. <xref ref-type="fig" rid="F4"/>b), and multiple tutorials that demonstrate the workflow of the most important MESMER use-cases, therein calibrating on a real (but coarse resolution) example ESM and creating emulations for the given ESM, for the MESMER, MESMER-M and MESMER-X workflow (Fig. <xref ref-type="fig" rid="F4"/>c). These tutorials are rendered from interactive jupyter Notebooks, also available from the MESMER repository (see Figure caption for link) for users to download. Moreover, the documentation also contains the open software license of MESMER, notably the GNU General Public License as published by the Free Software Foundation, version 3 (cf. <uri>https://www.gnu.org/licenses/gpl-3.0.html</uri>, last access: 10 September 2025) and resources for developers.</p>

      <fig id="F4" specific-use="star"><label>Figure 4</label><caption><p id="d2e817">Screenshots of html documentation of MESMER: the landing page on readthedocs <bold>(a)</bold>, API documentation <bold>(b)</bold> and one of several tutorials <bold>(c)</bold>.</p></caption>
          <graphic xlink:href="https://gmd.copernicus.org/articles/19/5669/2026/gmd-19-5669-2026-f04.png"/>

        </fig>

      <p id="d2e835">In addition, the MESMER github page (<uri>https://github.com/MESMER-group/mesmer</uri>, last access: 25 June 2026) provides development oriented documentation. Here, the development team records all changes made to the software, discusses its design, collects issues, and structures the development workflow. In addition, this page is an access point for users to post issues or calls for improvement.</p>
</sec>
<sec id="Ch1.S3.SS5">
  <label>3.5</label><title>Testing</title>
      <p id="d2e849">Re-structuring the MESMER code into small units allowed us to write extensive unit tests, which ensure each individual function and method works as expected. We make use of two kinds of tests in MESMER v1: unit tests and integration tests. Unit tests are used to test the smallest units of code in a program (i.e. a single function or method), while integration tests ensure that these units work as intended when combined <xref ref-type="bibr" rid="bib1.bibx49" id="paren.44"/>. The test suite of MESMER is automatically run every time a contribution is made to the MESMER code base on github, and can of course also be run locally by the developer.</p>
      <p id="d2e855">The implemented unit tests include testing that errors are raised when expected, return values are of the expected type or shape, and class attributes are assigned as expected. More sophisticated unit tests test that an API fulfills its intended purpose. Such tests in MESMER v1 are for example if the fitting routine of the auto-regressive process or the linear regression can retrieve the correct parameters from simulated data with known parameters, or if the Yeo-Johnson Power Transformer actually reduces the skew of artificially skewed data.</p>
      <p id="d2e858">While each MESMER component (MESMER, MESMER-M, MESMER-X) showed good performance in emulating the statistical properties of ESM output <xref ref-type="bibr" rid="bib1.bibx5 bib1.bibx25 bib1.bibx33 bib1.bibx35" id="paren.45"/>, no integration tests were available for MESMER-M and MESMER-X. Therefore, the integration tests of MESMER v1 execute the whole calibration and emulation workflow for each MESMER component. Specifically, each component is calibrated using CMIP6 data that was re-gridded to a coarse resolution of <inline-formula><mml:math id="M1" display="inline"><mml:mrow><mml:mn mathvariant="normal">20</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">20</mml:mn></mml:mrow></mml:math></inline-formula> gridcells. Subsequently, one to ten realizations are drawn using the calibrated parameters. The calibrated parameters and emulations are compared to previously-saved output. This ensures stability of MESMER functionality as well as the numeric stability over time, or between different machines. The latter is especially important for software that is used in a scientific context to ensure reproducibility <xref ref-type="bibr" rid="bib1.bibx37" id="paren.46"/>. If a change is intended, the developer can update the saved test data.</p>
</sec>
<sec id="Ch1.S3.SS6">
  <label>3.6</label><title>Assessment of the redesigned Code base</title>
      <p id="d2e887">We assess if MESMER v1 reaches the development goals (1) modular and comprehensible source code, (2) modern data structure, (3) internal and external documentation, (4) test coverage of the whole project, and (5) strategy for version control and continuous integration. We exclude tests, tutorials, documentation source files, and deprecated modules from the assessment, as well as the testing module, which is only thought for use in the tests.</p>
<sec id="Ch1.S3.SS6.SSS1">
  <label>3.6.1</label><title>Modular and comprehensible source code</title>
      <p id="d2e897">Code is modular if one unit of code (e.g. a function, method or class) is only dedicated to one task <xref ref-type="bibr" rid="bib1.bibx47 bib1.bibx29" id="paren.47"/>. Thus, it is reasonable to assume that modular code units are short. On average, source code files in MESMER v1 have 254 lines of code (Table <xref ref-type="table" rid="T2"/>). Lines of code here are lines of source code, including blank lines and comments, counted by the <italic>scc</italic> tool available from GitHub (<uri>https://github.com/boyter/scc</uri>, last access: 10 September  2025). <xref ref-type="bibr" rid="bib1.bibx29" id="text.48"/> argue that code files shorter than 1000 lines can be considered modular, as they are still readable and likely understandable in a reasonable amount of time and likely to only be focused on one specific task. The longest source code file in MESMER v1 has 1246 lines. While this file exceeds the recommendation the second largest file has 645 lines. In addition to lines of code per file, we also assessed number of lines per object definition, i.e. per defined function, class or method. In total, the MESMER v1 code base consists of about 8400 lines of code in total and 226 defined objects, making for an average of about 37 lines of code per definition (Table <xref ref-type="table" rid="T2"/>), which we argue is reasonably short to understand. Furthermore, we employ the pylint score, to analyze the adherence of the MESMER v1 code to coding standards <xref ref-type="bibr" rid="bib1.bibx15" id="paren.49"/>, as a metric of how comprehensible the MESMER v1 source code is. The score lies between 0 and 10 with 10 being perfect compliance. A score above 6 is considered satisfying <xref ref-type="bibr" rid="bib1.bibx24 bib1.bibx29" id="paren.50"/>. The refactored code base reaches a score of 8.63 (Table <xref ref-type="table" rid="T2"/>). Note that here we excluded the deprecated legacy modules that will be removed in the next version. The most common violations of the standards in MESMER are: (1) lines with more than 100 characters (mostly example-data file hashes), (2) functions having more than 5 arguments, which is sometimes unavoidable, and (3) missing module docstrings, as we do not document modules but only functions, classes and methods (not shown).</p>
</sec>
<sec id="Ch1.S3.SS6.SSS2">
  <label>3.6.2</label><title>Modern data structure</title>
      <p id="d2e933">We implemented a new data structure based on <italic>xarray</italic>. This library is well maintained externally and independent of MESMER. It is interoperable with all MESMER dependencies and provides a safe and convenient data saving and loading infrastructure. Moreover, the <italic>xarray</italic> data structure greatly enhances readability of the MESMER v1 source code.</p>
</sec>
<sec id="Ch1.S3.SS6.SSS3">
  <label>3.6.3</label><title>Internal and external documentation</title>
      <p id="d2e950">MESMER v1 provides internal documentation through docstrings and in-code comments and external documentation in the forms of a ReadMe, the documentation webpage, the github page, and this publication. MESMER v1 provides documentation for 99 % of its public API and 53 % of private definitions (Table <xref ref-type="table" rid="T2"/>). We count a function, class or method as documented if it has a docstring attached to its definition that is longer than 10 characters.</p>
</sec>
<sec id="Ch1.S3.SS6.SSS4">
  <label>3.6.4</label><title>Test coverage</title>
      <p id="d2e964">MESMER has and automatically runs a large testing suite for every code contribution and release. MESMER has a test coverage of 99 % (Table <xref ref-type="table" rid="T2"/>), meaning that 2034 of 2047 of tracked source code lines (which also exclude deprecated modules) are covered by at least one test.</p>
</sec>
<sec id="Ch1.S3.SS6.SSS5">
  <label>3.6.5</label><title>Strategy for version control and continuous integration</title>
      <p id="d2e977">The MESMER v1 source code lives on github. We implemented several workflows to manage a sustainable continuous integration, like code review, issue tracking, automatic code checks, and an automatic testing suite.</p>

<table-wrap id="T2" specific-use="star"><label>Table 2</label><caption><p id="d2e983">Assessment of development targets.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="3">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Target</oasis:entry>
         <oasis:entry colname="col2">Metric</oasis:entry>
         <oasis:entry colname="col3">Value</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Modularity</oasis:entry>
         <oasis:entry colname="col2">Average number of lines of code per object</oasis:entry>
         <oasis:entry colname="col3">37</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">Number of lines of code per file (avg. [min, max])</oasis:entry>
         <oasis:entry colname="col3">254 [7, 1246]</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Code quality</oasis:entry>
         <oasis:entry colname="col2">Pylint score</oasis:entry>
         <oasis:entry colname="col3">8.63</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Data structure</oasis:entry>
         <oasis:entry colname="col2"><italic>numpy</italic> arrays to <italic>xarray</italic> data structure</oasis:entry>
         <oasis:entry colname="col3">Completed</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Documentation</oasis:entry>
         <oasis:entry colname="col2">% of public API documented</oasis:entry>
         <oasis:entry colname="col3">99 %</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">% of private API documented</oasis:entry>
         <oasis:entry colname="col3">53 %</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Testing</oasis:entry>
         <oasis:entry colname="col2">% of lines covered by tests</oasis:entry>
         <oasis:entry colname="col3">99 %</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d2e1103">Overall, we conclude that MESMER v1 complies with standards for sustainable research software <xref ref-type="bibr" rid="bib1.bibx2 bib1.bibx37 bib1.bibx29" id="paren.51"/>.</p>
</sec>
</sec>
</sec>
<sec id="Ch1.S4">
  <label>4</label><title>Performance optimization and numerical stabilization</title>
      <p id="d2e1120">We implemented several measures to optimize and stabilize MESMER. The performance improvements presented in this section were measured using data from one initial condition member of the SSP5-8.5 scenario together with its matching historical member of the IPSL-CM6A-LR model of the CMIP6 new generation data archive <xref ref-type="bibr" rid="bib1.bibx12 bib1.bibx10" id="paren.52"/>. In favor of reducing testing time, we re-gridded the dataset of the yearly and monthly mean and maximum temperatures to a resolution of <inline-formula><mml:math id="M2" display="inline"><mml:mrow><mml:mn mathvariant="normal">20</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">20</mml:mn></mml:mrow></mml:math></inline-formula> gridcells.</p>
<sec id="Ch1.S4.SS1">
  <label>4.1</label><title>Stabilization of covariance matrix decomposition</title>
      <p id="d2e1145">Previous versions of MESMER produced numerically different emulations on different machines, despite using the exact same parameters. We traced this problem back to numerical instabilities in the inversion of the spatial covariance matrix and were able to resolve it by changing the decomposition strategy of the spatial covariance matrix from a singular value decomposition to the Cholesky method <xref ref-type="bibr" rid="bib1.bibx13" id="paren.53"/>. The decomposition is needed to sample tempo-spatially correlated variability at each gridcell, i.e. the white noise term of the AR(1) process (Fig. <xref ref-type="fig" rid="F1"/>c). While the decomposition using singular value decomposition is not unique and depends on linear algebra routines independent of the python installation on a machine, Cholesky decomposition is unique and produces stable results on different machines (see also <uri>https://numpy.org/doc/2.3/reference/random/generated/numpy.random.Generator.multivariate_normal.html</uri>, last access: 10 September  2025). We find that Cholesky decomposition is about 80–100 times faster for a <inline-formula><mml:math id="M3" display="inline"><mml:mrow><mml:mn mathvariant="normal">118</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">118</mml:mn></mml:mrow></mml:math></inline-formula> matrix than singular value decomposition. Consequently, using the Cholesky method has the added benefit of speeding up the calibration (7.8 times faster) and emulations (1.7 times faster). The calibration step sees a bigger improvement because the   covariance matrix needs to be transformed several times during the cross-validation step (15 cross-validations for 7 radii with our test data).</p>
      <p id="d2e1168">Additionally, we want to note that large localization radii can lead to singular localizer matrices and are thus not suited for mitigating spurious correlations in the empirical covariance matrix. This phenomenon starts occurring at localization radii of about 11 000 km and larger. Such large localization radii are only rarely selected by the cross-validation, except when there are a large number of samples, e.g. a large number of initial condition members, are available, in which case the rank deficiency of the empirical covariance matrix is small. In such cases, the large localization radius must be kept sufficiently low to preserve a positive definite covariance matrix, thus still mitigating spurious correlations.</p>
</sec>
<sec id="Ch1.S4.SS2">
  <label>4.2</label><title>Performance optimization of the harmonic model and Power Transformer</title>
      <p id="d2e1180">We were able to reduce the time needed for the fit of the harmonic model from about 4 min to below one second for our test dataset. First, we only fit the Fourier Series up to an order of 6 instead of 12 by default, since a Fourier series of order 6 is able to capture a series with 12 features. Second, we now only fit until the first local minimum of the Bayesian Information Criterion is reached when finding the optimal order, as the BIC was found to increase monotonically thereafter. Third, we pass the parameters from the previous order as first guess when fitting the parameters of the Fourier Series for each new order. This improves the performance since the parameters of the lower order terms only vary slightly when adding a new order to the series. We also optimized the generation of the Fourier Series by factoring out constant terms, e.g. the harmonic representation of the months.</p>
      <p id="d2e1183">Testing the Power Transformer showed that it did not reliably reduce the skew of monthly residuals. We stabilized the Power Transformer by expanding the bounds imposed on the optimization of the parameters of the logistic function used for conditioning the normalization parameter, and switched the optimization method to Nelder-Mead. Moreover, we set the first guess for the fitting to assume the data is already normally distributed, which has proven to be a good first guess for the monthly temperature residuals. In addition, there were problems with the numerical stability of the back-transformation using the Power Transformer, that arose from floating point errors in the formulation of the transform. Specifically, round-tripping certain values did not lead to the original data for small numbers. We were able to fix these issues by switching to more precise <italic>numpy</italic> routines in the computation of the transformed data (namely <monospace>numpy.expm1(x)</monospace> and <monospace>numpy.log1p(x)</monospace> which yield higher precision for small <monospace>x</monospace> than <monospace>numpy.exp(x)-1</monospace> and <monospace>numpy.log(1+x)</monospace>, cf. <uri>https://numpy.org/doc/stable/reference/generated/numpy.expm1.html</uri>, last accessed: 12 March 2026). With these adjustments, the time needed for the calibration of the Power Transformer was reduced from approximately 8 min to under 5 s.</p>
</sec>
<sec id="Ch1.S4.SS3">
  <label>4.3</label><title>Switch to cyclo-stationary AR(1) process for monthly emulations</title>
      <p id="d2e1216">The method employed to emulate local variability for monthly temperatures is different from the approach for annual temperatures <xref ref-type="bibr" rid="bib1.bibx25 bib1.bibx5" id="paren.54"/>. The residual temperature variability of June may depend differently on the one of May than the one of July does on June. Therefore, there are separate AR parameters for each calendar month, and the method used for monthly temperature emulations is a cyclo-stationary AR(1) process instead of a AR(1) process <xref ref-type="bibr" rid="bib1.bibx43" id="paren.55"/>. In contrast to the AR(1) process, a cyclo-stationary AR(1) process can still be stationary with AR-coefficients larger than absolute 1, since the destabilizing effect of one coefficient (e.g. of one month) can be compensated by another (e.g. the one of the next month). We thus removed the bounds of [<inline-formula><mml:math id="M4" display="inline"><mml:mo lspace="0mm">-</mml:mo></mml:math></inline-formula>1, 1] enforced on the slopes during the fitting routine of the monthly AR(1) process and found that slopes outside these bounds do appear in our parameters. Consequently, we are not able to adjust the covariance matrix with the AR slopes anymore as done for e.g. annual mean temperatures <xref ref-type="bibr" rid="bib1.bibx5 bib1.bibx43" id="paren.56"/>. To prevent the overestimation of the driving noise variance, we now fit the covariance matrix on the residuals of the cyclo-stationary AR(1) process and found that for generated data, this leads to a better representation of the variability than estimated by the AR(1) process (Fig. <xref ref-type="fig" rid="FA1"/>).</p>
</sec>
<sec id="Ch1.S4.SS4">
  <label>4.4</label><title>First guess module for the Conditional Distribution</title>
      <p id="d2e1246">MESMER-X emulates climate variables by sampling their values from a calibrated conditional distribution. Thereby, every parameter of the conditional distribution, e.g. the location or the scale, can be a function of covariates, i.e. global predictors such as the change in global mean temperature. Both the type of distribution and the functions for the parameters are chosen by the user, based on statistical and physical arguments. Identifying the adequate distribution and functions require data exploration and validation (see <xref ref-type="bibr" rid="bib1.bibx33 bib1.bibx35" id="altparen.57"/>). Because MESMER-X is designed to be able to emulate a large range of variables, the module to train these conditional distributions is designed for flexibility and robustness of the training. To maximize the chances of finding the best solution, an algorithm finds a first guess, as close as possible to the final solution. This algorithm builds on the principles introduced in <xref ref-type="bibr" rid="bib1.bibx33 bib1.bibx35" id="paren.58"/>, which uses an iterative process to fine tune the first guess for each gridcell: <list list-type="order"><list-item>
      <p id="d2e1257">First approximation for the location: using only the function of the location, global minimization of the square of the errors on the mean of the sample and the first derivatives with the predictors.</p></list-item><list-item>
      <p id="d2e1261">Fit of the location: using only the function of the location, local minimization of the square of the differences between the evolution of the location and the smoothed sample. It implicitly assumes that the location and the mean are close.</p></list-item><list-item>
      <p id="d2e1265">Fit of the scale: using only the function of the scale, local minimization of the square of the differences between the evolution of the scale and the empirical scale. This empirical scale is calculated as the square of the differences between the smoothed sample and the sample itself. It implicitly assumes that the scale and this empirical estimate are close.</p></list-item><list-item>
      <p id="d2e1269">Overall improvement: using the distribution and all functions for its parameters, local minimization of the negative log-likelihood. Given the three former steps, the location and scale are relatively good approximations, but the remaining parameters need to be estimated as well. The location and scale may change here, to adapt to the evolutions of the overall conditional distribution.</p></list-item><list-item>
      <p id="d2e1273">Validation of the first guess: several tests are conducted to verify necessary conditions or user-defined constraints. Namely, the parameters must be within bounds (e.g. the scale must be positive); the coefficients within their functions may have to respect other bounds; the whole sample must be within the support of the distribution; every point of the sample must have a minimum probability, set by default to <inline-formula><mml:math id="M5" display="inline"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>×</mml:mo><mml:msup><mml:mn mathvariant="normal">10</mml:mn><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">9</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula>. If all tests are verified, this solution will be used as first guess.</p></list-item><list-item>
      <p id="d2e1295">Eventual improvement: if the former step has shown failure of a test, an additional local optimization is conducted, using the minimization of the negative log-likelihood at a cubic power. This approach gives more weights to outliers, thus avoids having parts of the sample that will cause the test on the minimum probability to fail.</p></list-item></list></p>
      <p id="d2e1298">The global optimizer is a Basinhopping algorithm, with 10 iterations and 100 intervals, with a seed set for reproducibility. The local optimizer is a Nelder-Mead algorithm, but the user may provide a second local optimizer, and the best result will be used. When minimizing the negative log-likelihood, weights can be used for every point of the sample, e.g. uniform or based on the density of the predictor samples. The predictor samples are often not equally distributed over their whole range, for example the global mean temperature has more samples at lower than high values because there is a longer period of relatively constant temperatures in the historical period. Therefore, a weighting may help in providing equal performance for the fit over the whole range of the predictors. This weighting is based on the inverse of the density, calculated with a Gaussian kernel-density estimate.</p>
      <p id="d2e1301">The solution for the conditional distribution is finally obtained by a local minimization of the negative log-likelihood from this first guess, accounting for given weights. Every iteration during the minimization is checked with the same tests outlined in step 5 of the first guess. The optimizer is again Nelder-Mead, with the possibility to use a second one defined by the user. Overall, the first guess module enhances the chances of finding a good fit of the conditional distribution.</p>
</sec>
</sec>
<sec id="Ch1.S5">
  <label>5</label><title>Performance assessment</title>
      <p id="d2e1313">To illustrate the use-case of MESMER being used on a personal machine instead of a cluster, we calibrate and emulate three use-cases of MESMER on a personal machine with an Apple M3 Pro Chip (November 2023) and 18 GB of memory. The three use-cases are: calibration and emulation of local annual mean surface air temperature (MESMER), local monthly mean surface air temperature (MESMER-M), and local annual maximum surface air temperature (MESMER-X) using only annual mean temperature as predictor. For the calibration we use CMIP6 data of one ESM, specifically IPSL-CM6A-LR.</p>
      <p id="d2e1316">We perform two calibrations: once on a single member and once a 24-member ensemble of five future scenarios and the historical period with four initial condition members each. The calibration including one member is performed on the historical and SSP5-8.5 scenarios, using the “r1i1p1f1” member, yielding 251 samples. On the used <inline-formula><mml:math id="M6" display="inline"><mml:mrow><mml:mn mathvariant="normal">2.5</mml:mn><mml:mi mathvariant="italic">°</mml:mi><mml:mo>×</mml:mo><mml:mn mathvariant="normal">2.5</mml:mn><mml:mi mathvariant="italic">°</mml:mi></mml:mrow></mml:math></inline-formula> grid and after masking the ocean and Antarctica, this makes for a total of 2652 gridcells. The ensemble includes the initial condition members “r1i1p1f1”, “r2i1p1f1”, “r3i1p1f1”, and “r4i1p1f1” of the scenarios SSP1-1.9, SSP1-2.6, SSP2-4.5, SSP3-7.0, and SSP5-8.5 respectively, together with the matching historical members. Note that we use the historical members only once (not once per future scenario). This yields a total of <inline-formula><mml:math id="M7" display="inline"><mml:mrow><mml:mn mathvariant="normal">6</mml:mn><mml:mo>×</mml:mo><mml:mn mathvariant="normal">4</mml:mn><mml:mo>=</mml:mo><mml:mn mathvariant="normal">24</mml:mn></mml:mrow></mml:math></inline-formula> members with 86 timesteps for the future scenarios, and 165 timesteps for the historical members, respectively, a total of 2380 samples on 2652 gridcells. While we used the same members for all scenarios for convenience and to limit the number of samples, this is not necessary and MESMER can be run with an arbitrary number and combination of ensemble members or scenarios.</p>
      <p id="d2e1351">Note that we only timed one individual execution for each use-case, and did not run on multiple machines or control for work load from other programs (email, browser, etc.). This analysis does not aim to be a thorough benchmarking of the software as each application of MESMER depends heavily the use-case. Instead, we want to give rough time indications for future users and point out which parts of the calibration and emulation routines control the overall computation time.</p>
      <p id="d2e1354">Calibrating parameters for annual mean surface air temperature emulations, takes approximately half a minute for one member and 3 min for the 24-member ensemble (Table <xref ref-type="table" rid="T3"/>). In both cases, most of the time in the calibration is taken up by the fitting of the local AR(1) processes with spatially correlated innovations (<inline-formula><mml:math id="M8" display="inline"><mml:mrow><mml:mo>&gt;</mml:mo><mml:mn mathvariant="normal">85</mml:mn></mml:mrow></mml:math></inline-formula> %, Table <xref ref-type="table" rid="TA1"/>). This is, on the one hand, the fitting of the AR(1) parameters, and on the other hand finding the optimal localization radius for the empirical covariance matrix. Importantly, the time needed to fit the AR(1) process depends mostly on the number of supplied samples, while the time needed to find the optimal localization radius depends primarily on how many radii need to be tested until a local minimum is reached. Calibration on one member makes the empirical correlation matrix severely rank deficient since there are only 251 samples for 2652 gridcells. This leads to a low localization radius, corresponding to a “strong” localization, in this case 2250 km. In contrast, calibrating on multiple members provides more samples and thus mitigates the rank deficiency, resulting in a higher localization radius, here 4750 km. Since we tested radii from 1000 to 10 000 km in steps of 250 km, the calibration on one member cross-validated 7 radii, while the calibration on the ensemble needed 17 cross-validations. Note that we use a number of 30 folds for each cross-validation step throughout this analysis. Subsequently, the time needed to find the localization radius can be greatly decreased if the user supplies a suitable range of radii to test.</p>

<table-wrap id="T3" specific-use="star"><label>Table 3</label><caption><p id="d2e1375">Time needed for the calibration and emulation workflows of MESMER, MESMER-M and MESMER-X tested on CMIP6 data of IPSL-CM6A-LR with 2652 gridcells. Times were measured on one execution each, using the standard cProfiler of Python. All workflows where timed once, omitting data loading and saving, on a personal machine with an Apple M3 Pro Chip (November 2023) and 18 GB of memory.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="5">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left" colsep="1"/>
     <oasis:colspec colnum="4" colname="col4" align="left"/>
     <oasis:colspec colnum="5" colname="col5" align="left"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Component</oasis:entry>
         <oasis:entry rowsep="1" namest="col2" nameend="col3" align="center" colsep="1">Calibration </oasis:entry>
         <oasis:entry rowsep="1" namest="col4" nameend="col5" align="center">Emulation </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">one member</oasis:entry>
         <oasis:entry colname="col3">ensemble</oasis:entry>
         <oasis:entry colname="col4">100 emulations</oasis:entry>
         <oasis:entry colname="col5">1000 emulations</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">(251 samples)</oasis:entry>
         <oasis:entry colname="col3">(2380 samples)</oasis:entry>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">MESMER</oasis:entry>
         <oasis:entry colname="col2">25 s</oasis:entry>
         <oasis:entry colname="col3">2 min 55 s</oasis:entry>
         <oasis:entry colname="col4">13 s</oasis:entry>
         <oasis:entry colname="col5">1 min 47 s</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">MESMER-M</oasis:entry>
         <oasis:entry colname="col2">5 min 0 s</oasis:entry>
         <oasis:entry colname="col3">25 min 26 s</oasis:entry>
         <oasis:entry colname="col4">2 min 4 s</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">MESMER-X</oasis:entry>
         <oasis:entry colname="col2">1 min 20 s</oasis:entry>
         <oasis:entry colname="col3">3 min 42 s</oasis:entry>
         <oasis:entry colname="col4">26 s</oasis:entry>
         <oasis:entry colname="col5">4 min 30 s</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d2e1498">The calibration of monthly mean temperatures (MESMER-M) takes significantly longer: Calibrating on one member takes 5 min and calibrating the the ensemble takes more than 25 min (Table <xref ref-type="table" rid="T3"/>). Again, most time (about 80 %, or 20 min for the ensemble) is spent on finding the optimal localization for the empirical covariance matrices (Table <xref ref-type="table" rid="TA2"/>). In contrast to the calibration on yearly data, we now calibrate 12 localization radii instead of one, that is, one for each calendar month. This of course takes about 12 times longer. Notably, the localization radii of the different months are rather similar: For steps of 250 km we did not find radii differing by more than 500 km. In the future, we plan to leverage this similarity to speed up calibration after a radius is found for the first month.</p>
      <p id="d2e1505">The calibration for annual maximum temperatures with MESMER-X takes about 1.5 min for the small and 4 min for the large calibration dataset (Table <xref ref-type="table" rid="T3"/>). Again, the most time intensive step (about one third of the time for the large calibration dataset) is finding the localization radius (Table <xref ref-type="table" rid="TA3"/>), where in this use-case, the fist local minimum was found after 7 iterations for the small and after 14 iterations for the large dataset. The second most time-intensive operation is finding a suitable first guess, followed by fitting the conditional distribution coefficients (Table <xref ref-type="table" rid="TA3"/>). The performance of the MESMER-X calibration depends heavily on how complicated the chosen expression for the conditional distribution is. Complex expressions, with many parameters and coefficients, will be slower than simple expressions. Besides, although the expressions are chosen based on physical and statistical reasons, the user may provide an ill-defined expression which will slow down the optimization algorithms or make them fail altogether. Finally, the first guess may still be not good enough despite the algorithm described in Sect. <xref ref-type="sec" rid="Ch1.S4.SS4"/>. Here, we emulate local annual maximum temperature as samples of a normal distribution where the mean is linearly dependent on the global mean temperature and a variable scale parameter (<inline-formula><mml:math id="M9" display="inline"><mml:mrow><mml:msub><mml:mi>t</mml:mi><mml:mi mathvariant="normal">max</mml:mi></mml:msub><mml:mo>∼</mml:mo><mml:mi mathvariant="script">N</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="italic">μ</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, where  <inline-formula><mml:math id="M10" display="inline"><mml:mrow><mml:mi mathvariant="italic">μ</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi>c</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>c</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>⋅</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M11" display="inline"><mml:mrow><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi>c</mml:mi><mml:mn mathvariant="normal">3</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>), which can be judged as a rather simple expression. While a generalized extreme value distribution would be a better choice for the distribution <xref ref-type="bibr" rid="bib1.bibx33" id="paren.59"/>, we use a normal distribution in this example to keep the number of parameters to fit smaller.</p>
      <p id="d2e1586">Furthermore, we provide time estimates for drawing emulations. To this end, we use the smoothed global mean temperature of the CMIP6 IPSL-C6MA-LR historical and SSP5-8.5 “r1i1p1f1” initial condition member as forcing data for MESMER and MESMER-X and the gridded temperature of the same member for MESMER-M, together with the calibrated parameters from the large ensemble calibration above. Drawing 100 samples of local annual mean temperature for 2652 gridcells and 251 time steps takes less than 20 s, while 1000 samples require approximately 2 min (Table <xref ref-type="table" rid="T3"/>). Here, the emulation of local variability, i.e. sampling the AR(1) process is the most time intensive step (<inline-formula><mml:math id="M12" display="inline"><mml:mrow><mml:mo>&gt;</mml:mo><mml:mn mathvariant="normal">50</mml:mn></mml:mrow></mml:math></inline-formula> %, Table <xref ref-type="table" rid="TA1"/>).</p>
      <p id="d2e1603">Drawing monthly samples for 100 realizations using the MESMER-M setup takes about 2 min (Table <xref ref-type="table" rid="T3"/>). This is about 9–10 times slower than emulating annual mean temperatures. Note that one realization of monthly data has 12 times as many samples as yearly data. As a consequence, it is not possible to draw 1000 realizations of monthly temperature trajectories on a standard office machine, as it runs out of memory. Memory optimization is a goal of future MESMER developments but was not a priority for MESMER v1, because realizations can also be drawn sequentially by the user. This is also beneficial for having the emulations split into smaller files. Users should keep in mind however to set new seeds when drawing new realizations, otherwise one will end up with the same data.</p>
      <p id="d2e1608">Finally, Using the MESMER-X setup, drawing 100 samples of annual maximum temperature takes about 30 s, while drawing 1000 samples takes about 4.5 min (Table <xref ref-type="table" rid="T3"/>). For this setup, the most time intensive step is sampling the standard normal for few samples, while for the large case, it is transforming the standard normal samples to the desired target distribution (Table <xref ref-type="table" rid="TA3"/>).</p>
</sec>
<sec id="Ch1.S6" sec-type="conclusions">
  <label>6</label><title>Summary and Outlook</title>
      <p id="d2e1623">Overall, the MESMER software package provides user-friendly spatial climate model emulator functionalities needed to reproduce previous MESMER applications as well as providing a flexible basis for further MESMER developments. We restructured the code base into a modular, flexible, extensible and comprehensible software package, implemented a safe, modern and transparent data structure, and constructed extensive tests and documentation. Moreover, we showed that emulation of typical MESMER use-cases can be done in just minutes, while calibration of the model can take between seconds (one member, annual mean temperature) and half an hour (multiple members and scenarios, monthly temperatures). For the first time, we also provide pre-calibrated parameters for multiple climate variables (annual and monthly mean temperature, annual maximum temperature, soil moisture and several Fire Weather related indicators) to enable users to skip the manual calibration process <xref ref-type="bibr" rid="bib1.bibx36" id="paren.60"/>.</p>
      <p id="d2e1629">The rewrite was not without its challenges: it was difficult to integrate and align the source code of the different components developed by multiple researchers over several years, some of whom were working at different institutions in the meantime. Much of the code was tailored to the specific use-cases of the experiments previously performed and integrating the code to be flexible for novel use-cases was challenging. Then, the numerical stabilization of the output required considerable time and research effort. Further, developments in external libraries were necessary to accommodate MESMER's use-case, foremost the recent inclusion of <monospace>DataTree</monospace> in <italic>xarray</italic>. The resulting integrated code provides a much more versatile tool to the research community and will serve as basis for follow-up MESMER developments.</p>
      <p id="d2e1638">The appropriate tools to meet the above-mentioned challenges were most importantly the implementation of unit and integration tests, which flag when functionalities are not behaving as expected. This did not only provide stability and functional testing of the code, but also enforced a deeper understanding of the functionalities on the developers side. Moreover, enforcing a four-eye principle of code review on a platform like github ensured that code was checked by someone else than the developer themselves before it was merged into the main code base. Lastly, version control using git allowed us to track changes in the code and trace issues to their root cause.</p>
      <p id="d2e1641">With these tools, the development team achieved a significant performance increase, not only with respect to the time needed for calibration and emulation, but also with respect to numerical stability. The first aspect, i.e. faster calibration and emulation, is essential for making emulators useful tools next to Earth System Models. The latter aspect, i.e. numerical stability, is important for reproducibility as well as reliability of the results. Moreover, completely rewriting research code with the goal to provide a comprehensive software package suitable for general and external use is rather rare and still under-recognized in academia <xref ref-type="bibr" rid="bib1.bibx16 bib1.bibx47 bib1.bibx37 bib1.bibx29 bib1.bibx30" id="paren.61"/>. The present development of MESMER v1 should also be a motivation for more research code to become publicly available and suited for external use.</p>
      <p id="d2e1648">Future developments of MESMER should be twofold: (1) Scientific developments can focus on new applications of the existing capabilities of MESMER, such as attribution studies, exploration of counterfactual scenarios, overshoot scenarios; or new applications, such as including new variables or extending to multivariate emulations. (2) Technical developments of the code base should include further performance optimization of the fitting routines to make calibration even faster, especially of the conditional distributions, as well as memory optimizations for the emulation routines to enable drawing a larger number of emulations, notably for monthly temperatures. Immediate further developments include the integration of MESMER-M-TP and a novel extension of MESMER-X for extreme precipitation <xref ref-type="bibr" rid="bib1.bibx32" id="paren.62"/> into the code base.</p>
      <p id="d2e1654">In conclusion, the newly developed MESMER v1 modular Earth System Model emulator is a user-friendly open-source software that is available for the fast assessment of climate projections under various emission scenarios, as well as for numerous further applications of relevance for the climate research community and society.</p>
</sec>

      
      </body>
    <back><app-group>

<app id="App1.Ch1.S1">
  <label>Appendix A</label><title/>

      <fig id="FA1"><label>Figure A1</label><caption><p id="d2e1669">Comparison of methods to estimate the driving noise variance of data generated by a cyclo-stationary AR(1) process. Data was generated for 12 months using AR slopes indicated by red dots and a standard deviation (SD) of 2 (actual SD – gray stippled line). Yellow squares mark the estimated AR slopes retrieved by MESMER's fitting algorithm. Green crosses indicate the standard deviation estimated from the raw monthly data, blue crosses the one estimated by adjusting the standard deviation with the retrieved AR parameters, and purple crosses the one estimated on the residuals of the AR process.</p></caption>
        <graphic xlink:href="https://gmd.copernicus.org/articles/19/5669/2026/gmd-19-5669-2026-f05.png"/>

      </fig>

<table-wrap id="TA1"><label>Table A1</label><caption><p id="d2e1683">Time needed to calibrate and emulate annual mean temperature (MESMER workflow) for one ESM (IPSL-CM6A-LR). Calibration is once done only on one initial condition member of one scenario (r1i1p1f1 and SSP5-8.5) and once on multiple members of four scenarios (r1i1p1f1, r2i1p1f1, r3i1p1f1, r4i1p1f1 and SSP1-1.9, SSP1-2.6, SSP2-4.5, SSP3-7.0, and SSP5-8.5). The matching historical member is included once for every scenario member. This yields 251 samples for the one member calibration and 2380 samples for the ensemble calibration. Times for emulation are given for 100 and 1000 realizations. Times were measured on one execution each, using the standard cProfiler of python. All workflows where timed once, omitting data loading and saving, on a personal machine with an Apple M3 Pro Chip (November 2023) and 18 GB of memory.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="5">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:colspec colnum="4" colname="col4" align="left"/>
     <oasis:colspec colnum="5" colname="col5" align="left"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Task</oasis:entry>
         <oasis:entry colname="col2">Calibration</oasis:entry>
         <oasis:entry colname="col3">Calibration</oasis:entry>
         <oasis:entry colname="col4">Emulation</oasis:entry>
         <oasis:entry colname="col5">Emulation</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">one member</oasis:entry>
         <oasis:entry colname="col3">ensemble</oasis:entry>
         <oasis:entry colname="col4">(100 realizations)</oasis:entry>
         <oasis:entry colname="col5">(1000 realizations)</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">(251 samples)</oasis:entry>
         <oasis:entry colname="col3">(2380 samples)</oasis:entry>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">fit Linear Regression</oasis:entry>
         <oasis:entry colname="col2">0 min 0.0 s</oasis:entry>
         <oasis:entry colname="col3">0 min 0.1 s</oasis:entry>
         <oasis:entry colname="col4">–</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">fit AR(1) process</oasis:entry>
         <oasis:entry colname="col2">0 min 5.0 s</oasis:entry>
         <oasis:entry colname="col3">1 min 0.4 s</oasis:entry>
         <oasis:entry colname="col4">–</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">find localized empirical covariance matrix</oasis:entry>
         <oasis:entry colname="col2">0 min 17.1 s</oasis:entry>
         <oasis:entry colname="col3">1 min 50.1 s</oasis:entry>
         <oasis:entry colname="col4">–</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">predict Linear Regression</oasis:entry>
         <oasis:entry colname="col2">–</oasis:entry>
         <oasis:entry colname="col3">–</oasis:entry>
         <oasis:entry colname="col4">0 min 0.1 s</oasis:entry>
         <oasis:entry colname="col5">0 min 3.1 s</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">draw tempo-spatially correlated samples</oasis:entry>
         <oasis:entry colname="col2">–</oasis:entry>
         <oasis:entry colname="col3">–</oasis:entry>
         <oasis:entry colname="col4">0 min 12.1 s</oasis:entry>
         <oasis:entry colname="col5">0 min 50.2 s</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">other</oasis:entry>
         <oasis:entry colname="col2">0 min 3.3 s</oasis:entry>
         <oasis:entry colname="col3">0 min 3.9 s</oasis:entry>
         <oasis:entry colname="col4">0 min 0.4 s</oasis:entry>
         <oasis:entry colname="col5">0 min 54.0 s</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">total</oasis:entry>
         <oasis:entry colname="col2">0 min 25.4 s</oasis:entry>
         <oasis:entry colname="col3">2 min 54.5 s</oasis:entry>
         <oasis:entry colname="col4">0 min 12.6 s</oasis:entry>
         <oasis:entry colname="col5">1 min 47.3 s</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

<table-wrap id="TA2"><label>Table A2</label><caption><p id="d2e1890">Time needed to calibrate and emulate monthly mean temperature (MESMER-M workflow) for one ESM (IPSL-CM6A-LR). Calibration is once done only on one initial condition member of one scenario (r1i1p1f1 and SSP5-8.5) and once on multiple members of four scenarios (r1i1p1f1, r2i1p1f1, r3i1p1f1, r4i1p1f1 and SSP1-1.9, SSP1-2.6, SSP2-4.5, SSP3-7.0, and SSP5-8.5). The matching historical member is included once for every scenario member. This yields 251 samples for the one member calibration and 2380 samples for the ensemble calibration. Times for emulation are given for 100 realizations. No times can be given for drawing 1000 realizations as it is not possible to draw that many samples on a personal machine due to too small memory. Note that monthly emulations need 12 times the memory of annual emulations as in Tables <xref ref-type="table" rid="TA1"/> and  <xref ref-type="table" rid="TA3"/>. Times were measured on one execution each, using the standard cProfiler of python. All workflows where timed once, omitting data loading and saving, on a personal machine with an Apple M3 Pro Chip (November 2023) and 18 GB of memory.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="5">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:colspec colnum="4" colname="col4" align="left"/>
     <oasis:colspec colnum="5" colname="col5" align="left"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Task</oasis:entry>
         <oasis:entry colname="col2">Calibration</oasis:entry>
         <oasis:entry colname="col3">Calibration</oasis:entry>
         <oasis:entry colname="col4">Emulation</oasis:entry>
         <oasis:entry colname="col5">Emulation</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">one member</oasis:entry>
         <oasis:entry colname="col3">ensemble</oasis:entry>
         <oasis:entry colname="col4">(100 realizations)</oasis:entry>
         <oasis:entry colname="col5">(1000 realizations)</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">(251 samples)</oasis:entry>
         <oasis:entry colname="col3">(2380 samples)</oasis:entry>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">fit harmonic model</oasis:entry>
         <oasis:entry colname="col2">0 min 14.1 s</oasis:entry>
         <oasis:entry colname="col3">2 min 47.9 s</oasis:entry>
         <oasis:entry colname="col4">–</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">fit Yeo-Johnson Power transform</oasis:entry>
         <oasis:entry colname="col2">1 min 22.0 s</oasis:entry>
         <oasis:entry colname="col3">2 min 5.7 s</oasis:entry>
         <oasis:entry colname="col4">–</oasis:entry>
         <oasis:entry colname="col5">-</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">apply Yeo-Johnson  Power transform</oasis:entry>
         <oasis:entry colname="col2">0 min 16.4 s</oasis:entry>
         <oasis:entry colname="col3">2 min 34.4 s</oasis:entry>
         <oasis:entry colname="col4">–</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">fit cyclo-stationary AR(1) process</oasis:entry>
         <oasis:entry colname="col2">0 min 1.1 s</oasis:entry>
         <oasis:entry colname="col3">0 min 5.2 s</oasis:entry>
         <oasis:entry colname="col4">–</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">find monthly localized empirical covariance matrices</oasis:entry>
         <oasis:entry colname="col2">3 min 1.9 s</oasis:entry>
         <oasis:entry colname="col3">16 min 35.7 s</oasis:entry>
         <oasis:entry colname="col4">–</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">predict harmonic model</oasis:entry>
         <oasis:entry colname="col2">–</oasis:entry>
         <oasis:entry colname="col3">–</oasis:entry>
         <oasis:entry colname="col4">0 min 0.0 s</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">draw tempo-spatially correlated samples</oasis:entry>
         <oasis:entry colname="col2">–</oasis:entry>
         <oasis:entry colname="col3">–</oasis:entry>
         <oasis:entry colname="col4">0 min 39.2 s</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">apply inverse Yeo-Johnson</oasis:entry>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Power transform</oasis:entry>
         <oasis:entry colname="col2">–</oasis:entry>
         <oasis:entry colname="col3">–</oasis:entry>
         <oasis:entry colname="col4">1 min 17.5 s</oasis:entry>
         <oasis:entry colname="col5">-</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">other</oasis:entry>
         <oasis:entry colname="col2">0 min 3.9 s</oasis:entry>
         <oasis:entry colname="col3">0 min 4.5 s</oasis:entry>
         <oasis:entry colname="col4">0 min 6.8 s</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">total</oasis:entry>
         <oasis:entry colname="col2">4 min 59.5 s</oasis:entry>
         <oasis:entry colname="col3">24 min 13.3 s</oasis:entry>
         <oasis:entry colname="col4">2 min 3.5 s</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

<table-wrap id="TA3"><label>Table A3</label><caption><p id="d2e2169">Time needed to calibrate and emulate annual maximum temperature (MESMER-X workflow) for one ESM (IPSL-CM6A-LR). Calibration is once done only on one initial condition member of one scenario (r1i1p1f1 and SSP5-8.5) and once on multiple members of four scenarios (r1i1p1f1, r2i1p1f1, r3i1p1f1, r4i1p1f1 and SSP1-1.9, SSP1-2.6, SSP2-4.5, SSP3-7.0, and SSP5-8.5). The matching historical member is included once for every scenario member. This yields 251 samples for the one member calibration and 2380 samples for the ensemble calibration. Times for emulation are given for 100 and 1000 realizations. The conditional distribution is based on a normal distribution with <inline-formula><mml:math id="M13" display="inline"><mml:mrow><mml:mi mathvariant="script">N</mml:mi><mml:mo>∼</mml:mo><mml:mi mathvariant="italic">μ</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi>c</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>c</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>⋅</mml:mo><mml:mi>T</mml:mi><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.33em"/><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi>c</mml:mi><mml:mn mathvariant="normal">3</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> where <inline-formula><mml:math id="M14" display="inline"><mml:mi>T</mml:mi></mml:math></inline-formula> is annual global mean temperature. Times were measured on one execution each, using the standard cProfiler of python. All workflows where timed once, omitting data loading and saving, on a personal machine with an Apple M3 Pro Chip (November 2023) and 18 GB of memory.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="5">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:colspec colnum="4" colname="col4" align="left"/>
     <oasis:colspec colnum="5" colname="col5" align="left"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Task</oasis:entry>
         <oasis:entry colname="col2">Calibration</oasis:entry>
         <oasis:entry colname="col3">Calibration</oasis:entry>
         <oasis:entry colname="col4">Emulation</oasis:entry>
         <oasis:entry colname="col5">Emulation</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">one member</oasis:entry>
         <oasis:entry colname="col3">ensemble</oasis:entry>
         <oasis:entry colname="col4">(100 realizations)</oasis:entry>
         <oasis:entry colname="col5">(1000 realizations)</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">(251 samples)</oasis:entry>
         <oasis:entry colname="col3">(2380 samples)</oasis:entry>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">find first guess</oasis:entry>
         <oasis:entry colname="col2">0 min 32.0 s</oasis:entry>
         <oasis:entry colname="col3">0 min 50.2 s</oasis:entry>
         <oasis:entry colname="col4">–</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">fit conditional distribution</oasis:entry>
         <oasis:entry colname="col2">0 min 21.4 s</oasis:entry>
         <oasis:entry colname="col3">0 min 29.7 s</oasis:entry>
         <oasis:entry colname="col4">–</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">apply Probability Integral  Transform</oasis:entry>
         <oasis:entry colname="col2">0 min 0.0 s</oasis:entry>
         <oasis:entry colname="col3">0 min 0.3 s</oasis:entry>
         <oasis:entry colname="col4">0 min 4.6 s</oasis:entry>
         <oasis:entry colname="col5">3 min 17.5 s</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">fit AR(1) process</oasis:entry>
         <oasis:entry colname="col2">0 min 5.0 s</oasis:entry>
         <oasis:entry colname="col3">0 min 58.2 s</oasis:entry>
         <oasis:entry colname="col4">–</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">find localized empirical  covariance matrix</oasis:entry>
         <oasis:entry colname="col2">0 min 17.4 s</oasis:entry>
         <oasis:entry colname="col3">1 min 19.5 s</oasis:entry>
         <oasis:entry colname="col4">–</oasis:entry>
         <oasis:entry colname="col5">–</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">draw tempo-spatially   correlated samples</oasis:entry>
         <oasis:entry colname="col2">–</oasis:entry>
         <oasis:entry colname="col3">–</oasis:entry>
         <oasis:entry colname="col4">0 min 21.3 s</oasis:entry>
         <oasis:entry colname="col5">1 min 12.4 s</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">other</oasis:entry>
         <oasis:entry colname="col2">0 min 4.2 s</oasis:entry>
         <oasis:entry colname="col3">0 min 4.0 s</oasis:entry>
         <oasis:entry colname="col4">0 min 0.0 s</oasis:entry>
         <oasis:entry colname="col5">0 min 0.0 s</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">total</oasis:entry>
         <oasis:entry colname="col2">1 min 20.1 s</oasis:entry>
         <oasis:entry colname="col3">3 min 41.8 s</oasis:entry>
         <oasis:entry colname="col4">0 min 25.9 s</oasis:entry>
         <oasis:entry colname="col5">4 min 29.8 s</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

</app>
  </app-group><notes notes-type="codedataavailability"><title>Code and data availability</title>

      <p id="d2e2443">The source code for MESMER v1 is available on Github (<uri>https://github.com/MESMER-group/mesmer/releases/tag/v1.0.0</uri>, last access: 26 June 2026) and Zenodo (<ext-link xlink:href="https://doi.org/10.5281/zenodo.20156753" ext-link-type="DOI">10.5281/zenodo.20156753</ext-link>, <xref ref-type="bibr" rid="bib1.bibx19" id="altparen.63"/>). The code used to produce the analyses in this paper are available on Zenodo (<ext-link xlink:href="https://doi.org/10.5281/zenodo.20153653" ext-link-type="DOI">10.5281/zenodo.20153653</ext-link>, <xref ref-type="bibr" rid="bib1.bibx3" id="altparen.64"/>). CMIP6 data is available at <uri>https://esgf-node.llnl.gov/projects/esgf-llnl/</uri> (last access: 26 June 2026; <xref ref-type="bibr" rid="bib1.bibx12" id="altparen.65"/>), the CMIP6-ng data can be requested under cmip6-archive@env.ethz.ch (<xref ref-type="bibr" rid="bib1.bibx10" id="altparen.66"/>, <ext-link xlink:href="https://doi.org/10.5281/zenodo.3734128" ext-link-type="DOI">10.5281/zenodo.3734128</ext-link>). The reduced example data used for measuring performance improvements is part of the MESMER package. Pre-calibrated parameters for emulating selected variables are available to the community at the ETH Research Collection (<ext-link xlink:href="https://doi.org/10.3929/ethz-c-000798034" ext-link-type="DOI">10.3929/ethz-c-000798034</ext-link>, <xref ref-type="bibr" rid="bib1.bibx36" id="altparen.67"/>).</p>
  </notes><notes notes-type="authorcontribution"><title>Author contributions</title>

      <p id="d2e2483">Conceptualization: MH, VMB and LG. Formal Analysis and investigation: VMB. Funding acquisition: SIS. Methodology: VMB and MH. Software: VMB, MH and YQ. Visualization: VMB. Writing (original draft preparation): VMB, SS, and YQ. Writing (review and editing): MH, LG, SIS.</p>
  </notes><notes notes-type="competinginterests"><title>Competing interests</title>

      <p id="d2e2489">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="d2e2498">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="d2e2504">We would like to acknowledge  the FASTMIP initiative for which the parameters were calibrated. Moreover, we want to thank Lorenzo Pierini, Emmanuel Nyenah, Paul Eibensteiner and Christopher Womack for fruitful discussions and helpful inputs during the development phase of this work. We acknowledge the World Climate Research Program's Working Group on Coupled Modelling, which is responsible for the Coupled Model Intercomparison Project (CMIP), and we thank the climate modeling groups, specifically for the IPSL-CM6A-LR model <xref ref-type="bibr" rid="bib1.bibx8 bib1.bibx9" id="paren.68"/> for producing and making their model output available. Furthermore, we are indebted to Urs Beyerle, Lukas Brunner, and Ruth Lorenz for pre-processing the CMIP6 data. Lastly, we thank Lea Beusch, Zeb Nicholls, Shruti Nath, Lorenzo Pierini, and Jonas Schwaab for their contributions to the MESMER code base.</p></ack><notes notes-type="financialsupport"><title>Financial support</title>

      <p id="d2e2513">This research has been supported by the EU HORIZON EUROPE Climate, Energy and Mobility program (grant no. 101081369 (SPARCCLE)) and the Schweizer Staatssekretariat für Bildung, Forschung und Innovation (grant no. 23.00376).</p>
  </notes><notes notes-type="reviewstatement"><title>Review statement</title>

      <p id="d2e2519">This paper was edited by Peter Caldwell and reviewed by two anonymous referees.</p>
  </notes><ref-list>
    <title>References</title>

      <ref id="bib1.bibx1"><label>Angus(1994)</label><mixed-citation>Angus, J. E.: The Probability Integral Transform and Related Results, SIAM Rev., 36, 652–54, <uri>http://www.jstor.org/stable/2132726</uri> (last access: 25 June 2026), 1994.</mixed-citation></ref>
      <ref id="bib1.bibx2"><label>Anzt et al.(2021)Anzt, Bach, Druskat, Löffler, Loewe, Renard, Seemann, Struck, Achhammer, Aggarwal, Appel, Bader, Brusch, Busse, Chourdakis, Dabrowski, Ebert, Flemisch, Friedl, Fritzsch, Funk, Gast, Goth, Grad, Hegewald, Hermann, Hohmann, Janosch, Kutra, Linxweiler, Muth, Peters-Kottig, Rack, Raters, Rave, Reina, Reißig, Ropinski, Schaarschmidt, Seibold, Thiele, Uekermann, Unger, and Weeber</label><mixed-citation>Anzt, H., Bach, F., Druskat, S., Löffler, F., Loewe, A., Renard, B. Y., Seemann, G., Struck, A., Achhammer, E., Aggarwal, P., Appel, F., Bader, M., Brusch, L., Busse, C., Chourdakis, G., Dabrowski, P. W., Ebert, P., Flemisch, B., Friedl, S., Fritzsch, B., Funk, M. D., Gast, V., Goth, F., Grad, J. N., Hegewald, J., Hermann, S., Hohmann, F., Janosch, S., Kutra, D., Linxweiler, J., Muth, T., Peters-Kottig, W., Rack, F., Raters, F. H. C., Rave, S., Reina, G., Reißig, M., Ropinski, T., Schaarschmidt, J., Seibold, H., Thiele, J. P., Uekermann, B., Unger, S., and Weeber, R.: An environment for sustainable research software in Germany and beyond: current state, open challenges, and call for action, F1000Research, 9, 295, <ext-link xlink:href="https://doi.org/10.12688/f1000research.23224.2" ext-link-type="DOI">10.12688/f1000research.23224.2</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx3"><label>Bauer et al.(2026)Bauer, Quilcaille, and Hauser</label><mixed-citation>Bauer, V., Quilcaille, Y., and Hauser, M.: Analysis scripts for MESMER v1.0.0: Consolidating the Modular Earth System Model Emulator into a Sustainable Research Software Package, Zenodo [code], <ext-link xlink:href="https://doi.org/10.5281/zenodo.20153653" ext-link-type="DOI">10.5281/zenodo.20153653</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bibx4"><label>Beusch et al.(2020a)Beusch, Gudmundsson, and Seneviratne</label><mixed-citation>Beusch, L., Gudmundsson, L., and Seneviratne, S. I.: Crossbreeding CMIP6 Earth System Models With an Emulator for Regionally Optimized Land Temperature Projections, Geophys. Res. Lett., 47, e2019GL086812, <ext-link xlink:href="https://doi.org/10.1029/2019GL086812" ext-link-type="DOI">10.1029/2019GL086812</ext-link>, 2020a.</mixed-citation></ref>
      <ref id="bib1.bibx5"><label>Beusch et al.(2020b)Beusch, Gudmundsson, and Seneviratne</label><mixed-citation>Beusch, L., Gudmundsson, L., and Seneviratne, S. I.: Emulating Earth system model temperatures with MESMER: from global mean temperature trajectories to grid-point-level realizations on land, Earth Syst. Dynam., 11, 139–159, <ext-link xlink:href="https://doi.org/10.5194/esd-11-139-2020" ext-link-type="DOI">10.5194/esd-11-139-2020</ext-link>, 2020b.</mixed-citation></ref>
      <ref id="bib1.bibx6"><label>Beusch et al.(2022a)Beusch, Nauels, Gudmundsson, Gütschow, Schleussner, and Seneviratne</label><mixed-citation>Beusch, L., Nauels, A., Gudmundsson, L., Gütschow, J., Schleussner, C. F., and Seneviratne, S. I.: Responsibility of major emitters for country-level warming and extreme hot years, Commun. Earth &amp; Environ., 3, 1–7, <ext-link xlink:href="https://doi.org/10.1038/s43247-021-00320-6" ext-link-type="DOI">10.1038/s43247-021-00320-6</ext-link>, 2022a.</mixed-citation></ref>
      <ref id="bib1.bibx7"><label>Beusch et al.(2022b)Beusch, Nicholls, Gudmundsson, Hauser, Meinshausen, and Seneviratne</label><mixed-citation>Beusch, L., Nicholls, Z., Gudmundsson, L., Hauser, M., Meinshausen, M., and Seneviratne, S. I.: From emission scenarios to spatially resolved projections with a chain of computationally efficient emulators: coupling of MAGICC (v7.5.1) and MESMER (v0.8.3), Geosci. Model Dev., 15, 2085–2103, <ext-link xlink:href="https://doi.org/10.5194/gmd-15-2085-2022" ext-link-type="DOI">10.5194/gmd-15-2085-2022</ext-link>, 2022b.</mixed-citation></ref>
      <ref id="bib1.bibx8"><label>Boucher et al.(2018)Boucher, Denvil, Levavasseur, Cozic, Caubel, Foujols, Meurdesoif, Cadule, Devilliers, Ghattas, Lebas, Lurton, Mellul, Musat, Mignot, Cheruy, Boucher, Denvil, Levavasseur, Cozic, Caubel, Foujols, Meurdesoif, Cadule, Devilliers, Ghattas, Lebas, Lurton, Mellul, Musat, Mignot, and Cheruy</label><mixed-citation>Boucher, O., Denvil, S., Levavasseur, G., Cozic, A., Caubel, A., Foujols, M.-A., Meurdesoif, Y., Cadule, P., Devilliers, M., Ghattas, J., Lebas, N., Lurton, T., Mellul, L., Musat, I., Mignot, J., Cheruy, F., Boucher, O., Denvil, S., Levavasseur, G., Cozic, A., Caubel, A., Foujols, M.-A., Meurdesoif, Y., Cadule, P., Devilliers, M., Ghattas, J., Lebas, N., Lurton, T., Mellul, L., Musat, I., Mignot, J., and Cheruy, F.: IPSL IPSL-CM6A-LR model output prepared for CMIP6 CMIP, Earth System Grid Federation [data set], <ext-link xlink:href="https://doi.org/10.22033/ESGF/CMIP6.1534" ext-link-type="DOI">10.22033/ESGF/CMIP6.1534</ext-link>, 2018.</mixed-citation></ref>
      <ref id="bib1.bibx9"><label>Boucher et al.(2019)Boucher, Denvil, Levavasseur, Cozic, Caubel, Foujols, Meurdesoif, Cadule, Devilliers, Dupont, Lurton, Boucher, Denvil, Levavasseur, Cozic, Caubel, Foujols, Meurdesoif, Cadule, Devilliers, Dupont, and Lurton</label><mixed-citation>Boucher, O., Denvil, S., Levavasseur, G., Cozic, A., Caubel, A., Foujols, M.-A., Meurdesoif, Y., Cadule, P., Devilliers, M., Dupont, E., Lurton, T., Boucher, O., Denvil, S., Levavasseur, G., Cozic, A., Caubel, A., Foujols, M.-A., Meurdesoif, Y., Cadule, P., Devilliers, M., Dupont, E., and Lurton, T.: IPSL IPSL-CM6A-LR model output prepared for CMIP6 ScenarioMIP, Earth System Grid Federation [data set], <ext-link xlink:href="https://doi.org/10.22033/ESGF/CMIP6.1532" ext-link-type="DOI">10.22033/ESGF/CMIP6.1532</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bibx10"><label>Brunner et al.(2020)Brunner, Hauser, Lorenz, and Beyerle</label><mixed-citation>Brunner, L., Hauser, M., Lorenz, R., and Beyerle, U.: The ETH Zurich CMIP6 next generation archive: technical documentation, Zenodo,   <ext-link xlink:href="https://doi.org/10.5281/zenodo.3734128" ext-link-type="DOI">10.5281/zenodo.3734128</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx11"><label>Cressie and Wikle(2011)</label><mixed-citation>Cressie, N. and Wikle, C. K.: Statistics for Spatio-Temporal Data, John Wiley &amp; Sons, Incorporated, ISBN 978-1-119-24306-9, <uri>http://ebookcentral.proquest.com/lib/ethz/detail.action?docID=4427975</uri> (last access: 25 June 2026), 2011.</mixed-citation></ref>
      <ref id="bib1.bibx12"><label>Eyring et al.(2016)Eyring, Bony, Meehl, Senior, Stevens, Stouffer, and Taylor</label><mixed-citation>Eyring, V., Bony, S., Meehl, G. A., Senior, C. A., Stevens, B., Stouffer, R. J., and Taylor, K. E.: Overview of the Coupled Model Intercomparison Project Phase 6 (CMIP6) experimental design and organization, Geosci. Model Dev., 9, 1937–1958, <ext-link xlink:href="https://doi.org/10.5194/gmd-9-1937-2016" ext-link-type="DOI">10.5194/gmd-9-1937-2016</ext-link>, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx13"><label>Gentle(2009)</label><mixed-citation>Gentle, J. E.: Computational Statistics, Statistics and Computing, Springer New York, 1 Edn., ISBN 978-0-387-98144-4, <ext-link xlink:href="https://doi.org/10.1007/978-0-387-98144-4" ext-link-type="DOI">10.1007/978-0-387-98144-4</ext-link>, 2009.</mixed-citation></ref>
      <ref id="bib1.bibx14"><label>Gneiting et al.(2007)Gneiting, Balabdaoui, and Raftery</label><mixed-citation>Gneiting, T., Balabdaoui, F., and Raftery, A. E.: Probabilistic Forecasts, Calibration and Sharpness, J. R. Stat. Soc. B, 69, 243–268, <ext-link xlink:href="https://doi.org/10.1111/j.1467-9868.2007.00587.x" ext-link-type="DOI">10.1111/j.1467-9868.2007.00587.x</ext-link>, 2007.</mixed-citation></ref>
      <ref id="bib1.bibx15"><label>Goodger and Rossum(2011)</label><mixed-citation>Goodger, D. and Rossum, G. v.: PEP 257 – Docstring Conventions, <uri>https://peps.python.org/pep-0257/</uri> (last access: 26 June 2026),   2011.</mixed-citation></ref>
      <ref id="bib1.bibx16"><label>Gregor et al.(2026)Gregor, Meyer, Gaida, Justo Vasquez, Bett-Williams, Forrest, Darela-Filho, Rabin, Longo, Melton, Nord, Anthoni, Bastrikov, Colligan, Delire, Dietze, Hurtt, Ito, Keetz, Knauer, Köster, Lin, Ma, Minvielle, Olin, Ostberg, Shi, Schnur, Sun, Thornton, and Rammig</label><mixed-citation>Gregor, K., Meyer, B. F., Gaida, T., Justo Vasquez, V., Bett-Williams, K., Forrest, M., Darela-Filho, J. P., Rabin, S., Longo, M., Melton, J. R., Nord, J., Anthoni, P., Bastrikov, V., Colligan, T., Delire, C., Dietze, M. C., Hurtt, G., Ito, A., Keetz, L. T., Knauer, J., Köster, J., Lin, T.-S., Ma, L., Minvielle, M., Olin, S., Ostberg, S., Shi, H., Schnur, R., Sun, Q., Thornton, P. E., and Rammig, A.: Best practices in software development for robust and reproducible geoscientific models based on insights from the Global Carbon Budget's dynamic vegetation models, Geosci. Model Dev., 19, 2407–2436, <ext-link xlink:href="https://doi.org/10.5194/gmd-19-2407-2026" ext-link-type="DOI">10.5194/gmd-19-2407-2026</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bibx17"><label>Harris et al.(2020)Harris, Millman, Walt, Gommers, Virtanen, Cournapeau, Wieser, Taylor, Berg, Smith, Kern, Picus, Hoyer, Kerkwijk, Brett, Haldane, Río, Wiebe, Peterson, Gérard-Marchant, Sheppard, Reddy, Weckesser, Abbasi, Gohlke, and Oliphant</label><mixed-citation>Harris, C. R., Millman, K. J., van der Walt, S. J.., Gommers, R., Virtanen, P., Cournapeau, D., Wieser, E., Taylor, J., Berg, S., Smith, N. J., Kern, R., Picus, M., Hoyer, S., Kerkwijk, M. H. v., Brett, M., Haldane, A., del Río, J. F., Wiebe, M., Peterson, P., Gérard-Marchant, P., Sheppard, K., Reddy, T., Weckesser, W., Abbasi, H., Gohlke, C., and Oliphant, T. E.: Array programming with NumPy, Nature,  585, 357–362, <ext-link xlink:href="https://doi.org/10.1038/s41586-020-2649-2" ext-link-type="DOI">10.1038/s41586-020-2649-2</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx18"><label>Hauser et al.(2021)Hauser, Beusch, Zeb Nicholls, and Woodhome23</label><mixed-citation>Hauser, M., Beusch, L., Zeb Nicholls, and Woodhome23: MESMER-group/mesmer: version 0.8.3, Zenodo [code], <ext-link xlink:href="https://doi.org/10.5281/zenodo.5802054" ext-link-type="DOI">10.5281/zenodo.5802054</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx19"><label>Hauser et al.(2026)Hauser, Bauer, Beusch, Nicholls, yquilcaille, Nath, l pierini, readthedocs assistant, sarasita, and Schwaab</label><mixed-citation>Hauser, M., Bauer, V., Beusch, L., Nicholls, Z., yquilcaille, Nath, S., l pierini, readthedocs assistant, sarasita, and Schwaab, J.: MESMER-group/mesmer: version v1.0.0, Zenodo [code], <ext-link xlink:href="https://doi.org/10.5281/zenodo.20156753" ext-link-type="DOI">10.5281/zenodo.20156753</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bibx20"><label>Herger et al.(2015)Herger, Sanderson, and Knutti</label><mixed-citation>Herger, N., Sanderson, B. M., and Knutti, R.: Improved pattern scaling approaches for the use in climate impact studies, Geophys. Res. Lett., 42, 3486–3494, <ext-link xlink:href="https://doi.org/10.1002/2015GL063569" ext-link-type="DOI">10.1002/2015GL063569</ext-link>, 2015.</mixed-citation></ref>
      <ref id="bib1.bibx21"><label>Hoyer and Hamman(2017)</label><mixed-citation>Hoyer, S. and Hamman, J.: xarray: N-D labeled Arrays and Datasets in Python, Journal of Open Research Software, 5, 10, <ext-link xlink:href="https://doi.org/10.5334/jors.148" ext-link-type="DOI">10.5334/jors.148</ext-link>, 2017.</mixed-citation></ref>
      <ref id="bib1.bibx22"><label>Humphrey and Gudmundsson(2019)</label><mixed-citation>Humphrey, V. and Gudmundsson, L.: GRACE-REC: a reconstruction of climate-driven water storage changes over the last century, Earth Syst. Sci. Data, 11, 1153–1170, <ext-link xlink:href="https://doi.org/10.5194/essd-11-1153-2019" ext-link-type="DOI">10.5194/essd-11-1153-2019</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bibx23"><label>Mathison et al.(2025)Mathison, Burke, Munday, Jones, Smith, Steinert, Wiltshire, Huntingford, Kovacs, Gohar, Varney, and McNeall</label><mixed-citation>Mathison, C., Burke, E. J., Munday, G., Jones, C. D., Smith, C. J., Steinert, N. J., Wiltshire, A. J., Huntingford, C., Kovacs, E., Gohar, L. K., Varney, R. M., and McNeall, D.: A rapid-application emissions-to-impacts tool for scenario assessment: Probabilistic Regional Impacts from Model patterns and Emissions (PRIME), Geosci. Model Dev., 18, 1785–1808, <ext-link xlink:href="https://doi.org/10.5194/gmd-18-1785-2025" ext-link-type="DOI">10.5194/gmd-18-1785-2025</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bibx24"><label>Molnar et al.(2020)Molnar, Motogna, and Vlad</label><mixed-citation>Molnar, A.-J., Motogna, S., and Vlad, C.: Using Static Analysis Tools to Assist Student Project Evaluation, in: Proceedings of the 2nd ACM SIGSOFT International Workshop on Education through Advanced Software Engineering and Artificial Intelligence, Association for Computing Machinery, Virtual, USA, 7–12, ISBN 978-1-4503-8102-4, <ext-link xlink:href="https://doi.org/10.1145/3412453.3423195" ext-link-type="DOI">10.1145/3412453.3423195</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx25"><label>Nath et al.(2022)Nath, Lejeune, Beusch, Seneviratne, and Schleussner</label><mixed-citation>Nath, S., Lejeune, Q., Beusch, L., Seneviratne, S. I., and Schleussner, C.-F.: MESMER-M: an Earth system model emulator for spatially resolved monthly temperature, Earth Syst. Dynam., 13, 851–877, <ext-link xlink:href="https://doi.org/10.5194/esd-13-851-2022" ext-link-type="DOI">10.5194/esd-13-851-2022</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx26"><label>Nath et al.(2024)Nath, Hauser, Schumacher, Lejeune, Gudmundsson, Quilcaille, Candela, Saeed, Seneviratne, and Schleussner</label><mixed-citation>Nath, S., Hauser, M., Schumacher, D. L., Lejeune, Q., Gudmundsson, L., Quilcaille, Y., Candela, P., Saeed, F., Seneviratne, S. I., and Schleussner, C.-F.: Representing natural climate variability in an event attribution context: Indo-Pakistani heatwave of 2022, Weather and Climate Extremes, 44, 100671, <ext-link xlink:href="https://doi.org/10.1016/j.wace.2024.100671" ext-link-type="DOI">10.1016/j.wace.2024.100671</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bibx27"><label>Nicholls et al.(2021)Nicholls, Meinshausen, Lewis, Corradi, Dorheim, Gasser, Gieseke, Hope, Leach, McBride, Quilcaille, Rogelj, Salawitch, Samset, Sandstad, Shiklomanov, Skeie, Smith, Smith, Su, Tsutsui, Vega‐Westhoff, and Woodard</label><mixed-citation>Nicholls, Z., Meinshausen, M., Lewis, J., Corradi, M. R., Dorheim, K., Gasser, T., Gieseke, R., Hope, A. P., Leach, N. J., McBride, L. A., Quilcaille, Y., Rogelj, J., Salawitch, R. J., Samset, B. H., Sandstad, M., Shiklomanov, A., Skeie, R. B., Smith, C. J., Smith, S. J., Su, X., Tsutsui, J., Vega‐Westhoff, B., and Woodard, D. L.: Reduced Complexity Model Intercomparison Project Phase 2: Synthesizing Earth System Knowledge for Probabilistic Climate Projections, Earth's Future, 9, e2020EF001900, <ext-link xlink:href="https://doi.org/10.1029/2020EF001900" ext-link-type="DOI">10.1029/2020EF001900</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx28"><label>Nicholls et al.(2020)Nicholls, Meinshausen, Lewis, Gieseke, Dommenget, Dorheim, Fan, Fuglestvedt, Gasser, Golüke, Goodwin, Hartin, Hope, Kriegler, Leach, Marchegiani, McBride, Quilcaille, Rogelj, Salawitch, Samset, Sandstad, Shiklomanov, Skeie, Smith, Smith, Tanaka, Tsutsui, and Xie</label><mixed-citation>Nicholls, Z. R. J., Meinshausen, M., Lewis, J., Gieseke, R., Dommenget, D., Dorheim, K., Fan, C.-S., Fuglestvedt, J. S., Gasser, T., Golüke, U., Goodwin, P., Hartin, C., Hope, A. P., Kriegler, E., Leach, N. J., Marchegiani, D., McBride, L. A., Quilcaille, Y., Rogelj, J., Salawitch, R. J., Samset, B. H., Sandstad, M., Shiklomanov, A. N., Skeie, R. B., Smith, C. J., Smith, S., Tanaka, K., Tsutsui, J., and Xie, Z.: Reduced Complexity Model Intercomparison Project Phase 1: introduction and evaluation of global-mean temperature response, Geosci. Model Dev., 13, 5175–5190, <ext-link xlink:href="https://doi.org/10.5194/gmd-13-5175-2020" ext-link-type="DOI">10.5194/gmd-13-5175-2020</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx29"><label>Nyenah et al.(2024)Nyenah, Döll, Katz, and Reinecke</label><mixed-citation>Nyenah, E., Döll, P., Katz, D. S., and Reinecke, R.: Software sustainability of global impact models, Geosci. Model Dev., 17, 8593–8611, <ext-link xlink:href="https://doi.org/10.5194/gmd-17-8593-2024" ext-link-type="DOI">10.5194/gmd-17-8593-2024</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bibx30"><label>Nyenah et al.(2025)Nyenah, Döll, Flörke, Mühlenbruch, Nissen, and Reinecke</label><mixed-citation>Nyenah, E., Döll, P., Flörke, M., Mühlenbruch, L., Nissen, L., and Reinecke, R.: The process and value of reprogramming a legacy global hydrological model, Geosci. Model Dev., 18, 5635–5653, <ext-link xlink:href="https://doi.org/10.5194/gmd-18-5635-2025" ext-link-type="DOI">10.5194/gmd-18-5635-2025</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bibx31"><label>O'Neill et al.(2016)O'Neill, Tebaldi, Van Vuuren, Eyring, Friedlingstein, Hurtt, Knutti, Kriegler, Lamarque, Lowe, Meehl, Moss, Riahi, and Sanderson</label><mixed-citation>O'Neill, B. C., Tebaldi, C., van Vuuren, D. P., Eyring, V., Friedlingstein, P., Hurtt, G., Knutti, R., Kriegler, E., Lamarque, J.-F., Lowe, J., Meehl, G. A., Moss, R., Riahi, K., and Sanderson, B. M.: The Scenario Model Intercomparison Project (ScenarioMIP) for CMIP6, Geosci. Model Dev., 9, 3461–3482, <ext-link xlink:href="https://doi.org/10.5194/gmd-9-3461-2016" ext-link-type="DOI">10.5194/gmd-9-3461-2016</ext-link>, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx32"><label>Pierini et al.(2026)Pierini, Gudmundsson, Quilcaille, and Seneviratne</label><mixed-citation>Pierini, L., Gudmundsson, L., Quilcaille, Y., and Seneviratne, S. I.: Framework for global emulation of extreme precipitation along global warming trajectories, Environ. Res. Lett., 21, 084017, <ext-link xlink:href="https://doi.org/10.1088/1748-9326/ae5fad" ext-link-type="DOI">10.1088/1748-9326/ae5fad</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bibx33"><label>Quilcaille et al.(2022)Quilcaille, Gudmundsson, Beusch, Hauser, and Seneviratne</label><mixed-citation>Quilcaille, Y., Gudmundsson, L., Beusch, L., Hauser, M., and Seneviratne, S. I.: Showcasing MESMER-X: Spatially Resolved Emulation of Annual Maximum Temperatures of Earth System Models, Geophys. Res. Lett., 49, e2022GL099012, <ext-link xlink:href="https://doi.org/10.1029/2022GL099012" ext-link-type="DOI">10.1029/2022GL099012</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx34"><label>Quilcaille et al.(2023a)Quilcaille, Batibeniz, Ribeiro, Padrón, and Seneviratne</label><mixed-citation>Quilcaille, Y., Batibeniz, F., Ribeiro, A. F. S., Padrón, R. S., and Seneviratne, S. I.: Fire weather index data under historical and shared socioeconomic pathway projections in the 6th phase of the Coupled Model Intercomparison Project from 1850 to 2100, Earth Syst. Sci. Data, 15, 2153–2177, <ext-link xlink:href="https://doi.org/10.5194/essd-15-2153-2023" ext-link-type="DOI">10.5194/essd-15-2153-2023</ext-link>, 2023a.</mixed-citation></ref>
      <ref id="bib1.bibx35"><label>Quilcaille et al.(2023b)Quilcaille, Gudmundsson, and Seneviratne</label><mixed-citation>Quilcaille, Y., Gudmundsson, L., and Seneviratne, S. I.: Extending MESMER-X: a spatially resolved Earth system model emulator for fire weather and soil moisture, Earth Syst. Dynam., 14, 1333–1362, <ext-link xlink:href="https://doi.org/10.5194/esd-14-1333-2023" ext-link-type="DOI">10.5194/esd-14-1333-2023</ext-link>, 2023b.</mixed-citation></ref>
      <ref id="bib1.bibx36"><label>Quilcaille et al.(2026)Quilcaille, Bauer, Hauser, Schöngart, Gudmundsson, and Seneviratne</label><mixed-citation>Quilcaille, Y., Bauer, V., Hauser, M., Schöngart, S., Gudmundsson, L., and Seneviratne, S. I.: Parametrizations for MESMER v1.0.0, ETH Zurich [data set], <ext-link xlink:href="https://doi.org/10.3929/ethz-c-000798034" ext-link-type="DOI">10.3929/ethz-c-000798034</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bibx37"><label>Reinecke et al.(2022)Reinecke, Trautmann, Wagener, and Schüler</label><mixed-citation>Reinecke, R., Trautmann, T., Wagener, T., and Schüler, K.: The critical need to foster computational reproducibility, Environ. Res. Lett., 17, 041005, <ext-link xlink:href="https://doi.org/10.1088/1748-9326/AC5CF8" ext-link-type="DOI">10.1088/1748-9326/AC5CF8</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx38"><label>Rew and Davis(1990)</label><mixed-citation>Rew, R. and Davis, G.: NetCDF: an interface for scientific data access, IEEE Comput. Graph., 10, 76–82, <ext-link xlink:href="https://doi.org/10.1109/38.56302" ext-link-type="DOI">10.1109/38.56302</ext-link>, 1990.</mixed-citation></ref>
      <ref id="bib1.bibx39"><label>Schwaab et al.(2024)Schwaab, Hauser, Lamboll, Beusch, Gudmundsson, Quilcaille, Lejeune, Schöngart, Schleussner, Nath, Rogelj, Nicholls, and Seneviratne</label><mixed-citation>Schwaab, J., Hauser, M., Lamboll, R. D., Beusch, L., Gudmundsson, L., Quilcaille, Y., Lejeune, Q., Schöngart, S., Schleussner, C. F., Nath, S., Rogelj, J., Nicholls, Z., and Seneviratne, S. I.: Spatially resolved emulated annual temperature projections for overshoot pathways, Sci. Data 2024 11, 1–10, <ext-link xlink:href="https://doi.org/10.1038/s41597-024-04122-1" ext-link-type="DOI">10.1038/s41597-024-04122-1</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bibx40"><label>Schöngart et al.(2024)Schöngart, Gudmundsson, Hauser, Pfleiderer, Lejeune, Nath, Seneviratne, and Schleussner</label><mixed-citation>Schöngart, S., Gudmundsson, L., Hauser, M., Pfleiderer, P., Lejeune, Q., Nath, S., Seneviratne, S. I., and Schleussner, C.-F.: Introducing the MESMER-M-TPv0.1.0 module: spatially explicit Earth system model emulation for monthly precipitation and temperature, Geosci. Model Dev., 17, 8283–8320, <ext-link xlink:href="https://doi.org/10.5194/gmd-17-8283-2024" ext-link-type="DOI">10.5194/gmd-17-8283-2024</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bibx41"><label>Schöngart et al.(2025)Schöngart, Nicholls, Hoffmann, Pelz, and Schleussner</label><mixed-citation>Schöngart, S., Nicholls, Z., Hoffmann, R., Pelz, S., and Schleussner, C.-F.: High-income groups disproportionately contribute to climate extremes worldwide, Nat. Clim. Change,  1–7, <ext-link xlink:href="https://doi.org/10.1038/s41558-025-02325-x" ext-link-type="DOI">10.1038/s41558-025-02325-x</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bibx42"><label>Seneviratne et al.(2016)Seneviratne, Donat, Pitman, Knutti, and Wilby</label><mixed-citation>Seneviratne, S. I., Donat, M. G., Pitman, A. J., Knutti, R., and Wilby, R. L.: Allowable CO<sub>2</sub> emissions based on regional and impact-related climate targets, Nature, 529, 477–483, <ext-link xlink:href="https://doi.org/10.1038/nature16542" ext-link-type="DOI">10.1038/nature16542</ext-link>, 2016.</mixed-citation></ref>
      <ref id="bib1.bibx43"><label>Storch and Zwiers(1999)</label><mixed-citation>Storch, H. v. and Zwiers, F. W.: Statistical Analysis in Climate Research, Statistical Analysis in Climate Research, <ext-link xlink:href="https://doi.org/10.1017/CBO9780511612336" ext-link-type="DOI">10.1017/CBO9780511612336</ext-link>,   1999.</mixed-citation></ref>
      <ref id="bib1.bibx44"><label>Tebaldi and Arblaster(2014)</label><mixed-citation>Tebaldi, C. and Arblaster, J. M.: Pattern scaling: Its strengths and limitations, and an update on the latest model simulations, Climatic Change, 122, 459–471, <ext-link xlink:href="https://doi.org/10.1007/s10584-013-1032-9" ext-link-type="DOI">10.1007/s10584-013-1032-9</ext-link>, 2014.</mixed-citation></ref>
      <ref id="bib1.bibx45"><label>Tebaldi et al.(2022)Tebaldi, Snyder, and Dorheim</label><mixed-citation>Tebaldi, C., Snyder, A., and Dorheim, K.: STITCHES: creating new scenarios of climate model output by stitching together pieces of existing simulations, Earth Syst. Dynam., 13, 1557–1609, <ext-link xlink:href="https://doi.org/10.5194/esd-13-1557-2022" ext-link-type="DOI">10.5194/esd-13-1557-2022</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx46"><label>Tebaldi et al.(2025)Tebaldi, Selin, Ferrari, and Flierl</label><mixed-citation>Tebaldi, C., Selin, N., Ferrari, R., and Flierl, G.: Emulators of Climate Model Output, Annu. Rev. Env. Resour., 50, 709–737, <ext-link xlink:href="https://doi.org/10.1146/annurev-environ-012125-085838" ext-link-type="DOI">10.1146/annurev-environ-012125-085838</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bibx47"><label>Trisovic et al.(2022)Trisovic, Lau, Pasquier, and Crosas</label><mixed-citation>Trisovic, A., Lau, M. K., Pasquier, T., and Crosas, M.: A large-scale study on research code quality and execution, Sci. Data,  9, 1–16, <ext-link xlink:href="https://doi.org/10.1038/s41597-022-01143-6" ext-link-type="DOI">10.1038/s41597-022-01143-6</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx48"><label>Wartenburger et al.(2017)Wartenburger, Hirschi, Donat, Greve, Pitman, and Seneviratne</label><mixed-citation>Wartenburger, R., Hirschi, M., Donat, M. G., Greve, P., Pitman, A. J., and Seneviratne, S. I.: Changes in regional climate extremes as a function of global mean temperature: an interactive plotting framework, Geosci. Model Dev., 10, 3609–3634, <ext-link xlink:href="https://doi.org/10.5194/gmd-10-3609-2017" ext-link-type="DOI">10.5194/gmd-10-3609-2017</ext-link>, 2017. </mixed-citation></ref>
      <ref id="bib1.bibx49"><label>Wilson et al.(2014)Wilson, Aruliah, Brown, Hong, Davis, Guy, Haddock, Huff, Mitchell, Plumbley, Waugh, White, and Wilson</label><mixed-citation>Wilson, G., Aruliah, D. A., Brown, C. T., Hong, N. P. C., Davis, M., Guy, R. T., Haddock, S. H. D., Huff, K. D., Mitchell, I. M., Plumbley, M. D., Waugh, B., White, E. P., and Wilson, P.: Best Practices for Scientific Computing, PLOS Biol., 12, e1001745, <ext-link xlink:href="https://doi.org/10.1371/JOURNAL.PBIO.1001745" ext-link-type="DOI">10.1371/JOURNAL.PBIO.1001745</ext-link>, 2014.</mixed-citation></ref>
      <ref id="bib1.bibx50"><label>Womack et al.(2025)Womack, Giani, Eastham, and Selin</label><mixed-citation>Womack, C. B., Giani, P., Eastham, S. D., and Selin, N. E.: Rapid Emulation of Spatially Resolved Temperature Response to Effective Radiative Forcing, J. Adv. Model. Earth Sy., 17, e2024MS004523, <ext-link xlink:href="https://doi.org/10.1029/2024MS004523" ext-link-type="DOI">10.1029/2024MS004523</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bibx51"><label>Yeo and Johnson(2000)</label><mixed-citation>Yeo, I.-K. and Johnson, R. A.: A New Family of Power Transformations to Improve Normality or Symmetry, Biometrika, 87, 954–959, <uri>http://www.jstor.org/stable/2673623</uri> (last access: 25 June 2026), 2000.</mixed-citation></ref>

  </ref-list></back>
    <!--<article-title-html>MESMER v1.0.0: consolidating the modular Earth system model emulator into a sustainable research software package</article-title-html>
<abstract-html/>
<ref-html id="bib1.bib1"><label>Angus(1994)</label><mixed-citation>
      
Angus, J. E.: The Probability Integral Transform and Related Results,
SIAM Rev., 36, 652–54,
<a href="http://www.jstor.org/stable/2132726" target="_blank"/> (last access: 25 June 2026), 1994.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib2"><label>Anzt et al.(2021)Anzt, Bach, Druskat, Löffler, Loewe, Renard,
Seemann, Struck, Achhammer, Aggarwal, Appel, Bader, Brusch, Busse,
Chourdakis, Dabrowski, Ebert, Flemisch, Friedl, Fritzsch, Funk, Gast, Goth,
Grad, Hegewald, Hermann, Hohmann, Janosch, Kutra, Linxweiler, Muth,
Peters-Kottig, Rack, Raters, Rave, Reina, Reißig, Ropinski, Schaarschmidt,
Seibold, Thiele, Uekermann, Unger, and Weeber</label><mixed-citation>
      
Anzt, H., Bach, F., Druskat, S., Löffler, F., Loewe, A., Renard, B. Y.,
Seemann, G., Struck, A., Achhammer, E., Aggarwal, P., Appel, F., Bader, M.,
Brusch, L., Busse, C., Chourdakis, G., Dabrowski, P. W., Ebert, P., Flemisch,
B., Friedl, S., Fritzsch, B., Funk, M. D., Gast, V., Goth, F., Grad, J. N.,
Hegewald, J., Hermann, S., Hohmann, F., Janosch, S., Kutra, D., Linxweiler,
J., Muth, T., Peters-Kottig, W., Rack, F., Raters, F. H. C., Rave, S., Reina,
G., Reißig, M., Ropinski, T., Schaarschmidt, J., Seibold, H., Thiele, J. P.,
Uekermann, B., Unger, S., and Weeber, R.: An environment for sustainable
research software in Germany and beyond: current state, open challenges,
and call for action, F1000Research, 9, 295,
<a href="https://doi.org/10.12688/f1000research.23224.2" target="_blank">https://doi.org/10.12688/f1000research.23224.2</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib3"><label>Bauer et al.(2026)Bauer, Quilcaille, and
Hauser</label><mixed-citation>
      
Bauer, V., Quilcaille, Y., and Hauser, M.: Analysis scripts for MESMER
v1.0.0: Consolidating the Modular Earth System Model Emulator
into a Sustainable Research Software Package, Zenodo [code],
<a href="https://doi.org/10.5281/zenodo.20153653" target="_blank">https://doi.org/10.5281/zenodo.20153653</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib4"><label>Beusch et al.(2020a)Beusch, Gudmundsson, and
Seneviratne</label><mixed-citation>
      
Beusch, L., Gudmundsson, L., and Seneviratne, S. I.: Crossbreeding CMIP6
Earth System Models With an Emulator for Regionally Optimized
Land Temperature Projections, Geophys. Res. Lett., 47,
e2019GL086812, <a href="https://doi.org/10.1029/2019GL086812" target="_blank">https://doi.org/10.1029/2019GL086812</a>, 2020a.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib5"><label>Beusch et al.(2020b)Beusch, Gudmundsson, and
Seneviratne</label><mixed-citation>
      
Beusch, L., Gudmundsson, L., and Seneviratne, S. I.: Emulating Earth system model temperatures with MESMER: from global mean temperature trajectories to grid-point-level realizations on land, Earth Syst. Dynam., 11, 139–159, <a href="https://doi.org/10.5194/esd-11-139-2020" target="_blank">https://doi.org/10.5194/esd-11-139-2020</a>, 2020b.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib6"><label>Beusch et al.(2022a)Beusch, Nauels, Gudmundsson,
Gütschow, Schleussner, and Seneviratne</label><mixed-citation>
      
Beusch, L., Nauels, A., Gudmundsson, L., Gütschow, J., Schleussner, C. F., and
Seneviratne, S. I.: Responsibility of major emitters for country-level
warming and extreme hot years, Commun. Earth &amp; Environ.,
3, 1–7, <a href="https://doi.org/10.1038/s43247-021-00320-6" target="_blank">https://doi.org/10.1038/s43247-021-00320-6</a>, 2022a.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib7"><label>Beusch et al.(2022b)Beusch, Nicholls, Gudmundsson,
Hauser, Meinshausen, and Seneviratne</label><mixed-citation>
      
Beusch, L., Nicholls, Z., Gudmundsson, L., Hauser, M., Meinshausen, M., and Seneviratne, S. I.: From emission scenarios to spatially resolved projections with a chain of computationally efficient emulators: coupling of MAGICC (v7.5.1) and MESMER (v0.8.3), Geosci. Model Dev., 15, 2085–2103, <a href="https://doi.org/10.5194/gmd-15-2085-2022" target="_blank">https://doi.org/10.5194/gmd-15-2085-2022</a>, 2022b.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib8"><label>Boucher et al.(2018)Boucher, Denvil, Levavasseur, Cozic, Caubel,
Foujols, Meurdesoif, Cadule, Devilliers, Ghattas, Lebas, Lurton, Mellul,
Musat, Mignot, Cheruy, Boucher, Denvil, Levavasseur, Cozic, Caubel, Foujols,
Meurdesoif, Cadule, Devilliers, Ghattas, Lebas, Lurton, Mellul, Musat,
Mignot, and Cheruy</label><mixed-citation>
      
Boucher, O., Denvil, S., Levavasseur, G., Cozic, A., Caubel, A., Foujols,
M.-A., Meurdesoif, Y., Cadule, P., Devilliers, M., Ghattas, J., Lebas, N.,
Lurton, T., Mellul, L., Musat, I., Mignot, J., Cheruy, F., Boucher, O.,
Denvil, S., Levavasseur, G., Cozic, A., Caubel, A., Foujols, M.-A.,
Meurdesoif, Y., Cadule, P., Devilliers, M., Ghattas, J., Lebas, N., Lurton,
T., Mellul, L., Musat, I., Mignot, J., and Cheruy, F.: IPSL
IPSL-CM6A-LR model output prepared for CMIP6 CMIP, Earth System Grid Federation [data set],
<a href="https://doi.org/10.22033/ESGF/CMIP6.1534" target="_blank">https://doi.org/10.22033/ESGF/CMIP6.1534</a>, 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib9"><label>Boucher et al.(2019)Boucher, Denvil, Levavasseur, Cozic, Caubel,
Foujols, Meurdesoif, Cadule, Devilliers, Dupont, Lurton, Boucher, Denvil,
Levavasseur, Cozic, Caubel, Foujols, Meurdesoif, Cadule, Devilliers, Dupont,
and Lurton</label><mixed-citation>
      
Boucher, O., Denvil, S., Levavasseur, G., Cozic, A., Caubel, A., Foujols,
M.-A., Meurdesoif, Y., Cadule, P., Devilliers, M., Dupont, E., Lurton, T.,
Boucher, O., Denvil, S., Levavasseur, G., Cozic, A., Caubel, A., Foujols,
M.-A., Meurdesoif, Y., Cadule, P., Devilliers, M., Dupont, E., and Lurton,
T.: IPSL IPSL-CM6A-LR model output prepared for CMIP6
ScenarioMIP, Earth System Grid Federation [data set], <a href="https://doi.org/10.22033/ESGF/CMIP6.1532" target="_blank">https://doi.org/10.22033/ESGF/CMIP6.1532</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib10"><label>Brunner et al.(2020)Brunner, Hauser, Lorenz, and
Beyerle</label><mixed-citation>
      
Brunner, L., Hauser, M., Lorenz, R., and Beyerle, U.: The ETH Zurich
CMIP6 next generation archive: technical documentation,
Zenodo,   <a href="https://doi.org/10.5281/zenodo.3734128" target="_blank">https://doi.org/10.5281/zenodo.3734128</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib11"><label>Cressie and Wikle(2011)</label><mixed-citation>
      
Cressie, N. and Wikle, C. K.: Statistics for Spatio-Temporal Data, John
Wiley &amp; Sons, Incorporated, ISBN 978-1-119-24306-9,
<a href="http://ebookcentral.proquest.com/lib/ethz/detail.action?docID=4427975" target="_blank"/> (last access: 25 June 2026),
2011.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib12"><label>Eyring et al.(2016)Eyring, Bony, Meehl, Senior, Stevens, Stouffer,
and Taylor</label><mixed-citation>
      
Eyring, V., Bony, S., Meehl, G. A., Senior, C. A., Stevens, B., Stouffer, R. J., and Taylor, K. E.: Overview of the Coupled Model Intercomparison Project Phase 6 (CMIP6) experimental design and organization, Geosci. Model Dev., 9, 1937–1958, <a href="https://doi.org/10.5194/gmd-9-1937-2016" target="_blank">https://doi.org/10.5194/gmd-9-1937-2016</a>, 2016.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib13"><label>Gentle(2009)</label><mixed-citation>
      
Gentle, J. E.: Computational Statistics, Statistics and Computing, Springer
New York, 1 Edn., ISBN 978-0-387-98144-4,
<a href="https://doi.org/10.1007/978-0-387-98144-4" target="_blank">https://doi.org/10.1007/978-0-387-98144-4</a>, 2009.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib14"><label>Gneiting et al.(2007)Gneiting, Balabdaoui, and
Raftery</label><mixed-citation>
      
Gneiting, T., Balabdaoui, F., and Raftery, A. E.: Probabilistic Forecasts,
Calibration and Sharpness, J. R. Stat. Soc. B, 69, 243–268,
<a href="https://doi.org/10.1111/j.1467-9868.2007.00587.x" target="_blank">https://doi.org/10.1111/j.1467-9868.2007.00587.x</a>, 2007.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib15"><label>Goodger and Rossum(2011)</label><mixed-citation>
      
Goodger, D. and Rossum, G. v.: PEP 257 – Docstring Conventions,
<a href="https://peps.python.org/pep-0257/" target="_blank"/> (last access: 26 June 2026),   2011.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib16"><label>Gregor et al.(2026)Gregor, Meyer, Gaida, Justo Vasquez,
Bett-Williams, Forrest, Darela-Filho, Rabin, Longo, Melton, Nord, Anthoni,
Bastrikov, Colligan, Delire, Dietze, Hurtt, Ito, Keetz, Knauer, Köster, Lin,
Ma, Minvielle, Olin, Ostberg, Shi, Schnur, Sun, Thornton, and
Rammig</label><mixed-citation>
      
Gregor, K., Meyer, B. F., Gaida, T., Justo Vasquez, V., Bett-Williams, K., Forrest, M., Darela-Filho, J. P., Rabin, S., Longo, M., Melton, J. R., Nord, J., Anthoni, P., Bastrikov, V., Colligan, T., Delire, C., Dietze, M. C., Hurtt, G., Ito, A., Keetz, L. T., Knauer, J., Köster, J., Lin, T.-S., Ma, L., Minvielle, M., Olin, S., Ostberg, S., Shi, H., Schnur, R., Sun, Q., Thornton, P. E., and Rammig, A.: Best practices in software development for robust and reproducible geoscientific models based on insights from the Global Carbon Budget's dynamic vegetation models, Geosci. Model Dev., 19, 2407–2436, <a href="https://doi.org/10.5194/gmd-19-2407-2026" target="_blank">https://doi.org/10.5194/gmd-19-2407-2026</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib17"><label>Harris et al.(2020)Harris, Millman, Walt, Gommers, Virtanen,
Cournapeau, Wieser, Taylor, Berg, Smith, Kern, Picus, Hoyer, Kerkwijk, Brett,
Haldane, Río, Wiebe, Peterson, Gérard-Marchant, Sheppard, Reddy, Weckesser,
Abbasi, Gohlke, and Oliphant</label><mixed-citation>
      
Harris, C. R., Millman, K. J., van der Walt, S. J.., Gommers, R., Virtanen, P.,
Cournapeau, D., Wieser, E., Taylor, J., Berg, S., Smith, N. J., Kern, R.,
Picus, M., Hoyer, S., Kerkwijk, M. H. v., Brett, M., Haldane, A., del Río, J.
F., Wiebe, M., Peterson, P., Gérard-Marchant, P., Sheppard, K., Reddy,
T., Weckesser, W., Abbasi, H., Gohlke, C., and Oliphant, T. E.: Array
programming with NumPy, Nature,  585, 357–362,
<a href="https://doi.org/10.1038/s41586-020-2649-2" target="_blank">https://doi.org/10.1038/s41586-020-2649-2</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib18"><label>Hauser et al.(2021)Hauser, Beusch, Zeb Nicholls, and
Woodhome23</label><mixed-citation>
      
Hauser, M., Beusch, L., Zeb Nicholls, and Woodhome23:
MESMER-group/mesmer: version 0.8.3, Zenodo [code], <a href="https://doi.org/10.5281/zenodo.5802054" target="_blank">https://doi.org/10.5281/zenodo.5802054</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib19"><label>Hauser et al.(2026)Hauser, Bauer, Beusch, Nicholls, yquilcaille,
Nath, l pierini, readthedocs assistant, sarasita, and
Schwaab</label><mixed-citation>
      
Hauser, M., Bauer, V., Beusch, L., Nicholls, Z., yquilcaille, Nath, S.,
l pierini, readthedocs assistant, sarasita, and Schwaab, J.:
MESMER-group/mesmer: version v1.0.0, Zenodo [code], <a href="https://doi.org/10.5281/zenodo.20156753" target="_blank">https://doi.org/10.5281/zenodo.20156753</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib20"><label>Herger et al.(2015)Herger, Sanderson, and
Knutti</label><mixed-citation>
      
Herger, N., Sanderson, B. M., and Knutti, R.: Improved pattern scaling
approaches for the use in climate impact studies, Geophys. Res. Lett., 42, 3486–3494, <a href="https://doi.org/10.1002/2015GL063569" target="_blank">https://doi.org/10.1002/2015GL063569</a>, 2015.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib21"><label>Hoyer and Hamman(2017)</label><mixed-citation>
      
Hoyer, S. and Hamman, J.: xarray: N-D labeled Arrays and Datasets in
Python, Journal of Open Research Software, 5, 10, <a href="https://doi.org/10.5334/jors.148" target="_blank">https://doi.org/10.5334/jors.148</a>,
2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib22"><label>Humphrey and Gudmundsson(2019)</label><mixed-citation>
      
Humphrey, V. and Gudmundsson, L.: GRACE-REC: a reconstruction of climate-driven water storage changes over the last century, Earth Syst. Sci. Data, 11, 1153–1170, <a href="https://doi.org/10.5194/essd-11-1153-2019" target="_blank">https://doi.org/10.5194/essd-11-1153-2019</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib23"><label>Mathison et al.(2025)Mathison, Burke, Munday, Jones, Smith, Steinert,
Wiltshire, Huntingford, Kovacs, Gohar, Varney, and
McNeall</label><mixed-citation>
      
Mathison, C., Burke, E. J., Munday, G., Jones, C. D., Smith, C. J., Steinert, N. J., Wiltshire, A. J., Huntingford, C., Kovacs, E., Gohar, L. K., Varney, R. M., and McNeall, D.: A rapid-application emissions-to-impacts tool for scenario assessment: Probabilistic Regional Impacts from Model patterns and Emissions (PRIME), Geosci. Model Dev., 18, 1785–1808, <a href="https://doi.org/10.5194/gmd-18-1785-2025" target="_blank">https://doi.org/10.5194/gmd-18-1785-2025</a>, 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib24"><label>Molnar et al.(2020)Molnar, Motogna, and Vlad</label><mixed-citation>
      
Molnar, A.-J., Motogna, S., and Vlad, C.: Using Static Analysis Tools to
Assist Student Project Evaluation, in: Proceedings of the 2nd ACM
SIGSOFT International Workshop on Education through Advanced
Software Engineering and Artificial Intelligence,
Association for Computing Machinery, Virtual, USA, 7–12, ISBN 978-1-4503-8102-4,
<a href="https://doi.org/10.1145/3412453.3423195" target="_blank">https://doi.org/10.1145/3412453.3423195</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib25"><label>Nath et al.(2022)Nath, Lejeune, Beusch, Seneviratne, and
Schleussner</label><mixed-citation>
      
Nath, S., Lejeune, Q., Beusch, L., Seneviratne, S. I., and Schleussner, C.-F.: MESMER-M: an Earth system model emulator for spatially resolved monthly temperature, Earth Syst. Dynam., 13, 851–877, <a href="https://doi.org/10.5194/esd-13-851-2022" target="_blank">https://doi.org/10.5194/esd-13-851-2022</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib26"><label>Nath et al.(2024)Nath, Hauser, Schumacher, Lejeune, Gudmundsson,
Quilcaille, Candela, Saeed, Seneviratne, and
Schleussner</label><mixed-citation>
      
Nath, S., Hauser, M., Schumacher, D. L., Lejeune, Q., Gudmundsson, L.,
Quilcaille, Y., Candela, P., Saeed, F., Seneviratne, S. I., and Schleussner,
C.-F.: Representing natural climate variability in an event attribution
context: Indo-Pakistani heatwave of 2022, Weather and Climate Extremes,
44, 100671, <a href="https://doi.org/10.1016/j.wace.2024.100671" target="_blank">https://doi.org/10.1016/j.wace.2024.100671</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib27"><label>Nicholls et al.(2021)Nicholls, Meinshausen, Lewis, Corradi, Dorheim,
Gasser, Gieseke, Hope, Leach, McBride, Quilcaille, Rogelj, Salawitch, Samset,
Sandstad, Shiklomanov, Skeie, Smith, Smith, Su, Tsutsui, Vega‐Westhoff, and
Woodard</label><mixed-citation>
      
Nicholls, Z., Meinshausen, M., Lewis, J., Corradi, M. R., Dorheim, K., Gasser,
T., Gieseke, R., Hope, A. P., Leach, N. J., McBride, L. A., Quilcaille, Y.,
Rogelj, J., Salawitch, R. J., Samset, B. H., Sandstad, M., Shiklomanov, A.,
Skeie, R. B., Smith, C. J., Smith, S. J., Su, X., Tsutsui, J.,
Vega‐Westhoff, B., and Woodard, D. L.: Reduced Complexity Model
Intercomparison Project Phase 2: Synthesizing Earth System
Knowledge for Probabilistic Climate Projections, Earth's Future, 9,
e2020EF001900, <a href="https://doi.org/10.1029/2020EF001900" target="_blank">https://doi.org/10.1029/2020EF001900</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib28"><label>Nicholls et al.(2020)Nicholls, Meinshausen, Lewis, Gieseke,
Dommenget, Dorheim, Fan, Fuglestvedt, Gasser, Golüke, Goodwin, Hartin, Hope,
Kriegler, Leach, Marchegiani, McBride, Quilcaille, Rogelj, Salawitch, Samset,
Sandstad, Shiklomanov, Skeie, Smith, Smith, Tanaka, Tsutsui, and
Xie</label><mixed-citation>
      
Nicholls, Z. R. J., Meinshausen, M., Lewis, J., Gieseke, R., Dommenget, D., Dorheim, K., Fan, C.-S., Fuglestvedt, J. S., Gasser, T., Golüke, U., Goodwin, P., Hartin, C., Hope, A. P., Kriegler, E., Leach, N. J., Marchegiani, D., McBride, L. A., Quilcaille, Y., Rogelj, J., Salawitch, R. J., Samset, B. H., Sandstad, M., Shiklomanov, A. N., Skeie, R. B., Smith, C. J., Smith, S., Tanaka, K., Tsutsui, J., and Xie, Z.: Reduced Complexity Model Intercomparison Project Phase 1: introduction and evaluation of global-mean temperature response, Geosci. Model Dev., 13, 5175–5190, <a href="https://doi.org/10.5194/gmd-13-5175-2020" target="_blank">https://doi.org/10.5194/gmd-13-5175-2020</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib29"><label>Nyenah et al.(2024)Nyenah, Döll, Katz, and
Reinecke</label><mixed-citation>
      
Nyenah, E., Döll, P., Katz, D. S., and Reinecke, R.: Software sustainability of global impact models, Geosci. Model Dev., 17, 8593–8611, <a href="https://doi.org/10.5194/gmd-17-8593-2024" target="_blank">https://doi.org/10.5194/gmd-17-8593-2024</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib30"><label>Nyenah et al.(2025)Nyenah, Döll, Flörke, Mühlenbruch, Nissen, and
Reinecke</label><mixed-citation>
      
Nyenah, E., Döll, P., Flörke, M., Mühlenbruch, L., Nissen, L., and Reinecke, R.: The process and value of reprogramming a legacy global hydrological model, Geosci. Model Dev., 18, 5635–5653, <a href="https://doi.org/10.5194/gmd-18-5635-2025" target="_blank">https://doi.org/10.5194/gmd-18-5635-2025</a>, 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib31"><label>O'Neill et al.(2016)O'Neill, Tebaldi, Van Vuuren, Eyring,
Friedlingstein, Hurtt, Knutti, Kriegler, Lamarque, Lowe, Meehl, Moss, Riahi,
and Sanderson</label><mixed-citation>
      
O'Neill, B. C., Tebaldi, C., van Vuuren, D. P., Eyring, V., Friedlingstein, P., Hurtt, G., Knutti, R., Kriegler, E., Lamarque, J.-F., Lowe, J., Meehl, G. A., Moss, R., Riahi, K., and Sanderson, B. M.: The Scenario Model Intercomparison Project (ScenarioMIP) for CMIP6, Geosci. Model Dev., 9, 3461–3482, <a href="https://doi.org/10.5194/gmd-9-3461-2016" target="_blank">https://doi.org/10.5194/gmd-9-3461-2016</a>, 2016.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib32"><label>Pierini et al.(2026)Pierini, Gudmundsson, Quilcaille, and
Seneviratne</label><mixed-citation>
      
Pierini, L., Gudmundsson, L., Quilcaille, Y., and Seneviratne, S. I.: Framework
for global emulation of extreme precipitation along global warming
trajectories, Environ. Res. Lett., 21, 084017,
<a href="https://doi.org/10.1088/1748-9326/ae5fad" target="_blank">https://doi.org/10.1088/1748-9326/ae5fad</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib33"><label>Quilcaille et al.(2022)Quilcaille, Gudmundsson, Beusch, Hauser, and
Seneviratne</label><mixed-citation>
      
Quilcaille, Y., Gudmundsson, L., Beusch, L., Hauser, M., and Seneviratne,
S. I.: Showcasing MESMER-X: Spatially Resolved Emulation of
Annual Maximum Temperatures of Earth System Models, Geophys. Res. Lett., 49, e2022GL099012, <a href="https://doi.org/10.1029/2022GL099012" target="_blank">https://doi.org/10.1029/2022GL099012</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib34"><label>Quilcaille et al.(2023a)Quilcaille, Batibeniz, Ribeiro,
Padrón, and Seneviratne</label><mixed-citation>
      
Quilcaille, Y., Batibeniz, F., Ribeiro, A. F. S., Padrón, R. S., and Seneviratne, S. I.: Fire weather index data under historical and shared socioeconomic pathway projections in the 6th phase of the Coupled Model Intercomparison Project from 1850 to 2100, Earth Syst. Sci. Data, 15, 2153–2177, <a href="https://doi.org/10.5194/essd-15-2153-2023" target="_blank">https://doi.org/10.5194/essd-15-2153-2023</a>, 2023a.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib35"><label>Quilcaille et al.(2023b)Quilcaille, Gudmundsson, and
Seneviratne</label><mixed-citation>
      
Quilcaille, Y., Gudmundsson, L., and Seneviratne, S. I.: Extending MESMER-X: a spatially resolved Earth system model emulator for fire weather and soil moisture, Earth Syst. Dynam., 14, 1333–1362, <a href="https://doi.org/10.5194/esd-14-1333-2023" target="_blank">https://doi.org/10.5194/esd-14-1333-2023</a>, 2023b.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib36"><label>Quilcaille et al.(2026)Quilcaille, Bauer, Hauser, Schöngart,
Gudmundsson, and Seneviratne</label><mixed-citation>
      
Quilcaille, Y., Bauer, V., Hauser, M., Schöngart, S., Gudmundsson, L., and
Seneviratne, S. I.: Parametrizations for MESMER v1.0.0, ETH Zurich [data set],
<a href="https://doi.org/10.3929/ethz-c-000798034" target="_blank">https://doi.org/10.3929/ethz-c-000798034</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib37"><label>Reinecke et al.(2022)Reinecke, Trautmann, Wagener, and
Schüler</label><mixed-citation>
      
Reinecke, R., Trautmann, T., Wagener, T., and Schüler, K.: The critical need
to foster computational reproducibility, Environ. Res. Lett., 17,
041005, <a href="https://doi.org/10.1088/1748-9326/AC5CF8" target="_blank">https://doi.org/10.1088/1748-9326/AC5CF8</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib38"><label>Rew and Davis(1990)</label><mixed-citation>
      
Rew, R. and Davis, G.: NetCDF: an interface for scientific data access, IEEE
Comput. Graph., 10, 76–82, <a href="https://doi.org/10.1109/38.56302" target="_blank">https://doi.org/10.1109/38.56302</a>, 1990.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib39"><label>Schwaab et al.(2024)Schwaab, Hauser, Lamboll, Beusch, Gudmundsson,
Quilcaille, Lejeune, Schöngart, Schleussner, Nath, Rogelj, Nicholls, and
Seneviratne</label><mixed-citation>
      
Schwaab, J., Hauser, M., Lamboll, R. D., Beusch, L., Gudmundsson, L.,
Quilcaille, Y., Lejeune, Q., Schöngart, S., Schleussner, C. F., Nath, S.,
Rogelj, J., Nicholls, Z., and Seneviratne, S. I.: Spatially resolved emulated
annual temperature projections for overshoot pathways, Sci. Data 2024
11, 1–10, <a href="https://doi.org/10.1038/s41597-024-04122-1" target="_blank">https://doi.org/10.1038/s41597-024-04122-1</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib40"><label>Schöngart et al.(2024)Schöngart, Gudmundsson, Hauser, Pfleiderer,
Lejeune, Nath, Seneviratne, and Schleussner</label><mixed-citation>
      
Schöngart, S., Gudmundsson, L., Hauser, M., Pfleiderer, P., Lejeune, Q., Nath, S., Seneviratne, S. I., and Schleussner, C.-F.: Introducing the MESMER-M-TPv0.1.0 module: spatially explicit Earth system model emulation for monthly precipitation and temperature, Geosci. Model Dev., 17, 8283–8320, <a href="https://doi.org/10.5194/gmd-17-8283-2024" target="_blank">https://doi.org/10.5194/gmd-17-8283-2024</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib41"><label>Schöngart et al.(2025)Schöngart, Nicholls, Hoffmann, Pelz, and
Schleussner</label><mixed-citation>
      
Schöngart, S., Nicholls, Z., Hoffmann, R., Pelz, S., and Schleussner, C.-F.:
High-income groups disproportionately contribute to climate extremes
worldwide, Nat. Clim. Change,  1–7, <a href="https://doi.org/10.1038/s41558-025-02325-x" target="_blank">https://doi.org/10.1038/s41558-025-02325-x</a>,
2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib42"><label>Seneviratne et al.(2016)Seneviratne, Donat, Pitman, Knutti, and
Wilby</label><mixed-citation>
      
Seneviratne, S. I., Donat, M. G., Pitman, A. J., Knutti, R., and Wilby, R. L.:
Allowable CO<sub>2</sub> emissions based on regional and impact-related climate
targets, Nature, 529, 477–483, <a href="https://doi.org/10.1038/nature16542" target="_blank">https://doi.org/10.1038/nature16542</a>, 2016.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib43"><label>Storch and Zwiers(1999)</label><mixed-citation>
      
Storch, H. v. and Zwiers, F. W.: Statistical Analysis in Climate
Research, Statistical Analysis in Climate Research,
<a href="https://doi.org/10.1017/CBO9780511612336" target="_blank">https://doi.org/10.1017/CBO9780511612336</a>,   1999.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib44"><label>Tebaldi and Arblaster(2014)</label><mixed-citation>
      
Tebaldi, C. and Arblaster, J. M.: Pattern scaling: Its strengths and
limitations, and an update on the latest model simulations, Climatic Change,
122, 459–471, <a href="https://doi.org/10.1007/s10584-013-1032-9" target="_blank">https://doi.org/10.1007/s10584-013-1032-9</a>, 2014.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib45"><label>Tebaldi et al.(2022)Tebaldi, Snyder, and
Dorheim</label><mixed-citation>
      
Tebaldi, C., Snyder, A., and Dorheim, K.: STITCHES: creating new scenarios of climate model output by stitching together pieces of existing simulations, Earth Syst. Dynam., 13, 1557–1609, <a href="https://doi.org/10.5194/esd-13-1557-2022" target="_blank">https://doi.org/10.5194/esd-13-1557-2022</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib46"><label>Tebaldi et al.(2025)Tebaldi, Selin, Ferrari, and
Flierl</label><mixed-citation>
      
Tebaldi, C., Selin, N., Ferrari, R., and Flierl, G.: Emulators of Climate
Model Output, Annu. Rev. Env. Resour., 50, 709–737,
<a href="https://doi.org/10.1146/annurev-environ-012125-085838" target="_blank">https://doi.org/10.1146/annurev-environ-012125-085838</a>, 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib47"><label>Trisovic et al.(2022)Trisovic, Lau, Pasquier, and
Crosas</label><mixed-citation>
      
Trisovic, A., Lau, M. K., Pasquier, T., and Crosas, M.: A large-scale study on
research code quality and execution, Sci. Data,  9, 1–16,
<a href="https://doi.org/10.1038/s41597-022-01143-6" target="_blank">https://doi.org/10.1038/s41597-022-01143-6</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib48"><label>Wartenburger et al.(2017)Wartenburger, Hirschi, Donat, Greve, Pitman,
and Seneviratne</label><mixed-citation>
      
Wartenburger, R., Hirschi, M., Donat, M. G., Greve, P., Pitman, A. J., and Seneviratne, S. I.: Changes in regional climate extremes as a function of global mean temperature: an interactive plotting framework, Geosci. Model Dev., 10, 3609–3634, <a href="https://doi.org/10.5194/gmd-10-3609-2017" target="_blank">https://doi.org/10.5194/gmd-10-3609-2017</a>, 2017.


    </mixed-citation></ref-html>
<ref-html id="bib1.bib49"><label>Wilson et al.(2014)Wilson, Aruliah, Brown, Hong, Davis, Guy, Haddock,
Huff, Mitchell, Plumbley, Waugh, White, and Wilson</label><mixed-citation>
      
Wilson, G., Aruliah, D. A., Brown, C. T., Hong, N. P. C., Davis, M., Guy,
R. T., Haddock, S. H. D., Huff, K. D., Mitchell, I. M., Plumbley, M. D.,
Waugh, B., White, E. P., and Wilson, P.: Best Practices for Scientific
Computing, PLOS Biol., 12, e1001745,
<a href="https://doi.org/10.1371/JOURNAL.PBIO.1001745" target="_blank">https://doi.org/10.1371/JOURNAL.PBIO.1001745</a>, 2014.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib50"><label>Womack et al.(2025)Womack, Giani, Eastham, and
Selin</label><mixed-citation>
      
Womack, C. B., Giani, P., Eastham, S. D., and Selin, N. E.: Rapid Emulation
of Spatially Resolved Temperature Response to Effective Radiative
Forcing, J. Adv. Model. Earth Sy., 17,
e2024MS004523, <a href="https://doi.org/10.1029/2024MS004523" target="_blank">https://doi.org/10.1029/2024MS004523</a>, 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib51"><label>Yeo and Johnson(2000)</label><mixed-citation>
      
Yeo, I.-K. and Johnson, R. A.: A New Family of Power Transformations to
Improve Normality or Symmetry, Biometrika, 87, 954–959,
<a href="http://www.jstor.org/stable/2673623" target="_blank"/> (last access: 25 June 2026), 2000.

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