<?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">HESS</journal-id><journal-title-group>
    <journal-title>Hydrology and Earth System Sciences</journal-title>
    <abbrev-journal-title abbrev-type="publisher">HESS</abbrev-journal-title><abbrev-journal-title abbrev-type="nlm-ta">Hydrol. Earth Syst. Sci.</abbrev-journal-title>
  </journal-title-group><issn pub-type="epub">1607-7938</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/hess-30-3455-2026</article-id><title-group><article-title>Cause-effect discovery in hydrometeorological systems: evaluation of causal discovery methods</article-title><alt-title>Cause-effect discovery in hydrometeorological systems</alt-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author" corresp="yes" rid="aff1 aff2">
          <name><surname>Yadav</surname><given-names>Vivek Kumar</given-names></name>
          <email>viveky@iisc.ac.in</email>
        <ext-link>https://orcid.org/0009-0000-7156-4450</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff2">
          <name><surname>Peel</surname><given-names>Murray C.</given-names></name>
          
        <ext-link>https://orcid.org/0000-0002-3255-3692</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff2">
          <name><surname>Fowler</surname><given-names>Keirnan</given-names></name>
          
        <ext-link>https://orcid.org/0000-0002-1983-0253</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff2">
          <name><surname>Ryu</surname><given-names>Dongryeol</given-names></name>
          
        <ext-link>https://orcid.org/0000-0002-5335-6209</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1 aff3">
          <name><surname>Vishwakarma</surname><given-names>Bramha Dutt</given-names></name>
          
        <ext-link>https://orcid.org/0000-0003-4787-8470</ext-link></contrib>
        <aff id="aff1"><label>1</label><institution>Interdisciplinary Centre for Water Research, Indian Institute of Science, Bengaluru, 560012, India</institution>
        </aff>
        <aff id="aff2"><label>2</label><institution>Faculty of Engineering and Information Technology, The University of Melbourne, Melbourne 3010, Victoria, Australia</institution>
        </aff>
        <aff id="aff3"><label>3</label><institution>Centre for Earth Sciences, Indian Institute of Science, Bengaluru, 560012, India</institution>
        </aff>
      </contrib-group>
      <author-notes><corresp id="corr1">Vivek Kumar Yadav (viveky@iisc.ac.in)</corresp></author-notes><pub-date><day>5</day><month>June</month><year>2026</year></pub-date>
      
      <volume>30</volume>
      <issue>11</issue>
      <fpage>3455</fpage><lpage>3496</lpage>
      <history>
        <date date-type="received"><day>22</day><month>September</month><year>2025</year></date>
           <date date-type="rev-request"><day>5</day><month>November</month><year>2025</year></date>
           <date date-type="rev-recd"><day>20</day><month>May</month><year>2026</year></date>
           <date date-type="accepted"><day>21</day><month>May</month><year>2026</year></date>
      </history>
      <permissions>
        <copyright-statement>Copyright: © 2026 Vivek Kumar Yadav 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://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026.html">This article is available from https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026.html</self-uri><self-uri xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026.pdf">The full text article is available as a PDF file from https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026.pdf</self-uri>
      <abstract><title>Abstract</title>

      <p id="d2e133">Identifying the driver(s) of a process or phenomenon is central to understanding and predicting its future state. In complex hydrometeorological systems, a process can have multiple drivers dynamically coupled to the system across timescales. Thus, a robust method to identify drivers is imperative. In hydrological sciences, methods like multivariate regression and, more recently, Big Data machine-learning approaches rely on finding a <italic>co</italic>-relation between variables, rather than identifying cause-effect relations. This study evaluates cause-effect discovery (Causal Discovery or CD) algorithms in hydrometeorological systems. Although earlier studies have made important contributions to exploring CD methods, they have primarily focused on bivariate methods in simple synthetic environments. Specifically, we evaluate the following four theoretically distinct multivariate CD algorithms, (i) TCDF, (ii) VARLiNGAM, (iii) PCMCI+, and (iv) DYNOTEARS. We evaluate these algorithms within a large, complex simulated environment of the Global Land Data Assimilation System (GLDAS) where the drivers, reference truth, are known perfectly. We evaluate the drivers identified by CD methods against this reference truth and also contrast its results with the widely used method of <italic>co</italic>-relation identification, Pearson’s Correlation Coefficient (PCC). The results show that CD methods identify fewer false drivers compared to PCC, across a range of Köppen-Geiger climate types. For example, PCC failed to distinguish true drivers from instantaneous and lagged cross-correlations, typically present in hydrometeorological systems. Whereas, CD methods eliminate a higher number of false instantaneous and lagged drivers. Thus, though PCC identifies the highest number of true drivers, it suffers from high false drivers. Overall, CD methods perform similar to or better than PCC, while PCMCI+ and DYNOTEARS performed the best. Further, we test whether time-series prediction models perform better when predictors are limited to those identified as causal by CD methods. Evaluation of surface soil moisture predictions during drought shows that CD-based models outperform PCC-based models and are more parsimonious. Thus, we demonstrate the effectiveness of using causal discovery to eliminate spurious relations and obtain a robust set of drivers for prediction and process understanding across different climate conditions. This study overviews, demonstrates and tests efficacy of CD methods in studying cause-effect relations in hydrometeorological systems. By exposing their capabilities and differences in a simulated environment, we hope to encourage their use in the real world and move beyond <italic>co</italic>-relation.</p>
  </abstract>
    
<funding-group>
<award-group id="gs1">
<funding-source>Ministry of Education, India</funding-source>
<award-id>PhD fellowship</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="d2e154">The Earth's hydrological system is a complex system of energy, water, and nutrient circulation. It interacts, at various spatial and temporal scales, with weather, climate and human interventions. Changes in the system via change in the state of variables and their interaction patterns cause diverse events such as floods, droughts, heatwaves and changes in streamflow regimes. To understand, adapt and mitigate such events, or for sustainable use of water resources, a comprehensive understanding of the processes leading to such phenomena is required. Fundamental to process understanding is a robust method to identify the true drivers of a process <xref ref-type="bibr" rid="bib1.bibx14 bib1.bibx79 bib1.bibx4 bib1.bibx46" id="paren.1"/>. Historically, driver identification has been based on correlation, simple regression, and probability-based models such as multivariate regression, auto-regressive modelling, and combinations thereof <xref ref-type="bibr" rid="bib1.bibx76 bib1.bibx31" id="paren.2"/>. These methods rely on maximising correlation or lagged-correlation, rather than identifying direct causation.</p>
      <p id="d2e163">Over time, process understanding has been translated into models of the hydrological system that have grown in complexity with increasing availability of data and computational resources <xref ref-type="bibr" rid="bib1.bibx55" id="paren.3"/>. These physically based models encode process understanding and drivers into numerical schemes to simulate hydrological variables <xref ref-type="bibr" rid="bib1.bibx6 bib1.bibx5 bib1.bibx92 bib1.bibx86 bib1.bibx20" id="paren.4"/>, with several of these models now simulating the water cycle of the Earth <xref ref-type="bibr" rid="bib1.bibx67 bib1.bibx25" id="paren.5"/>. However, these models are limited by approximations and parametrisations within their governing equations to represent sub-grid and sub-timestep processes, which has led research attention towards purely data-driven methods of Machine Learning and Artificial Intelligence (ML) to improve model performance <xref ref-type="bibr" rid="bib1.bibx93 bib1.bibx41 bib1.bibx48 bib1.bibx21" id="paren.6"/>.</p>
      <p id="d2e178">While ML methods can outperform physical models <xref ref-type="bibr" rid="bib1.bibx41 bib1.bibx90 bib1.bibx48" id="paren.7"/>, they replace physically-based process understanding with complex and opaque model architectures. Despite large volumes of data being required to train these models <xref ref-type="bibr" rid="bib1.bibx77" id="paren.8"/>, methods like Random Forest, Long Short-Term Memory and Decisions Trees are growing in popularity in hydrology. Although ML methods can provide outstanding results, the relational approach at their core, by definition, falls short of identifying causal predictors. This results in a two-fold problem. First, it prohibits identifying drivers of a process, which is critical to decipher the impact of climate change on the water cycle across spatio-temporal scales. Second is the old problem of “getting the right answers for the wrong reasons” <xref ref-type="bibr" rid="bib1.bibx37" id="paren.9"/>. This is evident when modellers interpret ML results; they rely on predictor importance methods to explain plausible model structures, which do not capture cause-effect relations. This task is challenging due to the opaque nature and complexity of ML methods <xref ref-type="bibr" rid="bib1.bibx48 bib1.bibx66 bib1.bibx30" id="paren.10"/>.</p>
      <p id="d2e193">An alternative approach to identify drivers is to make use of the considerable progress that has been made in the science of cause and effect. Causal discovery (CD) is concerned with finding cause-effect (Causal) relations among variables from purely observational data, while causal inference offers methods to quantify the effect of intervening in a system and quantifying the influence of certain variables, using CD or actual interventional data <xref ref-type="bibr" rid="bib1.bibx53 bib1.bibx56" id="paren.11"/>. Causal relations are defined as direct physical and dynamical influences from the causal drivers (causes) onto a variable (effect). For a given variable, its causal drivers conditionally isolate it from the remaining system and represent only direct interactions. This is fundamentally different from correlation-based approaches like Pearson’s correlation coefficient, which aim to identify a statistical dependence between variables, accounting for both, direct and indirect relations. Thus, for example a correlation may exist between rainfall and transpiration, however a causal relationship may not be found between them, given the causal drivers of transpiration are accounted for. So far, only a few studies have used CD for studying hydrometeorological systems. Following is a short summary of key terms, the Granger Causality (GC), introduced by <xref ref-type="bibr" rid="bib1.bibx26" id="text.12"/>, uses statistical measures to find causality between a pair of variables. Specifically, if including the past of a variable <inline-formula><mml:math id="M1" display="inline"><mml:mi>X</mml:mi></mml:math></inline-formula>, reduces the residuals of a prediction of <inline-formula><mml:math id="M2" display="inline"><mml:mi>Y</mml:mi></mml:math></inline-formula>, then <inline-formula><mml:math id="M3" display="inline"><mml:mi>X</mml:mi></mml:math></inline-formula> Granger causes <inline-formula><mml:math id="M4" display="inline"><mml:mi>Y</mml:mi></mml:math></inline-formula>. The Transfer Entropy (TE) <xref ref-type="bibr" rid="bib1.bibx68" id="paren.13"/>, is an information theoretic extension of GC that finds the difference in information contained in a variable <inline-formula><mml:math id="M5" display="inline"><mml:mi>Y</mml:mi></mml:math></inline-formula>, with or without a given variable <inline-formula><mml:math id="M6" display="inline"><mml:mi>X</mml:mi></mml:math></inline-formula>, where the measure of information is the Shannon Entropy <xref ref-type="bibr" rid="bib1.bibx70" id="paren.14"/>. Convergent Cross Mapping (CCM), introduced by <xref ref-type="bibr" rid="bib1.bibx75" id="text.15"/>, is a method based on time-delay embedding and reconstruction of deterministic dynamical systems to determine causality between a pair of variables. Finally, Pearl's Causality <xref ref-type="bibr" rid="bib1.bibx52 bib1.bibx53" id="paren.16"/>, uses Graphs (Bayesian Networks) to represent the causal relations of a multivariate system, like PC-alg <xref ref-type="bibr" rid="bib1.bibx74" id="paren.17"/>. PC-alg uses conditional independence tests to find causal parents (drivers) of each variable in the system. For a brief history of the development of CD methods we suggest reading <xref ref-type="bibr" rid="bib1.bibx49" id="text.18"/>.</p>
      <p id="d2e265">In hydro-meteorology applications of CD have primarily used Granger Causality based methods, bi-variate methods, approaches that do not account for auto-correlation, or methods based on deterministic dynamical theory. Examples include <xref ref-type="bibr" rid="bib1.bibx60" id="text.19"/>, who used TE to find causality between ecohydrological processes during different seasons. <xref ref-type="bibr" rid="bib1.bibx78" id="text.20"/> used GC to understand the effect of precipitation persistence and seasonality in soil-moisture and precipitation feedback. <xref ref-type="bibr" rid="bib1.bibx59" id="text.21"/> used GC, TE and various measures of correlation and information flow to understand subsurface hydrologic connectivity. <xref ref-type="bibr" rid="bib1.bibx24" id="text.22"/> used various information theoretic measures to identify different types of plausible interactions in a multivariate system. <xref ref-type="bibr" rid="bib1.bibx85" id="text.23"/> used CCM to explore the effect of soil moisture on precipitation. Similarly, <xref ref-type="bibr" rid="bib1.bibx8" id="text.24"/> used CCM to find causality between groundwater and streamflow and reported weaker causal links during and after a drought period. <xref ref-type="bibr" rid="bib1.bibx17" id="text.25"/> used CCM and graphical modelling based PCMCI (an extension of PC-alg) to discover hydrologic connectivity in a synthetic and real karstic site. <xref ref-type="bibr" rid="bib1.bibx72" id="text.26"/> used CCM to eliminate the spurious bi-directional correlation between meteorological and hydrological drought indices, isolate the causality from meteorological to hydrological drought, and estimate drought propagation times. <xref ref-type="bibr" rid="bib1.bibx11" id="text.27"/> used PCMCI to discover the interconnections of hydrologic and thermodynamic fluxes across neighbouring basins. While <xref ref-type="bibr" rid="bib1.bibx84" id="text.28"/> used PCMCI to understand the causal interactions in a complex system comprising ecological, hydrological and human activities.</p>
      <p id="d2e299">Time series produced by hydrological systems are typically stochastic, multivariate, highly interconnected, contain self-causation (via auto-correlation) and contemporaneous causal relations. CD methods capable of handling such systems are required to unravel the true causality in Hydrological Sciences. While the adoption of CD methods in Hydrological Sciences is growing, it has been limited predominantly to GC, TE and CCM. <xref ref-type="bibr" rid="bib1.bibx49" id="text.29"/> provides an example where four CD methods, GC, TE, CCM, and PC-alg, were evaluated on the output of a simple bucket hydrological model and reported their results in the context of noise, time series length, and sample size. Several of these methods have limitations, particularly in the context of hydrological sciences. For example, GC, TE, and CCM are bivariate methods and cannot find the correct causation where a third (or more) variable acts as a confounder (common driver) between two variables <xref ref-type="bibr" rid="bib1.bibx49 bib1.bibx17" id="paren.30"/>. Finally, PCMCI, a method gaining rapid adoption in hydrological and atmospheric science, was not selected as it cannot discover contemporaneous relations. Hydrometeorological systems are typically highly interconnected, across different timescales, with multiple variables responsible for driving a process. Similarly, many variables show strong state dependence (self-causation via autocorrelation) which cannot be handled by GC, TE, CCM or PC-alg <xref ref-type="bibr" rid="bib1.bibx65" id="paren.31"/>. Further, certain causal interactions happen at contemporaneous times. Since GC, TE by definition look for causal relations from past to future values, they cannot handle contemporaneous interactions <xref ref-type="bibr" rid="bib1.bibx26 bib1.bibx75" id="paren.32"/>, while PC-alg also does not consider contemporaneous interactions <xref ref-type="bibr" rid="bib1.bibx62" id="paren.33"/>. Finally, real-world observations of hydrological systems are typically noisy and contain uncertainties. The deterministic dynamical system assumption of CCM limits its use in such cases <xref ref-type="bibr" rid="bib1.bibx75 bib1.bibx49" id="paren.34"/>.</p>
      <p id="d2e321">In this study, we extend the evaluation of CD methods in a complex hydrometeorological system by evaluating four theoretically distinct methods of causal discovery. The algorithms overviewed and evaluated use frameworks suitable to find causal relations in multivariate time-series data. Further, by considering auto-correlation and cross-lagged and contemporaneous relations, these are suitable to identify self causation and causal relations across multiple time lags. Finally, by not assuming a deterministic system, these are theoretically well suited to the stochastic nature of hydrometeorological systems. Developed across diverse contexts and problems, we evaluate the following CD algorithms: (i) Score-based structure learning: DYNOTEARS <xref ref-type="bibr" rid="bib1.bibx50" id="paren.35"/>, (ii) Noise-based: VARLiNGAM <xref ref-type="bibr" rid="bib1.bibx34" id="paren.36"/>, (iii) Constraint-based method: PCMCI+ <xref ref-type="bibr" rid="bib1.bibx62" id="paren.37"/>, and (iv) Granger causality based: Temporal Causal Discovery Framework <xref ref-type="bibr" rid="bib1.bibx47" id="paren.38"/>. We evaluate their performance by their ability to identify known causal drivers within a simulated dynamical system, GLDAS 2.0 <xref ref-type="bibr" rid="bib1.bibx43" id="paren.39"/>. We seek to answer the following questions: <list list-type="order"><list-item>
      <p id="d2e342">Can CD methods identify the true drivers in a complex simulated hydrometeorological system, across different climate types?</p></list-item><list-item>
      <p id="d2e346">What is their overall performance, in terms of identifying causal relations and eliminating non-causal <italic>co</italic>-relations, across different climate types?</p></list-item><list-item>
      <p id="d2e353">What is the trade off between choosing a correlation-based approach and CD methods?</p></list-item><list-item>
      <p id="d2e357">Can CD methods help building parsimonious and robust hydrological models? Identifying causal drivers of hydrological variables and time-series predictions.</p></list-item></list> The primary aim of this paper is to overview, demonstrate and evaluate state-of-the-art methods of Causal Discovery for identifying true drivers of a process. By reviewing the causal discovery literature, we select methods better suited for hydrometeorological systems. We apply the methods in diverse climate types of a large and complex simulated environment to recover the process drivers. Then, we contrast the results with PCC to expose the redundancies introduced by relying on correlation based methods. Further, to understand the significance of finding causal drivers in applications, we demonstrate its use to obtain parsimonious models for robust prediction under changing conditions. Like <xref ref-type="bibr" rid="bib1.bibx49" id="text.40"/>, we hope this work encourages the hydrology community to embrace Causal Discovery methods for robust and interpretable understanding and transcend beyond the limitations of <italic>co</italic>-relation based approaches.</p>
      <p id="d2e367">The paper is organised as follows: Section 2 lays out the approach for evaluating CD methods while describing some representations of causality and explains the CD methods evaluated here. Section 3 presents the results of overall evaluation across different climate zones and in particular of causal drivers of surface soil moisture. In Sect. 4 we evaluate the performance of each CD method. In Sect. 5 we summarise the main findings, provide perspectives towards applying CD methods and discuss the limitations of our work.</p>
</sec>
<sec id="Ch1.S2">
  <label>2</label><title>Methodology and Methods</title>
      <p id="d2e378">We divide this section into two parts: <italic>Methodology</italic>, which lays out the overall approach for the analysis and <italic>Methods</italic>, which explains the CD methods, their assumptions and their evaluation strategy adopted. We begin the Methodology subsection with a summary of the overall methodology adopted to evaluate the performance of CD methods. In the Methods sub-sections we describe some standard concepts and methods to represent cause-effect relations. Then we describe some metrics to evaluate different methods based on these representations. We present details of our synthetic environment and the resulting reference truth for evaluating the methods. Next, we describe the CD methods evaluated here, followed by a detailed explanation of each method and their assumptions. Finally, we describe the strategy adopted to test the efficacy of CD-based time-series prediction models.</p>
<sec id="Ch1.S2.SS1">
  <label>2.1</label><title>Overall Methodology</title>
      <p id="d2e394">The evaluation of CD methods was conducted in a simulated environment, since discovering true causal relationships from real-world observational data is inherently challenging. Several factors can complicate both the application and interpretation of CD methods: mismatches between the timescales of processes and their observations, the presence of observational or process noise, or simply the unavailability of key variables of a process. These factors make the task of finding causal relations from real-world observational data difficult. Even in systems, where such difficulties are reduced, establishing causality for well-understood processes remains a non-trivial task <xref ref-type="bibr" rid="bib1.bibx17 bib1.bibx49" id="paren.41"/>. Applying CD methods in a synthetic environment avoids such issues. Although these simulated environments are only abstractions of the real world, they provide the crucial benefit of knowing the true causal relations via their generating equations.</p>
      <p id="d2e400">To evaluate the ability of CD methods to discover true causal relations from data, we applied them on output from a physics-based hydro-meteorological Land Surface Model. Based on a literature review of the model structure and its governing equations (Appendix <xref ref-type="sec" rid="App1.Ch1.S1"/>) we determined which variables are causally related, which formed the reference truth against which the causal methods could be compared (Fig. <xref ref-type="fig" rid="F2"/>a). Then, we applied the CD methods to the simulated data and recorded the estimated causal relations. These estimated causal relations were then compared to the reference truth to evaluate the performance of each CD method.</p>
      <p id="d2e407">Detecting the presence of causal links is important to understand the connections between various processes. Similarly, correctly identifying the absence of causal links is important to eliminate correlated yet causally unrelated variables. This provides a parsimonious picture and potentially leads to a simpler representation of the overall system. Thus, our evaluation involves accuracy of CD methods on both aspects, of correctly identifying the causal links and their absence.</p>
      <p id="d2e410">Further, to understand the robustness of CD methods in different climatic conditions, we performed the analysis on data from nine different locations. These sites span eight distinct Köppen-Geiger climate classes across Tropical, Temperate, Arid, and Cold zones. We also compare our results with a non-causal method. For this, we selected Pearson's Correlation Coefficient (PCC). We selected PCC due to its simple interpretation and wide acceptance.</p>
      <p id="d2e414">Finally, we demonstrate the application of causal knowledge acquired above to a typical problem in hydrology, that of split-sample prediction. We apply PCC and CD methods as a predictor selection step to identify the predictors of surface soil moisture. We feed these predictor sets into machine learning models for predicting surface soil moisture time-series and evaluate their performances under drought period. The next section describes methods to represent causal relations in a multivariate system.</p>

      <fig id="F1" specific-use="star"><label>Figure 1</label><caption><p id="d2e419">Three equivalent methods to describe cause-effect relationship. In <bold>(a)</bold> variables <inline-formula><mml:math id="M7" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">3</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M8" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">4</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula> are input variables to generate <inline-formula><mml:math id="M9" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M10" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">3</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula> respectively. This is represented as a graph in <bold>(b)</bold> with directed edges from nodes <inline-formula><mml:math id="M11" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">3</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula> into node <inline-formula><mml:math id="M12" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula> and from nodes <inline-formula><mml:math id="M13" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">4</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula> into node <inline-formula><mml:math id="M14" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">3</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula>. The adjacency matrix in <bold>(c)</bold> represents this with binary operators in the corresponding cell of two variables, for example the directed edge in <bold>(b)</bold> between <inline-formula><mml:math id="M15" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">4</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M16" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">3</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula> is shown with “1” in the fourth row (cause) and third column (effect). <bold>(d)</bold> shows an exemplar adjacency matrix compared and its cells classified, with respect to <bold>(c)</bold>.</p></caption>
          <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f01.png"/>

        </fig>

      <fig id="F2" specific-use="star"><label>Figure 2</label><caption><p id="d2e616"><bold>(a)</bold> The True adjacency matrix representing the causal relationships between the simulated and forcing variables of CLSM-F2.5 model. Similar to Fig. 1c the matrix shows the relationship of causes (row variables) to their effects (column variables). The matrix is created based on the generating equations of the model (Appendix A2) and the definition of adjacency matrix adopted in Sect. <xref ref-type="sec" rid="Ch1.S2.SS2"/>. There are 82 true positives and 1376 true negatives in the matrix. <bold>(b)</bold> to <bold>(f)</bold> show the basins and the grids within, where the time-series data of simulated and forcing variables, were selected for the analysis. We extracted data from locations in nine Köppen-Geiger Climate Classes (eight unique classes). These locations are spread across 5 major river basins. For each Köppen-Geiger Climate Class we selected 5 grid points, thus a total of 45 grid points were selected for analysis. Though CLSM does not use a river routing scheme, we overlaid the HydroSHEDS <xref ref-type="bibr" rid="bib1.bibx42" id="paren.42"/> river network to avoid choosing a grid over a stream, and manually selected points without any preference. <bold>(g)</bold> The legend showing the various Köppen-Geiger Climate Classes.</p></caption>
          <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f02.png"/>

        </fig>

</sec>
<sec id="Ch1.S2.SS2">
  <label>2.2</label><title>DAG and Adjacency Matrix</title>
      <p id="d2e649">In a dynamical system, output variables change state through forcing variables applied to the system, and in response to coupling amongst variables, boundary conditions, thresholds and process noise. Consider the simple dynamical system in Fig. <xref ref-type="fig" rid="F1"/>a where the cause-effect (causal) relation among variables is represented by functional relationships. This causal relationship can be schematised using graphs as well (Fig. <xref ref-type="fig" rid="F1"/>b). Graphs represent the relations between variables (nodes) using arrows or links (edges). To represent a causal relation with a graph two necessary conditions are required: directed edges and acyclicity. Since causal relations are direct cause-effect relations, a causal graph requires all the edges to be directed. Further, due to temporal ordering of cause-effect relations, a causal graph cannot contain cycles, for example, rainfall and soil moisture are known to form a positive feedback under certain conditions <xref ref-type="bibr" rid="bib1.bibx27 bib1.bibx9" id="paren.43"/>. However, while rain can affect current and future soil moisture states, soil moisture can only affect the future state of rain, not the current or past states. A graph with acyclicity and directed edges is called a Directed Acyclic Graph or DAG (Fig. <xref ref-type="fig" rid="F1"/>b). DAGs are a common representation of causal relations <xref ref-type="bibr" rid="bib1.bibx53 bib1.bibx56" id="paren.44"/>.</p>
      <p id="d2e664">A DAG can also be represented as a matrix, called an Adjacency Matrix (Fig. <xref ref-type="fig" rid="F1"/>c) <xref ref-type="bibr" rid="bib1.bibx56" id="paren.45"/>. Representing DAGs as a mathematical object allows various mathematical operations to be performed on it (see Sect. <xref ref-type="sec" rid="Ch1.S2.SS3"/>). An adjacency matrix has its rows (or columns) named after the variables of the system and its columns (or rows) as the transpose of the former. The existence (or non-existence) of a relation between two variables is represented with a binary operator (1 and 0 or true and false) in the corresponding cell of the matrix. To show the directionality of relations, we choose to define the adjacency matrix such that the causes reside in the rows and the effects reside in the columns (see Fig. <xref ref-type="fig" rid="F1"/>c).</p>
      <p id="d2e676">We note that the strength of causal relations can be represented by the coefficients of the adjacency matrix, such that the values lie between <inline-formula><mml:math id="M17" display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∞</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="normal">∞</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. However, in this paper we are only interested in the presence (and absence) of causal relations, thus we restrict the adjacency matrices to represent the same via <inline-formula><mml:math id="M18" display="inline"><mml:mrow><mml:msup><mml:mn mathvariant="normal">1</mml:mn><mml:mo>′</mml:mo></mml:msup><mml:mi>s</mml:mi></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M19" display="inline"><mml:mrow><mml:msup><mml:mn mathvariant="normal">0</mml:mn><mml:mo>′</mml:mo></mml:msup><mml:mi>s</mml:mi></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d2e723">An interesting consequence of causality and acyclicity of DAGs is the lower triangular ordering of the coefficients of the adjacency matrix <xref ref-type="bibr" rid="bib1.bibx16 bib1.bibx51" id="paren.46"/>.  It can be shown that by following a simple rule given in Eq. (<xref ref-type="disp-formula" rid="Ch1.E1"/>), the rows <inline-formula><mml:math id="M20" display="inline"><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> of an adjacency matrix <inline-formula><mml:math id="M21" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">A</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> can be reordered to convert it into a lower triangular matrix.

            <disp-formula id="Ch1.E1" content-type="numbered"><label>1</label><mml:math id="M22" display="block"><mml:mrow><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mtext> if </mml:mtext><mml:msub><mml:mi>a</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>→</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mi>j</mml:mi></mml:msub><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mtext>and</mml:mtext><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mi>i</mml:mi><mml:mo>&lt;</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:math></disp-formula>

          where <inline-formula><mml:math id="M23" display="inline"><mml:mo>→</mml:mo></mml:math></inline-formula> represents a causal relation between variables <inline-formula><mml:math id="M24" display="inline"><mml:mrow><mml:msub><mml:mi>a</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M25" display="inline"><mml:mrow><mml:msub><mml:mi>a</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d2e830">The following section discusses some methods to compare the similarity of two causal graphs.</p>
</sec>
<sec id="Ch1.S2.SS3">
  <label>2.3</label><title>Performance evaluation metrics</title>
      <p id="d2e841">To compare two graphs, i.e. adjacency matrices, say where one represents the reference truth and the other an estimate of truth respectively, we can create a one-to-one correspondence between their coefficients. Thus, with two possible values in corresponding cells of both the matrices, we have four classes of comparison outcomes. As an example, consider matrices (c) and (d) in Fig. <xref ref-type="fig" rid="F1"/> as estimated and true adjacency matrices, respectively. Now, if corresponding cells in the true adjacency matrix and the estimated adjacency matrix contain 1, then the cell in the estimated adjacency matrix is a class of True Positive or TP. Similarly if corresponding cells contain 0, the cell is under the True Negative category (TN). If the true and estimated cells contain 0 and 1 respectively, then the cell is termed a False Positive (FP). Similarly, a False Negative class (FN) implies a 1 in the true adjacency matrix and 0 in the estimated adjacency matrix, see Fig. <xref ref-type="fig" rid="F1"/>d) as an example. Using these classifications, various quantifications of adjacency matrix can be calculated (below). <list list-type="custom"><list-item><label>a.</label>
      <p id="d2e850"><italic>Recall</italic>. The primary aim of any predictor or causal discovery algorithm is to identify the drivers of a system. Thus we choose Recall (or True Positive Ratio) to evaluate the ability to accurately identify the correct links in the adjacency matrix <xref ref-type="bibr" rid="bib1.bibx57" id="paren.47"/>.<disp-formula id="Ch1.E2" content-type="numbered"><label>2</label><mml:math id="M26" display="block"><mml:mrow><mml:mtext>Recall</mml:mtext><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mtext>TP</mml:mtext><mml:mrow><mml:mtext>TP</mml:mtext><mml:mo>+</mml:mo><mml:mtext>FN</mml:mtext></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo>∈</mml:mo><mml:mo>[</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula></p></list-item><list-item><label>b.</label>
      <p id="d2e894"><italic>Matthews Correlation Coefficient (MCC)</italic>. While Recall is a good metric to evaluate performance in identifying the true positives detected by an algorithm, it does not consider the true negatives and false positives classes. As a result, Recall does not consider the imbalance in different classes of the confusion matrix. Such metrics can show a biased picture in cases of high class imbalance (TP <inline-formula><mml:math id="M27" display="inline"><mml:mo>≫</mml:mo></mml:math></inline-formula> TN or TP <inline-formula><mml:math id="M28" display="inline"><mml:mo>≪</mml:mo></mml:math></inline-formula> TN). MCC considers all the four classes (TP, TN, FP and FN) and thus is unaffected by any imbalance in the dataset <xref ref-type="bibr" rid="bib1.bibx12" id="paren.48"/>. Moreover, by considering both the ability to find true causal relations and eliminating false relations, MCC acts as a metric balancing the ability to find causal drivers and retaining a parsimonious representation.<disp-formula id="Ch1.E3" content-type="numbered"><label>3</label><mml:math id="M29" display="block"><mml:mrow><mml:mtext mathvariant="normal">MCC</mml:mtext><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mtext>TP</mml:mtext><mml:mo>⋅</mml:mo><mml:mtext>TN</mml:mtext><mml:mo>-</mml:mo><mml:mtext>FP</mml:mtext><mml:mo>⋅</mml:mo><mml:mtext>FN</mml:mtext></mml:mrow><mml:msqrt><mml:mrow><mml:mo>(</mml:mo><mml:mtext>TP</mml:mtext><mml:mo>+</mml:mo><mml:mtext>FP</mml:mtext><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mtext>TP</mml:mtext><mml:mo>+</mml:mo><mml:mtext>FN</mml:mtext><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mtext>TN</mml:mtext><mml:mo>+</mml:mo><mml:mtext>FP</mml:mtext><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mtext>TN</mml:mtext><mml:mo>+</mml:mo><mml:mtext>FN</mml:mtext><mml:mo>)</mml:mo></mml:mrow></mml:msqrt></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo>∈</mml:mo><mml:mo>[</mml:mo><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula></p></list-item><list-item><label>c.</label>
      <p id="d2e1015"><italic>False positive ratio (FPR)</italic>. False positive ratio is defined by the number of False Positives identified as a proportion to True Negatives in the adjacency matrix <xref ref-type="bibr" rid="bib1.bibx57" id="paren.49"/>.<disp-formula id="Ch1.E4" content-type="numbered"><label>4</label><mml:math id="M30" display="block"><mml:mrow><mml:mtext>FPR</mml:mtext><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mtext>FP</mml:mtext><mml:mrow><mml:mtext>FP</mml:mtext><mml:mo>+</mml:mo><mml:mtext>TN</mml:mtext></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mo>∈</mml:mo><mml:mo>[</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula></p></list-item></list></p>
</sec>
<sec id="Ch1.S2.SS4">
  <label>2.4</label><title>Synthetic model and data</title>
      <p id="d2e1067">We surveyed various models and their outputs with the following criteria in mind: (a) all data generated by the model are available for use, (b) all model forcing variables are available, (c) all the time-series are available at the same resolution at which they were generated or used, and (d) the model provides a global coverage of land area. With these criteria, we surveyed various models <xref ref-type="bibr" rid="bib1.bibx25 bib1.bibx67" id="paren.50"/> and selected the Global Land Data Assimilation model Version 2.0 (GLDAS) outputs <xref ref-type="bibr" rid="bib1.bibx43" id="paren.51"/>. GLDAS primarily models the natural processes of land surface and sub-surface, with no representation of human activities like irrigation, water resources management practices like dam and canal operations. Other models such as WaterGap, PCRGLOB-WB, H08 etc., simulate such processes, however, their publicly available datasets, did not meet our above criteria.</p>
      <p id="d2e1076">The GLDAS dataset is a family of outputs from three Land Surface Models, Catchment Land Surface Model <xref ref-type="bibr" rid="bib1.bibx40 bib1.bibx19" id="paren.52"/> (CLSM), NOAH-Land Surface Model and the Variable Infiltration Capacity model. We choose the output from the CLSM model. CLSM is based on the Mosaic Land Surface Model <xref ref-type="bibr" rid="bib1.bibx38" id="paren.53"/> and adopts its energy and canopy interception routines. The model does not have vertical layers and it adopts the TOPMODEL <xref ref-type="bibr" rid="bib1.bibx7" id="paren.54"/> framework to simulate sub-surface moisture, defined as the average amount of water required to saturate the catchment. The vertical distribution of soil moisture profile is derived within the model framework using the soil hydraulic parameters from the <xref ref-type="bibr" rid="bib1.bibx15" id="text.55"/> model. Snow is represented with a three-layer snow model described in <xref ref-type="bibr" rid="bib1.bibx45" id="text.56"/>.</p>
      <p id="d2e1094">To create an adjacency matrix from the generating equations of CLSM, we did a literature review of the model structure and equations (Appendix <xref ref-type="sec" rid="App1.Ch1.S1"/>), and created the True CLSM adjacency matrix (Fig. <xref ref-type="fig" rid="F2"/>a), following the definitions of a DAG and its corresponding adjacency matrix (explained in Sect. <xref ref-type="sec" rid="Ch1.S2.SS2"/>). Thus, the true adjacency matrix represents only the causal interactions of various state and flux variables, as represented by the model's generating equations, thereby rooting the causality in physical processes only. While a majority of the variables are generated with contemporaneous states, some variables, like storage terms (surface soil moisture storage, root-zone soil moisture, etc.), are dependent on their previous states. These are represented with lagged relations (Fig. <xref ref-type="fig" rid="F2"/>a). The True CLSM adjacency matrix acts as a reference truth for our analysis, representing the cause-effect relations in the generating equations. We extracted data from eight different Köppen-Geiger Climate zones (Fig. <xref ref-type="fig" rid="F2"/>b–f) to understand the performance of these methods in different climates. More details regarding the forcing, simulated variables and simulation period are described in Appendix <xref ref-type="sec" rid="App1.Ch1.S1"/>.</p>

<table-wrap id="T1" specific-use="star"><label>Table 1</label><caption><p id="d2e1114">Table summarising PCC and Causal Discovery algorithms considered for evaluation.</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="justify" colwidth="6cm"/>
     <oasis:colspec colnum="3" colname="col3" align="justify" colwidth="6cm"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">CD method</oasis:entry>
         <oasis:entry colname="col2" align="left">Modelling</oasis:entry>
         <oasis:entry colname="col3" align="left">Free parameters</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">PCC</oasis:entry>
         <oasis:entry colname="col2" align="left">Finds statistically significant co-variance of variables</oasis:entry>
         <oasis:entry colname="col3" align="left"><list list-type="bullet">
                      
                      <list-item>

      <p id="d2e1158">Significance threshold</p>
                      </list-item>
                    </list></oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">TCDF</oasis:entry>
         <oasis:entry colname="col2" align="left">Uses Convolutional Neural Networks with attention mechanism to find causal parents of each variable in time-series.</oasis:entry>
         <oasis:entry colname="col3" align="left"><list list-type="bullet">
                      
                      <list-item>

      <p id="d2e1180">Hidden layers</p>
                      </list-item>
                      <list-item>

      <p id="d2e1186">kernel size</p>
                      </list-item>
                      <list-item>

      <p id="d2e1192">number of epochs</p>
                      </list-item>
                      <list-item>

      <p id="d2e1198">dilation coefficient</p>
                      </list-item>
                      <list-item>

      <p id="d2e1205">significance</p>
                      </list-item>
                      <list-item>

      <p id="d2e1211">learning rate</p>
                      </list-item>
                    </list></oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">VARLiNGAM</oasis:entry>
         <oasis:entry colname="col2" align="left">Fits a SVAR model in two steps. First step uses classic VAR modelling of lagged causal relations, second step uses ICA to find causal ordering of contemporaneous causal links.</oasis:entry>
         <oasis:entry colname="col3" align="left"><list list-type="bullet">
                      
                      <list-item>

      <p id="d2e1233">Maximum lag to model</p>
                      </list-item>
                    </list></oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">PCMCI+</oasis:entry>
         <oasis:entry colname="col2" align="left">Explicitly finds a DAG using conditional independence tests in two steps. First step uses PC-algorithm to find skeleton of causally linked variables. Second step uses MCI to eliminate and direct edges in skeleton.</oasis:entry>
         <oasis:entry colname="col3" align="left"><list list-type="bullet">
                      
                      <list-item>

      <p id="d2e1255">Significance threshold, <inline-formula><mml:math id="M31" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">α</mml:mi><mml:mi mathvariant="normal">PC</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula></p>
                      </list-item>
                      <list-item>

      <p id="d2e1271">Maximum and minimum lag to model</p>
                      </list-item>
                      <list-item>

      <p id="d2e1277">Conditional independence test</p>
                      </list-item>
                    </list></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">DYNOTEARS</oasis:entry>
         <oasis:entry colname="col2" align="left">Fits a SVAR model in one step. Uses continuous optimization to reduce error of SVAR model and an acyclicity constraint</oasis:entry>
         <oasis:entry colname="col3" align="left"><list list-type="bullet">
                      
                      <list-item>

      <p id="d2e1299">Sparsity penalty terms, <inline-formula><mml:math id="M32" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mi mathvariant="normal">w</mml:mi></mml:msub><mml:mtext>&amp;</mml:mtext><mml:mspace linebreak="nobreak" width="0.33em"/><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mi mathvariant="normal">a</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula></p>
                      </list-item>
                      <list-item>

      <p id="d2e1323">Maximum cyclicity allowed, <inline-formula><mml:math id="M33" display="inline"><mml:mrow><mml:mi>h</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold">W</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></p>
                      </list-item>
                      <list-item>

      <p id="d2e1342">Coefficient threshold, <inline-formula><mml:math id="M34" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">W</mml:mi><mml:mi mathvariant="normal">threshold</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula></p>
                      </list-item>
                      <list-item>

      <p id="d2e1358">Maximum lag to model</p>
                      </list-item>
                    </list></oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>


</sec>
<sec id="Ch1.S2.SS5">
  <label>2.5</label><title>Methods: Causal Discovery algorithms</title>
      <p id="d2e1378">Table <xref ref-type="table" rid="T1"/> summarizes the assumptions, modelling framework and free parameters of the various CD methods evaluated here. As mentioned above, each of these methods can be applied to a multivariate time-series dataset to unravel drivers of variables with multiple confounding, self causation, and contemporaneous and lagged causal relations.</p>
      <p id="d2e1383">These methods adopt theoretically different modelling frameworks, for example, TCDF uses traditional Neural Networks to model time series datasets and uses GC to interpret the attention scores to unravel causal relations in the data. In turn, both VARLiNGAM and DYNOTEARS use traditional Structural Vector Auto-regressive model (SVAR) modelling to find the causal relations in the data. However, they implement different strategies to find the coefficients of the SVAR model. PCMCI+, on the other hand, uses a host of conditional independence testing to find causal drivers of a variable.</p>
      <p id="d2e1386">For the section below, we consider having time-series data for “<inline-formula><mml:math id="M35" display="inline"><mml:mi>d</mml:mi></mml:math></inline-formula>” variables in <inline-formula><mml:math id="M36" display="inline"><mml:mrow><mml:mi mathvariant="bold">X</mml:mi><mml:mo>=</mml:mo><mml:mo mathvariant="italic">{</mml:mo><mml:msubsup><mml:mi mathvariant="bold">x</mml:mi><mml:mi>t</mml:mi><mml:mi>k</mml:mi></mml:msubsup><mml:msub><mml:mo mathvariant="italic">}</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>∈</mml:mo><mml:mo>(</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:mi>T</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> where <inline-formula><mml:math id="M37" display="inline"><mml:mrow><mml:mi>k</mml:mi><mml:mo>∈</mml:mo><mml:mo>(</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:mi>d</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> for <inline-formula><mml:math id="M38" display="inline"><mml:mrow><mml:mo mathvariant="italic">{</mml:mo><mml:msubsup><mml:mi mathvariant="bold">x</mml:mi><mml:mi>t</mml:mi><mml:mi>k</mml:mi></mml:msubsup><mml:mo mathvariant="italic">}</mml:mo><mml:mo>∈</mml:mo><mml:msup><mml:mi mathvariant="double-struck">R</mml:mi><mml:mi>d</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>.</p>
<sec id="Ch1.S2.SS5.SSS1">
  <label>2.5.1</label><title>Granger causality based: Temporal Causal Discovery Framework</title>
      <p id="d2e1496">Introduced by <xref ref-type="bibr" rid="bib1.bibx47" id="text.57"/>, Temporal Causal Discovery Framework or TCDF identifies causal drivers of variables by combining deep neural network based modelling with a GC-inspired interpretation of model weights. TCDF can be divided into two broad steps. The first step involves identifying the potential causes of each variable by training deep neural networks. The second step uses the structure of the trained model to determine when a discovered causal driver has its effect (lagged and/or instantaneous).</p>
      <p id="d2e1502">The first step forms the major analysis of TCDF which can be broadly divided into three parts, where for each variable in the data it begins by (a) training a deep neural network model – a Convolutional Neural Network (CNN) to predict it, (b) it uses the <italic>attention</italic> of the trained model to identify the potential causes. The attention mechanism of a CNN model helps it to focus on certain variables when predicting a target variable, and (c) to verify the potential causes as true causes, it conducts a feature importance step by randomly permuting the values of a potential cause and predicting the target variable. Thus the first step ends by identifying the (likely) true causes of a variable and its corresponding trained CNN model.</p>
      <p id="d2e1508">In the second step, TCDF determines the temporal order of relation between the identified causes and the target variable. To do this TCDF simply interprets the kernel weights of the trained CNN model. Where TCDF traverses from the output layer (target variable) to the input layer (discovered cause), taking the path with the highest kernel weights. The position where it meets the input layer is decided as the order of the lagged relation. Both steps are repeated for the remaining variables in the system to identify all causal relations in the system. We describe the algorithm below, for a detailed description we suggest reading <xref ref-type="bibr" rid="bib1.bibx47" id="text.58"/>.</p>
      <p id="d2e1514">TCDF begins by training an independent CNN model for each variable. Thus, for each (target) variable <inline-formula><mml:math id="M39" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi mathvariant="bold">j</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> (for <inline-formula><mml:math id="M40" display="inline"><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:mi>d</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, it uses an independent CNN, <inline-formula><mml:math id="M41" display="inline"><mml:mrow><mml:msub><mml:mi>N</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, to model the patterns in its time-series. This network uses all the other variables and their lags and past values of <inline-formula><mml:math id="M42" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>j</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>. Thus network <inline-formula><mml:math id="M43" display="inline"><mml:mrow><mml:msub><mml:mi>N</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is responsible for modelling <inline-formula><mml:math id="M44" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>j</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> and its causes. Inside <inline-formula><mml:math id="M45" display="inline"><mml:mrow><mml:msub><mml:mi>N</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, channels <inline-formula><mml:math id="M46" display="inline"><mml:mrow><mml:msub><mml:mi>n</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> (for <inline-formula><mml:math id="M47" display="inline"><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:mi>d</mml:mi></mml:mrow></mml:math></inline-formula>), exist, which are responsible for modelling the relation from a variable <inline-formula><mml:math id="M48" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> to <inline-formula><mml:math id="M49" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>j</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>. Note that <inline-formula><mml:math id="M50" display="inline"><mml:mrow><mml:msub><mml:mi>n</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> models self causation. Next, to identify potential causes of <inline-formula><mml:math id="M51" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>j</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> it uses a GC-inspired approach. TCDF considers a variable <inline-formula><mml:math id="M52" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> as a potential cause if it improves the prediction in <inline-formula><mml:math id="M53" display="inline"><mml:mrow><mml:msub><mml:mi>N</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> by reducing the model loss. To identify which variables the <inline-formula><mml:math id="M54" display="inline"><mml:mrow><mml:msub><mml:mi>N</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> considers important, TCDF uses the attention mechanism (attention vector <inline-formula><mml:math id="M55" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">a</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>  Eq. <xref ref-type="disp-formula" rid="Ch1.E5"/>) associated with it. These attention vectors are <inline-formula><mml:math id="M56" display="inline"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>×</mml:mo><mml:mi>N</mml:mi></mml:mrow></mml:math></inline-formula> and their coefficients tell how much attention was paid by <inline-formula><mml:math id="M57" display="inline"><mml:mrow><mml:msub><mml:mi>N</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, to a certain time-series when predicting <inline-formula><mml:math id="M58" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>j</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>.

              <disp-formula id="Ch1.E5" content-type="numbered"><label>5</label><mml:math id="M59" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">a</mml:mi><mml:mi>j</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mo>[</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mi>j</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mi>N</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M60" display="inline"><mml:mrow><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>∈</mml:mo><mml:msub><mml:mi mathvariant="bold">a</mml:mi><mml:mi mathvariant="bold">j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is called an attention score, which represents the attention given to <inline-formula><mml:math id="M61" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> by <inline-formula><mml:math id="M62" display="inline"><mml:mrow><mml:msub><mml:mi>N</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> when predicting <inline-formula><mml:math id="M63" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>j</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d2e1889">The more attention a variable receives, the more likely it is to be considered a causal influence. Since attention scores take continuous values between <inline-formula><mml:math id="M64" display="inline"><mml:mrow><mml:mo>[</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>, TCDF applies a threshold to convert them into binary decisions (causal or non-causal) attention. Thus, if <inline-formula><mml:math id="M65" display="inline"><mml:mrow><mml:msub><mml:mi>a</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> exceeds a certain <italic>threshold</italic>, <inline-formula><mml:math id="M66" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> is considered a potential cause (<inline-formula><mml:math id="M67" display="inline"><mml:mrow><mml:msub><mml:mi>P</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>) of the <inline-formula><mml:math id="M68" display="inline"><mml:mi>j</mml:mi></mml:math></inline-formula>th variable. Finally, to verify if the identified causes are indeed true causes it uses a feature importance method called Permutation Importance Validation Method, we briefly define below.</p>
      <p id="d2e1957">For each potential cause <inline-formula><mml:math id="M69" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>∈</mml:mo><mml:msub><mml:mtext>P</mml:mtext><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, a new dataset is created by intervening into the system. This is done by randomly permuting the values of <inline-formula><mml:math id="M70" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> to destroy their chronological ordering while keeping the values of other variables the same. The trained CNN model in the previous step is run again using the intervened data and the model loss is compared to the previous scenario where no intervention (via permutation) was done. If the loss is <italic>significantly</italic> higher after disturbing the values of the potential cause, it is considered to be a true cause <xref ref-type="bibr" rid="bib1.bibx47" id="paren.59"/>.</p>
      <p id="d2e1995">The final step involves determining the temporal order of causal relations between the identified causes in <inline-formula><mml:math id="M71" display="inline"><mml:mrow><mml:msub><mml:mi>P</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M72" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>j</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>. For this TCDF simply uses the kernel of the trained CNN model. The kernel is a convolution operator between <inline-formula><mml:math id="M73" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> (the input layer) and its effect <inline-formula><mml:math id="M74" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mi>j</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> (the output layer). Specifically, the kernel is a weight matrix of size <inline-formula><mml:math id="M75" display="inline"><mml:mrow><mml:mi>N</mml:mi><mml:mo>×</mml:mo><mml:mi>K</mml:mi></mml:mrow></mml:math></inline-formula>, where <inline-formula><mml:math id="M76" display="inline"><mml:mi>K</mml:mi></mml:math></inline-formula> is the kernel size. These <inline-formula><mml:math id="M77" display="inline"><mml:mi>K</mml:mi></mml:math></inline-formula> weights represent the influence of respective delays on the output. Thus by following the path from the <inline-formula><mml:math id="M78" display="inline"><mml:mrow><mml:msup><mml:mi>X</mml:mi><mml:mi>j</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> to <inline-formula><mml:math id="M79" display="inline"><mml:mrow><mml:msup><mml:mi>X</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> via the highest weights (coefficients) in the kernel matrix, the position in <inline-formula><mml:math id="M80" display="inline"><mml:mrow><mml:msup><mml:mi>X</mml:mi><mml:mi>i</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> can be identified which has the maximum influence on <inline-formula><mml:math id="M81" display="inline"><mml:mrow><mml:msup><mml:mi>X</mml:mi><mml:mi>j</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>. This position is considered to be the lag in the cause-effect relation between <inline-formula><mml:math id="M82" display="inline"><mml:mrow><mml:msup><mml:mi>X</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>→</mml:mo><mml:msup><mml:mi>X</mml:mi><mml:mi>j</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>. As mentioned earlier, this entire process is repeated for all the variables in the data to identify causal relations in the system.</p>
      <p id="d2e2132">As with any deep learning method, TCDF has several hyper-parameters. It requires tuning of a number of hyper-parameters, number of hidden layers, kernel size, number of epochs, learning rate, dilation coefficient and significance <xref ref-type="bibr" rid="bib1.bibx47 bib1.bibx3" id="paren.60"/>.</p>
</sec>
<sec id="Ch1.S2.SS5.SSS2">
  <label>2.5.2</label><title>Vector Auto-regressive modelling using Non-Gaussian noise: VARLiNGAM</title>
      <p id="d2e2147">VARLiNGAM, introduced by <xref ref-type="bibr" rid="bib1.bibx34" id="text.61"/>, seeks to model the causal relations in time series data with an SVAR model. To find the model coefficients, it uses a classic least squares solution and exploits the lower triangular ordering of the adjacency matrix. Similar to DYNOTEARS, it considers the coefficients matrix as composed of a contemporaneous adjacency matrix and a lagged adjacency matrix. It starts by calculating an initial estimate of the lagged adjacency matrix, this captures the lagged relations in the data. The estimated lagged effects are then subtracted from the original data to get the residuals. Now these residuals are assumed to contain only contemporaneous relations. To find the contemporaneous causal relations in the residuals, it searches for an ordering of the variables such that the resulting matrix is lower triangular, thus representing a DAG. Finally, it uses the contemporaneous adjacency matrix to get the final estimate of the lagged adjacency matrix. Specifically it seeks to model the data with an SVAR model of p lags as:

                  <disp-formula id="Ch1.E6" content-type="numbered"><label>6</label><mml:math id="M83" display="block"><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi mathvariant="italic">τ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow><mml:mi>p</mml:mi></mml:munderover><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold-italic">η</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M84" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is a <inline-formula><mml:math id="M85" display="inline"><mml:mrow><mml:mi>d</mml:mi><mml:mo>×</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:math></inline-formula> matrix containing the time series data for all d variables. <inline-formula><mml:math id="M86" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is a <inline-formula><mml:math id="M87" display="inline"><mml:mrow><mml:mi>d</mml:mi><mml:mo>×</mml:mo><mml:mi>d</mml:mi></mml:mrow></mml:math></inline-formula> matrix of the causal relations at lag <inline-formula><mml:math id="M88" display="inline"><mml:mi>k</mml:mi></mml:math></inline-formula>. <inline-formula><mml:math id="M89" display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold-italic">η</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is a vector of errors obtained from model inaccuracy. To estimate the coefficients of <inline-formula><mml:math id="M90" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, it breaks down the matrix into a contemporaneous matrix <inline-formula><mml:math id="M91" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>, which contains the instantaneous relations. While <inline-formula><mml:math id="M92" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> for <inline-formula><mml:math id="M93" display="inline"><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:mi>p</mml:mi></mml:mrow></mml:math></inline-formula>, contains the lagged relations. It begins by calculating an initial estimate, <inline-formula><mml:math id="M94" display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">M</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, of the lagged relations <inline-formula><mml:math id="M95" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>k</mml:mi><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.33em"/><mml:mi>k</mml:mi><mml:mo>&gt;</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula>, using an ordinary least squares solution. Then it removes the effect of lagged relations from the data to get the residuals as:

                  <disp-formula id="Ch1.E7" content-type="numbered"><label>7</label><mml:math id="M96" display="block"><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">u</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mi>t</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi>p</mml:mi></mml:munderover><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">M</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>k</mml:mi></mml:msub><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi>k</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

            these residuals are assumed to contain only contemporaneous relations. To unravel these relationships it uses LiNGAM analysis.</p>
      <p id="d2e2419">The Linear Non-Gaussian Structural Equation Model or LiNGAM analysis was introduced by <xref ref-type="bibr" rid="bib1.bibx73" id="text.62"/>. LiNGAM allows modelling of causal relations in a vector regressive model (i.e. a SVAR model with no time delays). LiNGAM assumes the causal relationships can be represented via an acyclic adjacency matrix (i.e. a DAG) and that the error terms are mutually independent and non-Gaussian. It exploits the non-Gaussianity, by using Independent Component Analysis (ICA) to find the causal ordering of the contemporaneous relationships <xref ref-type="bibr" rid="bib1.bibx33" id="paren.63"/>. To find the coefficients matrix, it searches for an ordering in the columns of the matrix such that the resulting matrix is lower triangular and hence equivalent to a DAG representing causal relations. Note that for a small number of variables this can be done by following the steps in Eq. (<xref ref-type="disp-formula" rid="Ch1.E1"/>). However, for a large number of variables this becomes computationally expensive. LiNGAM finds this ordering by posing the problem as a classic ICA problem <xref ref-type="bibr" rid="bib1.bibx33" id="paren.64"/>. Consider Eq. (<xref ref-type="disp-formula" rid="Ch1.E7"/>) written as:

                  <disp-formula specific-use="align" content-type="numbered"><mml:math id="M97" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E8"><mml:mtd><mml:mtext>8</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mover accent="true"><mml:mi mathvariant="bold">u</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">u</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>+</mml:mo><mml:mi mathvariant="bold">e</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E9"><mml:mtd><mml:mtext>9</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mover accent="true"><mml:mi mathvariant="bold">u</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mo>=</mml:mo><mml:mi mathvariant="bold">Qe</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

            where <inline-formula><mml:math id="M98" display="inline"><mml:mrow><mml:mi mathvariant="bold">Q</mml:mi><mml:mo>=</mml:mo><mml:mo>(</mml:mo><mml:mi mathvariant="bold">I</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:msup><mml:mo>)</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:msup><mml:mi mathvariant="bold">W</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d2e2535">The aim is to find a permutation of the matrix <inline-formula><mml:math id="M99" display="inline"><mml:mi mathvariant="bold">W</mml:mi></mml:math></inline-formula> such that it has ones on its diagonals. So that <inline-formula><mml:math id="M100" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> = <inline-formula><mml:math id="M101" display="inline"><mml:mi mathvariant="bold">I</mml:mi></mml:math></inline-formula> - <inline-formula><mml:math id="M102" display="inline"><mml:mi mathvariant="bold">W</mml:mi></mml:math></inline-formula> yields a matrix with zeros on its diagonals, which is a requirement of an adjacency matrix representing a DAG. To do this, ICA yields a raw estimate of <inline-formula><mml:math id="M103" display="inline"><mml:mover accent="true"><mml:mi mathvariant="bold">W</mml:mi><mml:mo mathvariant="normal" stretchy="false">̃</mml:mo></mml:mover></mml:math></inline-formula>, which is then decomposed as <inline-formula><mml:math id="M104" display="inline"><mml:mover accent="true"><mml:mi mathvariant="bold">W</mml:mi><mml:mo stretchy="false" mathvariant="normal">̃</mml:mo></mml:mover></mml:math></inline-formula> = <inline-formula><mml:math id="M105" display="inline"><mml:mi mathvariant="bold">PDW</mml:mi></mml:math></inline-formula> where <inline-formula><mml:math id="M106" display="inline"><mml:mi mathvariant="bold">D</mml:mi></mml:math></inline-formula> is a diagonal matrix and <inline-formula><mml:math id="M107" display="inline"><mml:mi mathvariant="bold">P</mml:mi></mml:math></inline-formula> is the particular permutation matrix which yields ones on the diagonals of <inline-formula><mml:math id="M108" display="inline"><mml:mi mathvariant="bold">DW</mml:mi></mml:math></inline-formula>. Thus we obtain the estimate for the contemporaneous matrix <inline-formula><mml:math id="M109" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>. The initial least squares estimate of the lagged adjacency matrix, <inline-formula><mml:math id="M110" display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">M</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, is biased as it did not consider the effect of contemporaneous adjacencies. This is corrected once <inline-formula><mml:math id="M111" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> is estimated, which is used to update the estimates of the lagged adjacencies using Eq. (<xref ref-type="disp-formula" rid="Ch1.E10"/>).

                  <disp-formula id="Ch1.E10" content-type="numbered"><label>10</label><mml:math id="M112" display="block"><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">B</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>k</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mo>(</mml:mo><mml:mi mathvariant="bold">I</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mo>)</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold">M</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>k</mml:mi></mml:msub><mml:mtext> for </mml:mtext><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:mi>p</mml:mi></mml:mrow></mml:math></disp-formula>

            Thus VARLiNGAM has one free parameter, the maximum lag parameter, to control the application of the algorithm.</p>
</sec>
<sec id="Ch1.S2.SS5.SSS3">
  <label>2.5.3</label><title>Constraint-based causal discovery: PCMCI+</title>
      <p id="d2e2721">The constraint based PCMCI+ algorithm <xref ref-type="bibr" rid="bib1.bibx62" id="paren.65"/> uses conditional independence (CI) tests to find causal parents (drivers) of variables in multi-variate time-series data. It achieves this in two steps, (i) skeleton identification phase using a modified form of PC-alg (<inline-formula><mml:math id="M113" display="inline"><mml:mrow><mml:msub><mml:mtext>PC</mml:mtext><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>), to model lagged relations, and (ii) full skeleton phase using Momentary Conditional Independence tests, to discover contemporaneous relations.</p>
      <p id="d2e2738">In the first phase PCMCI+ creates a skeleton, i.e. an undirected graph, of all plausible lagged relations. Thus a graph <inline-formula><mml:math id="M114" display="inline"><mml:mi mathvariant="script">G</mml:mi></mml:math></inline-formula> is initialized with all possible edges between pairs of contemporaneous and lagged variables. Then to remove the non-causal relations (edges) it uses CI testing. It uses the <inline-formula><mml:math id="M115" display="inline"><mml:mrow><mml:msub><mml:mtext>PC</mml:mtext><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> algorithm to reduce the number of CI tests required. Thus it ends with a partially directed graph representing lagged causal relations.</p>
      <p id="d2e2759">The second phase is designed to identify contemporaneous and self causation. It begins by re-initializing the graph <inline-formula><mml:math id="M116" display="inline"><mml:mi mathvariant="script">G</mml:mi></mml:math></inline-formula> obtained at the end of the first phase. Once again CI tests are used to remove non-causal edges. Here it uses Momentary Conditional Independence tests, which unlike <inline-formula><mml:math id="M117" display="inline"><mml:mrow><mml:msub><mml:mtext>PC</mml:mtext><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>, also considers contemporaneous and self causation <xref ref-type="bibr" rid="bib1.bibx64" id="paren.66"/>. Additionally, collider orientation and rule orientation phase are used to orient any un-oriented contemporaneous or ambiguous links. Thus, it ends with a DAG likely representing the underlying causal relations in the data. We briefly explain the algorithm below.</p>
      <p id="d2e2783">The skeleton identification phase begins by creating a skeleton of all possible lagged relations. Here it starts with a fully connected undirected graph, <inline-formula><mml:math id="M118" display="inline"><mml:mi mathvariant="script">G</mml:mi></mml:math></inline-formula>, with edges between all pairs of contemporaneous variables and their lagged versions (up-to the maximum anticipated lag, p). Such that for a particular variable <inline-formula><mml:math id="M119" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, all possible (lagged) parents are considered. Let the set of plausible parents for <inline-formula><mml:math id="M120" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> be <inline-formula><mml:math id="M121" display="inline"><mml:mrow><mml:mover accent="true"><mml:mtext>Pa</mml:mtext><mml:mo mathvariant="normal" stretchy="true">^</mml:mo></mml:mover><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:msubsup><mml:mi mathvariant="bold">X</mml:mi><mml:mi mathvariant="bold">t</mml:mi><mml:mo>-</mml:mo></mml:msubsup><mml:mo>∖</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, where <inline-formula><mml:math id="M122" display="inline"><mml:mrow><mml:msubsup><mml:mi mathvariant="bold">X</mml:mi><mml:mi mathvariant="bold">t</mml:mi><mml:mo>-</mml:mo></mml:msubsup><mml:mo>=</mml:mo><mml:mo mathvariant="italic">{</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi>k</mml:mi></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow><mml:mi>k</mml:mi></mml:msubsup><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi>p</mml:mi></mml:mrow><mml:mi>k</mml:mi></mml:msubsup><mml:mo mathvariant="italic">}</mml:mo><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mo>∀</mml:mo><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mi>k</mml:mi><mml:mo>∈</mml:mo><mml:mo>(</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:mi>d</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d2e2949">Now, it tests for CI between <inline-formula><mml:math id="M123" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> and one of its plausible parents from <inline-formula><mml:math id="M124" display="inline"><mml:mrow><mml:mover accent="true"><mml:mtext>Pa</mml:mtext><mml:mo stretchy="true" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, say <inline-formula><mml:math id="M125" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, by conditioning them against the remaining parents, if the hypothesis, Eq. (<xref ref-type="disp-formula" rid="Ch1.E11"/>), is not rejected at a desired significance level <inline-formula><mml:math id="M126" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">α</mml:mi><mml:mi mathvariant="normal">PC</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, then the variable is removed from the set of plausible parents <inline-formula><mml:math id="M127" display="inline"><mml:mrow><mml:mover accent="true"><mml:mtext>Pa</mml:mtext><mml:mo mathvariant="normal" stretchy="true">^</mml:mo></mml:mover><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> (consequently the edge is removed from <inline-formula><mml:math id="M128" display="inline"><mml:mi mathvariant="script">G</mml:mi></mml:math></inline-formula>).

              <disp-formula id="Ch1.E11" content-type="numbered"><label>11</label><mml:math id="M129" display="block"><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>⟂</mml:mo><mml:mspace linebreak="nobreak" width="-0.125em"/><mml:mspace width="-0.125em" linebreak="nobreak"/><mml:mspace width="-0.125em" linebreak="nobreak"/><mml:mo>⟂</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mi>i</mml:mi></mml:msubsup><mml:mo>∣</mml:mo><mml:mtext>S</mml:mtext><mml:mtext> where </mml:mtext><mml:mspace linebreak="nobreak" width="0.33em"/><mml:mtext>S</mml:mtext><mml:mo>⊆</mml:mo><mml:mover accent="true"><mml:mtext>Pa</mml:mtext><mml:mo stretchy="true" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo><mml:mo>∖</mml:mo><mml:mo mathvariant="italic">{</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mi>i</mml:mi></mml:msubsup><mml:mo mathvariant="italic">}</mml:mo><mml:mtext> and </mml:mtext></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>|</mml:mo><mml:mtext>S</mml:mtext><mml:mo>|</mml:mo><mml:mo>=</mml:mo><mml:mi mathvariant="italic">τ</mml:mi><mml:mspace linebreak="nobreak" width="0.33em"/><mml:mspace linebreak="nobreak" width="0.33em"/><mml:mtext>for</mml:mtext><mml:mspace linebreak="nobreak" width="0.33em"/><mml:mi mathvariant="italic">τ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:mi>p</mml:mi></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

            For a given size of parent set, say <inline-formula><mml:math id="M130" display="inline"><mml:mi>L</mml:mi></mml:math></inline-formula>, a high number of combinations for the conditioning set S can be generated (<inline-formula><mml:math id="M131" display="inline"><mml:mrow><mml:msup><mml:mn mathvariant="normal">2</mml:mn><mml:mi>L</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>), which is also the problem faced by TE <xref ref-type="bibr" rid="bib1.bibx63" id="paren.67"/>. This makes the task of pruning edges with CI tests computationally expensive, while a large conditioning set reduces the strength of the CI tests <xref ref-type="bibr" rid="bib1.bibx65" id="paren.68"/>. As mentioned earlier, PCMCI+ uses a modified form of the PC-alg, <inline-formula><mml:math id="M132" display="inline"><mml:mrow><mml:msub><mml:mtext>PC</mml:mtext><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>, to reduce the number of CI tests required. The algorithm starts with the smallest possible conditioning set (<inline-formula><mml:math id="M133" display="inline"><mml:mrow><mml:mi mathvariant="italic">τ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:math></inline-formula>, where <inline-formula><mml:math id="M134" display="inline"><mml:mrow><mml:mo>|</mml:mo><mml:mtext>S</mml:mtext><mml:mo>|</mml:mo><mml:mo>=</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow></mml:math></inline-formula>) and iteratively increases its size until the parents in <inline-formula><mml:math id="M135" display="inline"><mml:mrow><mml:mtext>Pa</mml:mtext><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> are exhausted in the conditioning set, i.e. all possible parents of <inline-formula><mml:math id="M136" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> form the conditioning set S (<inline-formula><mml:math id="M137" display="inline"><mml:mrow><mml:mtext>S</mml:mtext><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mtext>Pa</mml:mtext><mml:mo mathvariant="normal" stretchy="true">^</mml:mo></mml:mover><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>). Thus by prioritizing smaller conditioning sets in the CI tests, it reduces the size of <inline-formula><mml:math id="M138" display="inline"><mml:mrow><mml:mtext>Pa</mml:mtext><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and also preserves the strength of CI tests with smaller size of the conditioning set S <xref ref-type="bibr" rid="bib1.bibx63" id="paren.69"/>.</p>
      <p id="d2e3315">Now, within each <inline-formula><mml:math id="M139" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula>th iteration, the conditioning set can have different variables and their combinations as the conditioning set. This can quickly lead to an extremely high number of CI tests to be performed. For example, if <inline-formula><mml:math id="M140" display="inline"><mml:mrow><mml:mo>|</mml:mo><mml:mtext>Pa</mml:mtext><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo><mml:mo>|</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">8</mml:mn></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M141" display="inline"><mml:mrow><mml:mi mathvariant="italic">τ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">3</mml:mn></mml:mrow></mml:math></inline-formula>, the number of CI tests performed would be <inline-formula><mml:math id="M142" display="inline"><mml:mrow><mml:msup><mml:mi/><mml:mn mathvariant="normal">8</mml:mn></mml:msup><mml:msub><mml:mi mathvariant="normal">C</mml:mi><mml:mn mathvariant="normal">3</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>. To avoid this, the algorithm tests only against the strongest <inline-formula><mml:math id="M143" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> combinations of the conditional set. Therefore for <inline-formula><mml:math id="M144" display="inline"><mml:mrow><mml:mi mathvariant="italic">τ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:math></inline-formula>, the conditioning set is empty and the CI test is equivalent to a correlation analysis. The algorithm sorts the parent set <inline-formula><mml:math id="M145" display="inline"><mml:mrow><mml:mover accent="true"><mml:mtext>Pa</mml:mtext><mml:mo stretchy="true" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> according to the strength of correlation in the previous step. For <inline-formula><mml:math id="M146" display="inline"><mml:mrow><mml:mi mathvariant="italic">τ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:math></inline-formula>, the CI test is equivalent to a partial correlation analysis, and so on. Where it tests for CI using only the first (strongest correlated) variable from <inline-formula><mml:math id="M147" display="inline"><mml:mrow><mml:mover accent="true"><mml:mtext>Pa</mml:mtext><mml:mo stretchy="true" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> in the conditioning set S.</p>
      <p id="d2e3455">To deal with auto-correlation in the time series  and find the contemporaneous links, authors use the Momentary Conditional Information test (MCI) <xref ref-type="bibr" rid="bib1.bibx62" id="paren.70"/>. The main difference between <inline-formula><mml:math id="M148" display="inline"><mml:mrow><mml:msub><mml:mtext>PC</mml:mtext><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> CI test and MCI test is that the latter considers the causal parents of the variables undergoing the CI test in the conditioning set itself (Eq. <xref ref-type="disp-formula" rid="Ch1.E12"/>) <xref ref-type="bibr" rid="bib1.bibx64" id="paren.71"/>. Thus in the second step, the graph <inline-formula><mml:math id="M149" display="inline"><mml:mi mathvariant="script">G</mml:mi></mml:math></inline-formula> is re-initialised by adding all the contemporaneous links <inline-formula><mml:math id="M150" display="inline"><mml:mrow><mml:mover accent="true"><mml:mi>A</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> possible. Now, similar to <inline-formula><mml:math id="M151" display="inline"><mml:mrow><mml:msub><mml:mtext>PC</mml:mtext><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>, pruning and orientation of edges follows using the MCI test (Eq. <xref ref-type="disp-formula" rid="Ch1.E13"/>).

                  <disp-formula specific-use="align" content-type="numbered"><mml:math id="M152" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E12"><mml:mtd><mml:mtext>12</mml:mtext></mml:mtd><mml:mtd><mml:mstyle class="stylechange" displaystyle="true"/></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>⟂</mml:mo><mml:mspace width="-0.125em" linebreak="nobreak"/><mml:mspace linebreak="nobreak" width="-0.125em"/><mml:mspace width="-0.125em" linebreak="nobreak"/><mml:mo>⟂</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mi>i</mml:mi></mml:msubsup><mml:mo>∣</mml:mo><mml:mtext>Pa</mml:mtext><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo><mml:mo>∖</mml:mo><mml:mo mathvariant="italic">{</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mi>i</mml:mi></mml:msubsup><mml:mo mathvariant="italic">}</mml:mo><mml:mo>,</mml:mo><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mtext>Pa</mml:mtext><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mi>i</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E13"><mml:mtd><mml:mtext>13</mml:mtext></mml:mtd><mml:mtd><mml:mstyle class="stylechange" displaystyle="true"/></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>⟂</mml:mo><mml:mspace linebreak="nobreak" width="-0.125em"/><mml:mspace width="-0.125em" linebreak="nobreak"/><mml:mspace width="-0.125em" linebreak="nobreak"/><mml:mo>⟂</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mi>i</mml:mi></mml:msubsup><mml:mo>∣</mml:mo><mml:mtext>S</mml:mtext><mml:mo>,</mml:mo><mml:mspace width="0.33em" linebreak="nobreak"/><mml:msubsup><mml:mtext>B</mml:mtext><mml:mi>t</mml:mi><mml:mo>-</mml:mo></mml:msubsup><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo><mml:mo>∖</mml:mo><mml:mo mathvariant="italic">{</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mi>i</mml:mi></mml:msubsup><mml:mo mathvariant="italic">}</mml:mo><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.33em"/><mml:msubsup><mml:mtext>B</mml:mtext><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mo>-</mml:mo></mml:msubsup><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mi>i</mml:mi></mml:msubsup><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mtr><mml:mtd><mml:mstyle displaystyle="true" class="stylechange"/></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mtext>where</mml:mtext><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mtext>S</mml:mtext><mml:mo>⊆</mml:mo><mml:mover accent="true"><mml:mi>A</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo><mml:mo>∖</mml:mo><mml:mo mathvariant="italic">{</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mi>i</mml:mi></mml:msubsup><mml:mo mathvariant="italic">}</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mstyle displaystyle="true" class="stylechange"/></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mtext>and </mml:mtext><mml:mspace linebreak="nobreak" width="0.33em"/><mml:mo>|</mml:mo><mml:mtext>S</mml:mtext><mml:mo>|</mml:mo><mml:mo>=</mml:mo><mml:mi mathvariant="italic">τ</mml:mi><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mtext>for</mml:mtext><mml:mspace linebreak="nobreak" width="0.33em"/><mml:mi mathvariant="italic">τ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:mi>p</mml:mi></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

            <inline-formula><mml:math id="M153" display="inline"><mml:mrow><mml:msubsup><mml:mtext>B</mml:mtext><mml:mi>t</mml:mi><mml:mo>-</mml:mo></mml:msubsup><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M154" display="inline"><mml:mrow><mml:msubsup><mml:mtext>B</mml:mtext><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mo>-</mml:mo></mml:msubsup><mml:mo>(</mml:mo><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mi>i</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> are the causal parents of <inline-formula><mml:math id="M155" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M156" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="italic">τ</mml:mi></mml:mrow><mml:mi>i</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> respectively, identified at the end of <inline-formula><mml:math id="M157" display="inline"><mml:mrow><mml:msub><mml:mtext>PC</mml:mtext><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>. S is a subset of contemporaneous adjacencies of <inline-formula><mml:math id="M158" display="inline"><mml:mrow><mml:msubsup><mml:mi>X</mml:mi><mml:mi>t</mml:mi><mml:mi>j</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>. Finally, any undirected contemporaneous edges in <inline-formula><mml:math id="M159" display="inline"><mml:mi mathvariant="script">G</mml:mi></mml:math></inline-formula> are oriented using PC-alg's orientation rules <xref ref-type="bibr" rid="bib1.bibx74" id="paren.72"/>. Amongst the CD methods discussed here, PCMCI+ offers the highest flexibility to adapt the algorithm for discovery in linear and non-linear time-series datasets. Thus it has several free parameters, starting with the significance level of the CI tests in both the <inline-formula><mml:math id="M160" display="inline"><mml:mrow><mml:msub><mml:mtext>PC</mml:mtext><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> and MCI tests (<inline-formula><mml:math id="M161" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">α</mml:mi><mml:mi mathvariant="normal">PC</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>), second it allows the use of any linear or non-linear (user defined) test for independence in both the stages (<inline-formula><mml:math id="M162" display="inline"><mml:mrow><mml:msub><mml:mtext>PC</mml:mtext><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> and MCI). Third, the maximum and minimum lag up-to which the lagged relations are anticipated.</p>
</sec>
<sec id="Ch1.S2.SS5.SSS4">
  <label>2.5.4</label><title>Score-based structure learning: DYNOTEARS</title>
      <p id="d2e3987">Introduced by <xref ref-type="bibr" rid="bib1.bibx50" id="text.73"/>, DYNOTEARS seeks to find causal relations in time-series data by combining classic SVAR modelling with the acyclic property of DAGs. It models the relationships among the variables with an SVAR model and estimates its coefficients by minimizing a loss function. To ensure these coefficients represent only causal relations, DYNOTEARS considers the coefficient matrix as an adjacency matrix. Since an adjacency matrix has to be acyclic by definition, it exploits this by introducing a new term in the loss function. This new loss term represents the cyclicity of the adjacency matrix. Thus, by simultaneously minimizing the loss of fit of the SVAR model and penalizing its cyclicity, DYNOTEARS models the relations in the data and ensures the relations are strictly causal.</p>
      <p id="d2e3993">Specifically, it finds the coefficients of an SVAR model with <italic>p</italic> lags:

              <disp-formula id="Ch1.E14" content-type="numbered"><label>14</label><mml:math id="M163" display="block"><mml:mrow><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msubsup><mml:mi>x</mml:mi><mml:mi>t</mml:mi><mml:mi>k</mml:mi></mml:msubsup><mml:mo>=</mml:mo><mml:msubsup><mml:mi>x</mml:mi><mml:mi>t</mml:mi><mml:mi>k</mml:mi></mml:msubsup><mml:mi mathvariant="bold">W</mml:mi><mml:mo>+</mml:mo><mml:msubsup><mml:mi>x</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi>k</mml:mi></mml:msubsup><mml:msub><mml:mi mathvariant="bold">A</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="normal">⋯</mml:mi><mml:mo>+</mml:mo><mml:msubsup><mml:mi>x</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi>p</mml:mi></mml:mrow><mml:mi>k</mml:mi></mml:msubsup><mml:msub><mml:mi mathvariant="bold">A</mml:mi><mml:mi>p</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mtext>for</mml:mtext><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mi>t</mml:mi><mml:mo>∈</mml:mo><mml:mo>(</mml:mo><mml:mi>p</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="normal">⋯</mml:mi><mml:mo>,</mml:mo><mml:mi>T</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mtext>and for all</mml:mtext><mml:mspace linebreak="nobreak" width="0.33em"/><mml:mi>k</mml:mi><mml:mo>∈</mml:mo><mml:mo>(</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mi mathvariant="normal">⋯</mml:mi><mml:mo>,</mml:mo><mml:mi>d</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M164" display="inline"><mml:mi mathvariant="bold">W</mml:mi></mml:math></inline-formula> is a <inline-formula><mml:math id="M165" display="inline"><mml:mrow><mml:mi>d</mml:mi><mml:mo>×</mml:mo><mml:mi>d</mml:mi></mml:mrow></mml:math></inline-formula> matrix containing the coefficients that capture contemporaneous relations among the variables. Thus it is equivalent to an adjacency matrix with only contemporaneous rows and columns (<inline-formula><mml:math id="M166" display="inline"><mml:mrow><mml:msubsup><mml:mi>x</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>x</mml:mi><mml:mi>t</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>,</mml:mo><mml:mi mathvariant="normal">⋯</mml:mi><mml:mo>,</mml:mo><mml:msubsup><mml:mi>x</mml:mi><mml:mi>t</mml:mi><mml:mi>d</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>). Similarly, the matrices <inline-formula><mml:math id="M167" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">A</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="normal">⋯</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi mathvariant="bold">A</mml:mi><mml:mi>p</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> contain the coefficients that reflect the lagged relationships between variables. Thus, it is equivalent to an adjacency matrix which represents lagged relations, hence it has both contemporaneous and lagged variables in its rows and columns but entries only in the lagged variables rows.</p>
      <p id="d2e4200">Further Eq. (<xref ref-type="disp-formula" rid="Ch1.E14"/>) can be rewritten as Eq. (<xref ref-type="disp-formula" rid="Ch1.E15"/>) such that <inline-formula><mml:math id="M168" display="inline"><mml:mi mathvariant="bold">X</mml:mi></mml:math></inline-formula> is an <inline-formula><mml:math id="M169" display="inline"><mml:mrow><mml:mi>n</mml:mi><mml:mo>×</mml:mo><mml:mi>d</mml:mi></mml:mrow></mml:math></inline-formula> matrix with each row containing <inline-formula><mml:math id="M170" display="inline"><mml:mrow><mml:msubsup><mml:mi>x</mml:mi><mml:mi>t</mml:mi><mml:mi>k</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, while <inline-formula><mml:math id="M171" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mrow><mml:mi mathvariant="bold">t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="bold">1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi></mml:mrow></mml:math></inline-formula> are its lagged versions. This can be further compacted such that all lagged relations are represented by <inline-formula><mml:math id="M172" display="inline"><mml:mrow><mml:mi mathvariant="bold">A</mml:mi><mml:mo>(</mml:mo><mml:mo>=</mml:mo><mml:mo>[</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>,</mml:mo><mml:mi mathvariant="normal">⋯</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mi>p</mml:mi></mml:msub><mml:mo>]</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and contemporaneous relations by <inline-formula><mml:math id="M173" display="inline"><mml:mi mathvariant="bold">W</mml:mi></mml:math></inline-formula> (Eq. <xref ref-type="disp-formula" rid="Ch1.E16"/>). Note that since <inline-formula><mml:math id="M174" display="inline"><mml:mi mathvariant="bold">A</mml:mi></mml:math></inline-formula> contains only lagged relations, it only connects earlier time-steps to later ones and is inherently acyclic due to time ordering (Fig. <xref ref-type="fig" rid="F1"/>b).

                  <disp-formula specific-use="align" content-type="numbered"><mml:math id="M175" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E15"><mml:mtd><mml:mtext>15</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mi>t</mml:mi></mml:msub><mml:mi mathvariant="bold">W</mml:mi><mml:mo>+</mml:mo><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msub><mml:msup><mml:mi mathvariant="bold">A</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msup><mml:mo>+</mml:mo><mml:mi mathvariant="normal">⋯</mml:mi><mml:mo>+</mml:mo><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mi>p</mml:mi></mml:mrow></mml:msub><mml:msup><mml:mi mathvariant="bold">A</mml:mi><mml:mi>p</mml:mi></mml:msup></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E16"><mml:mtd><mml:mtext>16</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="bold">X</mml:mi><mml:mi>t</mml:mi></mml:msub><mml:mi mathvariant="bold">W</mml:mi><mml:mo>+</mml:mo><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mo>-</mml:mo></mml:msup><mml:mi mathvariant="bold">A</mml:mi></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

            DYNOTEARS estimates the coefficients of the SVAR model, <inline-formula><mml:math id="M176" display="inline"><mml:mi mathvariant="bold">W</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M177" display="inline"><mml:mi mathvariant="bold">A</mml:mi></mml:math></inline-formula>, using continuous optimization to reduce the error of fit. The loss function <inline-formula><mml:math id="M178" display="inline"><mml:mrow><mml:mi>F</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold">W</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="bold">A</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, contains four terms (Eq. <xref ref-type="disp-formula" rid="Ch1.E17"/>):

              <disp-formula id="Ch1.E17" content-type="numbered"><label>17</label><mml:math id="M179" display="block"><mml:mrow><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mi>F</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold">W</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="bold">A</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>d</mml:mi><mml:mo>(</mml:mo><mml:mi>T</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>p</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mfrac></mml:mstyle><mml:msubsup><mml:mfenced close="∥" open="∥"><mml:mrow><mml:mi mathvariant="bold">X</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="bold">XW</mml:mi><mml:mo>-</mml:mo><mml:msup><mml:mi mathvariant="bold">X</mml:mi><mml:mo>-</mml:mo></mml:msup><mml:mi mathvariant="bold">A</mml:mi></mml:mrow></mml:mfenced><mml:mi>F</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mi mathvariant="bold">W</mml:mi></mml:msub><mml:msub><mml:mfenced open="∥" close="∥"><mml:mi mathvariant="bold">W</mml:mi></mml:mfenced><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mi mathvariant="bold">A</mml:mi></mml:msub><mml:msub><mml:mfenced open="∥" close="∥"><mml:mi mathvariant="bold">A</mml:mi></mml:mfenced><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">α</mml:mi><mml:mi>h</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold">W</mml:mi><mml:mo>)</mml:mo><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>h</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold">W</mml:mi><mml:msup><mml:mo>)</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:math></disp-formula>

            The first term is the sum of square of errors (<inline-formula><mml:math id="M180" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">ℓ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> norm) to reduce the error of fit. Next, since the causal relations in real world data are expected to be sparse, i.e. only a few variables affect a particular variable, thus many coefficients in <inline-formula><mml:math id="M181" display="inline"><mml:mi mathvariant="bold">W</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M182" display="inline"><mml:mi mathvariant="bold">A</mml:mi></mml:math></inline-formula> are expected to be zeros. To encourage this sparsity, a penalty term is added to reduce the number of non-zero coefficients. This penalty is based on the <inline-formula><mml:math id="M183" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">ℓ</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> norm – the sum of the absolute coefficients of a matrix. This penalty term is added for both the matrices and weighted with a tuning parameter to control the degree of sparsity: <inline-formula><mml:math id="M184" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mi mathvariant="bold">W</mml:mi></mml:msub><mml:msub><mml:mfenced close="∥" open="∥"><mml:mi mathvariant="bold">W</mml:mi></mml:mfenced><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M185" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mi mathvariant="bold">A</mml:mi></mml:msub><mml:msub><mml:mfenced close="∥" open="∥"><mml:mi mathvariant="bold">A</mml:mi></mml:mfenced><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>. Finally, to represent causal relations, the matrices <inline-formula><mml:math id="M186" display="inline"><mml:mi mathvariant="bold">W</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M187" display="inline"><mml:mi mathvariant="bold">A</mml:mi></mml:math></inline-formula> must be acyclic. As discussed earlier, <inline-formula><mml:math id="M188" display="inline"><mml:mi mathvariant="bold">A</mml:mi></mml:math></inline-formula> is inherently acyclic. To enforce acyclicity of <inline-formula><mml:math id="M189" display="inline"><mml:mi mathvariant="bold">W</mml:mi></mml:math></inline-formula>, a term is introduced in the loss function to penalize cyclicity in <inline-formula><mml:math id="M190" display="inline"><mml:mi mathvariant="bold">W</mml:mi></mml:math></inline-formula>. Here the cyclicity of a matrix <inline-formula><mml:math id="M191" display="inline"><mml:mi mathvariant="bold">W</mml:mi></mml:math></inline-formula> is expressed as a mathematical function as:

                  <disp-formula id="Ch1.E18" content-type="numbered"><label>18</label><mml:math id="M192" display="block"><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mi>h</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold">W</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mtext>tr</mml:mtext><mml:mfenced close=")" open="("><mml:mrow><mml:msup><mml:mi>exp⁡</mml:mi><mml:mrow><mml:mi mathvariant="bold">W</mml:mi><mml:mo>∘</mml:mo><mml:mi mathvariant="bold">W</mml:mi></mml:mrow></mml:msup></mml:mrow></mml:mfenced><mml:mo>-</mml:mo><mml:mi>d</mml:mi></mml:mrow></mml:math></disp-formula>

            where: <list list-type="bullet"><list-item>
      <p id="d2e4737">tr is the <italic>trace</italic> of a matrix (the sum of its diagonal entries),</p></list-item><list-item>
      <p id="d2e4744"><inline-formula><mml:math id="M193" display="inline"><mml:mo>∘</mml:mo></mml:math></inline-formula> denotes the <italic>Hadamard product</italic> (element-wise matrix multiplication),</p></list-item><list-item>
      <p id="d2e4757">and <inline-formula><mml:math id="M194" display="inline"><mml:mi>d</mml:mi></mml:math></inline-formula> is the number of variables.</p></list-item></list> This function equals zero if and only if <inline-formula><mml:math id="M195" display="inline"><mml:mi mathvariant="bold">W</mml:mi></mml:math></inline-formula> is acyclic. Intuitively it provides a mathematical formulation of cyclicity, as a continuous function, which can be minimized by an optimization scheme. As suggested by <xref ref-type="bibr" rid="bib1.bibx94" id="text.74"/>, the equality in Eq. (<xref ref-type="disp-formula" rid="Ch1.E18"/>) can be solved using the augmented Lagrangian method. The resulting loss function takes the form as Eq. (<xref ref-type="disp-formula" rid="Ch1.E17"/>) which can be solved using standard optimization solvers like L-BFGS-B (Limited-memory Broyden, Fletcher, Goldfarb, and Shannon optimization method with bound constraints, <xref ref-type="bibr" rid="bib1.bibx10" id="altparen.75"/>). Finally, since the causal relations are represented by coefficients of the SVAR model, some coefficients can be very small. To ignore such coefficients, the algorithm allows a user defined threshold, <inline-formula><mml:math id="M196" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">W</mml:mi><mml:mi mathvariant="normal">threshold</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, so that only coefficients greater than this threshold represent a causal relation. Thus, DYNOTEARS offers five free parameters to control the algorithm. The two sparsity penalty terms <inline-formula><mml:math id="M197" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mi mathvariant="normal">w</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M198" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mi mathvariant="normal">a</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, the maximum cyclicity allowed <inline-formula><mml:math id="M199" display="inline"><mml:mrow><mml:mi>h</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold">W</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, the threshold of SVAR coefficients <inline-formula><mml:math id="M200" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">W</mml:mi><mml:mi mathvariant="normal">threshold</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, and the maximum lag to search for.</p>
</sec>
<sec id="Ch1.S2.SS5.SSS5">
  <label>2.5.5</label><title>Other methods for Causal Discovery</title>
      <p id="d2e4852">We note that other distinct methods of discovering causal relations do exist for example, based on difference equations, which represents all causal relations by means of difference equations driving changes in the system <xref ref-type="bibr" rid="bib1.bibx83" id="paren.76"/>. Further, based on non-linear state space reconstruction – CCM <xref ref-type="bibr" rid="bib1.bibx75" id="paren.77"/>, etc. For a comprehensive review we suggest reading <xref ref-type="bibr" rid="bib1.bibx3 bib1.bibx22 bib1.bibx2" id="text.78"/>. As mentioned earlier, CCM has been successfully applied to discover causal relations in hydrological systems. However, we did not select it for evaluation due to two major issues. First, being a bi-variate method, it allows to determine causality only between a pair of variables, thus it is highly susceptible to identify incorrect causal relations in multi-variate system as discussed earlier <xref ref-type="bibr" rid="bib1.bibx49" id="paren.79"/>. Second, more importantly it assumes a deterministic system in order to create the high dimensional manifold which represents the dynamical and thus consistent (causal) relations in the data <xref ref-type="bibr" rid="bib1.bibx75" id="paren.80"/>. In hydrology, observational and process noise are typical in observations. As shown by <xref ref-type="bibr" rid="bib1.bibx49" id="text.81"/>, applying CCM in such systems can lead to reduced power of detecting causal relations. Despite these, it remains a strong candidate for discovering causal relations, when the assumptions are satisfied.</p>
      <p id="d2e4874">The choice of free parameters for the four CD methods described above was based on the suggestions from their respective papers.  Details of these settings, along with those for the PCC method, are provided in Appendix <xref ref-type="sec" rid="App1.Ch1.S2"/>. In the next section we discuss the set of assumptions adopted by CD methods in order to discover causal relations.</p>
</sec>
<sec id="Ch1.S2.SS5.SSS6">
  <label>2.5.6</label><title>Assumptions</title>
      <p id="d2e4887">The ability of CD methods to discern causality from correlation lies in the statistical measures used by them and the definition of dependence adopted by them – via DAGs. These rely on two sets of assumptions: one about the nature of the data and the other on the recoverability of the underlying DAG. Thus, assumptions of Gaussian distribution of variables and stationarity of time-series are common to each method, except VARLiNGAM. Assumptions related to the recovery of the underlying DAG are (a) Causal Sufficiency, (b) Markov Assumption, and (c) Faithfulness, <xref ref-type="bibr" rid="bib1.bibx3" id="paren.82"/>. Below we briefly define these DAG related assumptions, while Table <xref ref-type="table" rid="T2"/> lists the algorithms which adopt them.</p>

<table-wrap id="T2"><label>Table 2</label><caption><p id="d2e4898">Causal discovery assumptions. An empty cell indicates the assumption is not needed.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="4">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="center"/>
     <oasis:colspec colnum="3" colname="col3" align="center"/>
     <oasis:colspec colnum="4" colname="col4" align="center"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Method</oasis:entry>
         <oasis:entry colname="col2">Causal</oasis:entry>
         <oasis:entry colname="col3">Markov</oasis:entry>
         <oasis:entry colname="col4">Faithfulness</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">Sufficiency</oasis:entry>
         <oasis:entry colname="col3">Assumption</oasis:entry>
         <oasis:entry colname="col4"/>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">PCC</oasis:entry>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4"/>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">TCDF</oasis:entry>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4"/>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">VARLiNGAM</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M201" display="inline"><mml:mo>✓</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M202" display="inline"><mml:mo>✓</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4"/>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">PCMCI+</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M203" display="inline"><mml:mo>✓</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M204" display="inline"><mml:mo>✓</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M205" display="inline"><mml:mo>✓</mml:mo></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">DYNOTEARS</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M206" display="inline"><mml:mo>✓</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4"/>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d2e5045"><italic>Causal Sufficiency</italic>, requires that all the variables which are anticipated to affect the system be included in the analysis. For example, if root zone soil moisture acts as a causal driver of surface soil moisture and transpiration, but it is unobserved, a causal analysis would wrongly yield a causal link between the latter two. Such cases of unobserved variables also result in discovery of incorrect lagged links <xref ref-type="bibr" rid="bib1.bibx61" id="paren.83"/>.</p>
      <p id="d2e5054"><italic>Markov assumption</italic> implies that a DAG is supported by the conditional independencies present in it. More formally, for the joint distribution of variables in <inline-formula><mml:math id="M207" display="inline"><mml:mi mathvariant="bold">X</mml:mi></mml:math></inline-formula> with Graph <inline-formula><mml:math id="M208" display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>, the causal structure in <inline-formula><mml:math id="M209" display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> is supported by corresponding conditional independence tests. For example, the structure in graph <inline-formula><mml:math id="M210" display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>, Eq. (<xref ref-type="disp-formula" rid="Ch1.E19"/>), with only two links into Transpiration. The Markov assumption implies that this graph is supported by the conditional independence tests in Eq. (<xref ref-type="disp-formula" rid="Ch1.E20"/>).

                  <disp-formula specific-use="gather" content-type="numbered"><mml:math id="M211" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E19"><mml:mtd><mml:mtext>19</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mi>G</mml:mi><mml:mo>≡</mml:mo><mml:msub><mml:mtext>Precipitation</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mspace linebreak="nobreak" width="0.33em"/><mml:mo>→</mml:mo><mml:mspace width="0.33em" linebreak="nobreak"/><mml:msub><mml:mtext>Transpiration</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>←</mml:mo><mml:msub><mml:mtext>Root Zone-Soil moisture</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E20"><mml:mtd><mml:mtext>20</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mi mathvariant="bold">X</mml:mi><mml:mo>∖</mml:mo><mml:mspace linebreak="nobreak" width="0.33em"/><mml:mtext>Pa</mml:mtext><mml:mo>(</mml:mo><mml:msub><mml:mtext>Transpiration</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo><mml:mo>⟂</mml:mo><mml:mspace width="-0.125em" linebreak="nobreak"/><mml:mspace width="-0.125em" linebreak="nobreak"/><mml:mspace linebreak="nobreak" width="-0.125em"/><mml:mo>⟂</mml:mo><mml:msub><mml:mtext>Transpiration</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mo>∣</mml:mo><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mtext>Pa</mml:mtext><mml:mo>(</mml:mo><mml:msub><mml:mtext>Transpiration</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

            where <inline-formula><mml:math id="M212" display="inline"><mml:mrow><mml:mtext>Pa</mml:mtext><mml:mo>(</mml:mo><mml:msub><mml:mtext>Transpiration</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the Causal parent set of <inline-formula><mml:math id="M213" display="inline"><mml:mrow><mml:msub><mml:mtext>Transpiration</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and consists of <inline-formula><mml:math id="M214" display="inline"><mml:mrow><mml:msub><mml:mtext>Precipitation</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M215" display="inline"><mml:mrow><mml:msub><mml:mtext>Root Zone-Soil moisture</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>.</p>
      <p id="d2e5235">In contrast to the Markov assumption, the <italic>Faithfulness assumption</italic> implies that all conditional independencies of various disjoint sets in <inline-formula><mml:math id="M216" display="inline"><mml:mi mathvariant="bold">X</mml:mi></mml:math></inline-formula> are represented in the graph <inline-formula><mml:math id="M217" display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>. Thus if we are to find the conditional independence in Eq. (<xref ref-type="disp-formula" rid="Ch1.E20"/>) to be true, the Faithfulness assumption necessitates it to be represented in the structure <inline-formula><mml:math id="M218" display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>, Eq. (<xref ref-type="disp-formula" rid="Ch1.E19"/>).</p>
</sec>
</sec>
<sec id="Ch1.S2.SS6">
  <label>2.6</label><title>Methods: Non-causal methods</title>
      <p id="d2e5276">Pearson's correlation coefficient is a widely used method to measure the co-relation between two variables. It quantifies the strength of the co-relation as the ratio of their covariance to the product of their standard deviations.</p>
      <p id="d2e5279">To test the statistical significance of the obtained PCC value, a hypothesis test can be performed. To do this, a null hypothesis of zero correlation, i.e. no linear dependence between the data is assumed, a significance level <inline-formula><mml:math id="M219" display="inline"><mml:mi mathvariant="italic">α</mml:mi></mml:math></inline-formula> is selected and the <inline-formula><mml:math id="M220" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> value associated to the PCC value is calculated. <inline-formula><mml:math id="M221" display="inline"><mml:mi mathvariant="italic">α</mml:mi></mml:math></inline-formula> denotes the probability of rejecting the null hypothesis when in fact it is true. The <inline-formula><mml:math id="M222" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> value is the probability of obtaining a PCC value equal to that obtained, under the assumption that the null hypothesis is true. Thus, if the <inline-formula><mml:math id="M223" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> value is less than <inline-formula><mml:math id="M224" display="inline"><mml:mi mathvariant="italic">α</mml:mi></mml:math></inline-formula>, the hypothesis is rejected and the obtained PCC value is considered statistically significant at significance level <inline-formula><mml:math id="M225" display="inline"><mml:mi mathvariant="italic">α</mml:mi></mml:math></inline-formula>. For identifying the drivers of a target variable, we found its Pearson’s correlation coefficient with all the remaining variables in the system, both at contemporaneous time step and by creating their one-step-lagged time-series.</p>
</sec>
<sec id="Ch1.S2.SS7">
  <label>2.7</label><title>Time-series prediction model</title>
      <p id="d2e5340">To understand the effect of identifying various drivers (causal and non-causal) of a variable, we evaluated the difference in predicted surface soil moisture time-series when using drivers identified by PCC and the CD methods. In recent times causal discovery has been used in four different ways for time-series predictions. First, <xref ref-type="bibr" rid="bib1.bibx91" id="text.84"/>, used the difference in cross entropy amongst observed and simulated variables as a loss function in addition to the sum of square of errors, to train a deep learning model for predicting wetland methane emissions. Second, <xref ref-type="bibr" rid="bib1.bibx44" id="text.85"/> used the adjacency matrix both, as a feature selection step and to modify the gates of their LSTM cell for soil moisture prediction. Third, <xref ref-type="bibr" rid="bib1.bibx89" id="text.86"/> used the adjacency matrix to introduce a causal inference unit alongside the LSTM cell, in their spatiotemporal soil moisture estimation model. Fourth, <xref ref-type="bibr" rid="bib1.bibx80" id="text.87"/> used causal discovery to identify robust features for spatial downscaling of precipitation. Similarly, <xref ref-type="bibr" rid="bib1.bibx95" id="text.88"/> used causal discovery to identify the drivers of irrigation water use, to build a prediction model.</p>
      <p id="d2e5358">Similar to <xref ref-type="bibr" rid="bib1.bibx95" id="text.89"/>,  we use PCC and CD methods to identify the predictors of surface soil moisture. Then, we train machine learning models, based on these sets of predictors. To evaluate the performance of these ML models under contrasting conditions, we selected a location and period which underwent a significant change in climatic conditions. Thus, we choose a grid location in the Ganga basin which exhibited normal conditions between 2000 and 2003 but suffered drought during the 2004–2005 period. Hence, we trained the model with CLSM data from 1 January 2000 to 31 December 2003. While we evaluate their performance during the drought period from 1 January 2004 to 31 December 2005. Furthermore, we conducted a similar exercise for storm surface runoff prediction in Ganga basin and transpiration prediction in the Murray basin, and obtained similar results (Appendix <xref ref-type="sec" rid="App1.Ch1.S3"/>).</p>
      <p id="d2e5366">Since model training and evaluation is done using the CLSM data, the models will achieve a near perfect fit irrespective of the number of causal and non-causal predictors identified, or the model structure (Appendix <xref ref-type="sec" rid="App1.Ch1.S3"/>). This is a result of the perfect model environment, without observational or process noise in the simulated data. Thus, we introduced random additive Gaussian noise to the data to relax this idealized environment. This prevented trivial model fits within a deterministic environment and allowed us to test the models under a representation of observational noise, typically present in hydrometeorological systems. To evaluate the sensitivity of results to the magnitude and realization of the added noise, we conducted Monte Carlo simulations across multiple noise levels (Appendix <xref ref-type="sec" rid="App1.Ch1.S3"/>).</p>
      <p id="d2e5373">Further, we adopted two more strategies for evaluating models based on PCC and CD methods. First, we tested the ability of various ML models trained on different sample sizes to understand the effect of training data availability on the performance of ML models driven by causal and PCC based predictors. Second, we tested the effect of dimensionality on the performance of ML models. Since the number of predictors identified by PCC and CD methods are different, we selected a consistent number of predictors across all methods. This allowed us to test their performance under the same dimensionality. The details of these two analyses are presented in Appendix <xref ref-type="sec" rid="App1.Ch1.S4"/> and <xref ref-type="sec" rid="App1.Ch1.S5"/> respectively.</p>
</sec>
</sec>
<sec id="Ch1.S3">
  <label>3</label><title>Results</title>
      <p id="d2e5389">To evaluate the performance of the CD methods relative to PCC, we adopt two broad approaches. First, we see the performance at the macro scale by evaluating the adjacency matrices. Second, we zoom into the analysis by focusing on the drivers of surface soil moisture identified by different methods across all the grid points. Finally, to understand the consequence of finding causal and non-causal drivers in terms of applications, we use machine learning models to predict the surface soil moisture time-series. These models are trained separately with predictors identified by PCC and CD methods.</p>
<sec id="Ch1.S3.SS1">
  <label>3.1</label><title>RQ1: Can CD methods identify the true drivers in a complex simulated hydro-meteorological system across different climate types?</title>
      <p id="d2e5399">The primary aim of any predictor discovery algorithm is to identify the true drivers of the target variable. To evaluate this, we consider the Recall (or True Positive Ratio, TPR) of all algorithms across the Köppen-Geiger climate classes in Fig. <xref ref-type="fig" rid="F3"/>a.</p>

      <fig id="F3" specific-use="star"><label>Figure 3</label><caption><p id="d2e5406">Recall (or true positive ratio) <bold>(a)</bold> and Matthews Correlation Coefficient <bold>(b)</bold> for all the algorithms, across different Köppen-Geiger climate classes and in different river basins. The right most boxplots show the cumulative distributions with the median values annotated on the <inline-formula><mml:math id="M226" display="inline"><mml:mi>y</mml:mi></mml:math></inline-formula> axis. Note that both the top and bottom labels are common to <bold>(a)</bold> and <bold>(b)</bold>. The legend is common to <bold>(a)</bold>, <bold>(b)</bold>. Recall is simply the ratio of true positives identified to the actual number of true positives in the reference truth, <inline-formula><mml:math id="M227" display="inline"><mml:mrow><mml:mtext>Recall</mml:mtext><mml:mo>=</mml:mo><mml:mstyle displaystyle="false"><mml:mfrac style="text"><mml:mtext>TP</mml:mtext><mml:mrow><mml:mtext>TP</mml:mtext><mml:mo>+</mml:mo><mml:mtext>FN</mml:mtext></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:math></inline-formula>,  <inline-formula><mml:math id="M228" display="inline"><mml:mrow><mml:mo>∈</mml:mo><mml:mo>[</mml:mo><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>. MCC consider the class imbalance by using all four classes, <inline-formula><mml:math id="M229" display="inline"><mml:mrow><mml:mtext>MCC</mml:mtext><mml:mo>=</mml:mo><mml:mstyle displaystyle="false"><mml:mfrac style="text"><mml:mrow><mml:mtext>TP</mml:mtext><mml:mo>⋅</mml:mo><mml:mtext>TN</mml:mtext><mml:mo>-</mml:mo><mml:mtext>FP</mml:mtext><mml:mo>⋅</mml:mo><mml:mtext>FN</mml:mtext></mml:mrow><mml:msqrt><mml:mrow><mml:mo>(</mml:mo><mml:mtext>TP</mml:mtext><mml:mo>+</mml:mo><mml:mtext>FP</mml:mtext><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mtext>TP</mml:mtext><mml:mo>+</mml:mo><mml:mtext>FN</mml:mtext><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mtext>TN</mml:mtext><mml:mo>+</mml:mo><mml:mtext>FP</mml:mtext><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mtext>TN</mml:mtext><mml:mo>+</mml:mo><mml:mtext>FN</mml:mtext><mml:mo>)</mml:mo></mml:mrow></mml:msqrt></mml:mfrac></mml:mstyle></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M230" display="inline"><mml:mrow><mml:mo>∈</mml:mo><mml:mo>[</mml:mo><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>.</p></caption>
          <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f03.png"/>

        </fig>

      <p id="d2e5579">Overall, across the Köppen-Geiger climate classes, PCC identifies the highest number of links present in the true adjacency matrix (Fig. <xref ref-type="fig" rid="F2"/>a). While DYNOTEARS shows lower Recall than PCC, the other CD algorithms identify half or fewer causal links. The cumulative plot indicates that PCC exhibits the largest inter-quartile range (IQR). While CD methods show a narrower IQR, in the order PCMCI+ <inline-formula><mml:math id="M231" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> VARLiNGAM <inline-formula><mml:math id="M232" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> TCDF <inline-formula><mml:math id="M233" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> DYNOTEARS. Interestingly, TCDF, VARLiNGAM and PCMCI+, have Recall scores strongly bound between (0.2–0.5). This is not expected as all three algorithms have different assumptions and adopt different methods to find true drivers.</p>
      <p id="d2e5606">Amongst the climate types, the temperate climate type exhibited the highest variability in results across methods. For example, PCC shows highest variance within the Ganga basin. Similarly, TCDF shows the highest variability in Mississippi basin, VARLiNGAM in Danube basin and DYNOTEARS in Ganga basin. While PCMCI+ remains relatively stable across all climate types. Overall, CD methods show a relatively stable Recall across climate types.</p>
</sec>
<sec id="Ch1.S3.SS2">
  <label>3.2</label><title>RQ2: What is the overall performance, in terms of identifying causal relations and eliminating non-causal <italic>co</italic>-relations across different climate types?</title>
      <p id="d2e5621">As mentioned in Methods, Recall does not consider the other classes of (mis)identification, such as false positives, nor the imbalance in their size. This is especially relevant to our analysis since the True adjacency Matrix is negatively imbalanced with 90 % negatives (1376 negatives and 82 positives). Thus, we use Matthew's correlation coefficient (MCC) score to get a balanced understanding of performances. After considering the class imbalance, we observe a change in the relative performance of all the algorithms (Fig. <xref ref-type="fig" rid="F3"/>b). We explore these differences below.</p>
      <p id="d2e5626">The cumulative plot indicates that PCC has the lowest MCC scores, with median MCC <inline-formula><mml:math id="M234" display="inline"><mml:mn mathvariant="normal">0.14</mml:mn></mml:math></inline-formula>. While CD methods score a median MCC greater than or equal to <inline-formula><mml:math id="M235" display="inline"><mml:mn mathvariant="normal">0.19</mml:mn></mml:math></inline-formula>. Although PCC has the highest Recall, it has very high false positives, resulting in a lower MCC. Among CD methods, TCDF and VARLiNGAM yield comparable median MCC values, but TCDF achieves higher MCC within the IQR. Similar to Recall results, PCMCI+ achieves the most stable MCC scores, while DYNOTEARS shows the largest IQR amongst all the CD methods. The variability of IQR among CD methods follows the order PCMCI+ <inline-formula><mml:math id="M236" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> VARLiNGAM <inline-formula><mml:math id="M237" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> TCDF <inline-formula><mml:math id="M238" display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> DYNOTEARS.</p>
      <p id="d2e5664">Across the climate types, the temperate climate type produces the highest IQR for all the methods. Specifically, this occurs in the Ganga basin for PCC, TCDF, and DYNOTEARS, and in the Danube basin for VARLiNGAM and PCMCI+. In contrast, the two Arid climate types in the Murray basin produce the only climate where some clustering of MCC values is present across all methods. Overall, for all methods we observe a very high variance in MCC values, both across climate types and within the same climate class or even within the same basin.</p>

      <fig id="F4"><label>Figure 4</label><caption><p id="d2e5670">Scatter plot of True Positive Ratio and False Positive Ratio in all the grids. The size of the points shows the absolute number of false positives categorically via the False Positives legend. The red dotted line represents a case where TPR=FPR, the top left `Ideal' point denotes a perfect scenario where no False positives are detected and all true positives are identified. The angles in-set show the angle between an imaginary line from the origin to the median of each point cloud and the FPR axes (<inline-formula><mml:math id="M239" display="inline"><mml:mrow><mml:mi>arctan⁡</mml:mi><mml:mo>(</mml:mo><mml:mstyle displaystyle="false"><mml:mfrac style="text"><mml:mrow><mml:msub><mml:mi mathvariant="normal">TPR</mml:mi><mml:mi mathvariant="normal">median</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi mathvariant="normal">FPR</mml:mi><mml:mi mathvariant="normal">median</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>).</p></caption>
          <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f04.png"/>

        </fig>

</sec>
<sec id="Ch1.S3.SS3">
  <label>3.3</label><title>RQ3: What is the trade off between choosing a correlation-based approach and CD methods?</title>
      <p id="d2e5713">To better understand the balance between True Positive discovery (Recall) and False Positive discovery we plot them in Fig. <xref ref-type="fig" rid="F4"/> for each method. As seen in the plot, the cost of identifying causal links is the accumulation of false positives. Overall, all the algorithms achieve a higher TPR compared to FPR (they sit above the red dotted line, which represents TPR <inline-formula><mml:math id="M240" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> FPR). Amongst the CD methods, DYNOTEARS achieves the highest TPR, but also suffers from the highest FPR. Further, CD methods show variance along the TPR axis but less variance along the FPR axis. This demonstrates their robustness towards eliminating false positives. PCC shows high variance along both axes, lacking robustness in identifying true positives and avoiding false positives. In terms of absolute number of false positives, CD methods identify less than 200 links incorrectly, whereas PCC identifies between 600 to 1000 incorrect links as true positives. Overall, across the methods, we observe a higher TPR entails a higher False Positive discovery. Since the range of TPR and FPR is significantly different across the methods, we calculated the ratio of TPR to FPR for each method. That is the angle between an imaginary line connecting the origin to the median point of each point cloud, and the FPR axes (Fig. <xref ref-type="fig" rid="F4"/>). It can be clearly observed that the CD methods, compared to PCC, achieve a higher TPR gain for a unit increase in FPR and a larger deviation from the TPR=FPR line.</p>

      <fig id="F5" specific-use="star"><label>Figure 5</label><caption><p id="d2e5729">Panels <bold>(a)</bold>–<bold>(d)</bold> show the various causal drivers of Surface soil moisture as identified by the algorithms in each grid across different climates. The variables left of the solid red line are the causal parents, of surface soil moisture, extracted from the True adjacency matrix, Fig. <xref ref-type="fig" rid="F2"/>a. Whereas the variables to the right are all the remaining variables of the system and their lags. A blue coloured cell indicates the algorithm has identified a causal link to surface soil moisture from the corresponding variable (column) in the given climate grid (row). Similarly, a grey coloured cell indicates no causal link detected. Note: the legend in Fig. <xref ref-type="fig" rid="F6"/>c is common to both, Figs. <xref ref-type="fig" rid="F5"/> and <xref ref-type="fig" rid="F6"/>.</p></caption>
          <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f05.png"/>

        </fig>

      <fig id="F6" specific-use="star"><label>Figure 6</label><caption><p id="d2e5755">Panel <bold>(a)</bold> same as Fig. <xref ref-type="fig" rid="F5"/> but for DYNOTEARS. Panel <bold>(b)</bold> summarizes the previous panels across all climates and grids for each causal parent individually and collectively for the True and False Positives, for each algorithm. Panel <bold>(c)</bold> is the legend common to both, Figs. <xref ref-type="fig" rid="F5"/> and <xref ref-type="fig" rid="F6"/>.</p></caption>
          <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f06.png"/>

        </fig>

</sec>
<sec id="Ch1.S3.SS4">
  <label>3.4</label><title>RQ4: Can CD methods help building parsimonious and robust hydrological models?</title>
      <p id="d2e5789">The previous results sections reported results across all causal relationships within the CLSM model. However, to better understand what the variance in FPR and TPR means in practice, we extract all the drivers of an individual variable, surface soil moisture, identified by the algorithms across all the grids in each climate and plot them in Figs. <xref ref-type="fig" rid="F5"/> and <xref ref-type="fig" rid="F6"/>. Surface soil moisture is an important hydro-meteorological variable as it links the atmosphere with terrestrial hydrology <xref ref-type="bibr" rid="bib1.bibx69" id="paren.90"/>. In nature, the soil surface stores moisture from the atmosphere and provides moisture back to the atmosphere via evaporation. Active research is ongoing to understand the causality and timescales of this feedback system <xref ref-type="bibr" rid="bib1.bibx78 bib1.bibx11 bib1.bibx18" id="paren.91"/>.</p>
      <p id="d2e5802">In the CLSM model, surface soil moisture is modelled by combining various modelling routines. We define it explicitly in Appendix <xref ref-type="sec" rid="App1.Ch1.S1"/>. Essentially, it is modelled as a reservoir of moisture. The initial value of surface soil moisture is based on the catchment deficit (from full saturation), profile soil moisture. It receives input flux from above ground as excess precipitation and from below the ground as excess root zone soil moisture. While outgoing fluxes are direct evaporation from soil and infiltration into the root zone. To update its state at a time instant, the CLSM model takes the summation of these fluxes and adds (or subtracts) from the storage at the previous time-step.   Thus, eight variables form the causal parents of surface soil moisture. These are (i) profile soil moisture, (ii) canopy interception and (iii) total precipitation (iv) precipitation as rain (v) total evaporation (vi) evaporation from bare soil (vii) root zone soil moisture, and (viii) surface soil moisture at the previous time step. These eight causal drivers can be classified into physical mechanisms governing the water and energy budgets. Where direct evaporation from bare soil and evapotranspiration form the energy budget related causal drivers. While plant canopy surface water, total and rain precipitation rate, profile soil moisture, root zone soil moisture and lagged surface soil moisture form the water budget related mechanisms. Below we evaluate the ability of the algorithms to identify the water and energy budget related causal drivers of surface soil moisture and to eliminate the non-causal drivers in each grid of the different climates.</p>
<sec id="Ch1.S3.SS4.SSS1">
  <label>3.4.1</label><title>PCC</title>
</sec>
<sec id="Ch1.S3.SS4.SSSx1" specific-use="unnumbered">
  <title>Causal drivers</title>
      <p id="d2e5820">Among the water budget related causal drivers, PCC identifies almost all the causal drivers correctly (Fig. <xref ref-type="fig" rid="F5"/>a), while missing plant canopy surface water in Temperate and Cold regions. Similarly, it identifies the energy budget related drivers correctly in Tropical, Arid and Temperate, dry winter and warm summer regions. However, it misses them in other Temperate and cold regions. Interestingly, PCC was able to identify canopy surface water as a causal driver. Since the canopy water acts as a reservoir above the surface and allows rainfall to reach the surface only if it is full to its capacity, it adds some non-linearity to the generation of surface soil moisture. Among CD methods, only VARLiNGAM and DYNOTEARS were able to identify this driver in at least half of the grids (Fig. <xref ref-type="fig" rid="F6"/>b).</p>
</sec>
<sec id="Ch1.S3.SS4.SSSx2" specific-use="unnumbered">
  <title>Non-causal drivers</title>
      <p id="d2e5834">PCC also classifies a very large number of non-causal variables as drivers, resulting in large false positives (Fig. <xref ref-type="fig" rid="F5"/>a). For example, variables such as latent net heat flux, downward short-wave radiation are closely related to surface soil moisture and part of the surface energy budget and are also identified as causal drivers in a majority of the grids. Similarly, water budget variables like storm surface runoff, groundwater storage, are also classified as causal drivers. Though such variables may have a direct impact on surface soil moisture in the natural environment, these variables are absent in the generating equations of surface soil moisture in the CLSM model. Hence, they do not form the causal parents. Thus, PCC showed a systemic error by identifying many variables as drivers, consistently across different climate classes.</p>
</sec>
<sec id="Ch1.S3.SS4.SSS2">
  <label>3.4.2</label><title>TCDF</title>
</sec>
<sec id="Ch1.S3.SS4.SSSx3" specific-use="unnumbered">
  <title>Causal drivers</title>
      <p id="d2e5853">TCDF identified the fewest causal drivers amongst all the methods (Fig. <xref ref-type="fig" rid="F5"/>b). Only three of the water budget related causal drivers, Rain precipitation rate, root zone soil moisture and lagged surface soil moisture, were identified in about half or more of the grids. While the energy budget related causal drivers could be identified only in some grids of the Temperate, dry winter and warm summer region.</p>
</sec>
<sec id="Ch1.S3.SS4.SSSx4" specific-use="unnumbered">
  <title>Non-causal drivers</title>
      <p id="d2e5864">It showed a systematic error by falsely identifying the latent net heat flux as a possible driver in the Arid climates and lagged relation from baseflow in Tropical climates incorrectly (Fig. <xref ref-type="fig" rid="F5"/>b). Apart from these, no other variable is consistently misidentified. Overall, TCDF achieves the fewest false positives across all climates (false positives <inline-formula><mml:math id="M241" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.03), making it the most conservative in terms of spurious detection.</p>
</sec>
<sec id="Ch1.S3.SS4.SSS3">
  <label>3.4.3</label><title>VARLiNGAM</title>
</sec>
<sec id="Ch1.S3.SS4.SSSx5" specific-use="unnumbered">
  <title>Causal drivers</title>
      <p id="d2e5890">The water budget related causal drivers were identified in half or more of the grids (Fig. <xref ref-type="fig" rid="F5"/>c). While both energy budget related drivers could be identified only in the Arid, steppe, cold and Temperate, dry winter, warm summer regions. Interestingly, the non-linear causal link from plant canopy surface water was identified in Arid, Temperate and Cold regions with some consistency.</p>
</sec>
<sec id="Ch1.S3.SS4.SSSx6" specific-use="unnumbered">
  <title>Non-causal drivers</title>
      <p id="d2e5903">VARLiNGAM also showed systemic bias, by incorrectly identifying canopy water evaporation as a causal driver (Fig. <xref ref-type="fig" rid="F5"/>c). Further it falsely identified canopy water evaporation in most of the grids. Similarly, it failed to eliminate terrestrial water storage in all climates except arid, and ground heat flux and specific humidity in arid climates. Interestingly, it attributed a lagged causal link between surface soil moisture and root zone soil moisture instead of the true contemporaneous causality. Overall, VARLiNGAM identified a higher number of causal drivers while maintaining a lower false positive count (false positives <inline-formula><mml:math id="M242" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.14), though it showed systemic error against some variables.</p>
</sec>
<sec id="Ch1.S3.SS4.SSS4">
  <label>3.4.4</label><title>PCMCI+</title>
</sec>
<sec id="Ch1.S3.SS4.SSSx7" specific-use="unnumbered">
  <title>Causal drivers</title>
      <p id="d2e5929">Barring plant canopy surface water and profile soil moisture, PCMCI+ identified the remaining water budget related causal drivers with high consistency (<inline-formula><mml:math id="M243" display="inline"><mml:mrow><mml:mo>≥</mml:mo><mml:mn mathvariant="normal">0.73</mml:mn></mml:mrow></mml:math></inline-formula>, Fig. <xref ref-type="fig" rid="F6"/>b). While it struggled to consistently identify the energy budget related causal drivers in all the climate regions. Once again, plant canopy surface water was identified in some grids of Temperate and Cold regions (Fig. <xref ref-type="fig" rid="F5"/>d).</p>
</sec>
<sec id="Ch1.S3.SS4.SSSx8" specific-use="unnumbered">
  <title>Non-causal drivers</title>
      <p id="d2e5953">PCMCI+ also shows a systemic error by falsely identifying canopy water evaporation, storm surface runoff and terrestrial water storage as causal drivers (Fig. <xref ref-type="fig" rid="F5"/>d). Compared to VARLiNGAM and DYNOTEARS, PCMCI+ has a very sparse false positive detection, similar to TCDF (false positives <inline-formula><mml:math id="M244" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.07).</p>
</sec>
<sec id="Ch1.S3.SS4.SSS5">
  <label>3.4.5</label><title>DYNOTEARS</title>
</sec>
<sec id="Ch1.S3.SS4.SSSx9" specific-use="unnumbered">
  <title>Causal drivers</title>
      <p id="d2e5979">In strong contrast to other CD methods, DYNOTEARS identifies all the causal drivers, except lagged surface soil moisture, in at least half of the grids. However, it missed the energy budget variables completely in the Tropical regions. Further, the water budget related causal driver, self-causation from surface soil moisture, was missed in most grids of Tropical, Temperate and Cold regions (Fig. <xref ref-type="fig" rid="F6"/>a). The identification of self-causation in surface soil moisture by DYNOTEARS is far less compared to other CD methods and PCC (Fig. <xref ref-type="fig" rid="F6"/> column Surface soil moisture lag1), especially given the strong autocorrelation typically present in storage variables.</p>
</sec>
<sec id="Ch1.S3.SS4.SSSx10" specific-use="unnumbered">
  <title>Non-causal drivers</title>
      <p id="d2e5993">DYNOTEARS also showed systemic error, failing to eliminate net long wave radiation flux, average surface skin temperature, baseflow, terrestrial water storage and wind speed (Fig. <xref ref-type="fig" rid="F6"/>a). Interestingly, it identified the fewest lagged variables as causal drivers. Overall, DYNOTEARS identified more causal drivers of surface soil moisture than the other CD methods while only identifying a few more false positives (<inline-formula><mml:math id="M245" display="inline"><mml:mrow><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.19</mml:mn></mml:mrow></mml:math></inline-formula>).</p>
      <p id="d2e6008">To understand the effect of missing a few causal drivers and identifying non-causal ones, we compare the difference by creating prediction models. In the next section, we train machine learning models based on the predictors of surface soil moisture identified by PCC and CD methods and evaluate their performance.</p>
</sec>
</sec>
<sec id="Ch1.S3.SS5">
  <label>3.5</label><title>Predicting time-series using causal knowledge</title>
      <p id="d2e6020">Below we discuss surface soil moisture predictions under a noise level of 0.5 standard deviation, using a feedforward neural network model.</p>

      <fig id="F7" specific-use="star"><label>Figure 7</label><caption><p id="d2e6025">Performance and error metrics of the machine learning models created for surface soil moisture prediction. Panels <bold>(a)</bold> and <bold>(c)</bold> show the performance and error metrics during the training period. While panels <bold>(b)</bold> and <bold>(d)</bold> show the difference in performance and error metrics between the testing and training, e.g.: <inline-formula><mml:math id="M246" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msup><mml:mi>R</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>=</mml:mo><mml:msubsup><mml:mi>R</mml:mi><mml:mi mathvariant="normal">testing</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup><mml:mo>-</mml:mo><mml:msubsup><mml:mi>R</mml:mi><mml:mi mathvariant="normal">training</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msubsup></mml:mrow></mml:math></inline-formula>. Panel <bold>(e)</bold> shows the predicted and actual time-series in the testing period, based on PCC and CD-based models. For each method, the plot shows the mean prediction of the 100 Monte Carlo simulations, while the shading shows the minimum and maximum range. The metrics adopted are commonly used metrics in hydrology. <inline-formula><mml:math id="M247" display="inline"><mml:mrow><mml:msup><mml:mi>R</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula>: Coefficient of Determination, NSE: Nash-Sutcliffe efficiency, <inline-formula><mml:math id="M248" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">NSE</mml:mi><mml:mi mathvariant="normal">mod</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>: modified Nash-Sutcliffe efficiency, KGE: Kling-Gupta efficiency, RMSE: Root Mean Square Error and MSE: Mean Squared Error, <xref ref-type="bibr" rid="bib1.bibx36" id="text.92"/>. A <inline-formula><mml:math id="M249" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mo>(</mml:mo><mml:mo>⋅</mml:mo><mml:mo>)</mml:mo><mml:mo>&lt;</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:math></inline-formula> for performance metrics means a drop in performance during the testing period compared to the training period. While a <inline-formula><mml:math id="M250" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mo>(</mml:mo><mml:mo>⋅</mml:mo><mml:mo>)</mml:mo><mml:mo>&gt;</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:math></inline-formula> for error metrics means a drop in performance during the testing period compared to the training period.</p></caption>
          <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f07.png"/>

        </fig>

      <p id="d2e6142">In the training period, PCC identified 47 drivers of surface soil moisture, of these 8 were the causal drivers discussed earlier, while 39 were non-causal variables. Similarly, TCDF, VARLiNGAM, PCMCI+ and DYNOTEARS identified 4 causal (4 non-causal), 3 causal (12 non-causal), 6 causal (3 non-causal) and 4 causal (5 non-causal) drivers, respectively. Figure <xref ref-type="fig" rid="F7"/>a and c show the performance and error metrics respectively during this period. The PCC-based model achieves the highest accuracy relative to its training data, with median <inline-formula><mml:math id="M251" display="inline"><mml:mrow><mml:msup><mml:mi>R</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M252" display="inline"><mml:mrow><mml:mtext>NSE</mml:mtext><mml:mo>&gt;</mml:mo><mml:mn mathvariant="normal">0.8</mml:mn></mml:mrow></mml:math></inline-formula>. However, it suffers a sharp decline in performance and gain in error when predicting out of sample during drought conditions. This may be a result of the high number of false positives identified as causal drivers. In contrast, the CD-based models obtain satisfactory performance metrics during the training period with median <inline-formula><mml:math id="M253" display="inline"><mml:mrow><mml:msup><mml:mi>R</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M254" display="inline"><mml:mrow><mml:mtext>NSE</mml:mtext><mml:mo>&gt;</mml:mo><mml:mn mathvariant="normal">0.75</mml:mn></mml:mrow></mml:math></inline-formula>, while they show a smaller drop in performance testing out of sample during drought conditions, with median <inline-formula><mml:math id="M255" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msup><mml:mi>R</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>≈</mml:mo><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.15</mml:mn></mml:mrow></mml:math></inline-formula> and median <inline-formula><mml:math id="M256" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mtext>NSE</mml:mtext><mml:mo>&lt;</mml:mo><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.15</mml:mn></mml:mrow></mml:math></inline-formula>. We note that absolute values of soil moisture during the dry years of 2004–2005 are lower compared to the values during the normal years. This resulted in smaller RMSE and MSE values for the CD-based models in the testing period. Both PCC and CD-based models show consistency in performance during the training period with small IQRs. However, during the testing period, CD-based models show higher consistency compared to PCC-based models,  with narrower <inline-formula><mml:math id="M257" display="inline"><mml:mi mathvariant="normal">Δ</mml:mi></mml:math></inline-formula> IQRs.</p>
      <p id="d2e6237">Further, we repeated the above analysis for different levels of added noise, Fig. <xref ref-type="fig" rid="FC2"/> shows the results. We observe that with increasing levels of noise in the data, the performance of PCC based ML models degrades significantly. While CD-based models show smaller reductions in performance. Figure <xref ref-type="fig" rid="FC1"/> shows results similar to Fig. <xref ref-type="fig" rid="FC2"/> but with a different machine learning model, support vector regression. The figure shows similar conclusions, where with increasing levels of noise PCC based models suffer larger reductions in performance compared to CD-based models. Interestingly, at the noise level of one standard deviation, PCC based ML models perform only slightly worse than CD-based models.</p>
      <p id="d2e6246">Next, the analysis for varying lengths of training sample sizes, Figs. <xref ref-type="fig" rid="FE1"/> and <xref ref-type="fig" rid="FE2"/>, shows that with shorter periods of training length, all models predict less accurately, but this drop in accuracy stabilises if the training period is longer than a year. Here, CD based models stabilised earlier compared to PCC based models and also suffer a smaller drop in performance across the training and testing periods.</p>
      <p id="d2e6253">In the analysis comparing various ML models across the same dimensionality of the predictor set, the results show that CD based models have higher performance than the PCC based models, both, in the training and testing periods (Figs. <xref ref-type="fig" rid="FD1"/>, <xref ref-type="fig" rid="FD2"/>). Further, CD based models remain more robust (Fig. <xref ref-type="fig" rid="FD3"/>), and show lower errors compared to PCC based models, both in the training and testing periods (Figs. <xref ref-type="fig" rid="FD1"/>, <xref ref-type="fig" rid="FD2"/>). However, they show similar levels of robustness in the error metrics (Fig. <xref ref-type="fig" rid="FD3"/>).</p>
      <p id="d2e6269">Overall, PCC-based models identify a large number of predictors and perform better in the training period, but suffered larger performance losses when tested under changing conditions. CD-based models obtain a parsimonious predictor set. This leads to smaller variance in performance during the testing period. More significantly, CD-based models show smaller drop in performance compared to PCC based models, when tested during changing conditions like droughts.</p>
</sec>
</sec>
<sec id="Ch1.S4">
  <label>4</label><title>Discussion</title>
      <p id="d2e6281">Below we discuss the capabilities of the different algorithms, discuss some caveats to applying Causal Discovery in general and in particular for Hydrology. We close the section with some perspectives on implementing CD methods and discuss limitations of our work.</p>
      <p id="d2e6284">As discussed in the introduction, Hydro-meteorological systems have highly interconnected variables with strong feedback mechanism and closely related processes. This introduces numerous contemporaneous and lagged correlations in the system. Thus identifying the true causal drivers of a process becomes a challenging task. Thus, a multivariate and cause-effect driven approach is needed to unravel the causal drivers of processes.</p>
      <p id="d2e6287">By applying multivariate and stochastic framework based causal discovery algorithms, we were able to recover about half of the causal drivers in the system. Further, by considering the possibility of lagged relations in the data CD methods were able to eliminate large numbers of contemporaneous and lagged spurious correlations. This provided a parsimonious set of drivers for different variables, which can potentially lead to better process understanding and identifying the causes of change like streamflow change, droughts etc. However, it also meant CD methods could not detect many causal links in the system.</p>
      <p id="d2e6290">While <xref ref-type="bibr" rid="bib1.bibx49" id="text.93"/> applied their CD methods on a simple model forced with stochastically generated rainfall, we evaluated our CD methods on a large, complex model forced with realistic forcings, and evaluated the results across diverse climates and basins of the world. We observed the consistency of CD methods to identify cause-effect relations across these regions. This suggests their viability to be applied in diverse hydrological systems.</p>
      <p id="d2e6297">Further by focusing on the drivers of surface soil moisture, we found PCC systematically identified large number of correlations with many closely related variables of the energy and water budget, of which a small subset were the causal drivers. This misidentification was consistent as a systemic error, across the different climate regions considered. Whereas CD methods showed such systemic error against far fewer variables, however they missed identifying certain causal drivers of surface soil moisture. A striking feature of CD methods is their ability to correctly eliminate lagged variables as false positives. Whereas PCC classifies each lagged relation of the causal parent as a causal driver. Hence the CD methods are able to handle auto-correlated variables.</p>
      <p id="d2e6300">To understand the effect of finding causal and non-causal drivers of a variable in terms of time-series prediction, we applied machine learning models to predict surface soil moisture time-series in drought periods. In this regard, we saw (i) CD-based models are more parsimonious compared to PCC-based models, (ii) Both PCC and CD-based models perform good under the training period, (iii) importantly, CD-based models suffer a smaller drop in performance during the evaluation period. This highlights the importance of identifying causal drivers of a process, both for process understanding and predictions, especially under changing conditions like drought and possibly climate change.</p>
<sec id="Ch1.S4.SS1">
  <label>4.1</label><title>Method specific outcomes</title>
<sec id="Ch1.S4.SS1.SSS1">
  <label>4.1.1</label><title>PCC</title>
      <p id="d2e6317">As we expected, PCC found a high number of co-varying variable pairs. Choosing low threshold of correlation allowed it to discover most of the causal links (median Recall <inline-formula><mml:math id="M258" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.83). However, the definition of PCC lacks a causal interpretation, thus the variables identified can be called <italic>predictors</italic> and not causal drivers. This is the reason why any statistical test like PCC, Spearman's rho, Kendall's <inline-formula><mml:math id="M259" display="inline"><mml:mi mathvariant="italic">τ</mml:mi></mml:math></inline-formula>, or measures of Information Flow like Transfer Entropy, Mutual Information etc., are called Variable Selection or Predictor importance step. Overall, and in particular for drivers of surface soil moisture, PCC identifies very high false positives. This creates an illusion of model complexity by including redundant variables and their lags, which are statistically significant but causally unrelated. This makes understanding the process harder, while it necessitates the need of many variables for creating a prediction model that inherently has high computation cost in terms of time and memory.</p>
</sec>
<sec id="Ch1.S4.SS1.SSS2">
  <label>4.1.2</label><title>TCDF</title>
      <p id="d2e6345">TCDF identified the fewest causal links across all the climates, however it was able to keep false positives to the lowest. As mentioned earlier, for each variable in the system, it uses CNN's to predict it and interprets the attention scores in a Granger-Causality sense to find causal drivers of the variable. The Granger-Causality method was evaluated in <xref ref-type="bibr" rid="bib1.bibx49" id="text.94"/>, though a one-to-one comparison with results from TCDF is unfair, we comment on the similarities and differences we found with the former. Using Granger-Causality <xref ref-type="bibr" rid="bib1.bibx49" id="text.95"/> reported a high False Positive Rate, even with the small number of variables in their system. This highlights the problem with bivariate methods like PCC, Granger-Causality, etc., in a multivariate system. Where confounding (common cause) and autocorrelation severely affect the false positive discovery <xref ref-type="bibr" rid="bib1.bibx78 bib1.bibx49 bib1.bibx17" id="paren.96"/>. Comparatively, by adopting a multivariate approach and accounting for autocorrelation in its CNN architecture, TCDF was able to reduce the false positive discovery and performed the best (in FPR score) across all algorithms. However, TCDF failed to identify true positives, with the lowest Recall values (median Recall <inline-formula><mml:math id="M260" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.28). This may result from our inability to sufficiently train the CNN's, since the author's report F1 scores similar to the predecessor of PCMCI+, PCMCI <xref ref-type="bibr" rid="bib1.bibx47" id="paren.97"/>. We struggled to improve the Recall of TCDF by tuning its hyper-parameters. The process was particularly difficult owing to its high number of hyper-parameters, typical to any CNN architecture. This maybe since CNN's are better suited to predict spatial patterns and a different deep learning model like LSTM may yield better results <xref ref-type="bibr" rid="bib1.bibx41" id="paren.98"/>.</p>
</sec>
<sec id="Ch1.S4.SS1.SSS3">
  <label>4.1.3</label><title>VARLiNGAM</title>
      <p id="d2e6379">VARLiNGAM produced one of the most contrasting results amongst the CD methods. It consistently had varying MCC scores in all climate classes. Though it scored Recall values similar to PCMCI+ (median Recall <inline-formula><mml:math id="M261" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.40), as reported previously <xref ref-type="bibr" rid="bib1.bibx3 bib1.bibx29 bib1.bibx62" id="paren.99"/>. However, it was able to retrieve the non-linear link from plant canopy surface water into surface soil moisture which TCDF and PCMCI+ struggled to retrieve in any climate class. As suggested by <xref ref-type="bibr" rid="bib1.bibx34" id="text.100"/>, this may be a result of non-Gaussian errors obtained when VARLiNGAM uses linear models to fit the data.</p>
</sec>
<sec id="Ch1.S4.SS1.SSS4">
  <label>4.1.4</label><title>PCMCI+</title>
      <p id="d2e6403">PCMCI+ provided the most stable results across all climates in both Recall and MCC scores. Though, on average it could only identify 40 % of all the causal links (medain Recall <inline-formula><mml:math id="M262" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.41), which is a little lower than reported by <xref ref-type="bibr" rid="bib1.bibx62" id="text.101"/>. Further, the majority of the causal links in our adjacency matrix (Fig. <xref ref-type="fig" rid="F2"/>b) are contemporaneous, thus the algorithm was able to retrieve these contemporaneous links, as suggested by <xref ref-type="bibr" rid="bib1.bibx17" id="text.102"/>. <xref ref-type="bibr" rid="bib1.bibx49" id="text.103"/> reported a similar Recall for the base algorithm, PC-alg, for similar lengths of data. This is expected since the dimensionality of our test was higher (4 in former, 27 in ours) and the lag relation up-to which the search was done (lag-1 in former, lag-1 and contemporaneous in ours). However, we obtained similar levels of false positives (FPR <inline-formula><mml:math id="M263" display="inline"><mml:mrow><mml:mo>&lt;</mml:mo><mml:mn mathvariant="normal">0.2</mml:mn></mml:mrow></mml:math></inline-formula>) as <xref ref-type="bibr" rid="bib1.bibx49" id="text.104"/>. This is expected as well, since both the modifications to PC-alg, the skeleton discovery and MCI phase have been designed to handle autocorrelation and contemporaneous edges.</p>
</sec>
<sec id="Ch1.S4.SS1.SSS5">
  <label>4.1.5</label><title>DYNOTEARS</title>
      <p id="d2e6447">DYNOTEARS retrieved the highest causal links amongst all the CD methods (median Recall <inline-formula><mml:math id="M264" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.54). It showed that true positives can be discovered from the data as high as PCC, while keeping the False Discovery lower (Fig. <xref ref-type="fig" rid="F4"/>). The Recall values are comparable to those in <xref ref-type="bibr" rid="bib1.bibx50" id="text.105"/>, however, we obtained a higher False Positive Ratio.</p>
</sec>
</sec>
</sec>
<sec id="Ch1.S5" sec-type="conclusions">
  <label>5</label><title>Summary, Conclusions and Outlook</title>
      <p id="d2e6473">The science of cause-effect analysis has seen rapid development over recent years <xref ref-type="bibr" rid="bib1.bibx3 bib1.bibx22" id="paren.106"/>. Inspired by <xref ref-type="bibr" rid="bib1.bibx49" id="text.107"/> and the premise of finding causally-related variables, we evaluated state-of-the-art methods of Causal Discovery. While the former evaluated simpler methods of causal discovery in a simple lumped model, in the context of varying length of time-series, process and observational noise, here we evaluated <italic>strictly</italic> causal methods on output of a large, complex model. This allowed us to test the algorithms over a real-world like system while allowing the generating equations to be used as a benchmark of true causal relationships. We evaluated four theoretically distinct causal discovery methods (TCDF, VARLiNGAM, PCMCI+ and DYNOTEARS) that traverse the broad spectrum of causal discovery methods. We also overviewed some methods of representing causal relations via a graph and an adjacency matrix. By contrasting our results with PCC we exposed how bivariate and non-causal methods lead to inflated drivers.</p>
      <p id="d2e6485">We found the correlation based method PCC, identified the highest number of causal links, followed by DYNOTEARS. While other CD methods were able to <italic>Recall</italic> half or fewer causal links. However, CD methods were more effective at eliminating highly correlated but non-causal variables across climate types. By adopting multivariate frameworks with contemporaneous and lagged relations, CD methods were able to identify the correct order of lag relations amongst variables while eliminating multiple spurious correlations. This provided a parsimonious  set of causal drivers of a process, potentially leading to a better process understanding and time-series prediction. To test the latter we identified drivers of surface soil moisture during normal conditions with PCC and CD methods, for time-series prediction. Evaluation during drought period showed CD-based machine learning models performed better, with higher performance scores and smaller variability, compared to correlation based models, highlighting the importance of finding causal drivers of a process. Finally, we discussed some caveats to applying CD methods in the real world and discussed how their assumptions and algorithms can be exploited to further retrieve causes of variables in hydrometeorological systems.</p>
<sec id="Ch1.S5.SS1">
  <label>5.1</label><title>Caveats</title>
      <p id="d2e6498">It is evident that CD methods are able to identify many correct causal links while eliminating correlated but causally unrelated links. Although useful, satisfying the assumptions of CD methods in the real world can be difficult. For example, certain variables in a hydrological system may not be observed, like soil moisture below the surface, Baseflow, etc. This violates the assumption of causal sufficiency and can lead to spurious links between variables. In such cases, we suggest the identified links should be carefully interpreted in a Granger-Causality sense.</p>
      <p id="d2e6501">Another consequence of the strict assumptions of CD methods is the need to observe variables at the timescales of their causal interaction. This is especially relevant to hydrological applications since many variables are observed at different temporal resolutions. In such cases, the causal analysis is conducted on temporally aggregated data. Some research suggests partial recovery of the underlying causal interactions while other suggests occurrence of contemporaneous links instead of the lagged interactions <xref ref-type="bibr" rid="bib1.bibx23 bib1.bibx61" id="paren.108"/>.</p>
</sec>
<sec id="Ch1.S5.SS2">
  <label>5.2</label><title>Perspectives</title>
      <p id="d2e6515">In essence, the Causal Discovery methods discussed here are algorithms. Though they provide parameters to tweak their applications, their true potential lies in the fact that they're algorithms and hence parts of their structure can be swapped with alternative modules better suited in the context of their application. For example, as <xref ref-type="bibr" rid="bib1.bibx65" id="text.109"/> and <xref ref-type="bibr" rid="bib1.bibx62" id="text.110"/> suggested, if non-linear dependencies between variables are anticipated then the conditional independence tests of PCMCI+ can be done using various linear and non-linear methods. Similarly, if fewer lagged relations are expected in a system, then the initial estimate of the lagged adjacency matrix in VARLiNGAM can be calculated using a sparsity penalty (L1-norm of errors) instead of using a Ordinary Least Squares approach (L2-norm of errors).</p>
      <p id="d2e6524">Further, as mentioned by the authors of VARLiNGAM, the assumption of non-Gaussian errors makes it a unique tool in the family of Causal Discovery methods. We believe this makes it a valuable tool for CD in climate change scenarios, where non-stationarity in the distribution of hydro-meteorological variables is expected, which yields non-Gaussian model errors.</p>
      <p id="d2e6527">Although the objective of DYNOTEARS is to find a DAG, its theoretical implementation to find it as coefficients of a SVAR model allows for familiar interpretation. As SVAR models have long been used in Hydrology, particularly in forecasting models as ARMA, ARIMA and similar models. In the case of TCDF, by adopting the Granger-Causality framework, it avoids the fulfilment of the strong assumptions of Causal Sufficiency, Causal Markov assumption and Faithfulness on the data. This theoretically allows it to be applied in systems where the above assumptions cannot be satisfied.</p>
</sec>
<sec id="Ch1.S5.SS3">
  <label>5.3</label><title>Limitations</title>
      <p id="d2e6539">There are several limitations to our work. First, as mentioned by <xref ref-type="bibr" rid="bib1.bibx49" id="text.111"/>, causal interactions can evolve in time and different mechanisms can drive a process in different time periods. For example, they found wind speed as a causal driver of evapotranspiration during the summer season but no causal link was not identified in the winter season. This phenomenon of time-evolution of causal relations has been recognized in the literature and classified as an issue to be addressed when identifying causality in a time window or over the entire time-series (summary causal graph) <xref ref-type="bibr" rid="bib1.bibx49 bib1.bibx3" id="paren.112"/>. To this end, we applied causal analysis over the entire time-series, thus focusing on causal interactions over the entire time-period. Second, we assumed stationarity of the time-series data, which is necessary for many statistical tools like Linear Regression, which forms the backbone of most of the methods discussed here. Third, by performing the analysis in a simulated environment we ensured Causal Sufficiency. As discussed above, this may not be possible in real-world applications. This leads to the fourth issue, where the number of variables in the system increases to very high numbers. This creates a problem for algorithms in terms of (i) expanding the number of possible causal links that need to be evaluated (and eliminated if necessary), (ii) convergence of methods and (iii) computational time required. One could argue, for example, in the case of identifying the causal parents of surface soil moisture, that certain variables, like ground water storage, etc, could be excluded from the CD analysis as a direct cause-effect relationship is not expected between the variables. Thus, increasing the detection power of CD methods. Fifth, we applied CD methods in a simulated environment that represents physical processes with through a contemporaneous and 1 d lag relations. In contrast, many real-world hydrological variables, such as soil moisture, groundwater storage, and snowpack, exhibit pronounced long-term memory when observed empirically. In observational datasets, we rarely capture the complete state vector of the environment. This partial observability means that the unmeasured physical delays (e.g., percolation time, routing) manifest statistically as long memory. Therefore, if a purely data-driven modelling framework is to be used for prediction based directly on observations, relying solely on lag-1 variables is often insufficient, and higher-order (multi-step) Markov processes or autoregressive models are required to account for the system's integrated memory. While the CD methods evaluated in the manuscript can be adapted to allow detection of multi-step causal relations in a system, derivation of true drivers in this study is based on the mathematical governing equations of the CLSM F-2.5 model (Appendix A2). Because this simulated environment  is governed contemporaneous and 1 d lag transitions, the resulting true causality matrix only contains contemporaneous and 1 d lag relations. Thus, the CD methods were evaluated on their ability to accurately identify the correct causal variable and its correct lag, up-to one timestep. This constraint was an intended design to robustly contrast the key drivers selected from CD against those selected by empirical correlation-based methods, and to evaluate their predictive skills assuming that an exhaustive set of hydrological variables (both forcing and state) is accessible.</p>
      <p id="d2e6548">However, the limited availability of complete observation data indicates that variables with longer lag need to be considered when applying CD to real-world datasets. Investigating causal structures under these conditions is an interesting topic of future research, as some apparent long-lag causal relationships may actually represent pseudo-causality induced by hidden variables and limited observability. Further studies are warranted to explore scenarios within simulated environments where data availability is artificially restricted to commonly measured variables (e.g. precipitation, discharge and potential evaporation), allowing researchers to determine what can be causally inferred about the missing states. For example, <xref ref-type="bibr" rid="bib1.bibx17" id="text.113"/> utilised CD to reveal hydrological connectivity in a Karst aquifer system using time-series data for rainfall, potential evapotranspiration, resistivity, and percolation rates. By applying CD in both a synthetic case study and real-world observations, they incorporated lag relations of up to five time-steps to accurately capture the time span of preferential flow peaks. Similarly, <xref ref-type="bibr" rid="bib1.bibx1" id="text.114"/>, although with more comprehensive real-world data of climate and catchment attributes, used CD to identify the causal parents (drivers) of runoff signatures and report them to align with existing knowledge of the physical processes generating runoff.</p>
</sec>
</sec>

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

<app id="App1.Ch1.S1">
  <label>Appendix A</label><title>CLSM model: Description, modelling schemes and generating equations</title>
<sec id="App1.Ch1.S1.SS1">
  <label>A1</label><title>Model description</title>
      <p id="d2e6576">The CLSM model is composed of various routines to model different processes on the land surface. These routines are adopted or based on other works, <xref ref-type="bibr" rid="bib1.bibx40 bib1.bibx19" id="text.115"/>. The energy balance and canopy interception schemes are based on the MOSAIC LSM model, <xref ref-type="bibr" rid="bib1.bibx38 bib1.bibx39" id="text.116"/>. The sub-surface moisture distribution is based on <xref ref-type="bibr" rid="bib1.bibx15" id="text.117"/>. Using this distribution, the calculation of sub-surface storages and surface runoff generation is based on TOPMODEL from <xref ref-type="bibr" rid="bib1.bibx7" id="text.118"/>. Finally, the snow related simulations are based on <xref ref-type="bibr" rid="bib1.bibx45" id="text.119"/>. Since none of the grids selected in our analysis contained any snow variables (time-series was zeros), we do not discuss their governing equations.</p>
      <p id="d2e6594">The model is forced with nine meteorological forcings from a General Circulation Model. Precipitation, rainfall as fraction of precipitation, downward short-wave radiation flux, downward long-wave radiation, specific humidity, snow precipitation rate, air temperature, surface pressure and wind speed. Since these act as forcing to the model and are not affected by any feedback from it to the GCM, we consider these as independent variables and hence they do not have any causal drivers. Rather, these only act as causal drivers of other variables.</p>

<table-wrap id="TA1" specific-use="star"><label>Table A1</label><caption><p id="d2e6600">Table describing the short and long names and units of simulated and forcing variables. * marked variables are forcing variables. Obtained from the GLDAS model documentation <xref ref-type="bibr" rid="bib1.bibx43" id="paren.120"/>.</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">Short Name</oasis:entry>
         <oasis:entry colname="col2">Long Name</oasis:entry>
         <oasis:entry colname="col3">Unit</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">ACond_tavg</oasis:entry>
         <oasis:entry colname="col2">Aerodynamic conductance</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M265" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">m</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">AvgSurfT_tavg</oasis:entry>
         <oasis:entry colname="col2">Average surface skin   temperature</oasis:entry>
         <oasis:entry colname="col3">K</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Qsb_tavg</oasis:entry>
         <oasis:entry colname="col2">Baseflow-groundwater   runoff</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M266" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">ECanop_tavg</oasis:entry>
         <oasis:entry colname="col2">Canopy water   evaporation</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M267" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">ESoil_tavg</oasis:entry>
         <oasis:entry colname="col2">Direct evaporation   from bare soil</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M268" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Evap_tavg</oasis:entry>
         <oasis:entry colname="col2">Evapotranspiration</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M269" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Qg_tavg</oasis:entry>
         <oasis:entry colname="col2">Ground heat flux</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M270" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">W</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">GWS_tavg</oasis:entry>
         <oasis:entry colname="col2">Ground water storage</oasis:entry>
         <oasis:entry colname="col3">mm</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Qle_tavg</oasis:entry>
         <oasis:entry colname="col2">Latent heat net flux</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M271" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">W</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Lwnet_tavg</oasis:entry>
         <oasis:entry colname="col2">Net long-wave   radiation flux</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M272" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">W</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Swnet_tavg</oasis:entry>
         <oasis:entry colname="col2">Net short wave   radiation flux</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M273" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">W</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">CanopInt_tavg</oasis:entry>
         <oasis:entry colname="col2">Plant canopy surface   water</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M274" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">SoilMoist_P_tavg</oasis:entry>
         <oasis:entry colname="col2">Profile soil moisture</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M275" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Rainf_tavg*</oasis:entry>
         <oasis:entry colname="col2">Rain precipitation   rate</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M276" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">SoilMoist_RZ_tavg</oasis:entry>
         <oasis:entry colname="col2">Root zone soil   moisture</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M277" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Qh_tavg</oasis:entry>
         <oasis:entry colname="col2">Sensible heat net   flux</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M278" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">W</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">SnowDepth_tavg</oasis:entry>
         <oasis:entry colname="col2">Snow depth</oasis:entry>
         <oasis:entry colname="col3">m</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">SWE_tavg</oasis:entry>
         <oasis:entry colname="col2">Snow depth water   equivalent</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M279" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">EvapSnow_tavg</oasis:entry>
         <oasis:entry colname="col2">Snow evaporation</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M280" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Qsm_tavg</oasis:entry>
         <oasis:entry colname="col2">Snow melt</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M281" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Snowf_tavg*</oasis:entry>
         <oasis:entry colname="col2">Snow precipitation   rate</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M282" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">SnowT_tavg</oasis:entry>
         <oasis:entry colname="col2">Snow surface   temperature</oasis:entry>
         <oasis:entry colname="col3">K</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Qs_tavg</oasis:entry>
         <oasis:entry colname="col2">Storm surface runoff</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M283" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">SoilMoist_S_tavg</oasis:entry>
         <oasis:entry colname="col2">Surface soil moisture</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M284" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">TWS_tavg</oasis:entry>
         <oasis:entry colname="col2">Terrestrial water   storage</oasis:entry>
         <oasis:entry colname="col3">mm</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">TVeg_tavg</oasis:entry>
         <oasis:entry colname="col2">Transpiration</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M285" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">LWdown_f_tavg*</oasis:entry>
         <oasis:entry colname="col2">Downward   long-wave radiation flux</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M286" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">W</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">SWdown_f_tavg*</oasis:entry>
         <oasis:entry colname="col2">Downward short-wave   radiation flux</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M287" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">W</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Rainf_f_tavg*</oasis:entry>
         <oasis:entry colname="col2">Total precipitation   rate</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M288" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">m</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Wind_f_tavg*</oasis:entry>
         <oasis:entry colname="col2">Wind speed</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M289" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">m</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">s</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Tair_f_tavg*</oasis:entry>
         <oasis:entry colname="col2">Temperature</oasis:entry>
         <oasis:entry colname="col3">K</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Psurf_f_tavg*</oasis:entry>
         <oasis:entry colname="col2">Surface pressure</oasis:entry>
         <oasis:entry colname="col3">Pa</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Qair_f_tavg*</oasis:entry>
         <oasis:entry colname="col2">Specific humidity</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M290" display="inline"><mml:mrow class="unit"><mml:mi mathvariant="normal">kg</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msup><mml:mi mathvariant="normal">kg</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d2e7526">The model simulates various prognostic and internal variables, and outputs 33 hydro-meteorological variables. We avoided snow regions in our analysis due to highly varying snow-related variables where valid data was available. By ignoring the snow related variables we are left with 27 variables listed in Table <xref ref-type="table" rid="TA1"/>. As mentioned above, eight of these are forcing variables (ignoring snow precipitation rate). Thus, we have a total of 20 dynamically simulated variables in our analysis that have causal drivers.</p>
      <p id="d2e7531">We found certain differences in the variables described in the original paper and the current version of model outputs. For example the papers describe how a TOPMODEL based bulk variable called Catchment-Deficit is used for sub-surface moisture distribution. However, the current output variables do not contain the same, rather a variable called Profile Soil Moisture is provided. Using visual inspection and literature review we consider Profile Soil Moisture to be the Catchment-Deficit term. Thus we make certain assumptions to overcome such issues wherever necessary to obtain all the governing equations and/or relations.</p>
      <p id="d2e7534">Further, apart from the forcing variables and dynamically generated variables, the model uses a host of static parameters which characterize the local distribution of vegetation and topography. These parameters affect the simulation of various variables, like vegetation indices affect the scaling of transpiration in zones between completely saturated and wilting zones.</p>
      <p id="d2e7537">Thus in favour of simplicity, we do not mention the full complexity of the model and only mention model equations and/or describe the simulation routine, with the functional forms used to describe the causal relations amongst the variables, which form the reference truth in Fig. <xref ref-type="fig" rid="F2"/>a.</p>
</sec>
<sec id="App1.Ch1.S1.SS2">
  <label>A2</label><title>Modelling schemes and generating equations</title>
<sec id="App1.Ch1.S1.SS2.SSSx1" specific-use="unnumbered">
  <title>Canopy Interception</title>
      <p id="d2e7555">The canopy interception reservoir has one incoming flux of precipitation and one outgoing flux of evaporation from it. Thus, it has the functional form:

                  <disp-formula id="App1.Ch1.S1.E21" content-type="numbered"><label>A1</label><mml:math id="M291" display="block"><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msub><mml:mtext>CanopInt</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>Rainf</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Rainf-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>ECanop</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
</sec>
<sec id="App1.Ch1.S1.SS2.SSSx2" specific-use="unnumbered">
  <title>Surface Runoff</title>
      <p id="d2e7602">If the canopy interception reservoir is full after a precipitation event, the excess precipitation falls onto the land surface as through-fall precipitation. The model divides each spatial unit tile into three types based on the concurrent surface soil moisture. These are: completely saturated region, region at wilting point and the region between these two. The through-fall precipitation falling on the saturated region is immediately converted into storm surface runoff. While the through-fall precipitation on the latter two regions is scaled according to the surface soil moisture capacity. Thus, storm surface runoff is generated as:

              <disp-formula id="App1.Ch1.S1.E22" content-type="numbered"><label>A2</label><mml:math id="M292" display="block"><mml:mrow><mml:mi>Q</mml:mi><mml:msub><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mfenced open="{" close=""><mml:mtable columnspacing="1em" rowspacing="0.2ex" class="cases" columnalign="left left" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:mi>P</mml:mi><mml:msub><mml:mi>T</mml:mi><mml:mi>t</mml:mi></mml:msub><mml:mo>⋅</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mi mathvariant="normal">saturated</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mtext>if </mml:mtext><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:msub><mml:mi mathvariant="normal">se</mml:mi><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mo>&lt;</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mi>P</mml:mi><mml:msub><mml:mi>T</mml:mi><mml:mi>t</mml:mi></mml:msub><mml:mfenced close=")" open="("><mml:mrow><mml:msub><mml:mi>A</mml:mi><mml:mi mathvariant="normal">saturated</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mrow><mml:mi mathvariant="normal">transpiration</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mi mathvariant="normal">area</mml:mi></mml:mrow></mml:msub><mml:mo>⋅</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:msub><mml:mi mathvariant="normal">se</mml:mi><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi>M</mml:mi><mml:mi mathvariant="normal">se</mml:mi></mml:msub><mml:mtext>-</mml:mtext><mml:msub><mml:mo>max⁡</mml:mo><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mtext>if </mml:mtext><mml:msub><mml:mi>M</mml:mi><mml:mrow><mml:msub><mml:mi mathvariant="normal">se</mml:mi><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mo>&gt;</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M293" display="inline"><mml:mrow><mml:msub><mml:mi>M</mml:mi><mml:mi mathvariant="normal">se</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the surface excess given by surface soil moisture. This gives the functional form for Storm surface runoff as:

                  <disp-formula id="App1.Ch1.S1.E23" content-type="numbered"><label>A3</label><mml:math id="M294" display="block"><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mi>Q</mml:mi><mml:msub><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>CanopInt</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>SoilMoist-S</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Rainf</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Rainf-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
</sec>
<sec id="App1.Ch1.S1.SS2.SSSx3" specific-use="unnumbered">
  <title>Surface and sub-surface storages</title>
      <p id="d2e7797">In the CLSM model, surface and sub-surface soil moistures are simulated in two steps combining different modelling techniques. First a bulk catchment term called Catchment Deficit is calculated following <xref ref-type="bibr" rid="bib1.bibx7" id="text.121"/>. Second, this deficit is distributed across the layers of soil using the formulation in <xref ref-type="bibr" rid="bib1.bibx15" id="text.122"/>. Then the local values of these storages are based on the antecedent conditions and the transfer of moisture between the vertical levels. The transfer of moisture from surface to atmosphere follows the equations in <xref ref-type="bibr" rid="bib1.bibx38" id="text.123"/> and sub-surface transfers are simulated using the TOPMODEL scheme from <xref ref-type="bibr" rid="bib1.bibx7" id="text.124"/>.</p>
      <p id="d2e7812"><italic>Surface soil moisture</italic>. The surface soil moisture is modelled as a reservoir of moisture with incoming flux as precipitation (through-fall or direct) and outgoing flux as infiltration into root-zone soil moisture and evaporation from soil. At each time-step the model reduces the excess (or deficit) in this storage by percolating (or gained via capillary action) a fraction of the storage into the reservoir below. The amount percolated (or gained via capillary action) is proportional to the absolute storage, this adds a auto-correlation type relation in the variable. Thus its functional form is given as:

              <disp-formula id="App1.Ch1.S1.E24" content-type="numbered"><label>A4</label><mml:math id="M295" display="block"><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mtext>SoilMoist-S</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>Rainf</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Rainf-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>SoilMoist-RZ</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mtext>SoilMoist-P</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>CanopInt</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>ESoil</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Evap</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mtext>SoilMoist-S</mml:mtext><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
      <p id="d2e7907"><italic>Root-zone soil moisture</italic>. The Root-zone soil moisture is modelled as a reservoir of moisture with incoming flux as moisture from Surface soil moisture and outgoing flux as percolation into groundwater and evaporation from soil. Root-zone soil moisture excess (or deficit) is also reduced as proportional to the absolute value of storage. Thus its functional form is given as:

              <disp-formula id="App1.Ch1.S1.E25" content-type="numbered"><label>A5</label><mml:math id="M296" display="block"><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mtext>SoilMoist-RZ</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>SoilMoist-S</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>SoilMoist-P</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mtext>GWS</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>ESoil</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Evap</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mtext>SoilMoist-RZ</mml:mtext><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
      <p id="d2e7988"><italic>Profile soil moisture</italic>. The Profile soil moisture term was assumed to be related to the Catchment Moisture Deficit term in <xref ref-type="bibr" rid="bib1.bibx40" id="text.125"/>. Catchment moisture deficit is the moisture required to completely saturate the sub-surface and bring the water table to near the surface. Thus it is updated according to the moisture storages in various sub-surface levels locally and summed over the entire catchment. Thus, its functional form is given as:

                  <disp-formula id="App1.Ch1.S1.E26" content-type="numbered"><label>A6</label><mml:math id="M297" display="block"><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mtext mathvariant="normal">SoilMoist-P</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>SoilMoist-RZ</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>GWS</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>SoilMoist-P</mml:mtext><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
      <p id="d2e8043"><italic>Groundwater storage</italic>. Finally, the root zone moisture transfers the moisture to the water table in the groundwater. The groundwater acts as a reservoir for groundwater baseflow. Thus it has one incoming flux as percolation from Root-zone soil moisture and outgoing flux as baseflow discharge. Thus its functional form is given as:

                  <disp-formula id="App1.Ch1.S1.E27" content-type="numbered"><label>A7</label><mml:math id="M298" display="block"><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mtext>GWS</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>SoilMoist-RZ</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Qsb</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>GWS</mml:mtext><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
</sec>
<sec id="App1.Ch1.S1.SS2.SSSx4" specific-use="unnumbered">
  <title>Baseflow-groundwater runoff</title>
      <p id="d2e8097">The discharge from the groundwater storage is modelled as a non-linear function of the bulk catchment moisture deficit, the local water table depth and the mean water table depth of the catchment.

                  <disp-formula id="App1.Ch1.S1.Ex1"><mml:math id="M299" display="block"><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mtext>Qsb</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi>K</mml:mi><mml:mi mathvariant="normal">s</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mtext>surface</mml:mtext><mml:mo>)</mml:mo></mml:mrow><mml:mi mathvariant="italic">ν</mml:mi></mml:mfrac></mml:mstyle><mml:mo>⋅</mml:mo><mml:mi>exp⁡</mml:mi><mml:mo>(</mml:mo><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>x</mml:mi><mml:mo mathvariant="normal">¯</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi mathvariant="italic">ν</mml:mi><mml:mover accent="true"><mml:mi>d</mml:mi><mml:mo mathvariant="normal">¯</mml:mo></mml:mover><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M300" display="inline"><mml:mover accent="true"><mml:mi>d</mml:mi><mml:mo mathvariant="normal">¯</mml:mo></mml:mover></mml:math></inline-formula> and <inline-formula><mml:math id="M301" display="inline"><mml:mover accent="true"><mml:mi>x</mml:mi><mml:mo mathvariant="normal">¯</mml:mo></mml:mover></mml:math></inline-formula> are the mean water table depth of the catchment and the local topography, <inline-formula><mml:math id="M302" display="inline"><mml:mrow><mml:msub><mml:mi>K</mml:mi><mml:mi mathvariant="normal">s</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mtext>surface</mml:mtext><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M303" display="inline"><mml:mi mathvariant="italic">ν</mml:mi></mml:math></inline-formula> is the surface-saturated hydraulic conductivity and describes the exponential decay of the saturated hydraulic conductivity with depth. Thus, its functional form is given as:

                  <disp-formula id="App1.Ch1.S1.E28" content-type="numbered"><label>A8</label><mml:math id="M304" display="block"><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mtext>Qsb</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>SoilMoist-P</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>GWS</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
</sec>
<sec id="App1.Ch1.S1.SS2.SSSx5" specific-use="unnumbered">
  <title>Terrestrial water storage</title>
      <p id="d2e8238">Terrestrial water storage was not found to be mentioned in the original or supporting papers. Perhaps it was introduced much later in light of the GRACE mission. However, it has been defined in the product README document. Thus the TWS is defined following the same, with the functional form as:

                  <disp-formula id="App1.Ch1.S1.E29" content-type="numbered"><label>A9</label><mml:math id="M305" display="block"><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msub><mml:mtext>Tws</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>CanopInt</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>GWS</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>SoilMoist-P</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
</sec>
<sec id="App1.Ch1.S1.SS2.SSSx6" specific-use="unnumbered">
  <title>Evaporative Fluxes</title>
      <p id="d2e8288">The total evaporation from the surface is modelled using a bulk effective resistance term, <inline-formula><mml:math id="M306" display="inline"><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi mathvariant="normal">eff</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>. It captures the effect of canopy resistance, aerodynamic resistance and bare soil resistance. Thus the total evaporation is given as:

                  <disp-formula id="App1.Ch1.S1.Ex2"><mml:math id="M307" display="block"><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msub><mml:mtext>Evap</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi mathvariant="italic">ϵ</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mtext>Psurf-f</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>⋅</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi>e</mml:mi><mml:mi>s</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:msub><mml:msub><mml:mo>)</mml:mo><mml:mi>t</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mi>e</mml:mi><mml:msub><mml:mi>a</mml:mi><mml:mi>t</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mtext>reff</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:math></disp-formula>

            Therefore, its functional form is given as:

              <disp-formula id="App1.Ch1.S1.E30" content-type="numbered"><label>A10</label><mml:math id="M308" display="block"><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mtext>Evap</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:mi>T</mml:mi><mml:msub><mml:mi>c</mml:mi><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Tair</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Qair-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Psurf-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>ACond</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mtext>WindSpeed-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>CanopInt</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>SoilMoist-S</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mtext>SoilMoist-P</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

            Similar to the total evaporation the other evaporative fluxes are calculated as below:

                  <disp-formula specific-use="gather"><mml:math id="M309" display="block"><mml:mtable displaystyle="true"><mml:mtr><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mtext>ECanop</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mo movablelimits="false">min⁡</mml:mo><mml:mfenced close="" open="("><mml:mrow><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mtext>CanopInt</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo><mml:msub><mml:mtext>Evap</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>⋅</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mtext>CanopInt</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mtext>CanopInt-max</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mfenced open="" close=")"><mml:mrow><mml:mo>⋅</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi mathvariant="normal">a</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>r</mml:mi><mml:mi mathvariant="normal">Tbs</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi>a</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:mstyle displaystyle="false"><mml:mfrac style="text"><mml:mrow><mml:msub><mml:mtext>CanopInt</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mtext>CanopInt-max</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>⋅</mml:mo><mml:msub><mml:mi>r</mml:mi><mml:mi mathvariant="normal">Tbs</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mtext>Tveg</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mo>(</mml:mo><mml:msub><mml:mtext>Evap</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mtext>ECanop</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:mfenced close=")" open="("><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>r</mml:mi><mml:mi mathvariant="normal">bs</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msub><mml:mtext>ESoil</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mo>(</mml:mo><mml:msub><mml:mtext>Evap</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mtext>ECanop</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:mfenced close=")" open="("><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi mathvariant="normal">bs</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>r</mml:mi><mml:mi mathvariant="normal">bs</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

            where <inline-formula><mml:math id="M310" display="inline"><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi mathvariant="normal">bs</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the bare soil resistance to evaporation and <inline-formula><mml:math id="M311" display="inline"><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the canopy resistance to transpiration, function of <inline-formula><mml:math id="M312" display="inline"><mml:mrow><mml:msub><mml:mtext>CanopInt</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M313" display="inline"><mml:mrow><mml:msub><mml:mtext>WindSpeed-f</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>. Thus, we obtain the functional relationships as:

                  <disp-formula specific-use="gather" content-type="numbered"><mml:math id="M314" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="App1.Ch1.S1.E31"><mml:mtd><mml:mtext>A11</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mtext mathvariant="normal">ECanop</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>Evap</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>CanopInt</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>SoilMoist-S</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Wind-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="App1.Ch1.S1.E32"><mml:mtd><mml:mtext>A12</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mtext>ESoil</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>Evap</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>ECanop</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>CanopInt</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mtext>SoilMoist-S</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>SoilMoist-RZ</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Wind-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="App1.Ch1.S1.E33"><mml:mtd><mml:mtext>A13</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mtext>Tveg</mml:mtext><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>Evap</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>ECanop</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>CanopInt</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mtext>SoilMoist-S</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Wind-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula></p>
</sec>
<sec id="App1.Ch1.S1.SS2.SSSx7" specific-use="unnumbered">
  <title>Aerodynamic Conductance</title>
      <p id="d2e8920">Aerodynamic conductance is defined on the data product website, as the measure of how effectively vapour flows through stomata openings, total leaf area and soil surface. It is the inverse of aerodynamic resistance. In the papers the effective aerodynamic resistance is defined as the summation of

                  <disp-formula id="App1.Ch1.S1.E34" content-type="numbered"><label>A14</label><mml:math id="M315" display="block"><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mtext>ACond</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>Qair-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Tair-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Psurf-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Wind-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
</sec>
<sec id="App1.Ch1.S1.SS2.SSSx8" specific-use="unnumbered">
  <title>Energy Balance equations and Vapour flux equation</title>
      <p id="d2e8975">The above two equations are simultaneously solved using a first order linearization of terms to get the <inline-formula><mml:math id="M316" display="inline"><mml:mrow><mml:mi mathvariant="italic">δ</mml:mi><mml:msub><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M317" display="inline"><mml:mrow><mml:msub><mml:mi>e</mml:mi><mml:mi mathvariant="normal">a</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> terms.

                  <disp-formula specific-use="gather"><mml:math id="M318" display="block"><mml:mtable displaystyle="true"><mml:mtr><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mi>R</mml:mi><mml:mrow><mml:mi mathvariant="normal">sw</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="normal">net</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>R</mml:mi><mml:mi mathvariant="normal">lw</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi>C</mml:mi><mml:mi>H</mml:mi></mml:msub><mml:mi mathvariant="italic">δ</mml:mi><mml:msub><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>+</mml:mo><mml:msub><mml:mi>R</mml:mi><mml:mi mathvariant="normal">lw</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:mi>H</mml:mi><mml:mo>+</mml:mo><mml:mi mathvariant="italic">λ</mml:mi><mml:mi>E</mml:mi><mml:mo>+</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mi>D</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mi>E</mml:mi><mml:mi mathvariant="normal">surface</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>E</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi mathvariant="normal">s</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>(</mml:mo><mml:msub><mml:mi>e</mml:mi><mml:mi mathvariant="normal">s</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi></mml:msub><mml:mo>)</mml:mo><mml:mo>-</mml:mo><mml:msub><mml:mi>e</mml:mi><mml:mi mathvariant="normal">a</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

            These are then used to update the values ground heat flux, sensible heat flux and upward long-wave radiation fluxes as:

                  <disp-formula specific-use="gather"><mml:math id="M319" display="block"><mml:mtable displaystyle="true"><mml:mtr><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msubsup><mml:mi>R</mml:mi><mml:mi mathvariant="normal">lw</mml:mi><mml:mi>t</mml:mi></mml:msubsup><mml:mo>=</mml:mo><mml:msubsup><mml:mi>R</mml:mi><mml:mi mathvariant="normal">lw</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msub><mml:mi>R</mml:mi><mml:mi mathvariant="normal">lw</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>|</mml:mo><mml:mi>t</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="italic">δ</mml:mi><mml:msubsup><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi>t</mml:mi></mml:msubsup></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msup><mml:mi>H</mml:mi><mml:mi>t</mml:mi></mml:msup><mml:mo>=</mml:mo><mml:msup><mml:mi>H</mml:mi><mml:mi>t</mml:mi></mml:msup><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msup><mml:mi>H</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msubsup><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msubsup></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>|</mml:mo><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>⋅</mml:mo><mml:mi mathvariant="italic">δ</mml:mi><mml:msubsup><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi>t</mml:mi></mml:msubsup><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msup><mml:mi>H</mml:mi><mml:mi>t</mml:mi></mml:msup></mml:mrow><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msubsup><mml:mi>e</mml:mi><mml:mi mathvariant="normal">a</mml:mi><mml:mi>t</mml:mi></mml:msubsup></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>|</mml:mo><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>⋅</mml:mo><mml:mi mathvariant="italic">δ</mml:mi><mml:msubsup><mml:mi>e</mml:mi><mml:mi mathvariant="normal">a</mml:mi><mml:mi>t</mml:mi></mml:msubsup></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msup><mml:mi>G</mml:mi><mml:mi>t</mml:mi></mml:msup><mml:mo>=</mml:mo><mml:msup><mml:mi>G</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msup><mml:mi>G</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:mrow><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:msubsup><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msubsup></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>|</mml:mo><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>⋅</mml:mo><mml:mi mathvariant="italic">δ</mml:mi><mml:msubsup><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi>t</mml:mi></mml:msubsup></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

            This gives a functional form for the temperature of the surface/canopy system and the energy budget terms as:

                  <disp-formula specific-use="gather" content-type="numbered"><mml:math id="M320" display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="App1.Ch1.S1.E35"><mml:mtd><mml:mtext>A15</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mi>T</mml:mi><mml:msub><mml:mi>c</mml:mi><mml:mi>t</mml:mi></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msubsup><mml:mi>L</mml:mi><mml:mrow><mml:mi mathvariant="normal">lw</mml:mi><mml:mo>-</mml:mo><mml:mi>f</mml:mi></mml:mrow><mml:mi>t</mml:mi></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>S</mml:mi><mml:mrow><mml:mi mathvariant="normal">sw</mml:mi><mml:mo>-</mml:mo><mml:mi>f</mml:mi></mml:mrow><mml:mi>t</mml:mi></mml:msubsup><mml:mo>,</mml:mo><mml:msup><mml:mi>H</mml:mi><mml:mi>t</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi>E</mml:mi><mml:mi>t</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>G</mml:mi><mml:mi>D</mml:mi><mml:mi>t</mml:mi></mml:msubsup><mml:mo>,</mml:mo><mml:msub><mml:mtext>Qair-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Tair-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mtext>Psurf-f</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msubsup><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="App1.Ch1.S1.E36"><mml:mtd><mml:mtext>A16</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msup><mml:mi>H</mml:mi><mml:mi>t</mml:mi></mml:msup><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msubsup><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi>t</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="App1.Ch1.S1.E37"><mml:mtd><mml:mtext>A17</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msup><mml:mi>G</mml:mi><mml:mi>t</mml:mi></mml:msup><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msup><mml:mi>G</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi>t</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="App1.Ch1.S1.E38"><mml:mtd><mml:mtext>A18</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" class="stylechange"/><mml:msub><mml:mtext>Qle</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mtext>ECanop</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>Tveg</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mtext>ESoil</mml:mtext><mml:mi>t</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="App1.Ch1.S1.E39"><mml:mtd><mml:mtext>A19</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msubsup><mml:mi>R</mml:mi><mml:mi mathvariant="normal">lw</mml:mi><mml:mi>t</mml:mi></mml:msubsup><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msubsup><mml:mi>R</mml:mi><mml:mrow><mml:mi mathvariant="normal">lw</mml:mi><mml:mo>-</mml:mo><mml:mi>f</mml:mi></mml:mrow><mml:mi>t</mml:mi></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi>t</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="App1.Ch1.S1.E40"><mml:mtd><mml:mtext>A20</mml:mtext></mml:mtd><mml:mtd><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msubsup><mml:mi>L</mml:mi><mml:mi mathvariant="normal">lw</mml:mi><mml:mi>t</mml:mi></mml:msubsup><mml:mo>=</mml:mo><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:msubsup><mml:mi>L</mml:mi><mml:mrow><mml:mi mathvariant="normal">lw</mml:mi><mml:mo>-</mml:mo><mml:mi>f</mml:mi></mml:mrow><mml:mi>t</mml:mi></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>T</mml:mi><mml:mi mathvariant="normal">c</mml:mi><mml:mi>t</mml:mi></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula></p>
</sec>
</sec>
<sec id="App1.Ch1.S1.SS3">
  <label>A3</label><title>Model forcings and simulation period</title>
      <p id="d2e9706">As described above, the model is forced with global meteorological forcing dataset from Princeton University <xref ref-type="bibr" rid="bib1.bibx71" id="text.126"/>. The model simulations were initialized on simulation date 1 January 1948 using soil moisture and other state fields set at climatology. The total simulation period spans 1 January 1948 to 31 December 2014. The models simulates the variables at 3-hourly intervals and provides the output at 3-hourly, daily and monthly temporal resolution. The data used in this study was from 1 January 2002 till 31 December 2014 at daily timescale resolution.</p>
</sec>
</app>

<app id="App1.Ch1.S2">
  <label>Appendix B</label><title>Algorithm settings</title>
      <p id="d2e9721">Below we describe the algorithm parameters used and modifications applied for this study. Before running the analysis we standardized the data by subtracting its mean and dividing it by the standard deviation. Since the maximum lag in causal relations was set to be 1, we conducted the analysis by fixing the maximum lag parameters accordingly for testing.</p>
<sec id="App1.Ch1.S2.SS1">
  <label>B1</label><title>PCC</title>
      <p id="d2e9731">For PCC, we selected only those variables as drivers where the <inline-formula><mml:math id="M321" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> value was smaller than 0.05 and absolute correlation coefficient greater than 0.2 <xref ref-type="bibr" rid="bib1.bibx88" id="paren.127"/> We chose a low correlation threshold to maximize the inclusion of potential causal drivers, while reducing the likelihood of retaining purely spurious associations via the significance threshold.</p>
</sec>
<sec id="App1.Ch1.S2.SS2">
  <label>B2</label><title>TCDF</title>
      <p id="d2e9752">As summarized in Table <xref ref-type="table" rid="T1"/>, TCDF has six parameters. By reviewing the method paper, we chose the following parameters: maximum lag <inline-formula><mml:math id="M322" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 1, hidden layers <inline-formula><mml:math id="M323" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0, kernel size <inline-formula><mml:math id="M324" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 4, dilation coefficient <inline-formula><mml:math id="M325" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 4, number of epochs <inline-formula><mml:math id="M326" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 1000, significance <inline-formula><mml:math id="M327" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 1 and learning rate <inline-formula><mml:math id="M328" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.005.</p>
</sec>
<sec id="App1.Ch1.S2.SS3">
  <label>B3</label><title>PCMCI+</title>
      <p id="d2e9815">The parameters for PCMCI+ were minimum lag <inline-formula><mml:math id="M329" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0 and maximum lag <inline-formula><mml:math id="M330" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 1. In addition, at the significance threshold <inline-formula><mml:math id="M331" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">α</mml:mi><mml:mi mathvariant="normal">pc</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.95</mml:mn></mml:mrow></mml:math></inline-formula>, the conditional independence test was the partial correlation (ParCorr) from the tigramite package itself (see <italic>Code availability</italic>). Since the analysis data was from a perfect environment with no observational or process noise, this could potentially lead to “perfect fitting” of various variables during the conditional independence tests. This leads to variables negating each other's effects, where in fact, both may be causal drivers <xref ref-type="bibr" rid="bib1.bibx49" id="paren.128"/>. This is a case of violation of causal faithfulness, wherein the causal relations exist, however they cannot be recovered by conditional independence tests <xref ref-type="bibr" rid="bib1.bibx62" id="paren.129"/>. Thus, to avoid such issues, we added randomly generated noise to the data before conducting the analysis. The noise was generated using a Gaussian random noise of <inline-formula><mml:math id="M332" display="inline"><mml:mrow><mml:mi>N</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mo>(</mml:mo><mml:mn mathvariant="normal">0.2</mml:mn><mml:mi mathvariant="italic">σ</mml:mi><mml:msup><mml:mo>)</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfenced></mml:mrow></mml:math></inline-formula> where <inline-formula><mml:math id="M333" display="inline"><mml:mi mathvariant="italic">σ</mml:mi></mml:math></inline-formula> is the sample standard deviation of the time-series. We tested the algorithm in range of noise levels, <inline-formula><mml:math id="M334" display="inline"><mml:mrow><mml:mn mathvariant="normal">0.1</mml:mn><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.5</mml:mn><mml:mi mathvariant="italic">σ</mml:mi></mml:mrow></mml:math></inline-formula> and found the results to be qualitatively robust, giving confidence that the results are not an artifact from the level of noise. While this does not guarantee causal faithfulness, it allows us to create a non-deterministic system which is a condition for causal faithfulness. Further, it also makes the evaluation more comparable to realistic world scenarios where observational is present.</p>
      <p id="d2e9905">Further, since PCMCI+ models causal relations using a graph (the Directed Acyclic Graph), it allows prior knowledge to be injected into the graph. This allows the benefit of expert knowledge of the system (if any) to be utilised to find causal relations, instead of just relying on the algorithm. Thus, we explicitly removed incoming causal links into the eight forcing variables.</p>
</sec>
<sec id="App1.Ch1.S2.SS4">
  <label>B4</label><title>VARLiNGAM</title>
      <p id="d2e9917">VARLiNGAM offers a single parameter to modify the algorithm, the maximum lag parameter which was selected as 1. A key assumption of VARLiNGAM is that error terms are non-Gaussian and mutually independent. However, majority of variables in our analysis showed Gaussian distribution. Thus, similar to PCMCI+, to satisfy this assumption and stabilize estimation, we added randomly generated noise sampled from a gamma distribution with scale factor <inline-formula><mml:math id="M335" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.1 and shape <inline-formula><mml:math id="M336" display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 1. This introduces mild skewness while maintaining overall variance of the original time-series. We tested for varying levels of noise ranging between 0.1 to 0.3 scale factor and obtained qualitatively similar results. Thus, giving us confidence towards the robustness of the results towards the addition of noise.</p>
      <p id="d2e9934">Finally, the algorithm provides the modelled relations as the coefficients of a SVAR model (the adjacency matrix). Since these coefficients can take very small values, we applied a simple threshold of 0.1 for the contemporaneous adjacency matrix and 0.01 for the lagged adjacency matrix. The coefficients above these thresholds were considered to represent causal relations. We selected 0.1 for the contemporaneous adjacency matrix because we anticipated most links to be contemporaneous and hence have a larger coefficient in the SVAR model. Similarly, we expected fewer causal links in the lagged adjacency matrix, thus, selected a lower threshold of 0.01 for it.</p>
</sec>
<sec id="App1.Ch1.S2.SS5">
  <label>B5</label><title>DYNOTEARS</title>
      <p id="d2e9945">For DYNOTEARS, we selected the sparsity penalty terms as <inline-formula><mml:math id="M337" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mi mathvariant="normal">w</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.001</mml:mn></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M338" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mi mathvariant="normal">a</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.01</mml:mn></mml:mrow></mml:math></inline-formula>, while the maximum cyclicity allowed was <inline-formula><mml:math id="M339" display="inline"><mml:mrow><mml:mi>h</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold">W</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.01</mml:mn><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, instead of 0 to allow for any converge errors issues. Then, similar to VARLiNGAM, the causal relations in DYNOTEARS are represented by coefficients of the SVAR model. We select the <inline-formula><mml:math id="M340" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">W</mml:mi><mml:mi mathvariant="normal">threshold</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.01</mml:mn></mml:mrow></mml:math></inline-formula> for the existence of a causal relation. Further, similar to PCMCI+, DYNOTEARS allows including the posterior probability of known causal relations to be included in the system, accordingly we restrict the causal relations incoming into the forcing variables.</p>
</sec>
</app>

<app id="App1.Ch1.S3">
  <label>Appendix C</label><title>Machine learning model for time-series predictions</title>
      <p id="d2e10020">We used two machine learning models for prediction of variable time-series, support vector regression model and a feedforward neural network.</p>
      <p id="d2e10023">We implemented a Support Vector Regression (SVR) model with a radial basis function (RBF) kernel using the <monospace>scikit-learn</monospace> library <xref ref-type="bibr" rid="bib1.bibx54" id="paren.130"/>. Model hyperparameters were optimized using a grid search with three-fold cross-validation. The hyperparameter search space included the regularization parameter <inline-formula><mml:math id="M341" display="inline"><mml:mrow><mml:mi>C</mml:mi><mml:mo>∈</mml:mo><mml:mo mathvariant="italic">{</mml:mo><mml:mn mathvariant="normal">0.1</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mn mathvariant="normal">10</mml:mn><mml:mo mathvariant="italic">}</mml:mo></mml:mrow></mml:math></inline-formula>, the epsilon parameter <inline-formula><mml:math id="M342" display="inline"><mml:mrow><mml:mi mathvariant="italic">ϵ</mml:mi><mml:mo>∈</mml:mo><mml:mo mathvariant="italic">{</mml:mo><mml:msup><mml:mn mathvariant="normal">10</mml:mn><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">6</mml:mn></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mn mathvariant="normal">10</mml:mn><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">4</mml:mn></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mn mathvariant="normal">10</mml:mn><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup><mml:mo mathvariant="italic">}</mml:mo></mml:mrow></mml:math></inline-formula>, and the kernel coefficient <inline-formula><mml:math id="M343" display="inline"><mml:mrow><mml:mi mathvariant="italic">γ</mml:mi><mml:mo>∈</mml:mo><mml:mo mathvariant="italic">{</mml:mo><mml:mtext mathvariant="monospace">scale</mml:mtext><mml:mo>,</mml:mo><mml:mtext mathvariant="monospace">auto</mml:mtext><mml:mo mathvariant="italic">}</mml:mo></mml:mrow></mml:math></inline-formula>. Model performance was evaluated using the coefficient of determination (<inline-formula><mml:math id="M344" display="inline"><mml:mrow><mml:msup><mml:mi>R</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula>) as the scoring metric.</p>
      <p id="d2e10130">We implemented a feedforward neural network (FNN) using the <monospace>Keras</monospace> library <xref ref-type="bibr" rid="bib1.bibx13" id="paren.131"/>. The network consisted of three hidden layers with 32, 16, and 8 neurons, respectively. Rectified Linear Unit (ReLU) activation functions were used for the hidden layers, while the output layer employed a linear activation suitable for regression tasks. Light dropout regularization was applied to mitigate overfitting. The model was trained using the Adam optimizer with a learning rate of 0.001, minimizing the mean squared error (MSE) loss function.</p>
      <p id="d2e10139">The figures below show the performance and error metrics for the prediction of different variables, across increasing noise levels. The subplots show the scores in the training period and the difference in testing and training periods.</p>

      <fig id="FC1" specific-use="star"><label>Figure C1</label><caption><p id="d2e10145">Performance and error metrics for surface soil moisture predictions over a grid in Ganga basin. Similar to Fig. <xref ref-type="fig" rid="F7"/>a–c and b–d, the figures show the performance (and error metrics) during the training period and the difference in performance during the testing and training periods. Further, figures show the results across different levels of noise in the system. The machine learning model used for prediction is support vector regression model.</p></caption>
        <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f08.png"/>

      </fig>

      <fig id="FC2" specific-use="star"><label>Figure C2</label><caption><p id="d2e10158">Similar to Fig. <xref ref-type="fig" rid="FC1"/> but with a feedforward neural network model.</p></caption>
        <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f09.png"/>

      </fig>

      <fig id="FC3" specific-use="star"><label>Figure C3</label><caption><p id="d2e10171">Similar to Fig. <xref ref-type="fig" rid="FC1"/> but scores for prediction of surface storm runoff in the Ganga basin. Training period: 1 January 2000 to 31 December 2003, Testing period: 1 January 2004 to 31 December 2005.</p></caption>
        <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f10.png"/>

      </fig>

      <fig id="FC4" specific-use="star"><label>Figure C4</label><caption><p id="d2e10184">Same as Fig. <xref ref-type="fig" rid="FC3"/> but predicted using a feedforward neural network.</p></caption>
        <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f11.png"/>

      </fig>

      <fig id="FC5" specific-use="star"><label>Figure C5</label><caption><p id="d2e10198">Similar to Fig. <xref ref-type="fig" rid="FC1"/> but scores for prediction of transpiration in the Murray basin. Training period: 1 January 2007 to 31 December 2012, Testing period: 1 January 2005 to 31 December 2006.</p></caption>
        <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f12.png"/>

      </fig>

      <fig id="FC6" specific-use="star"><label>Figure C6</label><caption><p id="d2e10211">Same as Fig. <xref ref-type="fig" rid="FC5"/> but predicted using a feedforward neural network.</p></caption>
        <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f13.png"/>

      </fig>


</app>

<app id="App1.Ch1.S4">
  <label>Appendix D</label><title>PCC and CD-based ML models under increasing training sample size</title>
      <p id="d2e10232">We tested the performance of various PCC and CD-based models under increasing training sample size. The details of the analysis and the results are presented below. This analysis is similar to the one shown in Sect. <xref ref-type="sec" rid="Ch1.S2.SS7"/> with two key differences. First, we did not add any synthetically generated random noise to the data. Second, we trained separate models on increasing sample sizes of 75 d, 150 d, 6 months, 9 months, 1 year and 4 years. Then we evaluated their performance over the period of 1 January 2004 to 31 December 2004. The Table <xref ref-type="table" rid="TD1"/> summarises the analysis, while results are presented in Figs. <xref ref-type="fig" rid="FD1"/>, <xref ref-type="fig" rid="FD2"/> and <xref ref-type="fig" rid="FD3"/>.</p>

<table-wrap id="TD1"><label>Table D1</label><caption><p id="d2e10249">Experiment details for increasing sample size analysis.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="2">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">Predictors</oasis:entry>
         <oasis:entry colname="col2">Same as Sect. 2.7</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Noise added</oasis:entry>
         <oasis:entry colname="col2">None</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Training period</oasis:entry>
         <oasis:entry colname="col2">Varying: 75 d, 6 months, 9 months, 1 year and 4 years; starting from 1 Jan 2000</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Testing period</oasis:entry>
         <oasis:entry colname="col2">1 Jan 2004 to 31 Dec 2004</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Location</oasis:entry>
         <oasis:entry colname="col2">Ganga Basin</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Target variable</oasis:entry>
         <oasis:entry colname="col2">Surface soil moisture</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <fig id="FD1"><label>Figure D1</label><caption><p id="d2e10321">Training period performance (and error) metrics of analysis with different training sample sizes (Appendix <xref ref-type="sec" rid="App1.Ch1.S4"/>). Results shown for increasing periods of training length.</p></caption>
        
        <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f14.png"/>

      </fig>

<fig id="FD2"><label>Figure D2</label><caption><p id="d2e10338">Same as Fig. <xref ref-type="fig" rid="FD1"/> but for testing period. Legend common to Figs. <xref ref-type="fig" rid="FD1"/>, <xref ref-type="fig" rid="FD2"/> and <xref ref-type="fig" rid="FD3"/>.</p></caption>
        
        <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f15.png"/>

      </fig>

      <fig id="FD3"><label>Figure D3</label><caption><p id="d2e10359">Difference in performance (and error) metrics between testing and training periods (Fig. <xref ref-type="fig" rid="FD2"/> minus Fig. <xref ref-type="fig" rid="FD1"/>). Legend common to Figs. <xref ref-type="fig" rid="FD1"/>, <xref ref-type="fig" rid="FD2"/> and <xref ref-type="fig" rid="FD3"/>.</p></caption>
        
        <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f16.png"/>

      </fig>


</app>

<app id="App1.Ch1.S5">
  <label>Appendix E</label><title>PCC and CD-based ML models under the same dimensionality</title>
      <p id="d2e10390">Since different methods, PCC and CD, return different numbers of predictors of the target variable, surface soil moisture, the analysis based on ML models and synthetically generated randomly gaussian noise can be affected by the dimensionality of the predictor set. Thus, in this analysis we select a common number of predictors for all methods. Towards this, we selected the predictors identified in Sect. <xref ref-type="sec" rid="Ch1.S2.SS7"/> and filtered according to the criteria below. We call this approach TOP-K.</p>

<table-wrap id="TE1"><label>Table E1</label><caption><p id="d2e10399">Selection criteria to implement the TOP-K approach for various methods.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="2">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="justify" colwidth="8cm"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Method</oasis:entry>
         <oasis:entry colname="col2" align="left">Selection criteria</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">PCC</oasis:entry>
         <oasis:entry colname="col2" align="left">Sort the variables selected by PCC according to their absolute correlation coefficient and select the top 8 variables.</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">TCDF</oasis:entry>
         <oasis:entry colname="col2" align="left">None. Difficult to extract the Adjacency matrix from the python code. Thus, we keep predictors same as the manuscript, which incidentally were 8.</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">VARLiNGAM</oasis:entry>
         <oasis:entry colname="col2" align="left">Sort the variables of the adjacency matrix according to their absolute matrix coefficient and select the top 8 variables.</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">PCMCI+</oasis:entry>
         <oasis:entry colname="col2" align="left">Same as VARLiNGAM</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">DYNOTEARS</oasis:entry>
         <oasis:entry colname="col2" align="left">Same as VARLiNGAM</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

<table-wrap id="TE2"><label>Table E2</label><caption><p id="d2e10475">The set of predictors for each method, after filtering the respective set identified by each method respectively.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="6">
     <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:colspec colnum="6" colname="col6" align="left"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">PCC</oasis:entry>
         <oasis:entry colname="col3">TCDF</oasis:entry>
         <oasis:entry colname="col4">VARLiNGAM</oasis:entry>
         <oasis:entry colname="col5">PCMCIplus</oasis:entry>
         <oasis:entry colname="col6">DYNOTEARS</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">1.</oasis:entry>
         <oasis:entry colname="col2">SoilMoist_RZ<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col3">Evap<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col4">Qs<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col5">Qg<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col6">AvgSurfT<sub><italic>t</italic></sub></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">2.</oasis:entry>
         <oasis:entry colname="col2">SoilMoist_S<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col3">Rainf<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col4">Rainf_f<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col5">Qs<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col6">Lwnet<sub><italic>t</italic></sub></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">3.</oasis:entry>
         <oasis:entry colname="col2">SoilMoist_RZ<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col3">SoilMoist_P<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col4">Rainf<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col5">Rainf_f<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col6">Qair_f<sub><italic>t</italic></sub></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">4.</oasis:entry>
         <oasis:entry colname="col2">Tws<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col3">CanopInt<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col4">SoilMoist_RZ<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col5">Rainf<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col6">Rainf_f<sub><italic>t</italic></sub></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">5.</oasis:entry>
         <oasis:entry colname="col2">SoilMoist_P<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col3">GWS<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col4">Tws<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col5">SoilMoist_RZ<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col6">SoilMoist_RZ<sub><italic>t</italic></sub></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">6.</oasis:entry>
         <oasis:entry colname="col2">Tws<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col3">SoilMoist_RZ<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col4">SoilMoist_RZ<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col5">Swdown_f</oasis:entry>
         <oasis:entry colname="col6">Tair_f</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">7.</oasis:entry>
         <oasis:entry colname="col2">SoilMoist_P<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col3">SoilMoist_S<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col4">SoilMoist_S<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col5">Tws<sub><italic>t</italic></sub></oasis:entry>
         <oasis:entry colname="col6">AvgSurfT<sub><italic>t</italic>−1</sub></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">8.</oasis:entry>
         <oasis:entry colname="col2">GWS<inline-formula><mml:math id="M378" display="inline"><mml:mi>t</mml:mi></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col3">Tws<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col4">Tveg<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col5">SoilMoist_S<sub><italic>t</italic>−1</sub></oasis:entry>
         <oasis:entry colname="col6">SoilMoist_S<sub><italic>t</italic>−1</sub></oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

<table-wrap id="TE3"><label>Table E3</label><caption><p id="d2e11082">Details of analysis for ML models with the same dimensionality.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="2">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Predictors</oasis:entry>
         <oasis:entry colname="col2">Filtered via TOP-K approach</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">Noise added</oasis:entry>
         <oasis:entry colname="col2">0.5 standard deviation</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Training period</oasis:entry>
         <oasis:entry colname="col2">1 Jan 2000 to 31 Dec 2003 (same as Sect. 2.5.7)</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Testing period</oasis:entry>
         <oasis:entry colname="col2">1 Jan 2004 to 31 Dec 2004 (same as Sect. 2.5.7)</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Location</oasis:entry>
         <oasis:entry colname="col2">Ganga Basin (same as Sect. 2.5.7)</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Target variable</oasis:entry>
         <oasis:entry colname="col2">Surface soil moisture (same as Sect. 2.5.7)</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d2e11154"><italic>TOP-K approach.</italic> To select a common number of drivers for all methods we took the predictors selected by different methods (i.e. from Sect. <xref ref-type="sec" rid="Ch1.S2.SS7"/>) and filtered them with the approach in Table <xref ref-type="table" rid="TE1"/>. We choose <inline-formula><mml:math id="M383" display="inline"><mml:mrow><mml:mi>K</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">8</mml:mn></mml:mrow></mml:math></inline-formula>, as it is equal to the actual number of true causal drivers of surface soil moisture. This yielded the equal number of predictors for each method (Table <xref ref-type="table" rid="TE2"/>).</p>
      <p id="d2e11178"><italic>Details of machine learning models.</italic> Based on the set of predictors in Table <xref ref-type="table" rid="TE2"/>, the machine learning models (feedforward neural network) were trained for surface soil moisture prediction. The model architecture was ensured to be the same for all the methods. The other details, i.e. the train and test period, location, target variable and noise level are the same as the Sect. <xref ref-type="sec" rid="Ch1.S2.SS7"/>. and listed in Table <xref ref-type="table" rid="TE3"/>. The results of this analysis are presented in Figs. <xref ref-type="fig" rid="FE1"/> and <xref ref-type="fig" rid="FE2"/>.</p>

      <fig id="FE1"><label>Figure E1</label><caption><p id="d2e11195">Performance metrics for machine learning models based on predictors in Table <xref ref-type="table" rid="TE2"/>. <bold>(a)</bold>–<bold>(c)</bold> for the training, testing and difference phases.</p></caption>
        
        <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f17.png"/>

      </fig>

<fig id="FE2"><label>Figure E2</label><caption><p id="d2e11218">Error metrics for machine learning models based on predictors in Table <xref ref-type="table" rid="TE2"/>. <bold>(a)</bold>–<bold>(c)</bold> for the training, testing and difference phases. Legend common to Figs. <xref ref-type="fig" rid="FE1"/> and <xref ref-type="fig" rid="FE2"/>.</p></caption>
        <graphic xlink:href="https://hess.copernicus.org/articles/30/3455/2026/hess-30-3455-2026-f18.png"/>

      </fig>

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

      <p id="d2e11243">All the data used in the analysis was downloaded from NASA Earth Data and can be publicly accessed at <ext-link xlink:href="https://doi.org/10.5067/LYHA9088MFWQ" ext-link-type="DOI">10.5067/LYHA9088MFWQ</ext-link> (last access: May 2024) <xref ref-type="bibr" rid="bib1.bibx43" id="paren.132"/>. All the analysis and plots created were done using publicly available python libraries. The analysis was done using standard python libraries like numpy <xref ref-type="bibr" rid="bib1.bibx28" id="paren.133"/>, scipy <xref ref-type="bibr" rid="bib1.bibx81" id="paren.134"/>, jupyter notebooks <xref ref-type="bibr" rid="bib1.bibx58" id="paren.135"/> and plots were created using matplotlib <xref ref-type="bibr" rid="bib1.bibx32" id="paren.136"/> and seaborn <xref ref-type="bibr" rid="bib1.bibx87" id="paren.137"/>. The code for the CD algorithms are publicly available. For TCDF, the code is available on GitHub TCDF <ext-link xlink:href="https://github.com/M-Nauta/TCDF">https://github.com/M-Nauta/TCDF</ext-link> (last access: May 2024). For VARLiNGAM the lingam python package was used: <ext-link xlink:href="https://github.com/cdt15/lingam">https://github.com/cdt15/lingam</ext-link>, <xref ref-type="bibr" rid="bib1.bibx35" id="paren.138"/>. For PCMCI+ the tigramite python package was used: <ext-link xlink:href="https://github.com/jakobrunge/tigramite">https://github.com/jakobrunge/tigramite</ext-link> (last access: May 2024). For DYNOTEARS the causalnex python package was used: <ext-link xlink:href="https://causalnex.readthedocs.io/en/latest/">https://causalnex.readthedocs.io/en/latest/</ext-link> (last access: May 2024). The code to do the analysis and recreate the plots in this study are in <uri>https://github.com/lsmvivek/project_ci_eval</uri> (last access: May 2025) and <ext-link xlink:href="https://doi.org/10.5281/zenodo.20337850" ext-link-type="DOI">10.5281/zenodo.20337850</ext-link> <xref ref-type="bibr" rid="bib1.bibx82" id="paren.139"/>.</p>
  </notes><notes notes-type="authorcontribution"><title>Author contributions</title>

      <p id="d2e11296">VKY: Conceptualization, Data curation, Formal analysis, Methodology, Visualisation, Writing (original draft preparation), Writing (review and editing), MP: Supervision, Writing (review and editing), KF: Supervision, Writing (review and editing), DR: Supervision, Writing (review and editing), BDV: Conceptualization, Supervision, Writing (review and editing).</p>
  </notes><notes notes-type="competinginterests"><title>Competing interests</title>

      <p id="d2e11302">At least one of the (co-)authors is a member of the editorial board of <italic>Hydrology and Earth System Sciences</italic>. The peer-review process was guided by an independent editor, and the authors also have no other competing interests to declare.</p>
  </notes><notes notes-type="disclaimer"><title>Disclaimer</title>

      <p id="d2e11311">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="d2e11317">We thank the Editor, Yonggen Zhang for their valuable comments, which helped improve the discussion our results. Further, authors gratefully acknowledge the reviewers Uwe Ehret and Lu Li for their valuable comments, which improved the manuscript structure, strengthened the interpretation of the results and improved the analysis of causality-based time-series prediction models.</p></ack><notes notes-type="financialsupport"><title>Financial support</title>

      <p id="d2e11322">VKY gratefully acknowledges the financial support of Ministry of Education, Government of India through the PhD fellowship. Additional support was provided by the Melbourne India Postgraduate Academy (MIPA) fellowship.</p>
  </notes><notes notes-type="reviewstatement"><title>Review statement</title>

      <p id="d2e11328">This paper was edited by Yonggen Zhang and reviewed by Uwe Ehret and Lu Li.</p>
  </notes><ref-list>
    <title>References</title>

      <ref id="bib1.bibx1"><label>Abbasizadeh et al.(2025)</label><mixed-citation>Abbasizadeh, H., Maca, P., Hanel, M., Troldborg, M., and AghaKouchak, A.: Can causal discovery lead to a more robust prediction model for runoff signatures?, Hydrol. Earth Syst. Sci., 29, 4761–4790, <ext-link xlink:href="https://doi.org/10.5194/hess-29-4761-2025" ext-link-type="DOI">10.5194/hess-29-4761-2025</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bibx2"><label>Ali et al.(2024)</label><mixed-citation>Ali, S., Hasan, U., Li, X., Faruque, O., Sampath, A., Huang, Y., Gani, M. O., and Wang, J.: Causality for Earth Science – A Review on Time-series and Spatiotemporal Causality Methods, arXiv [preprint], <ext-link xlink:href="https://doi.org/10.48550/arXiv.2404.05746" ext-link-type="DOI">10.48550/arXiv.2404.05746</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bibx3"><label>Assaad et al.(2022)</label><mixed-citation>Assaad, C. K., Devijver, E., and Gaussier, E.: Survey and Evaluation of Causal Discovery Methods for Time Series, J. Artif. Int. Res., 73, <ext-link xlink:href="https://doi.org/10.1613/jair.1.13428" ext-link-type="DOI">10.1613/jair.1.13428</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx4"><label>Barriopedro et al.(2023)</label><mixed-citation>Barriopedro, D., García-Herrera, R., Ordóñez, C., Miralles, D. G., and Salcedo-Sanz, S.: Heat Waves: Physical Understanding and Scientific Challenges, Rev. Geophys., 61, e2022RG000780, <ext-link xlink:href="https://doi.org/10.1029/2022RG000780" ext-link-type="DOI">10.1029/2022RG000780</ext-link>, 2023.</mixed-citation></ref>
      <ref id="bib1.bibx5"><label>Beven(1989)</label><mixed-citation>Beven, K.: Changing ideas in hydrology – The case of physically-based models, J. Hydrol., 105, 157–172, <ext-link xlink:href="https://doi.org/10.1016/0022-1694(89)90101-7" ext-link-type="DOI">10.1016/0022-1694(89)90101-7</ext-link>, 1989.</mixed-citation></ref>
      <ref id="bib1.bibx6"><label>Beven et al.(1984)</label><mixed-citation>Beven, K., Kirkby, M., Schofield, N., and Tagg, A.: Testing a physically-based flood forecasting model (TOPMODEL) for three U.K. catchments, J. Hydrol., 69, 119–143, <ext-link xlink:href="https://doi.org/10.1016/0022-1694(84)90159-8" ext-link-type="DOI">10.1016/0022-1694(84)90159-8</ext-link>, 1984.</mixed-citation></ref>
      <ref id="bib1.bibx7"><label>Beven and Kirkby(1979)</label><mixed-citation>Beven, K. J. and Kirkby, M. J.: A physically based, variable contributing area model of basin hydrology/Un modèle à base physique de zone d'appel variable de l'hydrologie du bassin versant, Hydrol. Sci. J., 24, 43–69, <ext-link xlink:href="https://doi.org/10.1080/02626667909491834" ext-link-type="DOI">10.1080/02626667909491834</ext-link>, 1979.</mixed-citation></ref>
      <ref id="bib1.bibx8"><label>Bonotto et al.(2022)</label><mixed-citation>Bonotto, G., Peterson, T. J., Fowler, K., and Western, A. W.: Identifying Causal Interactions Between Groundwater and Streamflow Using Convergent Cross-Mapping, Water Resour. Res., 58, e2021WR030231, <ext-link xlink:href="https://doi.org/10.1029/2021WR030231" ext-link-type="DOI">10.1029/2021WR030231</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx9"><label>Bui et al.(2023)</label><mixed-citation>Bui, H. X., Li, Y.-X., Sherwood, S. C., Reid, K. J., and Dommenget, D.: Assessing the soil moisture-precipitation feedback in Australia: CYGNSS observations, Environ. Res. Lett., 19, 014055, <ext-link xlink:href="https://doi.org/10.1088/1748-9326/ad15b7" ext-link-type="DOI">10.1088/1748-9326/ad15b7</ext-link>, 2023.</mixed-citation></ref>
      <ref id="bib1.bibx10"><label>Byrd et al.(1995)</label><mixed-citation>Byrd, R. H., Lu, P., Nocedal, J., and Zhu, C.: A Limited Memory Algorithm for Bound Constrained Optimization, SIAM Journal on Scientific Computing, 16, 1190–1208, <ext-link xlink:href="https://doi.org/10.1137/0916069" ext-link-type="DOI">10.1137/0916069</ext-link>, 1995.</mixed-citation></ref>
      <ref id="bib1.bibx11"><label>Chauhan et al.(2023)</label><mixed-citation>Chauhan, T., Devanand, A., Roxy, M. K., Ashok, K., and Ghosh, S.: River interlinking alters land-atmosphere feedback and changes the Indian summer monsoon, Nat. Commun., 14, 5928, <ext-link xlink:href="https://doi.org/10.1038/s41467-023-41668-x" ext-link-type="DOI">10.1038/s41467-023-41668-x</ext-link>, 2023.</mixed-citation></ref>
      <ref id="bib1.bibx12"><label>Chicco and Jurman(2020)</label><mixed-citation>Chicco, D. and Jurman, G.: The advantages of the Matthews correlation coefficient (MCC) over F1 score and accuracy in binary classification evaluation, BMC Genomics, 21, 6, <ext-link xlink:href="https://doi.org/10.1186/s12864-019-6413-7" ext-link-type="DOI">10.1186/s12864-019-6413-7</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx13"><label>Chollet(2015)</label><mixed-citation>Chollet, F.: Keras, <uri>https://keras.io</uri> (last access: May 2024), 2015.</mixed-citation></ref>
      <ref id="bib1.bibx14"><label>Christian et al.(2024)</label><mixed-citation>Christian, J. I., Hobbins, M., Hoell, A., Otkin, J. A., Ford, T. W., Cravens, A. E., Powlen, K. A., Wang, H., and Mishra, V.: Flash drought: A state of the science review, WIREs Water, 11, e1714, <ext-link xlink:href="https://doi.org/10.1002/wat2.1714" ext-link-type="DOI">10.1002/wat2.1714</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bibx15"><label>Clapp and Hornberger(1978)</label><mixed-citation>Clapp, R. B. and Hornberger, G. M.: Empirical equations for some soil hydraulic properties, Water Resour. Res., 14, 601–604, <ext-link xlink:href="https://doi.org/10.1029/WR014i004p00601" ext-link-type="DOI">10.1029/WR014i004p00601</ext-link>, 1978.</mixed-citation></ref>
      <ref id="bib1.bibx16"><label>Cunningham and Schrijver(1998)</label><mixed-citation>Cunningham, W. J. C. W. H. and Schrijver, W. R. P. A.: Combinatorial optimization, NY, United States, <ext-link xlink:href="https://doi.org/10.1002/9781118033142" ext-link-type="DOI">10.1002/9781118033142</ext-link>, 1998.</mixed-citation></ref>
      <ref id="bib1.bibx17"><label>Delforge et al.(2022)</label><mixed-citation>Delforge, D., de Viron, O., Vanclooster, M., Van Camp, M., and Watlet, A.: Detecting hydrological connectivity using causal inference from time series: synthetic and real karstic case studies, Hydrol. Earth Syst. Sci., 26, 2181–2199, <ext-link xlink:href="https://doi.org/10.5194/hess-26-2181-2022" ext-link-type="DOI">10.5194/hess-26-2181-2022</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx18"><label>Devanand et al.(2018)</label><mixed-citation>Devanand, A., Roxy, M. K., and Ghosh, S.: Coupled Land-Atmosphere Regional Model Reduces Dry Bias in Indian Summer Monsoon Rainfall Simulated by CFSv2, Geophys. Res. Lett., 45, 2476–2486, <ext-link xlink:href="https://doi.org/10.1002/2018GL077218" ext-link-type="DOI">10.1002/2018GL077218</ext-link>, 2018.</mixed-citation></ref>
      <ref id="bib1.bibx19"><label>Ducharne et al.(2000)</label><mixed-citation>Ducharne, A., Koster, R. D., Suarez, M. J., Stieglitz, M., and Kumar, P.: A catchment-based approach to modeling land surface processes in a general circulation model: 2. Parameter estimation and model demonstration, J. Geophys. Res.-Atmos., 105, 24823–24838, <ext-link xlink:href="https://doi.org/10.1029/2000JD900327" ext-link-type="DOI">10.1029/2000JD900327</ext-link>, 2000.</mixed-citation></ref>
      <ref id="bib1.bibx20"><label>Dutra et al.(2017)</label><mixed-citation>Dutra, E., Balsamo, G., Calvet, J., Munier, S., Burke, S., Fink, G., van Dijk, A., Martinez-de la Torre, A., van Beek, R., De Roo, A., Balsamo, G., Calvet, J.-C., Munier, S., Burke, S., Fink, G., van Dijk, A., Martinez-de la Torre, A., van Beek, R., De Roo, A., and Polcher, J.: Report on the improved water resources reanalysis, Tech. rep., EartH2Observe, <ext-link xlink:href="https://doi.org/10.13140/RG.2.2.14523.67369" ext-link-type="DOI">10.13140/RG.2.2.14523.67369</ext-link>, 2017.</mixed-citation></ref>
      <ref id="bib1.bibx21"><label>Feng et al.(2023)</label><mixed-citation>Feng, D., Beck, H., Lawson, K., and Shen, C.: The suitability of differentiable, physics-informed machine learning hydrologic models for ungauged regions and climate change impact assessment, Hydrol. Earth Syst. Sci., 27, 2357–2373, <ext-link xlink:href="https://doi.org/10.5194/hess-27-2357-2023" ext-link-type="DOI">10.5194/hess-27-2357-2023</ext-link>, 2023.</mixed-citation></ref>
      <ref id="bib1.bibx22"><label>Gong et al.(2024)</label><mixed-citation>Gong, C., Zhang, C., Yao, D., Bi, J., Li, W., and Xu, Y.: Causal Discovery from Temporal Data: An Overview and New Perspectives, ACM Comput. Surv., 57, <ext-link xlink:href="https://doi.org/10.1145/3705297" ext-link-type="DOI">10.1145/3705297</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bibx23"><label>Gong et al.(2017)</label><mixed-citation> Gong, M., Zhang, K., Schölkopf, B., Glymour, C., and Tao, D.: Causal discovery  from temporally aggregated time series, in: Proceedings of the 33rd Conference on Uncertainty in Artificial Intelligence ID 269, edited by: Elidan, G., Kersting, K., and Ihler, A. T., AUAI Press, Corvallis, Oregon, USA, 2017.</mixed-citation></ref>
      <ref id="bib1.bibx24"><label>Goodwell et al.(2020)</label><mixed-citation>Goodwell, A. E., Jiang, P., Ruddell, B. L., and Kumar, P.: Debates – Does Information Theory Provide a New Paradigm for Earth Science? Causality, Interaction, and Feedback, Water Resour. Res., 56, e2019WR024940, <ext-link xlink:href="https://doi.org/10.1029/2019WR024940" ext-link-type="DOI">10.1029/2019WR024940</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx25"><label>Gosling et al.(2023)</label><mixed-citation>Gosling, S. N., Müller Schmied, H., Betts, R., Chang, J., Chen, H., Ciais, P., Dankers, R., Döll, P., Eisner, S., Flörke, M., Gerten, D., Grillakis, M., Hagemann, S., Hanasaki, N., Huang, M., Huang, Z., Jerez, S., Kim, H., Koutroulis, A., Leng, G., Liu, J., Liu, X., Mao, G., Masaki, Y., Montavez, J. P., Morfopoulos, C., Oki, T., Orth, R., Ostberg, S., Papadimitriou, L., Pokhrel, Y., Portmann, F., Qi, W., Satoh, Y., Seneviratne, S., Sommer, P. S., Stacke, T., Tang, Q., Tsanis, I., Wada, Y., Wang, X., Zhou, T., Büchner, M., Schewe, J., and Zhao, F.: ISIMIP2a Simulation Data from the Global Water Sector, ISIMIP2a Simulation Data from the Global Water Sector, ISIMIP Repository [data set], <ext-link xlink:href="https://doi.org/10.48364/ISIMIP.882536" ext-link-type="DOI">10.48364/ISIMIP.882536</ext-link>, 2023.</mixed-citation></ref>
      <ref id="bib1.bibx26"><label>Granger(1969)</label><mixed-citation>Granger, C. W. J.: Investigating Causal Relations by Econometric Models and Cross-spectral Methods, Econometrica, 37, 424–438, <ext-link xlink:href="https://doi.org/10.2307/1912791" ext-link-type="DOI">10.2307/1912791</ext-link>, 1969.</mixed-citation></ref>
      <ref id="bib1.bibx27"><label>Guillod et al.(2015)</label><mixed-citation>Guillod, B. P., Orlowsky, B., Miralles, D. G., Teuling, A. J., and Seneviratne, S. I.: Reconciling spatial and temporal soil moisture effects on afternoon rainfall, Nat. Commun., 6, 6443, <ext-link xlink:href="https://doi.org/10.1038/ncomms7443" ext-link-type="DOI">10.1038/ncomms7443</ext-link>, 2015.</mixed-citation></ref>
      <ref id="bib1.bibx28"><label>Harris et al.(2020)</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., van Kerkwijk, M. H., 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.bibx29"><label>Hasan et al.(2024)</label><mixed-citation>Hasan, U., Hossain, E., and Gani, M. O.: A Survey on Causal Discovery Methods for I.I.D. and Time Series Data, arXiv [preprint], <ext-link xlink:href="https://doi.org/10.48550/arXiv.2303.15027" ext-link-type="DOI">10.48550/arXiv.2303.15027</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bibx30"><label>Höge et al.(2022)</label><mixed-citation>Höge, M., Scheidegger, A., Baity-Jesi, M., Albert, C., and Fenicia, F.: Improving hydrologic models for predictions and process understanding using neural ODEs, Hydrol. Earth Syst. Sci., 26, 5085–5102, <ext-link xlink:href="https://doi.org/10.5194/hess-26-5085-2022" ext-link-type="DOI">10.5194/hess-26-5085-2022</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx31"><label>Holder(1985)</label><mixed-citation> Holder, R.: Multiple regression in hydrology, Institute of hydrology, ISBN 0948540001, 1985.</mixed-citation></ref>
      <ref id="bib1.bibx32"><label>Hunter(2007)</label><mixed-citation>Hunter, J. D.: Matplotlib: A 2D graphics environment, Comput. Sci. Eng., 9, 90–95, <ext-link xlink:href="https://doi.org/10.1109/MCSE.2007.55" ext-link-type="DOI">10.1109/MCSE.2007.55</ext-link>, 2007.</mixed-citation></ref>
      <ref id="bib1.bibx33"><label>Hyvärinen et al.(2001)</label><mixed-citation>Hyvärinen, A., Karhunen, J., and Oja, E.: What is Independent Component Analysis?, chap. 7,  145–164, John Wiley and Sons, Ltd, ISBN 9780471221319, <ext-link xlink:href="https://doi.org/10.1002/0471221317.ch7" ext-link-type="DOI">10.1002/0471221317.ch7</ext-link>, 2001.</mixed-citation></ref>
      <ref id="bib1.bibx34"><label>Hyvärinen et al.(2008)</label><mixed-citation>Hyvärinen, A., Shimizu, S., and Hoyer, P. O.: Causal modelling combining instantaneous and lagged effects: an identifiable model based on non-Gaussianity, in: Proceedings of the 25th International Conference on Machine Learning, ICML '08, p. 424–431, Association for Computing Machinery, New York, NY, USA, ISBN 9781605582054, <ext-link xlink:href="https://doi.org/10.1145/1390156.1390210" ext-link-type="DOI">10.1145/1390156.1390210</ext-link>, 2008.</mixed-citation></ref>
      <ref id="bib1.bibx35"><label>Ikeuchi et al.(2023)</label><mixed-citation>Ikeuchi, T., Ide, M., Zeng, Y., Maeda, T. N., and Shimizu, S.: Python package for causal discovery based on LiNGAM, J. Mach. Learn. Res., 24, 1–8, 2023 (code available at: <uri>https://github.com/cdt15/lingam</uri>, last access: May 2024).</mixed-citation></ref>
      <ref id="bib1.bibx36"><label>Jackson et al.(2019)</label><mixed-citation>Jackson, E. K., Roberts, W., Nelsen, B., Williams, G. P., Nelson, E. J., and Ames, D. P.: Introductory overview: Error metrics for hydrologic modelling – A review of common practices and an open source library to facilitate use and adoption, Environ. Model. Softw., 119, 32–48, <ext-link xlink:href="https://doi.org/10.1016/j.envsoft.2019.05.001" ext-link-type="DOI">10.1016/j.envsoft.2019.05.001</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bibx37"><label>Kirchner(2006)</label><mixed-citation>Kirchner, J. W.: Getting the right answers for the right reasons: Linking measurements, analyses, and models to advance the science of hydrology, Water Resour. Res., 42, <ext-link xlink:href="https://doi.org/10.1029/2005WR004362" ext-link-type="DOI">10.1029/2005WR004362</ext-link>, 2006.</mixed-citation></ref>
      <ref id="bib1.bibx38"><label>Koster and Suarez(1992)</label><mixed-citation>Koster, R. D. and Suarez, M. J.: Modeling the land surface boundary in climate models as a composite of independent vegetation stands, J. Geophys. Res.-Atmos., 97, 2697–2715, <ext-link xlink:href="https://doi.org/10.1029/91JD01696" ext-link-type="DOI">10.1029/91JD01696</ext-link>, 1992.</mixed-citation></ref>
      <ref id="bib1.bibx39"><label>Koster and Suarez(1996)</label><mixed-citation> Koster, R. D. and Suarez, M. J.: Energy and water balance calculations in the Mosaic LSM, NASA Technical Memorandum 104606, Technical Report Series on Global Modeling and Data Assimilation, vol. 9, 60 pp., 1996.</mixed-citation></ref>
      <ref id="bib1.bibx40"><label>Koster et al.(2000)</label><mixed-citation>Koster, R. D., Suarez, M. J., Ducharne, A., Stieglitz, M., and Kumar, P.: A catchment-based approach to modeling land surface processes in a general circulation model: 1. Model structure, J. Geophys. Res.-Atmos., 105, 24809–24822, <ext-link xlink:href="https://doi.org/10.1029/2000JD900327" ext-link-type="DOI">10.1029/2000JD900327</ext-link>, 2000.</mixed-citation></ref>
      <ref id="bib1.bibx41"><label>Kratzert et al.(2019)</label><mixed-citation>Kratzert, F., Klotz, D., Herrnegger, M., Sampson, A. K., Hochreiter, S., and Nearing, G. S.: Toward Improved Predictions in Ungauged Basins: Exploiting the Power of Machine Learning, Water Resour. Res., 55, 11344–11354, <ext-link xlink:href="https://doi.org/10.1029/2019WR026065" ext-link-type="DOI">10.1029/2019WR026065</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bibx42"><label>Lehner et al.(2008)</label><mixed-citation>Lehner, B., Verdin, K., and Jarvis, A.: New Global Hydrography Derived From Spaceborne Elevation Data, Eos, Transactions American Geophysical Union, 89, 93–94, <ext-link xlink:href="https://doi.org/10.1029/2008EO100001" ext-link-type="DOI">10.1029/2008EO100001</ext-link>, 2008.</mixed-citation></ref>
      <ref id="bib1.bibx43"><label>Li et al.(2018)</label><mixed-citation>Li, B., Beaudoing, H., and Rodell, M.: NASA/GSFC/HSL (2018), GLDAS Catchment Land Surface Model L4 daily 0.25 x 0.25 degree V2.0, Greenbelt, Maryland, USA, Goddard Earth Sciences Data and Information Services Center (GES DISC), Tech. rep., Goddard Earth Sciences Data and Information Services Center (GES DISC) [data set], <ext-link xlink:href="https://doi.org/10.5067/LYHA9088MFWQ" ext-link-type="DOI">10.5067/LYHA9088MFWQ</ext-link> (last access: 17 April 2024), 2018.</mixed-citation></ref>
      <ref id="bib1.bibx44"><label>Li et al.(2022)</label><mixed-citation>Li, L., Dai, Y., Shangguan, W., Wei, Z., Wei, N., and Li, Q.: Causality-Structured Deep Learning for Soil Moisture Predictions, J. Hydrometeorol., 23, 1315–1331, <ext-link xlink:href="https://doi.org/10.1175/JHM-D-21-0206.1" ext-link-type="DOI">10.1175/JHM-D-21-0206.1</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx45"><label>Lynch-Stieglitz(1994)</label><mixed-citation>Lynch-Stieglitz, M.: The development and validation of a simple snow model for the GISS GCM, J. Climate, 7, 1842–1855, <ext-link xlink:href="https://doi.org/10.1175/1520-0442(1994)007&lt;1842:TDAVOA&gt;2.0.CO;2" ext-link-type="DOI">10.1175/1520-0442(1994)007&lt;1842:TDAVOA&gt;2.0.CO;2</ext-link>, 1994.</mixed-citation></ref>
      <ref id="bib1.bibx46"><label>Mishra et al.(2022)</label><mixed-citation>Mishra, A., Mukherjee, S., Merz, B., Singh, V. P., Wright, D. B., Villarini, G., Paul, S., Kumar, D. N., Khedun, C. P., Niyogi, D., Schumann, G., and Stedinger, J. R.: An Overview of Flood Concepts, Challenges, and Future Directions, J. Hydrol. Eng., 27, 03122001, <ext-link xlink:href="https://doi.org/10.1061/(ASCE)HE.1943-5584.0002164" ext-link-type="DOI">10.1061/(ASCE)HE.1943-5584.0002164</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx47"><label>Nauta et al.(2019)</label><mixed-citation>Nauta, M., Bucur, D., and Seifert, C.: Causal Discovery with Attention-Based Convolutional Neural Networks, Machine Learning and Knowledge Extraction, 1, 312–340, <ext-link xlink:href="https://doi.org/10.3390/make1010019" ext-link-type="DOI">10.3390/make1010019</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bibx48"><label>Nearing et al.(2021)</label><mixed-citation>Nearing, G. S., Kratzert, F., Sampson, A. K., Pelissier, C. S., Klotz, D., Frame, J. M., Prieto, C., and Gupta, H. V.: What Role Does Hydrological Science Play in the Age of Machine Learning?, Water Resour. Res., 57, e2020WR028091, <ext-link xlink:href="https://doi.org/10.1029/2020WR028091" ext-link-type="DOI">10.1029/2020WR028091</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx49"><label>Ombadi et al.(2020)</label><mixed-citation>Ombadi, M., Nguyen, P., Sorooshian, S., and Hsu, K.-l.: Evaluation of Methods for Causal Discovery in Hydrometeorological Systems, Water Resour. Res., 56, e2020WR027251, <ext-link xlink:href="https://doi.org/10.1029/2020WR027251" ext-link-type="DOI">10.1029/2020WR027251</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx50"><label>Pamfil et al.(2020)</label><mixed-citation>Pamfil, R., Sriwattanaworachai, N., Desai, S., Pilgerstorfer, P., Georgatzis, K., Beaumont, P., and Aragam, B.: DYNOTEARS: Structure Learning from Time-Series Data, Proceedings of Machine Learning Research, arXiv, 108, 1595–1605, <ext-link xlink:href="https://doi.org/10.48550/arXiv.2002.00498" ext-link-type="DOI">10.48550/arXiv.2002.00498</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx51"><label>Park and Klabjan(2017)</label><mixed-citation> Park, Y. W. and Klabjan, D.: Bayesian Network Learning via Topological Order, J. Mach. Learn. Res., 18, 1–32, 2017.</mixed-citation></ref>
      <ref id="bib1.bibx52"><label>Pearl(1998)</label><mixed-citation>Pearl, J.: Graphs, Causality, and Structural Equation Models, Sociol. Method. Res., 27, 226–284, <ext-link xlink:href="https://doi.org/10.1177/0049124198027002004" ext-link-type="DOI">10.1177/0049124198027002004</ext-link>, 1998.</mixed-citation></ref>
      <ref id="bib1.bibx53"><label>Pearl(2009)</label><mixed-citation> Pearl, J.: Causality, Cambridge University Press, ISBN 978-0-521-89560-6, 2009.</mixed-citation></ref>
      <ref id="bib1.bibx54"><label>Pedregosa et al.(2011)</label><mixed-citation> Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O., Blondel, M., Prettenhofer, P., Weiss, R., Dubourg, V., Vanderplas, J., Passos, A., Cournapeau, D., Brucher, M., Perrot, M., and Duchesnay, E.: Scikit-learn: Machine Learning in Python, J. Mach. Learn. Res., 12, 2825–2830, 2011.</mixed-citation></ref>
      <ref id="bib1.bibx55"><label>Peel and McMahon(2020)</label><mixed-citation>Peel, M. C. and McMahon, T. A.: Historical development of rainfall-runoff modeling, WIREs Water, 7, e1471, <ext-link xlink:href="https://doi.org/10.1002/wat2.1471" ext-link-type="DOI">10.1002/wat2.1471</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx56"><label>Peters et al.(2017)</label><mixed-citation> Peters, J., Janzing, D., and Schölkopf, B.: Elements of causal inference: foundations and learning algorithms, The MIT Press, ISBN 9780262037310, 2017.</mixed-citation></ref>
      <ref id="bib1.bibx57"><label>Powers(2020)</label><mixed-citation>Powers, D. M. W.: Evaluation: from precision, recall and F-measure to ROC, informedness, markedness and correlation, arXiv [preprint], <ext-link xlink:href="https://doi.org/10.48550/arXiv.2010.16061" ext-link-type="DOI">10.48550/arXiv.2010.16061</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx58"><label>Project Jupyter et al.(2018)</label><mixed-citation>Project Jupyter, Bussonnier, M., Forde, J., Freeman, J., Granger, B., Head, T., Holdgraf, C., Kelley, K., Nalvarte, G., Osheroff, A., Pacer, M., Panda, Y., Perez, F., Kelley, B. R., and Willing, C.: Binder 2.0 – Reproducible, interactive, sharable environments for science at scale, in: Proceedings of the 17th Python in Science Conference, edited by: Akici, F., Lippa, D., Niederhut, D., and Pacer, M., 113–120, <ext-link xlink:href="https://doi.org/10.25080/Majora-4af1f417-011" ext-link-type="DOI">10.25080/Majora-4af1f417-011</ext-link>, 2018.</mixed-citation></ref>
      <ref id="bib1.bibx59"><label>Rinderer et al.(2018)</label><mixed-citation>Rinderer, M., Ali, G., and Larsen, L. G.: Assessing structural, functional and effective hydrologic connectivity with brain neuroscience methods: State-of-the-art and research directions, Earth-Sci. Rev., 178, 29–47, <ext-link xlink:href="https://doi.org/10.1016/j.earscirev.2018.01.009" ext-link-type="DOI">10.1016/j.earscirev.2018.01.009</ext-link>, 2018.</mixed-citation></ref>
      <ref id="bib1.bibx60"><label>Ruddell and Kumar(2009)</label><mixed-citation>Ruddell, B. L. and Kumar, P.: Ecohydrologic process networks: 1. Identification, Water Resour. Res., 45, <ext-link xlink:href="https://doi.org/10.1029/2008WR007279" ext-link-type="DOI">10.1029/2008WR007279</ext-link>, 2009.</mixed-citation></ref>
      <ref id="bib1.bibx61"><label>Runge(2018)</label><mixed-citation>Runge, J.: Causal network reconstruction from time series: From theoretical assumptions to practical estimation, Chaos, 28, 075310, <ext-link xlink:href="https://doi.org/10.1063/1.5025050" ext-link-type="DOI">10.1063/1.5025050</ext-link>, 2018.</mixed-citation></ref>
      <ref id="bib1.bibx62"><label>Runge(2022)</label><mixed-citation>Runge, J.: Discovering contemporaneous and lagged causal relations in autocorrelated nonlinear time series datasets, arXiv [preprint], <ext-link xlink:href="https://doi.org/10.48550/arXiv.2003.03685" ext-link-type="DOI">10.48550/arXiv.2003.03685</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx63"><label>Runge et al.(2012)</label><mixed-citation>Runge, J., Heitzig, J., Petoukhov, V., and Kurths, J.: Escaping the Curse of Dimensionality in Estimating Multivariate Transfer Entropy, Phys. Rev. Lett., 108, 258701, <ext-link xlink:href="https://doi.org/10.1103/PhysRevLett.108.258701" ext-link-type="DOI">10.1103/PhysRevLett.108.258701</ext-link>, 2012.</mixed-citation></ref>
      <ref id="bib1.bibx64"><label>Runge et al.(2019a)</label><mixed-citation>Runge, J., Nowack, P., Kretschmer, M., Flaxman, S., and Sejdinovic, D.: Detecting and quantifying causal associations in large nonlinear time series datasets, Sci. Adv., 5, eaau4996, <ext-link xlink:href="https://doi.org/10.1126/sciadv.aau4996" ext-link-type="DOI">10.1126/sciadv.aau4996</ext-link>, 2019a.</mixed-citation></ref>
      <ref id="bib1.bibx65"><label>Runge et al.(2019b)</label><mixed-citation>Runge, J., Nowack, P., Kretschmer, M., Flaxman, S., and Sejdinovic, D.: Detecting and quantifying causal associations in large nonlinear time series datasets, Sci. Adv., 5, eaau4996, <ext-link xlink:href="https://doi.org/10.1126/sciadv.aau4996" ext-link-type="DOI">10.1126/sciadv.aau4996</ext-link>, 2019b.</mixed-citation></ref>
      <ref id="bib1.bibx66"><label>Samek et al.(2019)</label><mixed-citation>Samek, W., Montavon, G., Vedaldi, A., Hansen, L. K., and Müller, K.-R.: Explainable AI: interpreting, explaining and visualizing deep learning, vol. 11700, Springer Nature, <ext-link xlink:href="https://doi.org/10.1007/978-3-030-28954-6" ext-link-type="DOI">10.1007/978-3-030-28954-6</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bibx67"><label>Schellekens et al.(2017)</label><mixed-citation>Schellekens, J., Dutra, E., Martínez-de la Torre, A., Balsamo, G., van Dijk, A., Sperna Weiland, F., Minvielle, M., Calvet, J.-C., Decharme, B., Eisner, S., Fink, G., Flörke, M., Peßenteiner, S., van Beek, R., Polcher, J., Beck, H., Orth, R., Calton, B., Burke, S., Dorigo, W., and Weedon, G. P.: A global water resources ensemble of hydrological models: the eartH2Observe Tier-1 dataset, Earth Syst. Sci. Data, 9, 389–413, <ext-link xlink:href="https://doi.org/10.5194/essd-9-389-2017" ext-link-type="DOI">10.5194/essd-9-389-2017</ext-link>, 2017.</mixed-citation></ref>
      <ref id="bib1.bibx68"><label>Schreiber(2000)</label><mixed-citation>Schreiber, T.: Measuring Information Transfer, Phys. Rev. Lett., 85, 461–464, <ext-link xlink:href="https://doi.org/10.1103/PhysRevLett.85.461" ext-link-type="DOI">10.1103/PhysRevLett.85.461</ext-link>, 2000.</mixed-citation></ref>
      <ref id="bib1.bibx69"><label>Seneviratne et al.(2010)</label><mixed-citation>Seneviratne, S. I., Corti, T., Davin, E. L., Hirschi, M., Jaeger, E. B., Lehner, I., Orlowsky, B., and Teuling, A. J.: Investigating soil moisture–climate interactions in a changing climate: A review, Earth-Sci. Rev., 99, 125–161, <ext-link xlink:href="https://doi.org/10.1016/j.earscirev.2010.02.004" ext-link-type="DOI">10.1016/j.earscirev.2010.02.004</ext-link>, 2010.</mixed-citation></ref>
      <ref id="bib1.bibx70"><label>Shannon(1948)</label><mixed-citation>Shannon, C. E.: A Mathematical Theory of Communication, Bell System Technical Journal, 27, 379–423, <ext-link xlink:href="https://doi.org/10.1002/j.1538-7305.1948.tb01338.x" ext-link-type="DOI">10.1002/j.1538-7305.1948.tb01338.x</ext-link>, 1948.</mixed-citation></ref>
      <ref id="bib1.bibx71"><label>Sheffield et al.(2006)</label><mixed-citation>Sheffield, J., Goteti, G., and Wood, E. F.: Development of a 50-Year High-Resolution Global Dataset of Meteorological Forcings for Land Surface Modeling, J. Climate, 19, 3088–3111, <ext-link xlink:href="https://doi.org/10.1175/JCLI3790.1" ext-link-type="DOI">10.1175/JCLI3790.1</ext-link>, 2006.</mixed-citation></ref>
      <ref id="bib1.bibx72"><label>Shi et al.(2022)</label><mixed-citation>Shi, H., Zhao, Y., Liu, S., Cai, H., and Zhou, Z.: A New Perspective on Drought Propagation: Causality, Geophys. Res. Lett., 49, e2021GL096758, <ext-link xlink:href="https://doi.org/10.1029/2021GL096758" ext-link-type="DOI">10.1029/2021GL096758</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx73"><label>Shimizu et al.(2006)</label><mixed-citation> Shimizu, S., Hoyer, P., Hyvärinen, A., and Kerminen, A.: A linear non-gaussian acyclic model for causal discovery, J. Mach. Learn. Res., 7, 2003–2030, 2006.</mixed-citation></ref>
      <ref id="bib1.bibx74"><label>Spirtes and Glymour(1991)</label><mixed-citation>Spirtes, P. and Glymour, C.: An algorithm for fast recovery of sparse causal graphs, Soc. Sci. Comput. Rev., 9, 62–72, <ext-link xlink:href="https://doi.org/10.1177/089443939100900106" ext-link-type="DOI">10.1177/089443939100900106</ext-link>, 1991.</mixed-citation></ref>
      <ref id="bib1.bibx75"><label>Sugihara et al.(2012)</label><mixed-citation>Sugihara, G., May, R., Ye, H., hao Hsieh, C., Deyle, E., Fogarty, M., and Munch, S.: Detecting Causality in Complex Ecosystems, Science, 338, 496–500, <ext-link xlink:href="https://doi.org/10.1126/science.1227079" ext-link-type="DOI">10.1126/science.1227079</ext-link>, 2012.</mixed-citation></ref>
      <ref id="bib1.bibx76"><label>Tasker(1980)</label><mixed-citation>Tasker, G. D.: Hydrologic regression with weighted least squares, Water Resour. Res., 16, 1107–1113, <ext-link xlink:href="https://doi.org/10.1029/WR016i006p01107" ext-link-type="DOI">10.1029/WR016i006p01107</ext-link>, 1980.</mixed-citation></ref>
      <ref id="bib1.bibx77"><label>Tripathy and Mishra(2024)</label><mixed-citation>Tripathy, K. P. and Mishra, A. K.: Deep learning in hydrology and water resources disciplines: concepts, methods, applications, and research directions, J. Hydrol., 628, 130458, <ext-link xlink:href="https://doi.org/10.1016/j.jhydrol.2023.130458" ext-link-type="DOI">10.1016/j.jhydrol.2023.130458</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bibx78"><label>Tuttle and Salvucci(2017)</label><mixed-citation>Tuttle, S. E. and Salvucci, G. D.: Confounding factors in determining causal soil moisture-precipitation feedback, Water Resour. Res., 53, 5531–5544, <ext-link xlink:href="https://doi.org/10.1002/2016WR019869" ext-link-type="DOI">10.1002/2016WR019869</ext-link>, 2017.</mixed-citation></ref>
      <ref id="bib1.bibx79"><label>Van Oldenborgh et al.(2022)</label><mixed-citation>Van Oldenborgh, G. J., Wehner, M. F., Vautard, R., Otto, F. E. L., Seneviratne, S. I., Stott, P. A., Hegerl, G. C., Philip, S. Y., and Kew, S. F.: Attributing and Projecting Heatwaves Is Hard: We Can Do Better, Earth's Future, 10, e2021EF002271, <ext-link xlink:href="https://doi.org/10.1029/2021EF002271" ext-link-type="DOI">10.1029/2021EF002271</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx80"><label>Vázquez-Patiño et al.(2022)</label><mixed-citation>Vázquez-Patiño, A., Samaniego, E., Campozano, L., and Avilés, A.: Effectiveness of causality-based predictor selection for statistical downscaling: a case study of rainfall in an Ecuadorian Andes basin, Theor. Appl. Climatol., 150, 987–1013, <ext-link xlink:href="https://doi.org/10.1007/s00704-022-04205-2" ext-link-type="DOI">10.1007/s00704-022-04205-2</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bibx81"><label>Virtanen et al.(2020)</label><mixed-citation>Virtanen, P., Gommers, R., Oliphant, T. E., Haberland, M., Reddy, T., Cournapeau, D., Burovski, E., Peterson, P., Weckesser, W., Bright, J., van der Walt, S. J., Brett, M., Wilson, J., Millman, K. J., Mayorov, N., Nelson, A. R. J., Jones, E., Kern, R., Larson, E., Carey, C. J., Polat, İ., Feng, Y., Moore, E. W., VanderPlas, J., Laxalde, D., Perktold, J., Cimrman, R., Henriksen, I., Quintero, E. A., Harris, C. R., Archibald, A. M., Ribeiro, A. H., Pedregosa, F., van Mulbregt, P., and SciPy 1.0 Contributors: SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python, Nature Methods, 17, 261–272, <ext-link xlink:href="https://doi.org/10.1038/s41592-019-0686-2" ext-link-type="DOI">10.1038/s41592-019-0686-2</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bibx82"><label>Vivek Kumar(2026)</label><mixed-citation>Vivek Kumar, Y.: lsmvivek/project_ci_eval: Release for Zenodo archive (hess-accepted-v1), Zenodo [code], <ext-link xlink:href="https://doi.org/10.5281/zenodo.20337850" ext-link-type="DOI">10.5281/zenodo.20337850</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bibx83"><label>Voortman et al.(2010)</label><mixed-citation> Voortman, M., Dash, D., and Druzdzel, M. J.: Learning why things change: the difference-based causality learner, in: Proceedings of the Twenty-Sixth Conference on Uncertainty in Artificial Intelligence, UAI'10, 641–650, AUAI Press, Arlington, Virginia, USA, ISBN 9780974903965, 2010.</mixed-citation></ref>
      <ref id="bib1.bibx84"><label>Wang et al.(2025)</label><mixed-citation>Wang, L., Gu, H., Liu, L., Liang, X., Chen, S., and Xu, Y.-P.: Revealing joint evolutions and causal interactions in complex ecohydrological systems by a network-based framework, Hydrol. Earth Syst. Sci., 29, 361–379, <ext-link xlink:href="https://doi.org/10.5194/hess-29-361-2025" ext-link-type="DOI">10.5194/hess-29-361-2025</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bibx85"><label>Wang et al.(2018)</label><mixed-citation>Wang, Y., Yang, J., Chen, Y., De Maeyer, P., Li, Z., and Duan, W.: Detecting the causal effect of soil moisture on precipitation using convergent cross mapping, Sci. Rep., 8, 12171, <ext-link xlink:href="https://doi.org/10.1038/s41598-018-30669-2" ext-link-type="DOI">10.1038/s41598-018-30669-2</ext-link>, 2018.</mixed-citation></ref>
      <ref id="bib1.bibx86"><label>Warszawski et al.(2014)</label><mixed-citation>Warszawski, L., Frieler, K., Huber, V., Piontek, F., Serdeczny, O., and Schewe, J.: The Inter-Sectoral Impact Model Intercomparison Project (ISI–MIP): Project framework, P. Natl. Acad. Sci. USA, 111, 3228–3232, <ext-link xlink:href="https://doi.org/10.1073/pnas.1312330110" ext-link-type="DOI">10.1073/pnas.1312330110</ext-link>, 2014.</mixed-citation></ref>
      <ref id="bib1.bibx87"><label>Waskom(2021)</label><mixed-citation>Waskom, M. L.: seaborn: statistical data visualization, J. Open Source Softw., 6, 3021, <ext-link xlink:href="https://doi.org/10.21105/joss.03021" ext-link-type="DOI">10.21105/joss.03021</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx88"><label>Wu and Chau(2011)</label><mixed-citation>Wu, C. and Chau, K.: Rainfall–runoff modeling using artificial neural network coupled with singular spectrum analysis, J. Hydrol., 399, 394–409, <ext-link xlink:href="https://doi.org/10.1016/j.jhydrol.2011.01.017" ext-link-type="DOI">10.1016/j.jhydrol.2011.01.017</ext-link>, 2011.</mixed-citation></ref>
      <ref id="bib1.bibx89"><label>Wu et al.(2025)</label><mixed-citation>Wu, T., Xu, L., Lv, Y., Cai, R., Pan, Z., Zhang, X., Zhang, X., and Chen, N.: Integrating causal inference with ConvLSTM networks for spatiotemporal forecasting of root zone soil moisture, J. Hydrol., 659, 133246, <ext-link xlink:href="https://doi.org/10.1016/j.jhydrol.2025.133246" ext-link-type="DOI">10.1016/j.jhydrol.2025.133246</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bibx90"><label>Xu and Liang(2021)</label><mixed-citation>Xu, T. and Liang, F.: Machine learning for hydrologic sciences: An introductory overview, WIREs Water, 8, e1533, <ext-link xlink:href="https://doi.org/10.1002/wat2.1533" ext-link-type="DOI">10.1002/wat2.1533</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bibx91"><label>Yuan et al.(2022)</label><mixed-citation>Yuan, K., Zhu, Q., Li, F., Riley, W. J., Torn, M., Chu, H., McNicol, G., Chen, M., Knox, S., Delwiche, K., Wu, H., Baldocchi, D., Ma, H., Desai, A. R., Chen, J., Sachs, T., Ueyama, M., Sonnentag, O., Helbig, M., Tuittila, E.-S., Jurasinski, G., Koebsch, F., Campbell, D., Schmid, H. P., Lohila, A., Goeckede, M., Nilsson, M. B., Friborg, T., Jansen, J., Zona, D., Euskirchen, E., Ward, E. J., Bohrer, G., Jin, Z., Liu, L., Iwata, H., Goodrich, J., and Jackson, R.: Causality guided machine learning model on wetland CH4 emissions across global wetlands, Agr. Forest Meteorol., 324, 109115, <ext-link xlink:href="https://doi.org/10.1016/j.agrformet.2022.109115" ext-link-type="DOI">10.1016/j.agrformet.2022.109115</ext-link>, 2022. </mixed-citation></ref>
      <ref id="bib1.bibx92"><label>Zhang and Montgomery(1994)</label><mixed-citation>Zhang, W. and Montgomery, D. R.: Digital elevation model grid size, landscape representation, and hydrologic simulations, Water Resour. Res., 30, 1019–1028, <ext-link xlink:href="https://doi.org/10.1029/93WR03553" ext-link-type="DOI">10.1029/93WR03553</ext-link>, 1994.</mixed-citation></ref>
      <ref id="bib1.bibx93"><label>Zhang et al.(2018)</label><mixed-citation>Zhang, Y., Chiew, F. H. S., Li, M., and Post, D.: Predicting Runoff Signatures Using Regression and Hydrological Modeling Approaches, Water Resour. Res., 54, 7859–7878, <ext-link xlink:href="https://doi.org/10.1029/2018WR023325" ext-link-type="DOI">10.1029/2018WR023325</ext-link>, 2018.</mixed-citation></ref>
      <ref id="bib1.bibx94"><label>Zheng et al.(2018)</label><mixed-citation>Zheng, X., Aragam, B., Ravikumar, P. K., and Xing, E. P.: DAGs with NO TEARS: Continuous Optimization for Structure Learning, in: Advances in Neural Information Processing Systems, edited by Bengio, S., Wallach, H., Larochelle, H., Grauman, K., Cesa-Bianchi, N., and Garnett, R., vol. 31, Curran Associates, Inc., arXiv [preprint], <ext-link xlink:href="https://doi.org/10.48550/arXiv.1803.01422" ext-link-type="DOI">10.48550/arXiv.1803.01422</ext-link>, 2018.</mixed-citation></ref>
      <ref id="bib1.bibx95"><label>Zou et al.(2023)</label><mixed-citation>Zou, L., Zha, Y., Diao, Y., Tang, C., Gu, W., and Shao, D.: Coupling the causal inference and informer networks for short-term forecasting in irrigation water usage, Water Resour. Manage., 37, 427–449, <ext-link xlink:href="https://doi.org/10.1007/s11269-022-03381-0" ext-link-type="DOI">10.1007/s11269-022-03381-0</ext-link>, 2023.</mixed-citation></ref>

  </ref-list></back>
    <!--<article-title-html>Cause-effect discovery in hydrometeorological systems: evaluation of causal discovery methods</article-title-html>
<abstract-html/>
<ref-html id="bib1.bib1"><label>Abbasizadeh et al.(2025)</label><mixed-citation>
      
Abbasizadeh, H., Maca, P., Hanel, M., Troldborg, M., and AghaKouchak, A.: Can causal discovery lead to a more robust prediction model for runoff signatures?, Hydrol. Earth Syst. Sci., 29, 4761–4790, <a href="https://doi.org/10.5194/hess-29-4761-2025" target="_blank">https://doi.org/10.5194/hess-29-4761-2025</a>, 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib2"><label>Ali et al.(2024)</label><mixed-citation>
      
Ali, S., Hasan, U., Li, X., Faruque, O., Sampath, A., Huang, Y., Gani, M. O.,
and Wang, J.: Causality for Earth Science – A Review on Time-series and
Spatiotemporal Causality Methods, arXiv [preprint], <a href="https://doi.org/10.48550/arXiv.2404.05746" target="_blank">https://doi.org/10.48550/arXiv.2404.05746</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib3"><label>Assaad et al.(2022)</label><mixed-citation>
      
Assaad, C. K., Devijver, E., and Gaussier, E.: Survey and Evaluation of Causal
Discovery Methods for Time Series, J. Artif. Int. Res., 73,
<a href="https://doi.org/10.1613/jair.1.13428" target="_blank">https://doi.org/10.1613/jair.1.13428</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib4"><label>Barriopedro et al.(2023)</label><mixed-citation>
      
Barriopedro, D., García-Herrera, R., Ordóñez, C., Miralles, D. G., and
Salcedo-Sanz, S.: Heat Waves: Physical Understanding and Scientific
Challenges, Rev. Geophys., 61, e2022RG000780,
<a href="https://doi.org/10.1029/2022RG000780" target="_blank">https://doi.org/10.1029/2022RG000780</a>, 2023.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib5"><label>Beven(1989)</label><mixed-citation>
      
Beven, K.: Changing ideas in hydrology – The case of physically-based models,
J. Hydrol., 105, 157–172,
<a href="https://doi.org/10.1016/0022-1694(89)90101-7" target="_blank">https://doi.org/10.1016/0022-1694(89)90101-7</a>, 1989.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib6"><label>Beven et al.(1984)</label><mixed-citation>
      
Beven, K., Kirkby, M., Schofield, N., and Tagg, A.: Testing a physically-based
flood forecasting model (TOPMODEL) for three U.K. catchments, J. Hydrol., 69, 119–143, <a href="https://doi.org/10.1016/0022-1694(84)90159-8" target="_blank">https://doi.org/10.1016/0022-1694(84)90159-8</a>,
1984.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib7"><label>Beven and Kirkby(1979)</label><mixed-citation>
      
Beven, K. J. and Kirkby, M. J.: A physically based, variable contributing area
model of basin hydrology/Un modèle à base physique de zone d'appel
variable de l'hydrologie du bassin versant, Hydrol. Sci. J.,
24, 43–69, <a href="https://doi.org/10.1080/02626667909491834" target="_blank">https://doi.org/10.1080/02626667909491834</a>, 1979.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib8"><label>Bonotto et al.(2022)</label><mixed-citation>
      
Bonotto, G., Peterson, T. J., Fowler, K., and Western, A. W.: Identifying
Causal Interactions Between Groundwater and Streamflow Using Convergent
Cross-Mapping, Water Resour. Res., 58, e2021WR030231,
<a href="https://doi.org/10.1029/2021WR030231" target="_blank">https://doi.org/10.1029/2021WR030231</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib9"><label>Bui et al.(2023)</label><mixed-citation>
      
Bui, H. X., Li, Y.-X., Sherwood, S. C., Reid, K. J., and Dommenget, D.:
Assessing the soil moisture-precipitation feedback in Australia: CYGNSS
observations, Environ. Res. Lett., 19, 014055,
<a href="https://doi.org/10.1088/1748-9326/ad15b7" target="_blank">https://doi.org/10.1088/1748-9326/ad15b7</a>, 2023.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib10"><label>Byrd et al.(1995)</label><mixed-citation>
      
Byrd, R. H., Lu, P., Nocedal, J., and Zhu, C.: A Limited Memory Algorithm for
Bound Constrained Optimization, SIAM Journal on Scientific Computing, 16,
1190–1208, <a href="https://doi.org/10.1137/0916069" target="_blank">https://doi.org/10.1137/0916069</a>, 1995.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib11"><label>Chauhan et al.(2023)</label><mixed-citation>
      
Chauhan, T., Devanand, A., Roxy, M. K., Ashok, K., and Ghosh, S.: River
interlinking alters land-atmosphere feedback and changes the Indian summer
monsoon, Nat. Commun., 14, 5928,
<a href="https://doi.org/10.1038/s41467-023-41668-x" target="_blank">https://doi.org/10.1038/s41467-023-41668-x</a>, 2023.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib12"><label>Chicco and Jurman(2020)</label><mixed-citation>
      
Chicco, D. and Jurman, G.: The advantages of the Matthews correlation
coefficient (MCC) over F1 score and accuracy in binary classification
evaluation, BMC Genomics, 21, 6,
<a href="https://doi.org/10.1186/s12864-019-6413-7" target="_blank">https://doi.org/10.1186/s12864-019-6413-7</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib13"><label>Chollet(2015)</label><mixed-citation>
      
Chollet, F.: Keras, <a href="https://keras.io" target="_blank"/> (last access: May 2024), 2015.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib14"><label>Christian et al.(2024)</label><mixed-citation>
      
Christian, J. I., Hobbins, M., Hoell, A., Otkin, J. A., Ford, T. W., Cravens,
A. E., Powlen, K. A., Wang, H., and Mishra, V.: Flash drought: A state of the
science review, WIREs Water, 11, e1714,
<a href="https://doi.org/10.1002/wat2.1714" target="_blank">https://doi.org/10.1002/wat2.1714</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib15"><label>Clapp and Hornberger(1978)</label><mixed-citation>
      
Clapp, R. B. and Hornberger, G. M.: Empirical equations for some soil hydraulic
properties, Water Resour. Res., 14, 601–604,
<a href="https://doi.org/10.1029/WR014i004p00601" target="_blank">https://doi.org/10.1029/WR014i004p00601</a>, 1978.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib16"><label>Cunningham and Schrijver(1998)</label><mixed-citation>
      
Cunningham, W. J. C. W. H. and Schrijver, W. R. P. A.: Combinatorial
optimization, NY, United States, <a href="https://doi.org/10.1002/9781118033142" target="_blank">https://doi.org/10.1002/9781118033142</a>, 1998.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib17"><label>Delforge et al.(2022)</label><mixed-citation>
      
Delforge, D., de Viron, O., Vanclooster, M., Van Camp, M., and Watlet, A.: Detecting hydrological connectivity using causal inference from time series: synthetic and real karstic case studies, Hydrol. Earth Syst. Sci., 26, 2181–2199, <a href="https://doi.org/10.5194/hess-26-2181-2022" target="_blank">https://doi.org/10.5194/hess-26-2181-2022</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib18"><label>Devanand et al.(2018)</label><mixed-citation>
      
Devanand, A., Roxy, M. K., and Ghosh, S.: Coupled Land-Atmosphere Regional
Model Reduces Dry Bias in Indian Summer Monsoon Rainfall Simulated by CFSv2,
Geophys. Res. Lett., 45, 2476–2486,
<a href="https://doi.org/10.1002/2018GL077218" target="_blank">https://doi.org/10.1002/2018GL077218</a>, 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib19"><label>Ducharne et al.(2000)</label><mixed-citation>
      
Ducharne, A., Koster, R. D., Suarez, M. J., Stieglitz, M., and Kumar, P.: A
catchment-based approach to modeling land surface processes in a general
circulation model: 2. Parameter estimation and model demonstration, J. Geophys. Res.-Atmos., 105, 24823–24838,
<a href="https://doi.org/10.1029/2000JD900327" target="_blank">https://doi.org/10.1029/2000JD900327</a>, 2000.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib20"><label>Dutra et al.(2017)</label><mixed-citation>
      
Dutra, E., Balsamo, G., Calvet, J., Munier, S., Burke, S., Fink, G., van Dijk,
A., Martinez-de la Torre, A., van Beek, R., De Roo, A., Balsamo, G., Calvet, J.-C., Munier, S., Burke, S., Fink, G., van Dijk, A., Martinez-de la Torre, A., van Beek, R., De Roo, A., and Polcher, J.: Report on the
improved water resources reanalysis, Tech. rep., EartH2Observe,
<a href="https://doi.org/10.13140/RG.2.2.14523.67369" target="_blank">https://doi.org/10.13140/RG.2.2.14523.67369</a>, 2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib21"><label>Feng et al.(2023)</label><mixed-citation>
      
Feng, D., Beck, H., Lawson, K., and Shen, C.: The suitability of differentiable, physics-informed machine learning hydrologic models for ungauged regions and climate change impact assessment, Hydrol. Earth Syst. Sci., 27, 2357–2373, <a href="https://doi.org/10.5194/hess-27-2357-2023" target="_blank">https://doi.org/10.5194/hess-27-2357-2023</a>, 2023.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib22"><label>Gong et al.(2024)</label><mixed-citation>
      
Gong, C., Zhang, C., Yao, D., Bi, J., Li, W., and Xu, Y.: Causal Discovery from
Temporal Data: An Overview and New Perspectives, ACM Comput. Surv., 57,
<a href="https://doi.org/10.1145/3705297" target="_blank">https://doi.org/10.1145/3705297</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib23"><label>Gong et al.(2017)</label><mixed-citation>
      
Gong, M., Zhang, K., Schölkopf, B., Glymour, C., and Tao, D.: Causal discovery  from temporally aggregated time series, in: Proceedings of the 33rd Conference on Uncertainty in Artificial Intelligence ID 269, edited by: Elidan, G., Kersting, K., and Ihler, A. T., AUAI Press, Corvallis, Oregon, USA, 2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib24"><label>Goodwell et al.(2020)</label><mixed-citation>
      
Goodwell, A. E., Jiang, P., Ruddell, B. L., and Kumar, P.: Debates – Does
Information Theory Provide a New Paradigm for Earth Science? Causality,
Interaction, and Feedback, Water Resour. Res., 56, e2019WR024940,
<a href="https://doi.org/10.1029/2019WR024940" target="_blank">https://doi.org/10.1029/2019WR024940</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib25"><label>Gosling et al.(2023)</label><mixed-citation>
      
Gosling, S. N., Müller Schmied, H., Betts, R., Chang, J., Chen, H., Ciais, P., Dankers, R., Döll, P., Eisner, S., Flörke, M., Gerten, D., Grillakis, M., Hagemann, S., Hanasaki, N., Huang, M., Huang, Z., Jerez, S., Kim, H., Koutroulis, A., Leng, G., Liu, J., Liu, X., Mao, G., Masaki, Y., Montavez, J. P., Morfopoulos, C., Oki, T., Orth, R., Ostberg, S., Papadimitriou, L., Pokhrel, Y., Portmann, F., Qi, W., Satoh, Y., Seneviratne, S., Sommer, P. S., Stacke, T., Tang, Q., Tsanis, I., Wada, Y., Wang, X., Zhou, T., Büchner, M., Schewe, J., and Zhao, F.: ISIMIP2a
Simulation Data from the Global Water Sector, ISIMIP2a Simulation Data from
the Global Water Sector, ISIMIP Repository [data set], <a href="https://doi.org/10.48364/ISIMIP.882536" target="_blank">https://doi.org/10.48364/ISIMIP.882536</a>, 2023.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib26"><label>Granger(1969)</label><mixed-citation>
      
Granger, C. W. J.: Investigating Causal Relations by Econometric Models and
Cross-spectral Methods, Econometrica, 37, 424–438,
<a href="https://doi.org/10.2307/1912791" target="_blank">https://doi.org/10.2307/1912791</a>, 1969.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib27"><label>Guillod et al.(2015)</label><mixed-citation>
      
Guillod, B. P., Orlowsky, B., Miralles, D. G., Teuling, A. J., and Seneviratne,
S. I.: Reconciling spatial and temporal soil moisture effects on afternoon
rainfall, Nat. Commun., 6, 6443,
<a href="https://doi.org/10.1038/ncomms7443" target="_blank">https://doi.org/10.1038/ncomms7443</a>, 2015.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib28"><label>Harris et al.(2020)</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., van Kerkwijk, M. H., 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.bib29"><label>Hasan et al.(2024)</label><mixed-citation>
      
Hasan, U., Hossain, E., and Gani, M. O.: A Survey on Causal Discovery Methods
for I.I.D. and Time Series Data, arXiv [preprint], <a href="https://doi.org/10.48550/arXiv.2303.15027" target="_blank">https://doi.org/10.48550/arXiv.2303.15027</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib30"><label>Höge et al.(2022)</label><mixed-citation>
      
Höge, M., Scheidegger, A., Baity-Jesi, M., Albert, C., and Fenicia, F.: Improving hydrologic models for predictions and process understanding using neural ODEs, Hydrol. Earth Syst. Sci., 26, 5085–5102, <a href="https://doi.org/10.5194/hess-26-5085-2022" target="_blank">https://doi.org/10.5194/hess-26-5085-2022</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib31"><label>Holder(1985)</label><mixed-citation>
      
Holder, R.: Multiple regression in hydrology, Institute of hydrology, ISBN
0948540001, 1985.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib32"><label>Hunter(2007)</label><mixed-citation>
      
Hunter, J. D.: Matplotlib: A 2D graphics environment, Comput. Sci.
Eng., 9, 90–95, <a href="https://doi.org/10.1109/MCSE.2007.55" target="_blank">https://doi.org/10.1109/MCSE.2007.55</a>, 2007.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib33"><label>Hyvärinen et al.(2001)</label><mixed-citation>
      
Hyvärinen, A., Karhunen, J., and Oja, E.: What is Independent Component
Analysis?, chap. 7,  145–164, John Wiley and Sons, Ltd, ISBN
9780471221319, <a href="https://doi.org/10.1002/0471221317.ch7" target="_blank">https://doi.org/10.1002/0471221317.ch7</a>, 2001.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib34"><label>Hyvärinen et al.(2008)</label><mixed-citation>
      
Hyvärinen, A., Shimizu, S., and Hoyer, P. O.: Causal modelling combining
instantaneous and lagged effects: an identifiable model based on
non-Gaussianity, in: Proceedings of the 25th International Conference on
Machine Learning, ICML '08, p. 424–431, Association for Computing
Machinery, New York, NY, USA, ISBN 9781605582054,
<a href="https://doi.org/10.1145/1390156.1390210" target="_blank">https://doi.org/10.1145/1390156.1390210</a>, 2008.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib35"><label>Ikeuchi et al.(2023)</label><mixed-citation>
      
Ikeuchi, T., Ide, M., Zeng, Y., Maeda, T. N., and Shimizu, S.: Python package
for causal discovery based on LiNGAM, J. Mach. Learn. Res., 24, 1–8, 2023 (code available at: <a href="https://github.com/cdt15/lingam" target="_blank"/>, last access: May 2024).

    </mixed-citation></ref-html>
<ref-html id="bib1.bib36"><label>Jackson et al.(2019)</label><mixed-citation>
      
Jackson, E. K., Roberts, W., Nelsen, B., Williams, G. P., Nelson, E. J., and
Ames, D. P.: Introductory overview: Error metrics for hydrologic modelling
– A review of common practices and an open source library to facilitate use
and adoption, Environ. Model. Softw., 119, 32–48,
<a href="https://doi.org/10.1016/j.envsoft.2019.05.001" target="_blank">https://doi.org/10.1016/j.envsoft.2019.05.001</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib37"><label>Kirchner(2006)</label><mixed-citation>
      
Kirchner, J. W.: Getting the right answers for the right reasons: Linking
measurements, analyses, and models to advance the science of hydrology, Water Resour. Res., 42, <a href="https://doi.org/10.1029/2005WR004362" target="_blank">https://doi.org/10.1029/2005WR004362</a>, 2006.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib38"><label>Koster and Suarez(1992)</label><mixed-citation>
      
Koster, R. D. and Suarez, M. J.: Modeling the land surface boundary in climate
models as a composite of independent vegetation stands, J. Geophys. Res.-Atmos., 97, 2697–2715, <a href="https://doi.org/10.1029/91JD01696" target="_blank">https://doi.org/10.1029/91JD01696</a>,
1992.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib39"><label>Koster and Suarez(1996)</label><mixed-citation>
      
Koster, R. D. and Suarez, M. J.: Energy and water balance calculations in the Mosaic LSM, NASA Technical Memorandum 104606, Technical Report Series on Global Modeling and Data Assimilation, vol. 9, 60 pp., 1996.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib40"><label>Koster et al.(2000)</label><mixed-citation>
      
Koster, R. D., Suarez, M. J., Ducharne, A., Stieglitz, M., and Kumar, P.: A
catchment-based approach to modeling land surface processes in a general
circulation model: 1. Model structure, J. Geophys. Res.-Atmos., 105, 24809–24822, <a href="https://doi.org/10.1029/2000JD900327" target="_blank">https://doi.org/10.1029/2000JD900327</a>, 2000.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib41"><label>Kratzert et al.(2019)</label><mixed-citation>
      
Kratzert, F., Klotz, D., Herrnegger, M., Sampson, A. K., Hochreiter, S., and
Nearing, G. S.: Toward Improved Predictions in Ungauged Basins: Exploiting
the Power of Machine Learning, Water Resour. Res., 55,
11344–11354, <a href="https://doi.org/10.1029/2019WR026065" target="_blank">https://doi.org/10.1029/2019WR026065</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib42"><label>Lehner et al.(2008)</label><mixed-citation>
      
Lehner, B., Verdin, K., and Jarvis, A.: New Global Hydrography Derived From
Spaceborne Elevation Data, Eos, Transactions American Geophysical Union, 89,
93–94, <a href="https://doi.org/10.1029/2008EO100001" target="_blank">https://doi.org/10.1029/2008EO100001</a>, 2008.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib43"><label>Li et al.(2018)</label><mixed-citation>
      
Li, B., Beaudoing, H., and Rodell, M.: NASA/GSFC/HSL (2018), GLDAS Catchment
Land Surface Model L4 daily 0.25 x 0.25 degree V2.0, Greenbelt, Maryland,
USA, Goddard Earth Sciences Data and Information Services Center (GES DISC),
Tech. rep., Goddard Earth Sciences Data and Information Services Center (GES
DISC) [data set], <a href="https://doi.org/10.5067/LYHA9088MFWQ" target="_blank">https://doi.org/10.5067/LYHA9088MFWQ</a> (last access: 17 April 2024), 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib44"><label>Li et al.(2022)</label><mixed-citation>
      
Li, L., Dai, Y., Shangguan, W., Wei, Z., Wei, N., and Li, Q.:
Causality-Structured Deep Learning for Soil Moisture Predictions, J.
Hydrometeorol., 23, 1315–1331, <a href="https://doi.org/10.1175/JHM-D-21-0206.1" target="_blank">https://doi.org/10.1175/JHM-D-21-0206.1</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib45"><label>Lynch-Stieglitz(1994)</label><mixed-citation>
      
Lynch-Stieglitz, M.: The development and validation of a simple snow model for
the GISS GCM, J. Climate, 7, 1842–1855,
<a href="https://doi.org/10.1175/1520-0442(1994)007&lt;1842:TDAVOA&gt;2.0.CO;2" target="_blank">https://doi.org/10.1175/1520-0442(1994)007&lt;1842:TDAVOA&gt;2.0.CO;2</a>, 1994.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib46"><label>Mishra et al.(2022)</label><mixed-citation>
      
Mishra, A., Mukherjee, S., Merz, B., Singh, V. P., Wright, D. B., Villarini,
G., Paul, S., Kumar, D. N., Khedun, C. P., Niyogi, D., Schumann, G., and
Stedinger, J. R.: An Overview of Flood Concepts, Challenges, and Future
Directions, J. Hydrol. Eng., 27, 03122001,
<a href="https://doi.org/10.1061/(ASCE)HE.1943-5584.0002164" target="_blank">https://doi.org/10.1061/(ASCE)HE.1943-5584.0002164</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib47"><label>Nauta et al.(2019)</label><mixed-citation>
      
Nauta, M., Bucur, D., and Seifert, C.: Causal Discovery with Attention-Based
Convolutional Neural Networks, Machine Learning and Knowledge Extraction, 1,
312–340, <a href="https://doi.org/10.3390/make1010019" target="_blank">https://doi.org/10.3390/make1010019</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib48"><label>Nearing et al.(2021)</label><mixed-citation>
      
Nearing, G. S., Kratzert, F., Sampson, A. K., Pelissier, C. S., Klotz, D.,
Frame, J. M., Prieto, C., and Gupta, H. V.: What Role Does Hydrological
Science Play in the Age of Machine Learning?, Water Resour. Res., 57,
e2020WR028091, <a href="https://doi.org/10.1029/2020WR028091" target="_blank">https://doi.org/10.1029/2020WR028091</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib49"><label>Ombadi et al.(2020)</label><mixed-citation>
      
Ombadi, M., Nguyen, P., Sorooshian, S., and Hsu, K.-l.: Evaluation of Methods
for Causal Discovery in Hydrometeorological Systems, Water Resour. Res., 56, e2020WR027251, <a href="https://doi.org/10.1029/2020WR027251" target="_blank">https://doi.org/10.1029/2020WR027251</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib50"><label>Pamfil et al.(2020)</label><mixed-citation>
      
Pamfil, R., Sriwattanaworachai, N., Desai, S., Pilgerstorfer, P., Georgatzis,
K., Beaumont, P., and Aragam, B.: DYNOTEARS: Structure Learning from
Time-Series Data, Proceedings of Machine Learning Research, arXiv, 108, 1595–1605,
<a href="https://doi.org/10.48550/arXiv.2002.00498" target="_blank">https://doi.org/10.48550/arXiv.2002.00498</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib51"><label>Park and Klabjan(2017)</label><mixed-citation>
      
Park, Y. W. and Klabjan, D.: Bayesian Network Learning via Topological Order,
J. Mach. Learn. Res., 18, 1–32, 2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib52"><label>Pearl(1998)</label><mixed-citation>
      
Pearl, J.: Graphs, Causality, and Structural Equation Models, Sociol.
Method. Res., 27, 226–284, <a href="https://doi.org/10.1177/0049124198027002004" target="_blank">https://doi.org/10.1177/0049124198027002004</a>, 1998.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib53"><label>Pearl(2009)</label><mixed-citation>
      
Pearl, J.: Causality, Cambridge University Press, ISBN 978-0-521-89560-6, 2009.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib54"><label>Pedregosa et al.(2011)</label><mixed-citation>
      
Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel,
O., Blondel, M., Prettenhofer, P., Weiss, R., Dubourg, V., Vanderplas, J.,
Passos, A., Cournapeau, D., Brucher, M., Perrot, M., and Duchesnay, E.:
Scikit-learn: Machine Learning in Python, J. Mach. Learn. Res., 12,
2825–2830, 2011.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib55"><label>Peel and McMahon(2020)</label><mixed-citation>
      
Peel, M. C. and McMahon, T. A.: Historical development of rainfall-runoff
modeling, WIREs Water, 7, e1471, <a href="https://doi.org/10.1002/wat2.1471" target="_blank">https://doi.org/10.1002/wat2.1471</a>,
2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib56"><label>Peters et al.(2017)</label><mixed-citation>
      
Peters, J., Janzing, D., and Schölkopf, B.: Elements of causal inference:
foundations and learning algorithms, The MIT Press, ISBN 9780262037310,
2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib57"><label>Powers(2020)</label><mixed-citation>
      
Powers, D. M. W.: Evaluation: from precision, recall and F-measure to ROC,
informedness, markedness and correlation, arXiv [preprint], <a href="https://doi.org/10.48550/arXiv.2010.16061" target="_blank">https://doi.org/10.48550/arXiv.2010.16061</a>,
2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib58"><label>Project Jupyter et al.(2018)</label><mixed-citation>
      
Project Jupyter, Bussonnier, M., Forde, J.,
Freeman, J., Granger, B., Head, T., Holdgraf, C.,
Kelley, K., Nalvarte, G., Osheroff, A., Pacer, M.,
Panda, Y., Perez, F., Kelley, B. R., and
Willing, C.: Binder 2.0 – Reproducible, interactive, sharable environments
for science at scale, in: Proceedings of the 17th Python in Science
Conference, edited by: Akici, F., Lippa, D.,
Niederhut, D., and Pacer, M., 113–120,
<a href="https://doi.org/10.25080/Majora-4af1f417-011" target="_blank">https://doi.org/10.25080/Majora-4af1f417-011</a>, 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib59"><label>Rinderer et al.(2018)</label><mixed-citation>
      
Rinderer, M., Ali, G., and Larsen, L. G.: Assessing structural, functional and
effective hydrologic connectivity with brain neuroscience methods:
State-of-the-art and research directions, Earth-Sci. Rev., 178, 29–47,
<a href="https://doi.org/10.1016/j.earscirev.2018.01.009" target="_blank">https://doi.org/10.1016/j.earscirev.2018.01.009</a>, 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib60"><label>Ruddell and Kumar(2009)</label><mixed-citation>
      
Ruddell, B. L. and Kumar, P.: Ecohydrologic process networks: 1.
Identification, Water Resour. Res., 45,
<a href="https://doi.org/10.1029/2008WR007279" target="_blank">https://doi.org/10.1029/2008WR007279</a>, 2009.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib61"><label>Runge(2018)</label><mixed-citation>
      
Runge, J.: Causal network reconstruction from time series: From theoretical
assumptions to practical estimation, Chaos, 28, 075310, <a href="https://doi.org/10.1063/1.5025050" target="_blank">https://doi.org/10.1063/1.5025050</a>, 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib62"><label>Runge(2022)</label><mixed-citation>
      
Runge, J.: Discovering contemporaneous and lagged causal relations in
autocorrelated nonlinear time series datasets, arXiv [preprint],
<a href="https://doi.org/10.48550/arXiv.2003.03685" target="_blank">https://doi.org/10.48550/arXiv.2003.03685</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib63"><label>Runge et al.(2012)</label><mixed-citation>
      
Runge, J., Heitzig, J., Petoukhov, V., and Kurths, J.: Escaping the Curse of
Dimensionality in Estimating Multivariate Transfer Entropy, Phys. Rev. Lett.,
108, 258701, <a href="https://doi.org/10.1103/PhysRevLett.108.258701" target="_blank">https://doi.org/10.1103/PhysRevLett.108.258701</a>, 2012.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib64"><label>Runge et al.(2019a)</label><mixed-citation>
      
Runge, J., Nowack, P., Kretschmer, M., Flaxman, S., and Sejdinovic, D.:
Detecting and quantifying causal associations in large nonlinear time series
datasets, Sci. Adv., 5, eaau4996, <a href="https://doi.org/10.1126/sciadv.aau4996" target="_blank">https://doi.org/10.1126/sciadv.aau4996</a>,
2019a.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib65"><label>Runge et al.(2019b)</label><mixed-citation>
      
Runge, J., Nowack, P., Kretschmer, M., Flaxman, S., and Sejdinovic, D.:
Detecting and quantifying causal associations in large nonlinear time series
datasets, Sci. Adv., 5, eaau4996, <a href="https://doi.org/10.1126/sciadv.aau4996" target="_blank">https://doi.org/10.1126/sciadv.aau4996</a>,
2019b.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib66"><label>Samek et al.(2019)</label><mixed-citation>
      
Samek, W., Montavon, G., Vedaldi, A., Hansen, L. K., and Müller, K.-R.:
Explainable AI: interpreting, explaining and visualizing deep learning, vol.
11700, Springer Nature, <a href="https://doi.org/10.1007/978-3-030-28954-6" target="_blank">https://doi.org/10.1007/978-3-030-28954-6</a>,
2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib67"><label>Schellekens et al.(2017)</label><mixed-citation>
      
Schellekens, J., Dutra, E., Martínez-de la Torre, A., Balsamo, G., van Dijk, A., Sperna Weiland, F., Minvielle, M., Calvet, J.-C., Decharme, B., Eisner, S., Fink, G., Flörke, M., Peßenteiner, S., van Beek, R., Polcher, J., Beck, H., Orth, R., Calton, B., Burke, S., Dorigo, W., and Weedon, G. P.: A global water resources ensemble of hydrological models: the eartH2Observe Tier-1 dataset, Earth Syst. Sci. Data, 9, 389–413, <a href="https://doi.org/10.5194/essd-9-389-2017" target="_blank">https://doi.org/10.5194/essd-9-389-2017</a>, 2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib68"><label>Schreiber(2000)</label><mixed-citation>
      
Schreiber, T.: Measuring Information Transfer, Phys. Rev. Lett., 85, 461–464,
<a href="https://doi.org/10.1103/PhysRevLett.85.461" target="_blank">https://doi.org/10.1103/PhysRevLett.85.461</a>, 2000.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib69"><label>Seneviratne et al.(2010)</label><mixed-citation>
      
Seneviratne, S. I., Corti, T., Davin, E. L., Hirschi, M., Jaeger, E. B.,
Lehner, I., Orlowsky, B., and Teuling, A. J.: Investigating soil
moisture–climate interactions in a changing climate: A review,
Earth-Sci. Rev., 99, 125–161, <a href="https://doi.org/10.1016/j.earscirev.2010.02.004" target="_blank">https://doi.org/10.1016/j.earscirev.2010.02.004</a>,
2010.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib70"><label>Shannon(1948)</label><mixed-citation>
      
Shannon, C. E.: A Mathematical Theory of Communication, Bell System Technical
Journal, 27, 379–423,
<a href="https://doi.org/10.1002/j.1538-7305.1948.tb01338.x" target="_blank">https://doi.org/10.1002/j.1538-7305.1948.tb01338.x</a>, 1948.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib71"><label>Sheffield et al.(2006)</label><mixed-citation>
      
Sheffield, J., Goteti, G., and Wood, E. F.: Development of a 50-Year
High-Resolution Global Dataset of Meteorological Forcings for Land Surface
Modeling, J. Climate, 19, 3088–3111, <a href="https://doi.org/10.1175/JCLI3790.1" target="_blank">https://doi.org/10.1175/JCLI3790.1</a>,
2006.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib72"><label>Shi et al.(2022)</label><mixed-citation>
      
Shi, H., Zhao, Y., Liu, S., Cai, H., and Zhou, Z.: A New Perspective on Drought
Propagation: Causality, Geophys. Res. Lett., 49, e2021GL096758,
<a href="https://doi.org/10.1029/2021GL096758" target="_blank">https://doi.org/10.1029/2021GL096758</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib73"><label>Shimizu et al.(2006)</label><mixed-citation>
      
Shimizu, S., Hoyer, P., Hyvärinen, A., and Kerminen, A.: A linear
non-gaussian acyclic model for causal discovery, J. Mach. Learn.
Res., 7, 2003–2030, 2006.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib74"><label>Spirtes and Glymour(1991)</label><mixed-citation>
      
Spirtes, P. and Glymour, C.: An algorithm for fast recovery of sparse causal
graphs, Soc. Sci. Comput. Rev., 9, 62–72,
<a href="https://doi.org/10.1177/089443939100900106" target="_blank">https://doi.org/10.1177/089443939100900106</a>, 1991.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib75"><label>Sugihara et al.(2012)</label><mixed-citation>
      
Sugihara, G., May, R., Ye, H., hao Hsieh, C., Deyle, E., Fogarty, M., and
Munch, S.: Detecting Causality in Complex Ecosystems, Science, 338, 496–500,
<a href="https://doi.org/10.1126/science.1227079" target="_blank">https://doi.org/10.1126/science.1227079</a>, 2012.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib76"><label>Tasker(1980)</label><mixed-citation>
      
Tasker, G. D.: Hydrologic regression with weighted least squares, Water Resour. Res., 16, 1107–1113,
<a href="https://doi.org/10.1029/WR016i006p01107" target="_blank">https://doi.org/10.1029/WR016i006p01107</a>, 1980.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib77"><label>Tripathy and Mishra(2024)</label><mixed-citation>
      
Tripathy, K. P. and Mishra, A. K.: Deep learning in hydrology and water
resources disciplines: concepts, methods, applications, and research
directions, J. Hydrol., 628, 130458,
<a href="https://doi.org/10.1016/j.jhydrol.2023.130458" target="_blank">https://doi.org/10.1016/j.jhydrol.2023.130458</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib78"><label>Tuttle and Salvucci(2017)</label><mixed-citation>
      
Tuttle, S. E. and Salvucci, G. D.: Confounding factors in determining causal
soil moisture-precipitation feedback, Water Resour. Res., 53,
5531–5544, <a href="https://doi.org/10.1002/2016WR019869" target="_blank">https://doi.org/10.1002/2016WR019869</a>, 2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib79"><label>Van Oldenborgh et al.(2022)</label><mixed-citation>
      
Van Oldenborgh, G. J., Wehner, M. F., Vautard, R., Otto, F. E. L., Seneviratne,
S. I., Stott, P. A., Hegerl, G. C., Philip, S. Y., and Kew, S. F.:
Attributing and Projecting Heatwaves Is Hard: We Can Do Better, Earth's
Future, 10, e2021EF002271, <a href="https://doi.org/10.1029/2021EF002271" target="_blank">https://doi.org/10.1029/2021EF002271</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib80"><label>Vázquez-Patiño et al.(2022)</label><mixed-citation>
      
Vázquez-Patiño, A., Samaniego, E., Campozano, L., and Avilés, A.:
Effectiveness of causality-based predictor selection for statistical
downscaling: a case study of rainfall in an Ecuadorian Andes basin,
Theor. Appl. Climatol., 150, 987–1013,
<a href="https://doi.org/10.1007/s00704-022-04205-2" target="_blank">https://doi.org/10.1007/s00704-022-04205-2</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib81"><label>Virtanen et al.(2020)</label><mixed-citation>
      
Virtanen, P., Gommers, R., Oliphant, T. E., Haberland, M., Reddy, T.,
Cournapeau, D., Burovski, E., Peterson, P., Weckesser, W., Bright, J., van
der Walt, S. J., Brett, M., Wilson, J., Millman, K. J., Mayorov, N., Nelson,
A. R. J., Jones, E., Kern, R., Larson, E., Carey, C. J., Polat, İ., Feng,
Y., Moore, E. W., VanderPlas, J., Laxalde, D., Perktold, J., Cimrman, R.,
Henriksen, I., Quintero, E. A., Harris, C. R., Archibald, A. M., Ribeiro,
A. H., Pedregosa, F., van Mulbregt, P., and SciPy 1.0 Contributors:
SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python,
Nature Methods, 17, 261–272, <a href="https://doi.org/10.1038/s41592-019-0686-2" target="_blank">https://doi.org/10.1038/s41592-019-0686-2</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib82"><label>Vivek Kumar(2026)</label><mixed-citation>
      
Vivek Kumar, Y.: lsmvivek/project_ci_eval: Release for Zenodo archive (hess-accepted-v1), Zenodo [code], <a href="https://doi.org/10.5281/zenodo.20337850" target="_blank">https://doi.org/10.5281/zenodo.20337850</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib83"><label>Voortman et al.(2010)</label><mixed-citation>
      
Voortman, M., Dash, D., and Druzdzel, M. J.: Learning why things change: the
difference-based causality learner, in: Proceedings of the Twenty-Sixth
Conference on Uncertainty in Artificial Intelligence, UAI'10, 641–650,
AUAI Press, Arlington, Virginia, USA, ISBN 9780974903965, 2010.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib84"><label>Wang et al.(2025)</label><mixed-citation>
      
Wang, L., Gu, H., Liu, L., Liang, X., Chen, S., and Xu, Y.-P.: Revealing joint evolutions and causal interactions in complex ecohydrological systems by a network-based framework, Hydrol. Earth Syst. Sci., 29, 361–379, <a href="https://doi.org/10.5194/hess-29-361-2025" target="_blank">https://doi.org/10.5194/hess-29-361-2025</a>, 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib85"><label>Wang et al.(2018)</label><mixed-citation>
      
Wang, Y., Yang, J., Chen, Y., De Maeyer, P., Li, Z., and Duan, W.: Detecting
the causal effect of soil moisture on precipitation using convergent cross
mapping, Sci. Rep., 8, 12171,
<a href="https://doi.org/10.1038/s41598-018-30669-2" target="_blank">https://doi.org/10.1038/s41598-018-30669-2</a>, 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib86"><label>Warszawski et al.(2014)</label><mixed-citation>
      
Warszawski, L., Frieler, K., Huber, V., Piontek, F., Serdeczny, O., and Schewe,
J.: The Inter-Sectoral Impact Model Intercomparison Project (ISI–MIP):
Project framework, P. Natl. Acad. Sci. USA, 111,
3228–3232, <a href="https://doi.org/10.1073/pnas.1312330110" target="_blank">https://doi.org/10.1073/pnas.1312330110</a>, 2014.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib87"><label>Waskom(2021)</label><mixed-citation>
      
Waskom, M. L.: seaborn: statistical data visualization, J. Open Source
Softw., 6, 3021, <a href="https://doi.org/10.21105/joss.03021" target="_blank">https://doi.org/10.21105/joss.03021</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib88"><label>Wu and Chau(2011)</label><mixed-citation>
      
Wu, C. and Chau, K.: Rainfall–runoff modeling using artificial neural network
coupled with singular spectrum analysis, J. Hydrol., 399, 394–409,
<a href="https://doi.org/10.1016/j.jhydrol.2011.01.017" target="_blank">https://doi.org/10.1016/j.jhydrol.2011.01.017</a>, 2011.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib89"><label>Wu et al.(2025)</label><mixed-citation>
      
Wu, T., Xu, L., Lv, Y., Cai, R., Pan, Z., Zhang, X., Zhang, X., and Chen, N.:
Integrating causal inference with ConvLSTM networks for spatiotemporal
forecasting of root zone soil moisture, J. Hydrol., 659, 133246,
<a href="https://doi.org/10.1016/j.jhydrol.2025.133246" target="_blank">https://doi.org/10.1016/j.jhydrol.2025.133246</a>, 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib90"><label>Xu and Liang(2021)</label><mixed-citation>
      
Xu, T. and Liang, F.: Machine learning for hydrologic sciences: An introductory
overview, WIREs Water, 8, e1533, <a href="https://doi.org/10.1002/wat2.1533" target="_blank">https://doi.org/10.1002/wat2.1533</a>,
2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib91"><label>Yuan et al.(2022)</label><mixed-citation>
      
Yuan, K., Zhu, Q., Li, F., Riley, W. J., Torn, M., Chu, H., McNicol, G., Chen,
M., Knox, S., Delwiche, K., Wu, H., Baldocchi, D., Ma, H., Desai, A. R.,
Chen, J., Sachs, T., Ueyama, M., Sonnentag, O., Helbig, M., Tuittila, E.-S.,
Jurasinski, G., Koebsch, F., Campbell, D., Schmid, H. P., Lohila, A.,
Goeckede, M., Nilsson, M. B., Friborg, T., Jansen, J., Zona, D., Euskirchen,
E., Ward, E. J., Bohrer, G., Jin, Z., Liu, L., Iwata, H., Goodrich, J., and
Jackson, R.: Causality guided machine learning model on wetland CH4 emissions
across global wetlands, Agr. Forest Meteorol., 324, 109115,
<a href="https://doi.org/10.1016/j.agrformet.2022.109115" target="_blank">https://doi.org/10.1016/j.agrformet.2022.109115</a>, 2022.


    </mixed-citation></ref-html>
<ref-html id="bib1.bib92"><label>Zhang and Montgomery(1994)</label><mixed-citation>
      
Zhang, W. and Montgomery, D. R.: Digital elevation model grid size, landscape
representation, and hydrologic simulations, Water Resour. Res., 30,
1019–1028, <a href="https://doi.org/10.1029/93WR03553" target="_blank">https://doi.org/10.1029/93WR03553</a>, 1994.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib93"><label>Zhang et al.(2018)</label><mixed-citation>
      
Zhang, Y., Chiew, F. H. S., Li, M., and Post, D.: Predicting Runoff Signatures
Using Regression and Hydrological Modeling Approaches, Water Resour. Res., 54, 7859–7878, <a href="https://doi.org/10.1029/2018WR023325" target="_blank">https://doi.org/10.1029/2018WR023325</a>, 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib94"><label>Zheng et al.(2018)</label><mixed-citation>
      
Zheng, X., Aragam, B., Ravikumar, P. K., and Xing, E. P.: DAGs with NO TEARS:
Continuous Optimization for Structure Learning, in: Advances in Neural
Information Processing Systems, edited by Bengio, S., Wallach, H.,
Larochelle, H., Grauman, K., Cesa-Bianchi, N., and Garnett, R., vol. 31,
Curran Associates, Inc., arXiv [preprint], <a href="https://doi.org/10.48550/arXiv.1803.01422" target="_blank">https://doi.org/10.48550/arXiv.1803.01422</a>, 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib95"><label>Zou et al.(2023)</label><mixed-citation>
      
Zou, L., Zha, Y., Diao, Y., Tang, C., Gu, W., and Shao, D.: Coupling the causal
inference and informer networks for short-term forecasting in irrigation
water usage, Water Resour. Manage., 37, 427–449,
<a href="https://doi.org/10.1007/s11269-022-03381-0" target="_blank">https://doi.org/10.1007/s11269-022-03381-0</a>, 2023.

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