<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing with OASIS Tables v3.0 20080202//EN" "https://jats.nlm.nih.gov/nlm-dtd/publishing/3.0/journalpub-oasis3.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:oasis="http://docs.oasis-open.org/ns/oasis-exchange/table" xml:lang="en" dtd-version="3.0" article-type="research-article">
  <front>
    <journal-meta><journal-id journal-id-type="publisher">GMD</journal-id><journal-title-group>
    <journal-title>Geoscientific Model Development</journal-title>
    <abbrev-journal-title abbrev-type="publisher">GMD</abbrev-journal-title><abbrev-journal-title abbrev-type="nlm-ta">Geosci. Model Dev.</abbrev-journal-title>
  </journal-title-group><issn pub-type="epub">1991-9603</issn><publisher>
    <publisher-name>Copernicus Publications</publisher-name>
    <publisher-loc>Göttingen, Germany</publisher-loc>
  </publisher></journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.5194/gmd-19-8407-2026</article-id><title-group><article-title>Three-dimensional geological modeling based on dual-task stratigraphy-aware attention networks (Geo-SAN v1.0)</article-title><alt-title>Geo-SAN v1.0</alt-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Fang</surname><given-names>Zhenxi</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff2">
          <name><surname>Zhang</surname><given-names>Tongyun</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff2">
          <name><surname>Cai</surname><given-names>Wuyi</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff2">
          <name><surname>Shi</surname><given-names>Yuzheng</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Shah</surname><given-names>Syed Yasir Ali</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Kablan</surname><given-names>Or Aimon Brou Koffi</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="yes" rid="aff1">
          <name><surname>Zhang</surname><given-names>Baoyi</given-names></name>
          <email>zhangbaoyi@csu.edu.cn</email>
        <ext-link>https://orcid.org/0000-0001-6075-9359</ext-link></contrib>
        <aff id="aff1"><label>1</label><institution>Key laboratory of Metallogenic Prediction of Nonferrous Metals and Geological Environment Monitoring (Ministry of Education), School of Geosciences and Info-Physics, Central South University, Changsha 410083, China</institution>
        </aff>
        <aff id="aff2"><label>2</label><institution>Geological and Geographic Information Institute of Hunan Province, Geological Big Data Center of Hunan Province, Changsha 410021, China</institution>
        </aff>
      </contrib-group>
      <author-notes><corresp id="corr1">Baoyi Zhang (zhangbaoyi@csu.edu.cn)</corresp></author-notes><pub-date><day>10</day><month>September</month><year>2026</year></pub-date>
      
      <volume>19</volume>
      <issue>17</issue>
      <fpage>8407</fpage><lpage>8426</lpage>
      <history>
        <date date-type="received"><day>4</day><month>March</month><year>2026</year></date>
           <date date-type="rev-request"><day>18</day><month>May</month><year>2026</year></date>
           <date date-type="rev-recd"><day>17</day><month>July</month><year>2026</year></date>
           <date date-type="accepted"><day>19</day><month>August</month><year>2026</year></date>
      </history>
      <permissions>
        <copyright-statement>Copyright: © 2026 Zhenxi Fang et al.</copyright-statement>
        <copyright-year>2026</copyright-year>
      <license license-type="open-access"><license-p>This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this licence, visit <ext-link ext-link-type="uri" xlink:href="https://creativecommons.org/licenses/by/4.0/">https://creativecommons.org/licenses/by/4.0/</ext-link></license-p></license></permissions><self-uri xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026.html">This article is available from https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026.html</self-uri><self-uri xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026.pdf">The full text article is available as a PDF file from https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026.pdf</self-uri>
      <abstract><title>Abstract</title>

      <p id="d2e142">The current three-dimensional (3D) geological implicit modelling methods are mainly based on interpolation methods, which struggle to capture the nonlinear characteristics of complex geological structures and are limited in their capacity to integrate multi-source modeling data. To overcome these limitations, we proposed a 3D geological modelling framework, Geo-SAN, which consists of a dual-task stratigraphy-aware attention network. The framework starts with graph neural networks (GNNs) with a multi-scale neighborhood aggregation mechanism which is aimed to identify critical sampled points adjacent to fault planes and aggregate the lithological features. Subsequently, a stratigraphy-aware attention mechanism is introduced to explicitly incorporate similarities in stratigraphic sequence into the framework. A unidirectional stratigraphic scalar field penalty to lithology classification is developed and incorporated into loss functions, thereby denoising lithology classification. Finally, a dual-task prediction head is designed to simultaneously complete lithology classification and scalar field interpolation. Ablation experiment further validates the contributions of the three core components, that is, graph neighborhood aggregation, stratigraphy-aware attention, and dual-task learning. A case study at the Lingnian-Ningping region of Guangxi Zhuang Autonomous Region (GZAR), China, demonstrates that the proposed Geo-SAN framework, with an accuracy of 92.1 % in lithology classification and a coefficient of determination (<inline-formula><mml:math id="M1" 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>) of 0.971 in predicting the scalar field, outperforms the Hermite RBFs (HRBFs). In summary, the proposed framework is an important innovation of intelligent modelling of intricate geological formations, which is promising in the application of concealed mineral exploration.</p>
  </abstract>
    
<funding-group>
<award-group id="gs1">
<funding-source>National Natural Science Foundation of China</funding-source>
<award-id>42572387</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="d2e165">Three-dimensional (3D) geological modelling is the process of creating mathematical representation of geological structures with the help of suitable computer data structures. The result models are the reflections of the geometrical forms, topological relationships, and spatial distributions of physical and chemical properties of geological bodies. This technique is widely used in earth sciences in visualization, statistical analysis, and numerical simulation (Alcalde et al., 2017; Wang et al., 2019; Du et al., 2026).</p>
      <p id="d2e168">3D geological geometric modelling can be divided into explicit and implicit techniques. Explicit modelling generally involves a huge amount of human-computer interaction to connect boundary lines and define the 3D surface model of geological bodies (Sprague and De Kemp, 2005; Caumon et al., 2009; Khan et al., 2021; Shah et al., 2024). Implicit modelling treats geological interfaces as iso-surfaces of a scalar field, thereby preserving topological consistency of geological interfaces. The resulting model automatically satisfies geological contact relationships and facilitates consistent handling of faults and stratigraphic interfaces (Hillier et al., 2013; Guo et al., 2020; Zhang et al., 2023a). Implicit methods, under spatial relationship constraints, can control geological structural topological consistency, orientations of geological structures, and influences of interpolation distances (Khan et al., 2023; Guo et al., 2026). They can also integrate geophysical inversion data (such as gravity, magnetic, and seismic) to enhance the ability to interpret deep geological structures (Wellmann et al., 2017; Jessell et al., 2022; Giraud et al., 2024). However, existing interpolation-driven implicit methods scale poorly to large, sparse, and irregular datasets and offer no principled way to embed stratigraphic sequence and lithological priors into the reconstruction. Motivating a learnable and data-driven implicit modeling framework that is capable of aggregating geological sampling data while coupling stratigraphic knowledge with lithology recognition poses challenges.</p>
      <p id="d2e171">The rapid advancement of deep learning technologies has opened new avenues for 3D geological modelling (Reichstein et al., 2019; Bergen et al., 2019). These methods, collectively termed neural network geomodelling (NNG) (Li et al., 2024; Lyu et al., 2024; Wu et al., 2026), encompass graph neural networks (GNNs) (Hillier et al., 2021; Chu et al., 2025; Hu et al., 2024; Liao et al., 2026), convolutional neural networks (CNNs) (Bi et al., 2022; Zhang et al., 2024; He et al., 2025; Ren et al., 2025), and multilayer perceptron (MLP) (Hillier et al., 2023; Guo et al., 2024; Chu et al., 2024). Compared to traditional implicit modelling, neural network modelling approaches offer superior speed and efficiency when handling complex geological structures, enabling their automated modelling, while they require high-quality training data for model training. Since geological sampling data exhibits pronounced spatial irregularity and sparsity (Wang et al., 2012; De La Varga et al., 2019; Wang et al., 2022), Gori et al. (2005) introduced the concept of GNNs, which apply neural network operations on graph-structured data. By propagating information through node connectivity patterns, GNNs accommodate irregular neighborhood structures and are therefore capable of capturing complex geological relationships and structural patterns (Zhang et al., 2023b; Wang et al., 2024; Song et al., 2026; Yin et al., 2026). GNN-based approaches naturally accommodate the irregular and sparse nature of geological sampling data through graph structure and message passing, but existing GNN-based frameworks still typically rely on similarity-based attention or aggregation, which is not explicitly aware of stratigraphic ordering. This makes them susceptible to information ignoring across stratigraphic discontinuities and confusion between stratigraphically adjacent but lithologically distinct units.</p>
      <p id="d2e174">To address the complexity of geological setting, we propose a 3D geological modelling framework utilizing a dual-task stratigraphy-aware attention network (Geo-SAN), including GNN-based neighborhood aggregation, stratigraphy-aware attention mechanism, and a dual-task prediction head that allows integrating lithology classification and scalar field estimation. To start with, the 3D geological space is modeled as a graph by means of the tetrahedral subdivision, where nodes are sampling points and edges are spatial adjacency. Multi-scale features are extracted and propagated using graph attention networks (GAT) and graph sample and aggregate network (GraphSAGE). Secondly, a new stratigraphy-aware attention mechanism is proposed. This mechanism considers similarities of stratigraphic sequence between the query node and the observation point. Finally, a head of the dual-task prediction is used to collaboratively produce discrete lithology classifications and continuous scalar field estimates.</p>
</sec>
<sec id="Ch1.S2">
  <label>2</label><title>Methods</title>
<sec id="Ch1.S2.SS1">
  <label>2.1</label><title>Geo-SAN Architecture</title>
      <p id="d2e192">The workflow of the proposed 3D geological modelling method (Geo-SAN), based on a dual-task stratigraphy-aware attention network, is illustrated in Fig. 1. The workflow comprises five key stages, graph construction, graph neighborhood aggregation, stratigraphy-aware attention, lithology classification and implicit interpolation, and 3D geological model reconstruction. The method begins with extracting features from sampled data using the graph neighborhood aggregation and stratigraphy-aware attention mechanisms. Subsequently, a dual-task prediction head is employed to estimate both continuous scalar field values and discrete lithological categories. Finally, the predicted result is integrated to construct a coherent 3D geological model.</p>

      <fig id="F1" specific-use="star"><label>Figure 1</label><caption><p id="d2e197">Workflow of Geo-SAN.</p></caption>
          <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f01.jpg"/>

        </fig>

<sec id="Ch1.S2.SS1.SSS1">
  <label>2.1.1</label><title>Graph Neighborhood Aggregation</title>
      <p id="d2e213">To address the complexity of geological setting and the large volume of geological data inherent in 3D geological modelling, we employ spatial-domain GAT and GraphSAGE to aggregate node features, thereby harnessing the strong nonlinear integration capabilities of GNNs.</p>
</sec>
<sec id="Ch1.S2.SS1.SSSx1" specific-use="unnumbered">
  <title>Graph Construction</title>
      <p id="d2e223">The tetrahedral meshing of the sampled points is performed to create graph structured data. All the sampling points and the other densifying points are both included into the graph data. As shown in Fig. 2, the base and the lateral boundaries are determined by the modeling extent whereas the top boundary is determined by the digital elevation model (DEM). Each sampling point is a vertex of a tetrahedron, and the topological connection of the sampling point is maintained during tetrahedron subdivision. Densifying points are created based on the given modelling resolution; overlapping points are eliminated. The resulting mesh has a multi-resolution structure, with tetrahedra around sampled points having smaller volumes and higher densities. Graph nodes are represented as tetrahedral vertices, and graph edges are represented as tetrahedral edges. Finally, the faults are encoded as a feature of nodes in relation to fault planes, which is combined with other node features as model inputs (Gao and Wellmann, 2025).</p>

      <fig id="F2" specific-use="star"><label>Figure 2</label><caption><p id="d2e228">Graph construction.</p></caption>
            <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f02.png"/>

          </fig>


</sec>
<sec id="Ch1.S2.SS1.SSSx2" specific-use="unnumbered">
  <title>GNN Neighborhood Aggregation</title>
      <p id="d2e245">The multi-scale graph neighborhood aggregation mechanism is formulated into the proposed framework. GAT with its learnable attention mechanism gives a specific weight to the neighboring nodes (Veličković et al., 2017), which is especially useful in a geological modeling task where local heterogeneity and sensitivity to the boundaries are considered to be a significant issue. When processing nodes near faults, GAT learns to down-weight connections to neighbors on the opposite side of the fault, effectively preventing spurious propagation of stratigraphic samples across the discontinuity. At stratigraphic boundaries, GAT preferentially attends to aggregate nodes within the same unit, allowing for sharper delineation of geological discontinuities. For node <inline-formula><mml:math id="M2" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula> and its neighbor node <inline-formula><mml:math id="M3" display="inline"><mml:mi>j</mml:mi></mml:math></inline-formula>, the attention coefficient <inline-formula><mml:math id="M4" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">α</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> is calculated, which reflects the importance of node <inline-formula><mml:math id="M5" display="inline"><mml:mi>j</mml:mi></mml:math></inline-formula> in propagating features to node <inline-formula><mml:math id="M6" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula>, as follows:

              <disp-formula id="Ch1.E1" content-type="numbered"><label>1</label><mml:math id="M7" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="italic">α</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi>exp⁡</mml:mi><mml:mo mathsize="1.1em">(</mml:mo><mml:mtext>LeakyReLU</mml:mtext><mml:mo mathsize="1.1em">(</mml:mo><mml:msup><mml:mi mathvariant="bold-italic">a</mml:mi><mml:mi>T</mml:mi></mml:msup><mml:mo>[</mml:mo><mml:mi mathvariant="bold">W</mml:mi><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mi mathvariant="bold-italic">i</mml:mi></mml:msub><mml:mo>‖</mml:mo><mml:mi mathvariant="bold">W</mml:mi><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mi mathvariant="bold-italic">j</mml:mi></mml:msub><mml:mo>]</mml:mo><mml:mo mathsize="1.1em">)</mml:mo><mml:mo mathsize="1.1em">)</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mo>∑</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>∈</mml:mo><mml:mi mathvariant="script">N</mml:mi><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msub><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mi>exp⁡</mml:mi><mml:mo mathsize="1.1em">(</mml:mo><mml:mtext>LeakyReLU</mml:mtext><mml:mo mathsize="1.1em">(</mml:mo><mml:msup><mml:mi mathvariant="bold-italic">a</mml:mi><mml:mi>T</mml:mi></mml:msup><mml:mo>[</mml:mo><mml:mi mathvariant="bold">W</mml:mi><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mi mathvariant="bold-italic">i</mml:mi></mml:msub><mml:mo>‖</mml:mo><mml:mi mathvariant="bold">W</mml:mi><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mi mathvariant="bold-italic">k</mml:mi></mml:msub><mml:mo>]</mml:mo><mml:mo mathsize="1.1em">)</mml:mo><mml:mo mathsize="1.1em">)</mml:mo></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M8" display="inline"><mml:mi mathvariant="bold-italic">a</mml:mi></mml:math></inline-formula> is the learned attention parameter vector, <inline-formula><mml:math id="M9" display="inline"><mml:mo>‖</mml:mo></mml:math></inline-formula> represents the concatenation of feature vectors, <inline-formula><mml:math id="M10" display="inline"><mml:mi mathvariant="bold">W</mml:mi></mml:math></inline-formula> is the weight matrix, and <inline-formula><mml:math id="M11" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mi mathvariant="bold-italic">i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M12" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mi mathvariant="bold-italic">j</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> are the feature representations of nodes <inline-formula><mml:math id="M13" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M14" display="inline"><mml:mi>j</mml:mi></mml:math></inline-formula>, respectively.</p>
      <p id="d2e462">GraphSAGE statistically incorporates neighboring node features into the central node through a mechanism primarily designed to capture regional geological characteristics and spatial continuity patterns (Hamilton et al., 2017). For scalar value prediction tasks, this approach demonstrates robust capability in capturing spatial gradient patterns, given that scalar properties within a continuous domain generally exhibit gradational transitions rather than abrupt discontinuities. In lithology classification tasks, GraphSAGE exploits the geological principle that spatially proximate nodes tend to share similar features, thereby incorporating the lithological distribution within the statistical neighborhood to inform classification decisions at each target node. GraphSAGE aggregates the features of neighboring nodes layer by layer through a multi-layer neural network, with the embedding update formula for each layer's nodes, as follows:

              <disp-formula id="Ch1.E2" content-type="numbered"><label>2</label><mml:math id="M15" 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 mathvariant="bold-italic">h</mml:mi><mml:mi>v</mml:mi><mml:mi>k</mml:mi></mml:msubsup><mml:mo>=</mml:mo><mml:mi mathvariant="italic">σ</mml:mi><mml:mo mathsize="1.1em">(</mml:mo><mml:msup><mml:mi mathvariant="bold">W</mml:mi><mml:mi>k</mml:mi></mml:msup><mml:mo>⋅</mml:mo><mml:msub><mml:mtext>AGGREGATE</mml:mtext><mml:mi>k</mml:mi></mml:msub><mml:mo mathsize="1.1em">(</mml:mo><mml:mo mathvariant="italic" mathsize="1.1em">{</mml:mo><mml:msubsup><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mn mathvariant="normal">1</mml:mn><mml:mrow><mml:mi>k</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mo>∀</mml:mo><mml:mi>u</mml:mi><mml:mo>∈</mml:mo><mml:mi mathvariant="bold-italic">N</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo>)</mml:mo><mml:mo mathvariant="italic" mathsize="1.1em">}</mml:mo><mml:mo mathsize="1.1em">)</mml:mo><mml:mo>⊕</mml:mo><mml:msubsup><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mi>v</mml:mi><mml:mrow><mml:mi>k</mml:mi><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msubsup><mml:mo mathsize="1.1em">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mspace width="1em" linebreak="nobreak"/><mml:mo>(</mml:mo><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>,</mml:mo><mml:mi mathvariant="normal">…</mml:mi><mml:mo>,</mml:mo><mml:mi>K</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="M16" display="inline"><mml:mrow><mml:msubsup><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mi>v</mml:mi><mml:mi>k</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> is the embedding vector of node <inline-formula><mml:math id="M17" display="inline"><mml:mi>v</mml:mi></mml:math></inline-formula> at the <inline-formula><mml:math id="M18" display="inline"><mml:mi>k</mml:mi></mml:math></inline-formula> layer, <inline-formula><mml:math id="M19" display="inline"><mml:mrow><mml:mi mathvariant="bold-italic">N</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the neighborhood of node <inline-formula><mml:math id="M20" display="inline"><mml:mi>v</mml:mi></mml:math></inline-formula>, and <inline-formula><mml:math id="M21" display="inline"><mml:mrow><mml:msub><mml:mtext>AGGREGATE</mml:mtext><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the aggregation function of the <inline-formula><mml:math id="M22" display="inline"><mml:mi>k</mml:mi></mml:math></inline-formula> layer. Common choices for aggregation functions include pooling aggregation and long short-term memory (LSTM) aggregation. Given the similarity of geological features within the same region in geological modeling, the average pooling aggregation function is used in this study to embed the features. <inline-formula><mml:math id="M23" display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold">W</mml:mi><mml:mi>k</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> represents the learnable weight matrix, and <inline-formula><mml:math id="M24" display="inline"><mml:mo>⊕</mml:mo></mml:math></inline-formula> denotes the vector concatenation operation.</p>
</sec>
<sec id="Ch1.S2.SS1.SSS2">
  <label>2.1.2</label><title>Stratigraphy-Aware Attention Network</title>
      <p id="d2e673">Geological data are distinguished by a high degree of spatial heterogeneity, thereby similar characteristics in different geological environments may have entirely distinct meanings. Such domain-specific subtleties are not reflected in conventional attention mechanisms, which only compute weights using feature similarity. To address this weakness, we present a stratigraphy-aware attention (SAN) process that involves the prior constraints of stratigraphic sequences. Through the incorporation of lithological similarity and stratigraphic sequence, the mechanism gains a meaningful combination of stratigraphy knowledge for the proposed framework (Fig. 3).</p>

      <fig id="F3" specific-use="star"><label>Figure 3</label><caption><p id="d2e678">Stratigraphy-aware attention network.</p></caption>
            <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f03.png"/>

          </fig>

      <p id="d2e687">First, the SAN receives the following inputs: features aggregated from the graph neighborhood, query vectors <inline-formula><mml:math id="M25" display="inline"><mml:mi mathvariant="bold-italic">Q</mml:mi></mml:math></inline-formula> derived from graph nodes, observation point features <inline-formula><mml:math id="M26" display="inline"><mml:mi mathvariant="bold-italic">K</mml:mi></mml:math></inline-formula> from the graph, and feature <inline-formula><mml:math id="M27" display="inline"><mml:mi mathvariant="bold-italic">V</mml:mi></mml:math></inline-formula> used for aggregation. The input features undergo an initial linear transformation that projects them into the attention space. Secondly, the projected features are partitioned into <inline-formula><mml:math id="M28" display="inline"><mml:mi mathvariant="bold-italic">H</mml:mi></mml:math></inline-formula> attention heads, each processing <inline-formula><mml:math id="M29" display="inline"><mml:mrow><mml:msub><mml:mi>d</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>d</mml:mi><mml:mo>/</mml:mo><mml:mi mathvariant="bold-italic">H</mml:mi></mml:mrow></mml:math></inline-formula> dimensional features. For nodes <inline-formula><mml:math id="M30" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M31" display="inline"><mml:mi>j</mml:mi></mml:math></inline-formula>, the base score of the <inline-formula><mml:math id="M32" display="inline"><mml:mi>h</mml:mi></mml:math></inline-formula> head is:

              <disp-formula id="Ch1.E3" content-type="numbered"><label>3</label><mml:math id="M33" display="block"><mml:mrow><mml:msubsup><mml:mi>S</mml:mi><mml:mrow><mml:mtext>base</mml:mtext><mml:mo>,</mml:mo><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:msqrt><mml:mrow><mml:msub><mml:mi>d</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:msqrt></mml:mfrac></mml:mstyle><mml:msubsup><mml:mo>∑</mml:mo><mml:mrow><mml:mi>l</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mrow><mml:msub><mml:mi>d</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:msubsup><mml:msub><mml:mi mathvariant="bold-italic">Q</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>h</mml:mi><mml:mo>,</mml:mo><mml:mi>l</mml:mi></mml:mrow></mml:msub><mml:mo>⋅</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">K</mml:mi><mml:mrow><mml:mi>j</mml:mi><mml:mo>,</mml:mo><mml:mi>h</mml:mi><mml:mo>,</mml:mo><mml:mi>l</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></disp-formula>

            We first define the mapping function from lithology to geological age as <inline-formula><mml:math id="M34" display="inline"><mml:mrow><mml:msub><mml:mi>a</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mtext>Age</mml:mtext><mml:mo>(</mml:mo><mml:msup><mml:mi>r</mml:mi><mml:mi>i</mml:mi></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, as shown in Fig. 4. For node <inline-formula><mml:math id="M35" display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, the output <inline-formula><mml:math id="M36" display="inline"><mml:mrow><mml:msubsup><mml:mi>S</mml:mi><mml:mtext>age</mml:mtext><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msubsup></mml:mrow></mml:math></inline-formula> denotes the value for stratigraphic age similarity between node <inline-formula><mml:math id="M37" display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> at the <inline-formula><mml:math id="M38" display="inline"><mml:mi>h</mml:mi></mml:math></inline-formula> head, as follows:

              <disp-formula id="Ch1.E4" content-type="numbered"><label>4</label><mml:math id="M39" display="block"><mml:mrow><mml:msubsup><mml:mi>S</mml:mi><mml:mtext>age</mml:mtext><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msubsup><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mi>y</mml:mi><mml:mo>(</mml:mo><mml:mo>[</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:msub><mml:mi>a</mml:mi><mml:mi>j</mml:mi></mml:msub><mml:mo>|</mml:mo><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:mo>|</mml:mo><mml:mo>]</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M40" display="inline"><mml:mrow><mml:mi>y</mml:mi><mml:mo>(</mml:mo><mml:mo>⋅</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the age mapping function.</p>

      <fig id="F4" specific-use="star"><label>Figure 4</label><caption><p id="d2e1009">Stratigraphic similarity.</p></caption>
            <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f04.png"/>

          </fig>

      <p id="d2e1018">Then, we define a learnable lithological similarity matrix <inline-formula><mml:math id="M41" display="inline"><mml:mrow><mml:mi mathvariant="bold-italic">L</mml:mi><mml:mo>∈</mml:mo><mml:msup><mml:mi mathvariant="double-struck">R</mml:mi><mml:mrow><mml:mi>K</mml:mi><mml:mo>×</mml:mo><mml:mi>K</mml:mi></mml:mrow></mml:msup></mml:mrow></mml:math></inline-formula>, where <inline-formula><mml:math id="M42" display="inline"><mml:mi>K</mml:mi></mml:math></inline-formula> is the number of lithological categories. Adjacent strata show stronger lithological similarity, with stratigraphic quantitative difference correlating inversely to lithological resemblance. For nodes <inline-formula><mml:math id="M43" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M44" display="inline"><mml:mi>j</mml:mi></mml:math></inline-formula>, lithological similarity <inline-formula><mml:math id="M45" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mtext>seq</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is:

                  <disp-formula id="Ch1.E5" content-type="numbered"><label>5</label><mml:math id="M46" display="block"><mml:mrow><mml:mstyle class="stylechange" displaystyle="true"/><mml:msubsup><mml:mi>S</mml:mi><mml:mtext>seq</mml:mtext><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msubsup><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mfenced open="{" close=""><mml:mtable class="cases" rowspacing="0.2ex" columnspacing="1em" columnalign="left left" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:mi mathvariant="italic">σ</mml:mi><mml:mo mathsize="1.1em">(</mml:mo><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>r</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:msub><mml:mo mathsize="1.1em">)</mml:mo></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mtext>if </mml:mtext><mml:mn mathvariant="normal">1</mml:mn><mml:mo>≤</mml:mo><mml:msub><mml:mi>r</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi>r</mml:mi><mml:mi>j</mml:mi></mml:msub><mml:mo>≤</mml:mo><mml:mi>K</mml:mi></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mi>c</mml:mi></mml:mtd><mml:mtd><mml:mtext>otherwise</mml:mtext></mml:mtd></mml:mtr></mml:mtable></mml:mfenced></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M47" display="inline"><mml:mrow><mml:mi mathvariant="italic">σ</mml:mi><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mi>exp⁡</mml:mi><mml:mo>(</mml:mo><mml:mo>-</mml:mo><mml:mi>d</mml:mi><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>)</mml:mo><mml:mo>/</mml:mo><mml:mi mathvariant="italic">τ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, and <inline-formula><mml:math id="M48" display="inline"><mml:mrow><mml:mi>d</mml:mi><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mo>|</mml:mo><mml:mi>i</mml:mi><mml:mo>-</mml:mo><mml:mi>j</mml:mi><mml:mo>|</mml:mo></mml:mrow></mml:math></inline-formula> denotes that the quantitative difference between the ordinal numbers of two lithological categories within the stratigraphic sequence, and <inline-formula><mml:math id="M49" display="inline"><mml:mi mathvariant="italic">τ</mml:mi></mml:math></inline-formula> is a stratigraphic decay length governing how rapidly lithological affinity is lost with increasing stratigraphic separation. Setting <inline-formula><mml:math id="M50" 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> assigns adjacent units a similarity of  <inline-formula><mml:math id="M51" display="inline"><mml:mrow><mml:msup><mml:mi>e</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>/</mml:mo><mml:mn mathvariant="normal">3</mml:mn></mml:mrow></mml:msup><mml:mo>≈</mml:mo><mml:mn mathvariant="normal">0.72</mml:mn></mml:mrow></mml:math></inline-formula> and units three steps apart <inline-formula><mml:math id="M52" display="inline"><mml:mrow><mml:msup><mml:mi>e</mml:mi><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup><mml:mo>≈</mml:mo><mml:mn mathvariant="normal">0.37</mml:mn></mml:mrow></mml:math></inline-formula>, which is consistent with the initialized similarity structure recovered in Fig. 5.</p>

      <fig id="F5" specific-use="star"><label>Figure 5</label><caption><p id="d2e1297">Lithological similarity matrix.</p></caption>
            <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f05.png"/>

          </fig>

      <p id="d2e1306">When predicting scalar values, for the <inline-formula><mml:math id="M53" display="inline"><mml:mi>h</mml:mi></mml:math></inline-formula> attention head, the enhancing attention for node pair <inline-formula><mml:math id="M54" display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is as follows:

              <disp-formula id="Ch1.E6" content-type="numbered"><label>6</label><mml:math id="M55" display="block"><mml:mrow><mml:msubsup><mml:mi>A</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mi mathvariant="italic">_</mml:mi><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mtext>softmax</mml:mtext><mml:mfenced open="(" close=")"><mml:mrow><mml:msubsup><mml:mi>S</mml:mi><mml:mrow><mml:mtext>base</mml:mtext><mml:mo>,</mml:mo><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>S</mml:mi><mml:mtext>age</mml:mtext><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>S</mml:mi><mml:mtext>contact</mml:mtext><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msubsup></mml:mrow></mml:mfenced></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M56" display="inline"><mml:mrow><mml:msubsup><mml:mi>S</mml:mi><mml:mtext>contact</mml:mtext><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msubsup></mml:mrow></mml:math></inline-formula> is the similarity of adjustable contact relationship.</p>
      <p id="d2e1428">When lithology classification, for the <inline-formula><mml:math id="M57" display="inline"><mml:mi>h</mml:mi></mml:math></inline-formula> attention head, the enhancing attention for node pair <inline-formula><mml:math id="M58" display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is as follows:

              <disp-formula id="Ch1.E7" content-type="numbered"><label>7</label><mml:math id="M59" display="block"><mml:mrow><mml:msubsup><mml:mi>A</mml:mi><mml:mrow><mml:mi>l</mml:mi><mml:mi mathvariant="italic">_</mml:mi><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mtext>softmax</mml:mtext><mml:mfenced open="(" close=")"><mml:mrow><mml:msubsup><mml:mi>S</mml:mi><mml:mrow><mml:mtext>base</mml:mtext><mml:mo>,</mml:mo><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:msubsup><mml:mi>S</mml:mi><mml:mtext>seq</mml:mtext><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:msubsup></mml:mrow></mml:mfenced></mml:mrow></mml:math></disp-formula>

            The SAN mechanism begins by computing standard base attention scores through linear projection of node features and their division into multiple attention heads. Its key innovation is the concurrent incorporation of stratigraphic sequence domain knowledge as prior constraints. For any node pair <inline-formula><mml:math id="M60" display="inline"><mml:mrow><mml:mfenced open="(" close=")"><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:mfenced></mml:mrow></mml:math></inline-formula>, where <inline-formula><mml:math id="M61" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mtext>base</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is the standard query key feature similarity used by conventional attention, <inline-formula><mml:math id="M62" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mtext>age</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is an explicit function of the geological ages of the two nodes' lithologies, <inline-formula><mml:math id="M63" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mtext>seq</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is the learnable lithological similarity that decays with ordinal stratigraphic distance, and <inline-formula><mml:math id="M64" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mtext>contact</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> encodes the conformable or unconformable contact relationship. Because these terms are added before the softmax, each attention weight admits an exact additive attribution into a learned feature similarity component and named stratigraphic prior components; the contribution of every prior to any aggregation is therefore transparent and auditable. The two prior terms are monotone in geological proximity. <inline-formula><mml:math id="M65" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mtext>age</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M66" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mtext>seq</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> raise the weight for node pairs that are close in the stratigraphic sequence and lower it for distant pairs. After the softmax, aggregation is thus biased toward stratigraphically coherent neighbours irrespective of incidental feature resemblance. When <inline-formula><mml:math id="M67" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mtext>base</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is ambiguous (two candidate neighbours with similar features but on opposite sides of a fault or across an unconformity), the prior terms dominate the sum and steer attention to the geologically correct neighbour, which is the mechanism by which cross fault propagation is suppressed and within unit aggregation is sharpened.</p>
</sec>
<sec id="Ch1.S2.SS1.SSS3">
  <label>2.1.3</label><title>Dual-Task Prediction Module</title>
      <p id="d2e1618">Following the extraction of spatial perceptual features by the SAN, a dual-task learning head is employed to simultaneously perform lithology classification and scalar field prediction, as illustrated in Fig. 6.</p>

      <fig id="F6" specific-use="star"><label>Figure 6</label><caption><p id="d2e1623">Dual-task of lithology classification and scalar field prediction.</p></caption>
            <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f06.png"/>

          </fig>

      <p id="d2e1632">The two branches are coupled at three levels rather than merely sharing a backbone. (1) Reading the same SAN-refined node embedding, so gradients from the two tasks jointly shape the shared representation, forcing features to be simultaneously predictive of the scalar value and of the lithology. (2) The stratigraphy-aware attention injects lithological similarity, geological-age and contact similarity, so the aggregation is tied to stratigraphic structure for both tasks. (3) The cross-task loss explicitly links the two predictions, the KL term (soft) aligns the classifier distribution with the distribution implied by the predicted scalar field, and the compatibility term (hard) penalises scalar predictions that fall outside the admissible interval of the predicted lithology.</p>
</sec>
</sec>
<sec id="Ch1.S2.SS2">
  <label>2.2</label><title>Loss Functions</title>
      <p id="d2e1645">Three-dimensional geological modeling is a quintessential multi-constrained optimization issue. This study developed the scalar field loss function (<inline-formula><mml:math id="M68" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>scalar</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>), attitude loss function (<inline-formula><mml:math id="M69" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>orientation</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>), lithology category loss function (<inline-formula><mml:math id="M70" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>litho</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>) and scross-task loss function (<inline-formula><mml:math id="M71" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>cross</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>). Figure 7 demonstrates <inline-formula><mml:math id="M72" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>scalar</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>  measures the discrepancy between the observed scalar value <inline-formula><mml:math id="M73" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> at a sampling point and the predicted scalar value <inline-formula><mml:math id="M74" display="inline"><mml:mrow><mml:msubsup><mml:mi>S</mml:mi><mml:mi>v</mml:mi><mml:mtext>scalar</mml:mtext></mml:msubsup></mml:mrow></mml:math></inline-formula> produced by Geo-SAN. The lithological loss <inline-formula><mml:math id="M75" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>litho</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> quantifies the disparities between the actual lithological labels and the predicted categories of the model. <inline-formula><mml:math id="M76" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>orientation</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> evaluates the discrepancy between the measured direction at orientation sampling points and the direction derived obtained from the predicted scalar field at the corresponding nodes. <inline-formula><mml:math id="M77" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>cross</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> converts lithological similarity metrics of stratigraphic sequence into differentiable restrictions, directing neural networks to acquire predictions aligned with stratigraphy principles. The a priori probability distribution of each lithological categories can be computed and determined according to predicted scalar values. Lithological predictions of the model are then regularized to the prior model with the help of the Kullback-Leibler (KL) divergence penalty, which serves as a soft probabilistic constraint. Meanwhile, a compatibility loss term imposes strict penalties on scalar field predictions falling outside the stratigraphically admissible intervals for corresponding lithological categories. Thus, the cross-task constraint may enforce consistency with stratigraphic sequences to yield geologically meaningful predictions.</p>

      <fig id="F7" specific-use="star"><label>Figure 7</label><caption><p id="d2e1763">Loss functions.</p></caption>
          <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f07.png"/>

        </fig>

<sec id="Ch1.S2.SS2.SSS1">
  <label>2.2.1</label><title>Scalar Field Loss Function</title>
      <p id="d2e1779">Geo-SAN predicts the scalar field <inline-formula><mml:math id="M78" display="inline"><mml:mrow><mml:msub><mml:mi>f</mml:mi><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, which is constrained by stratigraphic interfaces and orientation points like dip angle and strike. We can define 3D space as a scalar function <inline-formula><mml:math id="M79" display="inline"><mml:mrow><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:mi>v</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, where represents the scalar field values at each point <inline-formula><mml:math id="M80" display="inline"><mml:mi>v</mml:mi></mml:math></inline-formula> in 3D space. A series of <inline-formula><mml:math id="M81" display="inline"><mml:mi>H</mml:mi></mml:math></inline-formula> stratigraphic interfaces can be articulated as:

              <disp-formula id="Ch1.E8" content-type="numbered"><label>8</label><mml:math id="M82" display="block"><mml:mrow><mml:msub><mml:mi>f</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>&gt;</mml:mo><mml:mi mathvariant="normal">⋯</mml:mi><mml:mo>&gt;</mml:mo><mml:msub><mml:mi>f</mml:mi><mml:mi>H</mml:mi></mml:msub></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M83" display="inline"><mml:mrow><mml:msub><mml:mi>f</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> to <inline-formula><mml:math id="M84" display="inline"><mml:mrow><mml:msub><mml:mi>f</mml:mi><mml:mi>H</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> represent the scalar values of the oldest to newest stratigraphic interfaces, respectively.</p>
      <p id="d2e1866">For a certain stratigraphic interface <inline-formula><mml:math id="M85" display="inline"><mml:mi>I</mml:mi></mml:math></inline-formula> with a scalar field value <inline-formula><mml:math id="M86" display="inline"><mml:mrow><mml:msub><mml:mi>f</mml:mi><mml:mi>I</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, the subset of graph nodes sampled from it can be denoted as:

              <disp-formula id="Ch1.E9" content-type="numbered"><label>9</label><mml:math id="M87" display="block"><mml:mrow><mml:mi>I</mml:mi><mml:mo>=</mml:mo><mml:mo mathvariant="italic">{</mml:mo><mml:mi>v</mml:mi><mml:mo>∈</mml:mo><mml:mi mathvariant="bold-italic">V</mml:mi><mml:mo>|</mml:mo><mml:msub><mml:mi>f</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>f</mml:mi><mml:mi>I</mml:mi></mml:msub><mml:mo mathvariant="italic">}</mml:mo></mml:mrow></mml:math></disp-formula>

            The loss functions <inline-formula><mml:math id="M88" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>scalar</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> can be used to find the difference between the scalar field at the stratigraphic interface sampling point and the predicted scalar field by Geo-SAN, as follows:

              <disp-formula id="Ch1.E10" content-type="numbered"><label>10</label><mml:math id="M89" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>scalar</mml:mtext></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mi>N</mml:mi></mml:mfrac></mml:mstyle><mml:msubsup><mml:mo>∑</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi>N</mml:mi></mml:msubsup><mml:mo mathsize="1.1em">(</mml:mo><mml:msub><mml:mover accent="true"><mml:mi>f</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mi>f</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:msup><mml:mo mathsize="1.1em">)</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:math></disp-formula></p>
</sec>
<sec id="Ch1.S2.SS2.SSS2">
  <label>2.2.2</label><title>Attitude Loss Function</title>
      <p id="d2e1993">Nodes with attitudes can be extracted from geological maps, which represent the local morphology of the strata at these nodes. A unit vector <inline-formula><mml:math id="M90" display="inline"><mml:mi mathvariant="bold-italic">n</mml:mi></mml:math></inline-formula> in the normal direction of the stratigraphic interfaces can be transformed from the attitudes:

              <disp-formula id="Ch1.E11" content-type="numbered"><label>11</label><mml:math id="M91" display="block"><mml:mrow><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mfenced close="]" open="["><mml:mtable class="matrix" columnalign="center" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:mi>sin⁡</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>⋅</mml:mo><mml:mi>sin⁡</mml:mi><mml:mi mathvariant="italic">δ</mml:mi></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mi>cos⁡</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>⋅</mml:mo><mml:mi>sin⁡</mml:mi><mml:mi mathvariant="italic">δ</mml:mi></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mi>cos⁡</mml:mi><mml:mi mathvariant="italic">δ</mml:mi></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M92" display="inline"><mml:mi mathvariant="italic">θ</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M93" display="inline"><mml:mi mathvariant="italic">δ</mml:mi></mml:math></inline-formula> are the strike and dip angles of the stratum, respectively.</p>
      <p id="d2e2062">To measure predicted gradient and the actual direction of angular error, the gradient of the predicted scalar field is gained at these graph nodes. This study employs the first-order Taylor series approximation of the scalar field in the node's first-order neighborhood to estimate the scalar field gradient, as follows:

              <disp-formula id="Ch1.E12" content-type="numbered"><label>12</label><mml:math id="M94" display="block"><mml:mrow><mml:msubsup><mml:mi mathvariant="bold-italic">P</mml:mi><mml:mi>v</mml:mi><mml:mi>T</mml:mi></mml:msubsup><mml:msub><mml:mi mathvariant="bold-italic">P</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mi mathvariant="bold">∇</mml:mi><mml:msub><mml:mi>f</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:msubsup><mml:mi mathvariant="bold-italic">P</mml:mi><mml:mi>v</mml:mi><mml:mi>T</mml:mi></mml:msubsup><mml:mfenced open="[" close="]"><mml:mtable class="matrix" columnalign="center" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>f</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mi>f</mml:mi><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mi mathvariant="normal">⋮</mml:mi></mml:mtd></mml:mtr></mml:mtable></mml:mfenced></mml:mrow></mml:math></disp-formula>

            where the angle between the gradient at node <inline-formula><mml:math id="M95" display="inline"><mml:mi>v</mml:mi></mml:math></inline-formula> and the known vector <inline-formula><mml:math id="M96" display="inline"><mml:mrow><mml:mi mathvariant="bold">∇</mml:mi><mml:msub><mml:mi>f</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mo>(</mml:mo><mml:mo>∂</mml:mo><mml:msub><mml:mi>f</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>/</mml:mo><mml:mo>∂</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mo>∂</mml:mo><mml:msub><mml:mi>f</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>/</mml:mo><mml:mo>∂</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mo>∂</mml:mo><mml:msub><mml:mi>f</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>/</mml:mo><mml:mo>∂</mml:mo><mml:mi>z</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> can be used to measure the angular error, and <inline-formula><mml:math id="M97" display="inline"><mml:mi>u</mml:mi></mml:math></inline-formula> is the neighbor of node <inline-formula><mml:math id="M98" display="inline"><mml:mi>v</mml:mi></mml:math></inline-formula>.

              <disp-formula id="Ch1.E13" content-type="numbered"><label>13</label><mml:math id="M99" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">P</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mfenced close="]" open="["><mml:mtable class="matrix" columnalign="center center center" framespacing="0em"><mml:mtr><mml:mtd><mml:mrow><mml:msubsup><mml:mi>x</mml:mi><mml:mi>u</mml:mi><mml:mo>∗</mml:mo></mml:msubsup><mml:mo>-</mml:mo><mml:msubsup><mml:mi>x</mml:mi><mml:mi>v</mml:mi><mml:mo>∗</mml:mo></mml:msubsup></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:msubsup><mml:mi>y</mml:mi><mml:mi>u</mml:mi><mml:mo>∗</mml:mo></mml:msubsup><mml:mo>-</mml:mo><mml:msubsup><mml:mi>y</mml:mi><mml:mi>v</mml:mi><mml:mo>∗</mml:mo></mml:msubsup></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:msubsup><mml:mi>z</mml:mi><mml:mi>u</mml:mi><mml:mo>∗</mml:mo></mml:msubsup><mml:mo>-</mml:mo><mml:msubsup><mml:mi>z</mml:mi><mml:mi>v</mml:mi><mml:mo>∗</mml:mo></mml:msubsup></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mi mathvariant="normal">⋮</mml:mi></mml:mtd><mml:mtd><mml:mi mathvariant="normal">⋮</mml:mi></mml:mtd><mml:mtd><mml:mi mathvariant="normal">⋮</mml:mi></mml:mtd></mml:mtr></mml:mtable></mml:mfenced><mml:mo>,</mml:mo><mml:mspace width="0.33em" linebreak="nobreak"/><mml:mo>∀</mml:mo><mml:mi>u</mml:mi><mml:mo>∈</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">N</mml:mi><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M100" display="inline"><mml:mrow><mml:msup><mml:mi>x</mml:mi><mml:mo>∗</mml:mo></mml:msup></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M101" display="inline"><mml:mrow><mml:msup><mml:mi>y</mml:mi><mml:mo>∗</mml:mo></mml:msup></mml:mrow></mml:math></inline-formula>, and <inline-formula><mml:math id="M102" display="inline"><mml:mrow><mml:msup><mml:mi>z</mml:mi><mml:mo>∗</mml:mo></mml:msup></mml:mrow></mml:math></inline-formula> are the normalized spatial coordinates of the given node.</p>
      <p id="d2e2332">The estimated angle between the gradient <inline-formula><mml:math id="M103" display="inline"><mml:mrow><mml:mi mathvariant="bold">∇</mml:mi><mml:msub><mml:mi>f</mml:mi><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> at node <inline-formula><mml:math id="M104" display="inline"><mml:mi>v</mml:mi></mml:math></inline-formula> and the known vector <inline-formula><mml:math id="M105" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">α</mml:mi><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> in the observed attitude node-set <inline-formula><mml:math id="M106" display="inline"><mml:mi>o</mml:mi></mml:math></inline-formula> is utilized to formulate the loss function, as follows:

              <disp-formula id="Ch1.E14" content-type="numbered"><label>14</label><mml:math id="M107" display="block"><mml:mtable class="split" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>orientation</mml:mtext></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:msub><mml:mo>∑</mml:mo><mml:mrow><mml:mi>v</mml:mi><mml:mo>∈</mml:mo><mml:mi>o</mml:mi></mml:mrow></mml:msub><mml:mi>cos⁡</mml:mi><mml:mfenced close=")" open="("><mml:mrow><mml:mi mathvariant="bold">∇</mml:mi><mml:msub><mml:mi>f</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">α</mml:mi><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:msub><mml:mo>∑</mml:mo><mml:mrow><mml:mi>v</mml:mi><mml:mo>∈</mml:mo><mml:mi>o</mml:mi></mml:mrow></mml:msub><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">α</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold">∇</mml:mi><mml:msub><mml:mi>f</mml:mi><mml:mi>v</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:mo>‖</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">α</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>‖</mml:mo><mml:mo>‖</mml:mo><mml:mi mathvariant="bold">∇</mml:mi><mml:msub><mml:mi>f</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>‖</mml:mo></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
</sec>
<sec id="Ch1.S2.SS2.SSS3">
  <label>2.2.3</label><title>Lithology Category Loss Function</title>
      <p id="d2e2480">In the lithology node-set <inline-formula><mml:math id="M108" display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula>, comprising <inline-formula><mml:math id="M109" display="inline"><mml:mrow><mml:msub><mml:mi>N</mml:mi><mml:mtext>classes</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> lithology categories, each lithology node is associated with a one-hot encoded vector <inline-formula><mml:math id="M110" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">l</mml:mi><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, denoting its respective lithology category. The loss function employed for lithology nodes is the cross-entropy loss function, as follows:

              <disp-formula id="Ch1.E15" content-type="numbered"><label>15</label><mml:math id="M111" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>litho</mml:mtext></mml:msub><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:msub><mml:mo>∑</mml:mo><mml:mrow><mml:mi>v</mml:mi><mml:mo>∈</mml:mo><mml:mi>R</mml:mi></mml:mrow></mml:msub><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mo mathsize="1.1em">(</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">l</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>⋅</mml:mo><mml:mi>log⁡</mml:mi><mml:mo mathsize="1.1em">(</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold-italic">l</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub><mml:mo mathsize="1.1em">)</mml:mo><mml:mo mathsize="1.1em">)</mml:mo></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M112" display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold-italic">l</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the predicted probability distribution for node <inline-formula><mml:math id="M113" display="inline"><mml:mi>v</mml:mi></mml:math></inline-formula>, and the predicted lithology category is determined based on the highest probability from the softmax distribution of <inline-formula><mml:math id="M114" display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="bold-italic">l</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>.</p>
</sec>
<sec id="Ch1.S2.SS2.SSS4">
  <label>2.2.4</label><title>Cross-Task Loss Function</title>
      <p id="d2e2608">The KL divergence loss function (soft constraint) is utilized to measure the discrepancy between lithology classification and scalar field prediction, thus encouraging models to adhere to stratigraphic sequence patterns, as follows:

              <disp-formula id="Ch1.E16" content-type="numbered"><label>16</label><mml:math id="M115" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>KL</mml:mtext></mml:msub><mml:mo>=</mml:mo><mml:mtext>KL</mml:mtext><mml:mo mathsize="1.1em">(</mml:mo><mml:mover accent="true"><mml:mi mathvariant="bold-italic">l</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo mathsize="1.1em">‖</mml:mo><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="bold-italic">l</mml:mi><mml:mi mathvariant="bold-italic">f</mml:mi></mml:mrow><mml:mo mathvariant="normal" stretchy="true">^</mml:mo></mml:mover><mml:mo mathsize="1.1em">)</mml:mo><mml:mo>=</mml:mo><mml:msubsup><mml:mo>∑</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi>N</mml:mi></mml:msubsup><mml:msubsup><mml:mo>∑</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi>K</mml:mi></mml:msubsup><mml:msubsup><mml:mover accent="true"><mml:mi mathvariant="bold-italic">l</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:msubsup><mml:mi>log⁡</mml:mi><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msubsup><mml:mover accent="true"><mml:mi mathvariant="bold-italic">l</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:msubsup></mml:mrow><mml:mrow><mml:msubsup><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="bold-italic">l</mml:mi><mml:mi mathvariant="bold-italic">f</mml:mi></mml:mrow><mml:mo mathvariant="normal" stretchy="true">^</mml:mo></mml:mover><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:msubsup></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M116" display="inline"><mml:mrow><mml:msubsup><mml:mover accent="true"><mml:mi mathvariant="bold-italic">l</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> denote that model's predicted probability distribution over <inline-formula><mml:math id="M117" display="inline"><mml:mi>j</mml:mi></mml:math></inline-formula>th lithological category at <inline-formula><mml:math id="M118" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula>th node, and <inline-formula><mml:math id="M119" display="inline"><mml:mrow><mml:msubsup><mml:mover accent="true"><mml:mrow><mml:mi mathvariant="bold-italic">l</mml:mi><mml:mi mathvariant="bold-italic">f</mml:mi></mml:mrow><mml:mo stretchy="true" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> denote that the probability distribution derived from stratigraphic scalar field.</p>
      <p id="d2e2760">The compatibility loss function evaluates whether expected scalar field conform to the acceptable range for lithological category, imposing penalties on forecasts that contravene geological principles, as follows:

              <disp-formula id="Ch1.E17" content-type="numbered"><label>17</label><mml:math id="M120" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>compat</mml:mtext></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mi>N</mml:mi></mml:mfrac></mml:mstyle><mml:msubsup><mml:mo>∑</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi>N</mml:mi></mml:msubsup><mml:mfenced open="(" close=")"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>exp⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mi>F</mml:mi></mml:mfrac></mml:mstyle></mml:mrow></mml:mfenced></mml:mrow></mml:mfenced></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M121" display="inline"><mml:mi>F</mml:mi></mml:math></inline-formula> denotes exceeding the upper or lower threshold. The deviation <inline-formula><mml:math id="M122" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> measures how far the predicted scalar value is outside the valid range:

              <disp-formula id="Ch1.E18" content-type="numbered"><label>18</label><mml:math id="M123" display="block"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mo movablelimits="false">max⁡</mml:mo><mml:mo mathsize="1.1em">(</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:msub><mml:mover accent="true"><mml:mi>f</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mi>t</mml:mi><mml:msub><mml:mi>l</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo mathsize="1.1em">)</mml:mo><mml:mo>+</mml:mo><mml:mo movablelimits="false">max⁡</mml:mo><mml:mo mathsize="1.1em">(</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mi>b</mml:mi><mml:msub><mml:mi>l</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mover accent="true"><mml:mi>f</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msub><mml:mo mathsize="1.1em">)</mml:mo></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math id="M124" display="inline"><mml:mrow><mml:mi>t</mml:mi><mml:msub><mml:mi>l</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M125" display="inline"><mml:mrow><mml:mi>b</mml:mi><mml:msub><mml:mi>l</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> are the top and bottom interface scalar values according to the observed lithological category at node <inline-formula><mml:math id="M126" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula>. When <inline-formula><mml:math id="M127" display="inline"><mml:mrow><mml:mi>b</mml:mi><mml:msub><mml:mi>l</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>≤</mml:mo><mml:mover accent="true"><mml:mi>f</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>≤</mml:mo><mml:mi>t</mml:mi><mml:msub><mml:mi>l</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, then <inline-formula><mml:math id="M128" display="inline"><mml:mrow><mml:mi mathvariant="normal">Δ</mml:mi><mml:mi>f</mml:mi><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mrow></mml:math></inline-formula> (perfect compatibility). The cross-task loss function is expressed as:

              <disp-formula id="Ch1.E19" content-type="numbered"><label>19</label><mml:math id="M129" display="block"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>cross</mml:mtext></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>KL</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>compat</mml:mtext></mml:msub></mml:mrow></mml:math></disp-formula>

            The overall loss function is as follows:

              <disp-formula id="Ch1.E20" content-type="numbered"><label>20</label><mml:math id="M130" display="block"><mml:mrow><mml:mi mathvariant="script">L</mml:mi><mml:mo>=</mml:mo><mml:mi mathvariant="italic">α</mml:mi><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>scalar</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">β</mml:mi><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>orientation</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">γ</mml:mi><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>litho</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">δ</mml:mi><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>cross</mml:mtext></mml:msub></mml:mrow></mml:math></disp-formula>

            In this study, the GradNorm (Gradient Normalization) method is introduced to optimize the training process (Chen et al., 2018). GradNorm adaptively adjusts the weights of each task's loss function to ensure that the gradients of each task have similar magnitudes during training, improving the stability and efficiency of training.</p>
</sec>
</sec>
<sec id="Ch1.S2.SS3">
  <label>2.3</label><title>Experimental Environment</title>
      <p id="d2e3082">The experiments in this study are based on the PyTorch Geometric graph machine learning library (Fey and Lenssen, 2019), as shown in Table 1.</p>

<table-wrap id="T1" specific-use="star"><label>Table 1</label><caption><p id="d2e3088">Experimental environmental.</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">Configuration</oasis:entry>
         <oasis:entry colname="col2">Value</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">CPU</oasis:entry>
         <oasis:entry colname="col2">Intel(R) Xeon(R) Gold 5120 CPU @ 2.20 GHz</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">GPU</oasis:entry>
         <oasis:entry colname="col2">NVIDIA GeForce RTX 3090(24G)</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Memory (RAM)</oasis:entry>
         <oasis:entry colname="col2">128G</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Operating system</oasis:entry>
         <oasis:entry colname="col2">Ubuntu 24.04.1</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Deep learning framework</oasis:entry>
         <oasis:entry colname="col2">PyTorch Geometric 2.2.0</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">CUDA version</oasis:entry>
         <oasis:entry colname="col2">12.1</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

</sec>
</sec>
<sec id="Ch1.S3">
  <label>3</label><title>Study Area and Dataset</title>
      <p id="d2e3179">The study area is situated in the Lingnian-Ningping area in Guangxi Zhuang Autonomous Region (GZAR), China (Fig. 8). The area predominantly exhibits strata from the Late Paleozoic onwards, therein, strata from the Late Permian (P<sub>3</sub>) and Late Triassic to Pleistocene (T<sub>3</sub>–N<sub>2</sub>) are absent. The Middle Permian (P<sub>2</sub>) and Early Triassic (T<sub>1</sub>) strata exhibit parallel unconformity, whereas the Middle Triassic (T<sub>2</sub>) and Quaternary (Q) strata display angular unconformity. In the central region of the study area, a left-lateral strike-slip reverse fault, the Nacha Fault, intersects the Maokou Formation and Carboniferous strata, dipping southeast at approximately 70° and extending roughly 12 km outside the study area. Within the area, there exist two synclines (I and III) and one anticline (II). Syncline III, located at the center of the study area, has high symmetry, featuring a northeast-trending axial trace, and is truncated along its southern limb by the Nacha Fault. Anticline II is situated in the northwestern section of the study area, demonstrating a notable symmetry and a northeast-oriented axis. Sampling points for stratigraphic interfaces, lithologies, and attitudes were extracted from a planar and four cross-section geological maps (Fig. 9) to constitute the modeling dataset. There are 1410 stratigraphic interface sampling points, 18 619 lithology sampling points, and 34 attitude points.</p>

      <fig id="F8" specific-use="star"><label>Figure 8</label><caption><p id="d2e3239">Geological map of the study area, modified after Zhang et al. (2023a).</p></caption>
        <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f08.png"/>

      </fig>

      <fig id="F9" specific-use="star"><label>Figure 9</label><caption><p id="d2e3250">Geological cross-section maps of the study area, modified after Zhang et al. (2023a).</p></caption>
        <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f09.png"/>

      </fig>

</sec>
<sec id="Ch1.S4">
  <label>4</label><title>Results</title>
<sec id="Ch1.S4.SS1">
  <label>4.1</label><title>Model Performance</title>
      <p id="d2e3274">During model training, various configurations significantly affect performance. To isolate the individual contributions of the stratigraphy aware attention (SAN) mechanism and the dual-task learning head, four models were designed on an identical graph neighborhood aggregation backbone that alternately integrates GAT and GraphSAGE, as detailed in Table 2. Model M1 (GAT-GraphSAGE) is the baseline, using only the GAT/GraphSAGE embedding with the two prediction branches trained independently. Model M2 (GAT-GraphSAGE-DT) additionally activates the dual-task cross-task constraint, the KL-divergence and compatibility terms (<inline-formula><mml:math id="M137" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>cross</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>) that couple the scalar field and lithology branches, while excluding SAN. Model M3 (GAT-GraphSAGE-SAN) adds the SAN mechanism to the baseline while keeping the two branches decoupled. Model M4 (GAT-GraphSAGE-SAN-DT) incorporates both SAN and the dual-task constraint, constituting the complete Geo-SAN framework. In all configurations both prediction branches are retained, <inline-formula><mml:math id="M138" 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> and RMSE or accuracy are reported for every model; the Dual-Task toggle controls only whether the cross-task coupling <inline-formula><mml:math id="M139" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>cross</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is applied.</p>

<table-wrap id="T2" specific-use="star"><label>Table 2</label><caption><p id="d2e3313">Ablation experiments.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="5">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="center"/>
     <oasis:colspec colnum="4" colname="col4" align="center"/>
     <oasis:colspec colnum="5" colname="col5" align="left"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Model</oasis:entry>
         <oasis:entry colname="col2">Graph neighborhood aggregation</oasis:entry>
         <oasis:entry colname="col3">SAN</oasis:entry>
         <oasis:entry colname="col4">Dual-Task</oasis:entry>
         <oasis:entry colname="col5">Description</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">M1</oasis:entry>
         <oasis:entry colname="col2">GAT/GraphSAGE</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M140" display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M141" display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col5">GAT-GraphSAGE</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">M2</oasis:entry>
         <oasis:entry colname="col2">GAT/GraphSAGE</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M142" display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M143" display="inline"><mml:mo>✓</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col5">GAT-GraphSAGE-DT</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">M3</oasis:entry>
         <oasis:entry colname="col2">GAT/GraphSAGE</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M144" display="inline"><mml:mo>✓</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M145" display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col5">GAT-GraphSAGE-SAN</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">M4</oasis:entry>
         <oasis:entry colname="col2">GAT/GraphSAGE</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M146" display="inline"><mml:mo>✓</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M147" display="inline"><mml:mo>✓</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col5">GAT-GraphSAGE-SAN-DT</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d2e3468">The ratio of training dataset to testing dataset is set as <inline-formula><mml:math id="M148" display="inline"><mml:mrow><mml:mn mathvariant="normal">8</mml:mn><mml:mo>:</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:math></inline-formula>, with all models trained according to hyperparameters specified in Table 3.</p>

<table-wrap id="T3" specific-use="star"><label>Table 3</label><caption><p id="d2e3487">Model hyperparameters.</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>
         <oasis:entry colname="col1">Hyperparameters</oasis:entry>
         <oasis:entry rowsep="1" namest="col2" nameend="col3" align="center">Model </oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">Graph neighborhood aggregation</oasis:entry>
         <oasis:entry colname="col3">Lithology classification/scalar field interpolation</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">Number of embedding layers</oasis:entry>
         <oasis:entry colname="col2">6</oasis:entry>
         <oasis:entry colname="col3">8</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Learning rate</oasis:entry>
         <oasis:entry colname="col2">0.010</oasis:entry>
         <oasis:entry colname="col3">0.010</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Learning rate scheduler</oasis:entry>
         <oasis:entry colname="col2">ReduceLROnPlateau</oasis:entry>
         <oasis:entry colname="col3">ReduceLROnPlateau</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Activation function</oasis:entry>
         <oasis:entry colname="col2">PreLU</oasis:entry>
         <oasis:entry colname="col3">PreLU</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Embedding dimension</oasis:entry>
         <oasis:entry colname="col2">64</oasis:entry>
         <oasis:entry colname="col3">128</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Number of attention heads</oasis:entry>
         <oasis:entry colname="col2">2</oasis:entry>
         <oasis:entry colname="col3">/</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Epochs</oasis:entry>
         <oasis:entry colname="col2">/</oasis:entry>
         <oasis:entry colname="col3">300</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d2e3612">Figure 10 presents scalar field prediction metrics, all four models converge after roughly 300 epochs. Both components improve scalar field interpolation relative to the baseline M1 (<inline-formula><mml:math id="M149" display="inline"><mml:mrow><mml:msup><mml:mi>R</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.931</mml:mn></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M150" display="inline"><mml:mrow><mml:mtext>RMSE</mml:mtext><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.086</mml:mn></mml:mrow></mml:math></inline-formula>): enabling SAN raises <inline-formula><mml:math id="M151" 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> to 0.961 and lowers RMSE to 0.073 (from M1 to M3), while enabling the dual-task constraint raises <inline-formula><mml:math id="M152" 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> to 0.955 and lowers RMSE to 0.072 (from M1 to M2). Their effects are complementary, and the full model M4 attains the best result (<inline-formula><mml:math id="M153" display="inline"><mml:mrow><mml:msup><mml:mi>R</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.971</mml:mn></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M154" display="inline"><mml:mrow><mml:mtext>RMSE</mml:mtext><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.062</mml:mn></mml:mrow></mml:math></inline-formula>). The gain from SAN is slightly larger on <inline-formula><mml:math id="M155" 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>, consistent with its explicit injection of stratigraphic age and contact relationship priors, which regularizes the continuous scalar field and yields smoother, more geologically consistent transitions.</p>

      <fig id="F10" specific-use="star"><label>Figure 10</label><caption><p id="d2e3705">Model evaluation metrics for scalar field interpolation training processes: <bold>(a)</bold> total loss, <bold>(b)</bold> <inline-formula><mml:math id="M156" 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>, <bold>(c)</bold> RMSE, and <bold>(d)</bold> learning rate.</p></caption>
          <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f10.png"/>

        </fig>

      <p id="d2e3737">The lithology classification training curves are shown in Fig. 11. Relative to the baseline M1 (<inline-formula><mml:math id="M157" display="inline"><mml:mrow><mml:mtext>accuracy</mml:mtext><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.841</mml:mn></mml:mrow></mml:math></inline-formula>), adding the SAN mechanism improves accuracy to 0.879 (from M1 to M3), and with the dual-task constraint, from 0.841 to 0.899 (from M1 to M2), adding the dual-task constraint and SAN mechanism improves accuracy from 0.841 to 0.921 (from M1 to M4). Both factors therefore contribute positively and roughly additively, with the cross-task constraint contributing somewhat more to lithology classification than SAN. The SAN improvement reflects the geological principle that lithologies adjacent in the stratigraphic sequence tend to be similar, explicitly incorporating lithology similarity and stratigraphic sequence constraints. The dual-task improvement reflects the cross-task coupling that regularizes lithological predictions against the stratigraphic scalar field.</p>

      <fig id="F11" specific-use="star"><label>Figure 11</label><caption><p id="d2e3754">Model evaluation metrics in lithology classification training processes: <bold>(a)</bold> loss, and <bold>(b)</bold> accuracy.</p></caption>
          <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f11.png"/>

        </fig>

      <p id="d2e3770">To benchmark Geo-SAN against mainstream learning-based interpolators, Table 4 evaluates three standalone GNN backbones, GCN (M5), GAT (M6), and GraphSAGE (M7), each without the SAN prior and without dual-task coupling, on the identical graph, feature set, and sampling split.</p>

<table-wrap id="T4"><label>Table 4</label><caption><p id="d2e3776">Comparison experiments.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="5">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="center"/>
     <oasis:colspec colnum="4" colname="col4" align="center"/>
     <oasis:colspec colnum="5" colname="col5" align="left"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Model</oasis:entry>
         <oasis:entry colname="col2">Graph neighborhood</oasis:entry>
         <oasis:entry colname="col3">SAN</oasis:entry>
         <oasis:entry colname="col4">Dual-Task</oasis:entry>
         <oasis:entry colname="col5">Description</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">aggregation</oasis:entry>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">M5</oasis:entry>
         <oasis:entry colname="col2">GCN</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M158" display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M159" display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col5">GCN</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">M6</oasis:entry>
         <oasis:entry colname="col2">GAT</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M160" display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M161" display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col5">GAT</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">M7</oasis:entry>
         <oasis:entry colname="col2">GraphSAGE</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M162" display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M163" display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col5">GraphSAGE</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d2e3917">Table 5 summarizes the metrics of the ablation models (M1–M4) and the comparison models (M5–M7). The full model M4 performs best on both tasks (<inline-formula><mml:math id="M164" display="inline"><mml:mrow><mml:msup><mml:mi>R</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.971</mml:mn></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M165" display="inline"><mml:mrow><mml:mtext>RMSE</mml:mtext><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.062</mml:mn></mml:mrow></mml:math></inline-formula>, and <inline-formula><mml:math id="M166" display="inline"><mml:mrow><mml:mtext>accuracy</mml:mtext><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.921</mml:mn></mml:mrow></mml:math></inline-formula>). Relative to the baseline M1, SAN and the dual-task constraint yield consistent gains but favor different tasks: SAN contributes more to scalar field prediction (M3 vs. M2, <inline-formula><mml:math id="M167" 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> 0.961 vs. 0.955), whereas the dual-task constraint contributes more to classification (M2 vs. M3, accuracy 0.899 vs. 0.879). The declining cross-task loss shows that the two components reinforce each other, and the 8.0 % accuracy gain of M4 over M1 stems from both jointly rather than from either alone. Under the baseline setting, the single backbone models rank GraphSAGE <inline-formula><mml:math id="M168" display="inline"><mml:mo>&gt;</mml:mo></mml:math></inline-formula> GAT <inline-formula><mml:math id="M169" display="inline"><mml:mo>&gt;</mml:mo></mml:math></inline-formula> GCN on both tasks (accuracy of 0.828, 0.810, and 0.805; <inline-formula><mml:math id="M170" 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> of 0.920, 0.904, and 0.879), reflecting the suitability of GraphSAGE's regional aggregation for stratified structures. The alternating GAT<inline-formula><mml:math id="M171" display="inline"><mml:mo>+</mml:mo></mml:math></inline-formula>GraphSAGE backbone (M1) surpasses all single backbones (<inline-formula><mml:math id="M172" display="inline"><mml:mrow><mml:msup><mml:mi>R</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.931</mml:mn></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M173" display="inline"><mml:mrow><mml:mtext>accuracy</mml:mtext><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0.841</mml:mn></mml:mrow></mml:math></inline-formula>) at comparable cost, confirming that multi-scale aggregation extracts more representative features from sparse and irregular samples.</p>

<table-wrap id="T5" specific-use="star"><label>Table 5</label><caption><p id="d2e4033">Model performance evaluation metrics (300 epochs).</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="9">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="right"/>
     <oasis:colspec colnum="3" colname="col3" align="right"/>
     <oasis:colspec colnum="4" colname="col4" align="right"/>
     <oasis:colspec colnum="5" colname="col5" align="right"/>
     <oasis:colspec colnum="6" colname="col6" align="right"/>
     <oasis:colspec colnum="7" colname="col7" align="right"/>
     <oasis:colspec colnum="8" colname="col8" align="right"/>
     <oasis:colspec colnum="9" colname="col9" align="right"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Model</oasis:entry>
         <oasis:entry colname="col2"><inline-formula><mml:math id="M174" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>scalar</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M175" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>orientation</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M176" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>litho</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M177" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">L</mml:mi><mml:mtext>cross</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M178" 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></oasis:entry>
         <oasis:entry colname="col7">RMSE</oasis:entry>
         <oasis:entry colname="col8">Accuracy</oasis:entry>
         <oasis:entry colname="col9">Time(s)</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">M1</oasis:entry>
         <oasis:entry colname="col2">0.0056</oasis:entry>
         <oasis:entry colname="col3">0.5157</oasis:entry>
         <oasis:entry colname="col4">0.3956</oasis:entry>
         <oasis:entry colname="col5">/</oasis:entry>
         <oasis:entry colname="col6">0.931</oasis:entry>
         <oasis:entry colname="col7">0.086</oasis:entry>
         <oasis:entry colname="col8">0.841</oasis:entry>
         <oasis:entry colname="col9">61.49</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">M2</oasis:entry>
         <oasis:entry colname="col2">0.0052</oasis:entry>
         <oasis:entry colname="col3">0.5203</oasis:entry>
         <oasis:entry colname="col4">0.4017</oasis:entry>
         <oasis:entry colname="col5">0.608</oasis:entry>
         <oasis:entry colname="col6">0.955</oasis:entry>
         <oasis:entry colname="col7">0.072</oasis:entry>
         <oasis:entry colname="col8">0.899</oasis:entry>
         <oasis:entry colname="col9">142.37</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">M3</oasis:entry>
         <oasis:entry colname="col2">0.0056</oasis:entry>
         <oasis:entry colname="col3">0.5075</oasis:entry>
         <oasis:entry colname="col4">0.4156</oasis:entry>
         <oasis:entry colname="col5">/</oasis:entry>
         <oasis:entry colname="col6">0.961</oasis:entry>
         <oasis:entry colname="col7">0.073</oasis:entry>
         <oasis:entry colname="col8">0.879</oasis:entry>
         <oasis:entry colname="col9">101.78</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">M4</oasis:entry>
         <oasis:entry colname="col2">0.0053</oasis:entry>
         <oasis:entry colname="col3">0.4541</oasis:entry>
         <oasis:entry colname="col4">0.2719</oasis:entry>
         <oasis:entry colname="col5">0.543</oasis:entry>
         <oasis:entry colname="col6">0.971</oasis:entry>
         <oasis:entry colname="col7">0.062</oasis:entry>
         <oasis:entry colname="col8">0.921</oasis:entry>
         <oasis:entry colname="col9">162.51</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">M5</oasis:entry>
         <oasis:entry colname="col2">0.0052</oasis:entry>
         <oasis:entry colname="col3">0.5238</oasis:entry>
         <oasis:entry colname="col4">0.4103</oasis:entry>
         <oasis:entry colname="col5">/</oasis:entry>
         <oasis:entry colname="col6">0.879</oasis:entry>
         <oasis:entry colname="col7">0.098</oasis:entry>
         <oasis:entry colname="col8">0.805</oasis:entry>
         <oasis:entry colname="col9">58.12</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">M6</oasis:entry>
         <oasis:entry colname="col2">0.0057</oasis:entry>
         <oasis:entry colname="col3">0.5567</oasis:entry>
         <oasis:entry colname="col4">0.4237</oasis:entry>
         <oasis:entry colname="col5">/</oasis:entry>
         <oasis:entry colname="col6">0.904</oasis:entry>
         <oasis:entry colname="col7">0.089</oasis:entry>
         <oasis:entry colname="col8">0.810</oasis:entry>
         <oasis:entry colname="col9">60.24</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">M7</oasis:entry>
         <oasis:entry colname="col2">0.0060</oasis:entry>
         <oasis:entry colname="col3">0.5689</oasis:entry>
         <oasis:entry colname="col4">0.4297</oasis:entry>
         <oasis:entry colname="col5">/</oasis:entry>
         <oasis:entry colname="col6">0.920</oasis:entry>
         <oasis:entry colname="col7">0.087</oasis:entry>
         <oasis:entry colname="col8">0.828</oasis:entry>
         <oasis:entry colname="col9">60.76</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d2e4361">Viewed from the overall architecture, the three modules address complementary bottlenecks: the alternating GAT<inline-formula><mml:math id="M179" display="inline"><mml:mo>+</mml:mo></mml:math></inline-formula>GraphSAGE backbone strengthens feature extraction from sparse, irregular samples, the SAN module injects stratigraphic constraints as additive attention terms and thus benefits scalar field interpolation most, while the cross-task loss regularizes the classifier against the predicted scalar field and thus benefits lithology classification most.</p>
      <p id="d2e4372">The confusion matrix (Fig. 12) shows that the proposed model performs well in all thirteen lithological categories. The model's highest classification accuracy is for D<sub>3</sub> and P<sub>1</sub>m lithologies. T<sub>2</sub>b<sup>1</sup>, C<sub>3</sub>, C<sub>1</sub>, D<sub>1</sub>y, and D<sub>1</sub>n have over 85 % correctly identified samples, demonstrating strong generalization and stable prediction. Although T<sub>1</sub>m and P<sub>1</sub>m, and D<sub>2</sub>d and D<sub>1</sub>y are slightly confused, the overall misclassification remains low, learning meaningful feature representations for each lithological category. Results show three major benefits: (1) Thirteen lithological categories are accurately recognized; (2) Most predictions are correctly along the diagonal with few off-diagonal errors; And (3) residual confusion is between lithologies with similar stratigraphic attributes or transitional relationships. The proposed Geo-SAN model performs well in automated lithology classification under complex geological conditions and provides an intelligent foundation for 3D geological modelling.</p>

      <fig id="F12" specific-use="star"><label>Figure 12</label><caption><p id="d2e4487">Geo-SAN lithology classification confusion matrix.</p></caption>
          <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f12.png"/>

        </fig>

      <p id="d2e4496">According to category-wise performance metrics (Fig. 13), the model demonstrates well in lithology classification. Most lithological categories have F1-scores above 0.80, with T<sub>2</sub>b<sup>1</sup>, P<sub>1</sub>m, D<sub>3</sub>, D<sub>1</sub>y, and D<sub>1</sub>n having values above 0.90, indicating high classification reliability. Most lithology categories, except P<sub>1</sub>q (0.671), have precision between 0.79 and 0.99, indicating good false positive control. Most categories maintain recall values between 0.74 and 0.99, indicating high true positive detection rates. The model's robustness under extreme sample imbalance (25 samples of T<sub>2</sub>b<sup>2</sup> to 738 samples of D<sub>3</sub>) is noteworthy. This shows the Geo-SAN architecture's powerful feature-learning capability and the training strategy's efficacy. Although the recall of P<sub>1</sub>q is relatively low (0.404), likely due to its feature similarity with adjacent lithologies, the model still achieves F1-scores above 0.82 for most sparse categories, demonstrating strong small-sample generalization. The model exhibits three major strengths: (1) balanced precision and recall, with most lithological categories achieving values above 0.90 for both metrics; (2) high resilience to sampling imbalance, maintaining stable performance even under severely skewed sample distributions; (3) strong lithology classification applicability, with F1-scores ranging from 0.50 to 0.95.</p>

      <fig id="F13" specific-use="star"><label>Figure 13</label><caption><p id="d2e4601">Geo-SAN model lithology classification evaluation metrics.</p></caption>
          <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f13.png"/>

        </fig>

</sec>
<sec id="Ch1.S4.SS2">
  <label>4.2</label><title>Scalar Field</title>
      <p id="d2e4618">Comparative analysis of scalar fields by Geo-SAN and gradient-adaptive Hermite radial basis function (AdaHRBF) (Zhang et al., 2023a), as shown in Fig. 14, shows that both modeling approaches exhibit a broad consistency of large-scale trends and  accurately describes the smooth changes of the scalar fields. The AdaHRBF method creates several inharmonious changes in values of scalar fields in structurally complicated areas that are attributed to uneven distribution of sampling points in the spaces and presence of noise which may lead to instability and local distortion. On the other hand, the scalar field generated by Geo-SAN has more gradual and geological smooth transitions in the same areas. The Geo-SAN method improves robustness and local adaptivity by combining SAN and graph-based neighborhood aggregation, creating more robust scalar field representations in complex geological settings.</p>

      <fig id="F14" specific-use="star"><label>Figure 14</label><caption><p id="d2e4623">Three-dimensional scalar fields modeled by <bold>(a)</bold> AdaHRBF and <bold>(b)</bold> Geo-SAN.</p></caption>
          <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f14.jpg"/>

        </fig>


</sec>
<sec id="Ch1.S4.SS3">
  <label>4.3</label><title>Lithology Classification</title>
      <p id="d2e4648">The proposed Geo-SAN method establishes an inherent coupling between scalar field and lithological categories, thereby enabling direct prediction of lithological classes. In contrast, the AdaHRBF method derives lithological categories indirectly through inequalities of scalar field. Constrained by the DEM surface, two stratigraphic models were reconstructed (Fig. 15). Both approaches yield stratigraphic models that reasonably reproduce the major geological structures in the study area, including Synclines I and III and Anticline II. The stratigraphic model generated by the AdaHRBF method, however, has local unnatural stratigraphic forms(marked in red), and high levels of inconsistency in stratigraphic ordering and thickness distribution on both sides of fault-involved areas. In contrast, the Geo-SAN-based model has good stratigraphic continuity within these structurally complex areas and displays no apparent stratigraphic sequence or thickness anomaly.</p>

      <fig id="F15" specific-use="star"><label>Figure 15</label><caption><p id="d2e4653">Three-dimensional stratigraphic models by <bold>(a)</bold> AdaHRBF and <bold>(b)</bold> Geo-SAN.</p></caption>
          <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f15.png"/>

        </fig>

      <p id="d2e4668">Four geological cross-sections are extracted out of the 3D stratigraphic models by AdaHRBF and Geo-SAN, as shown in Fig. 16. Cross-sections gained in the AdaHRBF model indicate unnatural stratigraphic forms that show pronounced inequalities in stratigraphic sequence and changes in thickness on both sides of fault-involved areas. Conversely, the Geo-SAN approach exhibits remarkable stratigraphic consistency in these regions, with no discernible sequence flaws.</p>

      <fig id="F16" specific-use="star"><label>Figure 16</label><caption><p id="d2e4674">Compare the cross-section nos. of <bold>(a)</bold> 16, <bold>(b)</bold> 15, <bold>(c)</bold> 14, and <bold>(d)</bold> 13 generated by actual, AdaHRBF and Geo-SAN models.</p></caption>
          <graphic xlink:href="https://gmd.copernicus.org/articles/19/8407/2026/gmd-19-8407-2026-f16.png"/>

        </fig>


</sec>
</sec>
<sec id="Ch1.S5">
  <label>5</label><title>Discussions</title>
      <p id="d2e4707">This study presents a 3D geological modelling framework, Geo-SAN, which is founded upon a dual-task stratigraphy-aware attention network. Unlike conventional implicit modelling methods, which rely on interpolation algorithms and the solution of large-scale linear equations, the suggested method utilizes the message-passing capabilities of GNNs to obtain the multi-scale aggregation of geological data, which is highly effective in overcoming the spatial modelling issues of sparse and irregular sampling points. The scheme is capable of dynamically modifying its feature aggregation strategy based on the lithological similarity and stratigraphic relationship so that a smooth incorporation of data-driven learning and knowledge-driven stratigraphic sequence constraints can be incorporated.</p>
      <p id="d2e4710">Among NNG approaches, CNNs require resampling onto regular grids (Bi et al., 2022; Zhang et al., 2024), and MLPs discard explicit topology (Chu et al., 2024; Hillier et al., 2023), whereas GNNs retain irregular sampling topology (Hillier et al., 2021; Gao and Wellmann, 2025; Liao et al., 2026); in all of these, however, aggregation weights derive from feature similarity alone and the prediction branches are not explicitly coupled. Under an identical graph, feature set, and sampling split, Geo-SAN improves <inline-formula><mml:math id="M203" 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> from 0.920 to 0.971 and accuracy from 0.828 to 0.921 relative to the strongest single backbone (GraphSAGE, M7), indicating that the gain originates from the stratigraphic priors and the cross-task coupling rather than from the backbone itself.</p>
      <p id="d2e4724">Ablation experiments further disentangle the two proposed components:  the SAN mechanism contributes 2.2 %–3.8 % and the dual-task constraint 4.2 %–5.8 % to lithology classification accuracy, together accounting for the 8.0 % improvement of the full model over the baseline. This underscores the complementary roles of stratigraphic sequence prior knowledge and cross-task coupling in constraining feature aggregation and improving model robustness.</p>
      <p id="d2e4728">Despite these advances, there are still several limitations. First, the cross-task constraint narrows but does not eliminate this overlap where some ambiguity is irreducible where lithologies are genuinely similar and contacts are gradational. This is consistent with geological reality and delimits the scope of the coupling. Second, a closed set supervised classifier can only predict lithologies present in the training set. For a stratigraphic unit absent from the training data, the current model would then assign it to the nearest known class. Third, the existing framework is highly developed to stratified geological bodies and its applicability to more complex geological structures, including igneous intrusions, salt domes, and heterogeneous mixed rocks, has not been confirmed. Fourth, faults are encoded as a one-hot node feature, which marks the presence of a discontinuity but does not represent fault displacement, fault type (normal, reverse, or strike-slip), or the detailed offset across the fault. Therefore, future improvements are suggested on: (1) active learning to optimize sampling strategy and minimize reliance on the spatial distribution of dataset, (2) handling this “untrained-unit” case requires open-set recognition (flagging out-of-distribution nodes as “unknown”), semi-supervised or self-training strategies, or continual/transfer learning, (3) adding structural constraint pattern or modeling strategies that use topological relationships to better express irregular boundaries, complicated contact relationships, and spatial topology, and (4) for oblique-slip structures such as the Nacha Fault, encoding the slip vector and displacement magnitude, thereby further improving the prediction of near fault stratigraphic thickness.</p>
</sec>
<sec id="Ch1.S6" sec-type="conclusions">
  <label>6</label><title>Conclusions</title>
      <p id="d2e4739">This study addresses the computational inefficiency, limited capacity for constraint integration, and inadequate treatment of spatial discontinuities commonly encountered by traditional geological implicit modelling methods when dealing with complex geological structures. We introduce a 3D geological modelling framework, Geo-SAN, which consists of a dual-task stratigraphy-aware attention network, and allows the joint optimization of lithology classification and scalar field interpolation. The proposed method obtains a lithology classification accuracy of 92.1 % and an <inline-formula><mml:math id="M204" 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> of 0.971 to predict scalar field.</p>
      <p id="d2e4753">The principal contributions of the study include the following: (1) A multi-scale graph neighborhood aggregation mechanism is developed by alternately integrating GAT and GraphSAGE message-passing layers, which effectively extracts representative features from sparse and irregular sampling data; (2) The stratigraphy-aware attention mechanism is proposed, which uses knowledge of stratigraphic sequence and lithological similarity directly as a part of the feature aggregation mechanism; (3) A dual-task learning architecture is constructed that will complete the task of lithology classification and scalar field prediction simultaneously.</p>
</sec>

      
      </body>
    <back><notes notes-type="codedataavailability"><title>Code and data availability</title>

      <p id="d2e4760">The Geo-SAN v1.0 is available from the GitHub (<uri>https://github.com/Geo3D-AI-CSU/Geo-SAN</uri>, Fang and Zhang, 2026b) under the Creative Commons Attribution 4.0 License. The exact version of the model used to produce the results used in this study is archived on Zenodo under DOI: <ext-link xlink:href="https://doi.org/10.5281/zenodo.19903694" ext-link-type="DOI">10.5281/zenodo.19903694</ext-link> (Fang and Zhang, 2026a), as are input data and scripts to run the model and produce the plots for all the simulations presented in this study.</p>
  </notes><notes notes-type="authorcontribution"><title>Author contributions</title>

      <p id="d2e4772">ZF: Methodology, Software, and Writing – original draft preparation. TZ: Software and Writing – original draft preparation. WC: Data curation. YS: Investigation and Funding acquisition. SYAS: Conceptualization and Writing – review and editing. OABKK: Validation and Data curation. BZ: Conceptualization, Validation, Writing – review and editing, and Funding acquisition.</p>
  </notes><notes notes-type="competinginterests"><title>Competing interests</title>

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

      <p id="d2e4784">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="d2e4791">We thank Shangguo Zhou (Institute of Mineral Resources Research, China Metallurgical Geology Bureau) and Xiancheng Mao (Central South University) for their kind assistance with data collection. The authors also thank the MapGIS Laboratory co-constructed by the National Engineering Research Center of Geographic Information System of China and Central South University for providing MapGIS<sup>®</sup> software (Wuhan Zondy Cyber-Tech Co. Ltd., Wuhan, China).</p></ack><notes notes-type="financialsupport"><title>Financial support</title>

      <p id="d2e4799">This study was supported by grants from the National Natural Science Foundation of China (Grant no. 42572387) and the Scientific Research Project of Geological Bureau of Hunan Province, China (Grant no. HNGSTP202301).</p>
  </notes><notes notes-type="reviewstatement"><title>Review statement</title>

      <p id="d2e4806">This paper was edited by Ludovic Räss and reviewed by two anonymous referees.</p>
  </notes><ref-list>
    <title>References</title>

      <ref id="bib1.bib1"><label>1</label><mixed-citation> Alcalde, J., Bond, C. E., Johnson, G., Butler, R. W., Cooper, M. A., and Ellis, J. F.: The importance of structural model availability on seismic interpretation, J. Struct. Geol., 97, 161–171, 2017.</mixed-citation></ref>
      <ref id="bib1.bib2"><label>2</label><mixed-citation>Bergen, K. J., Johnson, P. A., de Hoop, M. V., and Beroza, G. C.: Machine learning for data-driven discovery in solid earth geoscience, Science, 363, eaau0323, <ext-link xlink:href="https://doi.org/10.1126/science.aau0323" ext-link-type="DOI">10.1126/science.aau0323</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bib3"><label>3</label><mixed-citation>Bi, Z., Wu, X., Li, Z., Chang, D., and Yong, X.: DeepISMNet: three-dimensional implicit structural modeling with convolutional neural network, Geosci. Model Dev., 15, 6841–6861, <ext-link xlink:href="https://doi.org/10.5194/gmd-15-6841-2022" ext-link-type="DOI">10.5194/gmd-15-6841-2022</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bib4"><label>4</label><mixed-citation>Caumon, G., Collon-Drouaillet, P., Le Carlier de Veslud, C., Viseur, S., and Sausse, J.: Surface-Based 3D Modeling of Geological Structures, Math. Geosci., 41, 927–945, <ext-link xlink:href="https://doi.org/10.1007/s11004-009-9244-2" ext-link-type="DOI">10.1007/s11004-009-9244-2</ext-link>, 2009.</mixed-citation></ref>
      <ref id="bib1.bib5"><label>5</label><mixed-citation>Chen, Z., Badrinarayanan, V., Lee, C.-Y., and Rabinovich, A.: Gradnorm: Gradient normalization for adaptive loss balancing in deep multitask networks, International conference on machine learning, 794–803, PMLR, <uri>https://proceedings.mlr.press/v80/chen18a.html</uri> (last access: 6 September 2026), 2018.</mixed-citation></ref>
      <ref id="bib1.bib6"><label>6</label><mixed-citation> Chu, D., Fu, J., Wan, B., Li, H., Li, L., Fang, F., Li, S., Pan, S., and Zhou, S.: A multi-view ensemble machine learning approach for 3D modeling using geological and geophysical data, Int. J. Geogr. Inf. Sci., 38, 2599–2626, 2024.</mixed-citation></ref>
      <ref id="bib1.bib7"><label>7</label><mixed-citation>Chu, D., Wan, B., Liu, Y., Li, L., Li, H., Fang, F., Li, S., Pan, S., and Wang, M.: An integrated machine learning framework using borehole descriptions for 3D lithological modeling, Eng. Geol., 351, 108050, <ext-link xlink:href="https://doi.org/10.1016/j.enggeo.2025.108050" ext-link-type="DOI">10.1016/j.enggeo.2025.108050</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bib8"><label>8</label><mixed-citation>de la Varga, M., Schaaf, A., and Wellmann, F.: GemPy 1.0: open-source stochastic geological modeling and inversion, Geosci. Model Dev., 12, 1–32, <ext-link xlink:href="https://doi.org/10.5194/gmd-12-1-2019" ext-link-type="DOI">10.5194/gmd-12-1-2019</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bib9"><label>9</label><mixed-citation>Du, L., Du, J., Fang, Z., Shah, S. Y. A., Kablan, O. A. B. K., Zhang, B., and Tan, J.: A Recurrent Neural Network Surrogate Model with Few-Shot Strategy for <inline-formula><mml:math id="M205" display="inline"><mml:mrow class="chem"><mml:msub><mml:mi mathvariant="normal">CO</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> Storage in Deep Subsurface Saline Aquifer with Limited Direct Numerical Simulation Samples, Lithosphere, 2026, <ext-link xlink:href="https://doi.org/10.2113/lithosphere_2025_139" ext-link-type="DOI">10.2113/lithosphere_2025_139</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bib10"><label>10</label><mixed-citation>Fang, Z. and Zhang, B.: Three-Dimensional Geological Modeling based on Dual-Task Stratigraphy-Aware Attention Networks (Geo-SAN v1.0), Zenodo [code, data set], <ext-link xlink:href="https://doi.org/10.5281/zenodo.19903694" ext-link-type="DOI">10.5281/zenodo.19903694</ext-link>, 2026a.</mixed-citation></ref>
      <ref id="bib1.bib11"><label>11</label><mixed-citation>Fang, Z. and Zhang, B.: Geo-SAN v1.0, GitHub [code], <uri>https://github.com/Geo3D-AI-CSU/Geo-SAN</uri>, last access: 2 June 2026b.</mixed-citation></ref>
      <ref id="bib1.bib12"><label>12</label><mixed-citation>Fey, M. and Lenssen, J. E.: Fast Graph Representation Learning with PyTorch Geometric, arXiv [preprint], <ext-link xlink:href="https://doi.org/10.48550/arXiv.1903.02428" ext-link-type="DOI">10.48550/arXiv.1903.02428</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bib13"><label>13</label><mixed-citation>Gao, K. and Wellmann, F.: Fault representation in structural modelling with implicit neural representations, Comput. Geosci., 199, 105911, <ext-link xlink:href="https://doi.org/10.1016/j.cageo.2025.105911" ext-link-type="DOI">10.1016/j.cageo.2025.105911</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bib14"><label>14</label><mixed-citation>Giraud, J., Caumon, G., Grose, L., Ogarko, V., and Cupillard, P.: Integration of automatic implicit geological modelling in deterministic geophysical inversion, Solid Earth, 15, 63–89, <ext-link xlink:href="https://doi.org/10.5194/se-15-63-2024" ext-link-type="DOI">10.5194/se-15-63-2024</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bib15"><label>15</label><mixed-citation>Gori, M., Monfardini, G., and Scarselli, F.: A new model for learning in graph domains, Proceedings. 2005 IEEE International Joint Conference on Neural Networks, 2005, 31 July–4 August 2005, <ext-link xlink:href="https://doi.org/10.1109/IJCNN.2005.1555942" ext-link-type="DOI">10.1109/IJCNN.2005.1555942</ext-link>, 2005.</mixed-citation></ref>
      <ref id="bib1.bib16"><label>16</label><mixed-citation>Guo, J., Wang, J., Wu, L., Liu, C., Li, C., Li, F., Lin, M., Jessell, M. W., Li, P., Dai, X., and Tang, J.: Explicit-implicit-integrated 3-D geological modelling approach: A case study of the Xianyan Demolition Volcano (Fujian, China), Tectonophysics, 795, <ext-link xlink:href="https://doi.org/10.1016/j.tecto.2020.228648" ext-link-type="DOI">10.1016/j.tecto.2020.228648</ext-link>, 2020.</mixed-citation></ref>
      <ref id="bib1.bib17"><label>17</label><mixed-citation>Guo, J., Xu, X., Wang, L., Wang, X., Wu, L., Jessell, M., Ogarko, V., Liu, Z., and Zheng, Y.: GeoPDNN 1.0: a semi-supervised deep learning neural network using pseudo-labels for three-dimensional shallow strata modelling and uncertainty analysis in urban areas from borehole data, Geosci. Model Dev., 17, 957–973, <ext-link xlink:href="https://doi.org/10.5194/gmd-17-957-2024" ext-link-type="DOI">10.5194/gmd-17-957-2024</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bib18"><label>18</label><mixed-citation>Guo, J., Gao, L., Xiong, Z., Wang, L., Wang, X., Liu, Z., and Liu, Y.: A Method for Integrated Explicit and Implicit Regional Modeling of Fold Structures Combining NURBS and HRBF Based on the Constraints of Fold Elements, Math. Geosci., 1–26, <ext-link xlink:href="https://doi.org/10.1007/s11004-026-10294-w" ext-link-type="DOI">10.1007/s11004-026-10294-w</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bib19"><label>19</label><mixed-citation> Hamilton, W., Ying, Z., and Leskovec, J.: Inductive representation learning on large graphs, Adv. Neur. In., 30, 1024–1034, 2017.</mixed-citation></ref>
      <ref id="bib1.bib20"><label>20</label><mixed-citation>He, Z., Xu, X., Peng, P., Wang, L., and Tian, S.: A deep learning-driven three-dimensional geological modeling method using sparse borehole sampling data, Measurement, 118461, <ext-link xlink:href="https://doi.org/10.1016/j.measurement.2025.118461" ext-link-type="DOI">10.1016/j.measurement.2025.118461</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bib21"><label>21</label><mixed-citation>Hillier, M., de Kemp, E., and Schetselaar, E.: 3D form line construction by structural field interpolation (SFI) of geologic strike and dip observations, J. Struct. Geol., 51, 167–179, <ext-link xlink:href="https://doi.org/10.1016/j.jsg.2013.01.012" ext-link-type="DOI">10.1016/j.jsg.2013.01.012</ext-link>, 2013.</mixed-citation></ref>
      <ref id="bib1.bib22"><label>22</label><mixed-citation>Hillier, M., Wellmann, F., Brodaric, B., de Kemp, E., and Schetselaar, E.: Three-Dimensional Structural Geological Modeling Using Graph Neural Networks, Math. Geosci., 53, 1725–1749, <ext-link xlink:href="https://doi.org/10.1007/s11004-021-09945-x" ext-link-type="DOI">10.1007/s11004-021-09945-x</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bib23"><label>23</label><mixed-citation>Hillier, M., Wellmann, F., de Kemp, E. A., Brodaric, B., Schetselaar, E., and Bédard, K.: GeoINR 1.0: an implicit neural network approach to three-dimensional geological modelling, Geosci. Model Dev., 16, 6987–7012, <ext-link xlink:href="https://doi.org/10.5194/gmd-16-6987-2023" ext-link-type="DOI">10.5194/gmd-16-6987-2023</ext-link>, 2023.</mixed-citation></ref>
      <ref id="bib1.bib24"><label>24</label><mixed-citation>Hu, Y., Wang, Z. Z., Guo, X., Kek, H. Y., Ku, T., Goh, S. H., Leung, C. F., Tan, E., and Zhang, Y.: Three-dimensional reconstruction of subsurface stratigraphy using machine learning with neighborhood aggregation, Eng. Geol., 337, 107588, <ext-link xlink:href="https://doi.org/10.1016/j.enggeo.2024.107588" ext-link-type="DOI">10.1016/j.enggeo.2024.107588</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bib25"><label>25</label><mixed-citation>Jessell, M., Guo, J., Li, Y., Lindsay, M., Scalzo, R., Giraud, J., Pirot, G., Cripps, E., and Ogarko, V.: Into the Noddyverse: a massive data store of 3D geological models for machine learning and inversion applications, Earth Syst. Sci. Data, 14, 381–392, <ext-link xlink:href="https://doi.org/10.5194/essd-14-381-2022" ext-link-type="DOI">10.5194/essd-14-381-2022</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bib26"><label>26</label><mixed-citation>Khan, M. S., Kim, I. S., and Seo, J.: A boundary and voxel-based 3D geological data management system leveraging BIM and GIS, Int. J. Appl. Earth Obs., 118, 103277, <ext-link xlink:href="https://doi.org/10.1016/j.jag.2023.103277" ext-link-type="DOI">10.1016/j.jag.2023.103277</ext-link>, 2023.</mixed-citation></ref>
      <ref id="bib1.bib27"><label>27</label><mixed-citation>Khan, U., Zhang, B., Du, J., and Jiang, Z.: 3D structural modeling integrated with seismic attribute and petrophysical evaluation for hydrocarbon prospecting at the Dhulian Oilfield, Pakistan, Front. Earth Sci., 15, 649–675, <ext-link xlink:href="https://doi.org/10.1007/s11707-021-0881-1" ext-link-type="DOI">10.1007/s11707-021-0881-1</ext-link>, 2021.</mixed-citation></ref>
      <ref id="bib1.bib28"><label>28</label><mixed-citation>Li, C., Li, F., Liu, C., Tang, Z., Fu, S., Lin, M., Lv, X., Liu, S., and Liu, Y.: Deep learning-based geological map generation using geological routes, Remote Sens. Environ., 309, 114214, <ext-link xlink:href="https://doi.org/10.2139/ssrn.4762404" ext-link-type="DOI">10.2139/ssrn.4762404</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bib29"><label>29</label><mixed-citation>Liao, M., Wang, G., Wen, H., Li, Y., Xiang, X., Wang, R., Huang, J., Sun, F., and Li, B.: A geology-informed graph neural network solution for addressing the data sparsity challenge in 3D geological modeling, Eng. Geol., 370, 108859, <ext-link xlink:href="https://doi.org/10.1016/j.enggeo.2026.108859" ext-link-type="DOI">10.1016/j.enggeo.2026.108859</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bib30"><label>30</label><mixed-citation>Lyu, B., Wang, Y., and Shi, C.: Multi-scale generative adversarial networks (GAN) for generation of three-dimensional subsurface geological models from limited boreholes and prior geological knowledge, Comput. Geotech., 170, 106336, <ext-link xlink:href="https://doi.org/10.1016/j.compgeo.2024.106336" ext-link-type="DOI">10.1016/j.compgeo.2024.106336</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bib31"><label>31</label><mixed-citation> Reichstein, M., Camps-Valls, G., Stevens, B., Jung, M., Denzler, J., Carvalhais, N., and Prabhat, F.: Deep learning and process understanding for data-driven Earth system science, Nature, 566, 195–204, 2019.</mixed-citation></ref>
      <ref id="bib1.bib32"><label>32</label><mixed-citation>Ren, A., Wu, L., Xu, J., Xing, Y., Qiu, Q., and Xie, Z.: A deep learning method for 3D geological modeling using ET4DD with offset-attention mechanism, Comput. Geosci., 200, 105929, <ext-link xlink:href="https://doi.org/10.1016/j.cageo.2025.105929" ext-link-type="DOI">10.1016/j.cageo.2025.105929</ext-link>, 2025.</mixed-citation></ref>
      <ref id="bib1.bib33"><label>33</label><mixed-citation>Shah, S. Y. A., Du, J., Iqbal, S. M., Du, L., Khan, U., Zhang, B., and Tan, J.: Integrated Three-Dimensional Structural and Petrophysical Modeling for Assessment of <inline-formula><mml:math id="M206" display="inline"><mml:mrow class="chem"><mml:msub><mml:mi mathvariant="normal">CO</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> Storage Potential in Gas Reservoir, Lithosphere, 2024, <ext-link xlink:href="https://doi.org/10.2113/2024/lithosphere_2024_222" ext-link-type="DOI">10.2113/2024/lithosphere_2024_222</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bib34"><label>34</label><mixed-citation>Song, J., Mao, X., Liu, Z., Yang, X., Sun, J., Deng, H., Chen, J., Yu, S., and Huang, J.: Multiscale MoE-GCN for 3D Mineral Prospectivity Modeling Integrating Surface Geochemical Exploration Data: Application in the Xiadian Gold Deposit, China, Nat. Resour. Res., 1–26, <ext-link xlink:href="https://doi.org/10.1007/s11053-026-10735-7" ext-link-type="DOI">10.1007/s11053-026-10735-7</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bib35"><label>35</label><mixed-citation> Sprague, K. B. and De Kemp, E. A.: Interpretive tools for 3-D structural geological modelling part II: Surface design from sparse spatial data, GeoInformatica, 9, 5–32, 2005.</mixed-citation></ref>
      <ref id="bib1.bib36"><label>36</label><mixed-citation>Veličković, P., Cucurull, G., Casanova, A., Romero, A., Lio, P., and Bengio, Y.: Graph attention networks, arXiv [preprint], <ext-link xlink:href="https://doi.org/10.48550/arXiv.1710.10903" ext-link-type="DOI">10.48550/arXiv.1710.10903</ext-link>, 2017.</mixed-citation></ref>
      <ref id="bib1.bib37"><label>37</label><mixed-citation>Wang, G., Zhu, Y., Zhang, S., Yan, C., Song, Y., Ma, Z., Hong, D., and Chen, T.: 3D geological modeling based on gravitational and magnetic data inversion in the Luanchuan ore region, Henan Province, China, J. Appl. Geophys., 80, 1–11, <ext-link xlink:href="https://doi.org/10.1016/j.jappgeo.2012.01.006" ext-link-type="DOI">10.1016/j.jappgeo.2012.01.006</ext-link>, 2012.</mixed-citation></ref>
      <ref id="bib1.bib38"><label>38</label><mixed-citation>Wang, L., Yin, Y., Zhang, C., Feng, W., Li, G., Chen, Q., and Chen, M.: A MPS-based novel method of reconstructing 3D reservoir models from 2D images using seismic constraints, J. Petrol. Sci. Eng., 209, <ext-link xlink:href="https://doi.org/10.1016/j.petrol.2021.109974" ext-link-type="DOI">10.1016/j.petrol.2021.109974</ext-link>, 2022.</mixed-citation></ref>
      <ref id="bib1.bib39"><label>39</label><mixed-citation>Wang, L., Jiang, Z., Song, L., Yu, X., Yuan, S., and Zhang, B.: A groundwater level spatiotemporal prediction model based on graph convolutional networks with a long short-term memory, J. Hydroinform., 26, 2962–2979, <ext-link xlink:href="https://doi.org/10.2166/hydro.2024.226" ext-link-type="DOI">10.2166/hydro.2024.226</ext-link>, 2024.</mixed-citation></ref>
      <ref id="bib1.bib40"><label>40</label><mixed-citation>Wang, L. F., Wu, X. B., Zhang, B. Y., Li, X. F., Huang, A. S., Meng, F., and Dai, P. Y.: Recognition of Significant Surface Soil Geochemical Anomalies Via Weighted 3D Shortest-Distance Field of Subsurface Orebodies: A Case Study in the Hongtoushan Copper Mine, NE China, Nat. Resour. Res., 28, 587–607, <ext-link xlink:href="https://doi.org/10.1007/s11053-018-9410-7" ext-link-type="DOI">10.1007/s11053-018-9410-7</ext-link>, 2019.</mixed-citation></ref>
      <ref id="bib1.bib41"><label>41</label><mixed-citation>Wellmann, J. F., de la Varga, M., Murdie, R. E., Gessner, K., and Jessell, M.: Uncertainty estimation for a geological model of the Sandstone greenstone belt, Western Australia – insights from integrated geological and geophysical inversion in a Bayesian inference framework, in: Characterization of Ore-Forming Systems from Geological, Geochemical and Geophysical Studies, edited by: Gessner, K., Blenkinsop, T. G., and Sorjonen-Ward, P., Geological Society of London, London, 453–464, <ext-link xlink:href="https://doi.org/10.6084/m9.figshare.c.3899719.v1" ext-link-type="DOI">10.6084/m9.figshare.c.3899719.v1</ext-link>, 2017.</mixed-citation></ref>
      <ref id="bib1.bib42"><label>42</label><mixed-citation>Wu, Q., Xie, Z., Zhao, Y., Tian, M., Zhang, X., and Qiu, Q.: Multi-type and multi-scale geological three-dimensional modeling using entity-relationship networks, Adv. Eng. Inform., 72, 104436, <ext-link xlink:href="https://doi.org/10.1016/j.aei.2026.104436" ext-link-type="DOI">10.1016/j.aei.2026.104436</ext-link>, 2026. </mixed-citation></ref>
      <ref id="bib1.bib43"><label>43</label><mixed-citation>Yin, L., Guo, Y., Wang, L., Yuan, S., Fang, Z., and Zhang, B.: A Dual-Transformer Network for Spatiotemporal Modeling of Carbon Dioxide Column Concentration (<inline-formula><mml:math id="M207" display="inline"><mml:mrow class="chem"><mml:msub><mml:mi mathvariant="normal">XCO</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>) on the Basis of Dynamic Heterogeneous Graphs, T. GIS, 30, e70275, <ext-link xlink:href="https://doi.org/10.1111/tgis.70275" ext-link-type="DOI">10.1111/tgis.70275</ext-link>, 2026.</mixed-citation></ref>
      <ref id="bib1.bib44"><label>44</label><mixed-citation>Zhang, B., Du, L., Khan, U., Tong, Y., Wang, L., and Deng, H.: AdaHRBF v1.0: gradient-adaptive Hermite–Birkhoff radial basis function interpolants for three-dimensional stratigraphic implicit modeling, Geosci. Model Dev., 16, 3651–3674, <ext-link xlink:href="https://doi.org/10.5194/gmd-16-3651-2023" ext-link-type="DOI">10.5194/gmd-16-3651-2023</ext-link>, 2023a.</mixed-citation></ref>
      <ref id="bib1.bib45"><label>45</label><mixed-citation>Zhang, B., Li, M., Huan, Y., Khan, U., Wang, L., and Wang, F.: Bedrock mapping based on terrain weighted directed graph convolutional network using stream sediment geochemical samplings, T. Nonferr. Metal. Soc., 33, 2799–2814, <ext-link xlink:href="https://doi.org/10.1016/S1003-6326(23)66299-5" ext-link-type="DOI">10.1016/S1003-6326(23)66299-5</ext-link>, 2023b.</mixed-citation></ref>
      <ref id="bib1.bib46"><label>46</label><mixed-citation>Zhang, B., Xu, Z., Wei, X., Song, L., Shah, S. Y. A., Khan, U., Du, L., and Li, X.: Deep Subsurface Pseudo-Lithostratigraphic Modeling Based on Three-Dimensional Convolutional Neural Network (3D CNN) Using Inversed Geophysical Properties and Shallow Subsurface Geological Model, Lithosphere, 2024, <ext-link xlink:href="https://doi.org/10.2113/2024/lithosphere_2023_273" ext-link-type="DOI">10.2113/2024/lithosphere_2023_273</ext-link>, 2024.</mixed-citation></ref>

  </ref-list></back>
    <!--<article-title-html>Three-dimensional geological modeling based on dual-task stratigraphy-aware attention networks (Geo-SAN v1.0)</article-title-html>
<abstract-html/>
<ref-html id="bib1.bib1"><label>1</label><mixed-citation>
       Alcalde, J., Bond, C. E., Johnson, G., Butler, R. W., Cooper, M. A., and Ellis, J. F.:
The importance of structural model availability on seismic interpretation, J. Struct. Geol., 97, 161–171, 2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib2"><label>2</label><mixed-citation>
       Bergen, K. J., Johnson, P. A., de Hoop, M. V., and Beroza, G. C.:
Machine learning for data-driven discovery in solid earth geoscience, Science, 363, eaau0323, <a href="https://doi.org/10.1126/science.aau0323" target="_blank">https://doi.org/10.1126/science.aau0323</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib3"><label>3</label><mixed-citation>
       Bi, Z., Wu, X., Li, Z., Chang, D., and Yong, X.:
DeepISMNet: three-dimensional implicit structural modeling with convolutional neural network, Geosci. Model Dev., 15, 6841–6861, <a href="https://doi.org/10.5194/gmd-15-6841-2022" target="_blank">https://doi.org/10.5194/gmd-15-6841-2022</a>, 2022. 
    </mixed-citation></ref-html>
<ref-html id="bib1.bib4"><label>4</label><mixed-citation>
       Caumon, G., Collon-Drouaillet, P., Le Carlier de Veslud, C., Viseur, S., and Sausse, J.:
Surface-Based 3D Modeling of Geological Structures, Math. Geosci., 41, 927–945, <a href="https://doi.org/10.1007/s11004-009-9244-2" target="_blank">https://doi.org/10.1007/s11004-009-9244-2</a>, 2009.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib5"><label>5</label><mixed-citation>
       Chen, Z., Badrinarayanan, V., Lee, C.-Y., and Rabinovich, A.:
Gradnorm: Gradient normalization for adaptive loss balancing in deep multitask networks, International conference on machine learning, 794–803, PMLR, <a href="https://proceedings.mlr.press/v80/chen18a.html" target="_blank"/> (last access: 6 September 2026), 2018.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib6"><label>6</label><mixed-citation>
       Chu, D., Fu, J., Wan, B., Li, H., Li, L., Fang, F., Li, S., Pan, S., and Zhou, S.:
A multi-view ensemble machine learning approach for 3D modeling using geological and geophysical data, Int. J. Geogr. Inf. Sci., 38, 2599–2626, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib7"><label>7</label><mixed-citation>
       Chu, D., Wan, B., Liu, Y., Li, L., Li, H., Fang, F., Li, S., Pan, S., and Wang, M.:
An integrated machine learning framework using borehole descriptions for 3D lithological modeling, Eng. Geol., 351, 108050, <a href="https://doi.org/10.1016/j.enggeo.2025.108050" target="_blank">https://doi.org/10.1016/j.enggeo.2025.108050</a>, 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib8"><label>8</label><mixed-citation>
       de la Varga, M., Schaaf, A., and Wellmann, F.:
GemPy 1.0: open-source stochastic geological modeling and inversion, Geosci. Model Dev., 12, 1–32, <a href="https://doi.org/10.5194/gmd-12-1-2019" target="_blank">https://doi.org/10.5194/gmd-12-1-2019</a>, 2019. 
    </mixed-citation></ref-html>
<ref-html id="bib1.bib9"><label>9</label><mixed-citation>
       Du, L., Du, J., Fang, Z., Shah, S. Y. A., Kablan, O. A. B. K., Zhang, B., and Tan, J.:
A Recurrent Neural Network Surrogate Model with Few-Shot Strategy for CO<sub>2</sub> Storage in Deep Subsurface Saline Aquifer with Limited Direct Numerical Simulation Samples, Lithosphere, 2026, <a href="https://doi.org/10.2113/lithosphere_2025_139" target="_blank">https://doi.org/10.2113/lithosphere_2025_139</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib10"><label>10</label><mixed-citation>
       Fang, Z. and Zhang, B.:
Three-Dimensional Geological Modeling based on Dual-Task Stratigraphy-Aware Attention Networks (Geo-SAN v1.0), Zenodo [code, data set], <a href="https://doi.org/10.5281/zenodo.19903694" target="_blank">https://doi.org/10.5281/zenodo.19903694</a>, 2026a.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib11"><label>11</label><mixed-citation>
      
Fang, Z. and Zhang, B.: Geo-SAN v1.0, GitHub [code], <a href="https://github.com/Geo3D-AI-CSU/Geo-SAN" target="_blank"/>, last access: 2 June 2026b.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib12"><label>12</label><mixed-citation>
       Fey, M. and Lenssen, J. E.:
Fast Graph Representation Learning with PyTorch Geometric, arXiv [preprint], <a href="https://doi.org/10.48550/arXiv.1903.02428" target="_blank">https://doi.org/10.48550/arXiv.1903.02428</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib13"><label>13</label><mixed-citation>
       Gao, K. and Wellmann, F.:
Fault representation in structural modelling with implicit neural representations, Comput. Geosci., 199, 105911, <a href="https://doi.org/10.1016/j.cageo.2025.105911" target="_blank">https://doi.org/10.1016/j.cageo.2025.105911</a>, 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib14"><label>14</label><mixed-citation>
       Giraud, J., Caumon, G., Grose, L., Ogarko, V., and Cupillard, P.:
Integration of automatic implicit geological modelling in deterministic geophysical inversion, Solid Earth, 15, 63–89, <a href="https://doi.org/10.5194/se-15-63-2024" target="_blank">https://doi.org/10.5194/se-15-63-2024</a>, 2024. 
    </mixed-citation></ref-html>
<ref-html id="bib1.bib15"><label>15</label><mixed-citation>
       Gori, M., Monfardini, G., and Scarselli, F.:
A new model for learning in graph domains, Proceedings. 2005 IEEE International Joint Conference on Neural Networks, 2005, 31 July–4 August 2005, <a href="https://doi.org/10.1109/IJCNN.2005.1555942" target="_blank">https://doi.org/10.1109/IJCNN.2005.1555942</a>, 2005.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib16"><label>16</label><mixed-citation>
       Guo, J., Wang, J., Wu, L., Liu, C., Li, C., Li, F., Lin, M., Jessell, M. W., Li, P., Dai, X., and Tang, J.:
Explicit-implicit-integrated 3-D geological modelling approach: A case study of the Xianyan Demolition Volcano (Fujian, China), Tectonophysics, 795, <a href="https://doi.org/10.1016/j.tecto.2020.228648" target="_blank">https://doi.org/10.1016/j.tecto.2020.228648</a>, 2020.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib17"><label>17</label><mixed-citation>
       Guo, J., Xu, X., Wang, L., Wang, X., Wu, L., Jessell, M., Ogarko, V., Liu, Z., and Zheng, Y.:
GeoPDNN 1.0: a semi-supervised deep learning neural network using pseudo-labels for three-dimensional shallow strata modelling and uncertainty analysis in urban areas from borehole data, Geosci. Model Dev., 17, 957–973, <a href="https://doi.org/10.5194/gmd-17-957-2024" target="_blank">https://doi.org/10.5194/gmd-17-957-2024</a>, 2024. 
    </mixed-citation></ref-html>
<ref-html id="bib1.bib18"><label>18</label><mixed-citation>
       Guo, J., Gao, L., Xiong, Z., Wang, L., Wang, X., Liu, Z., and Liu, Y.:
A Method for Integrated Explicit and Implicit Regional Modeling of Fold Structures Combining NURBS and HRBF Based on the Constraints of Fold Elements, Math. Geosci., 1–26, <a href="https://doi.org/10.1007/s11004-026-10294-w" target="_blank">https://doi.org/10.1007/s11004-026-10294-w</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib19"><label>19</label><mixed-citation>
       Hamilton, W., Ying, Z., and Leskovec, J.:
Inductive representation learning on large graphs, Adv. Neur. In., 30, 1024–1034, 2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib20"><label>20</label><mixed-citation>
       He, Z., Xu, X., Peng, P., Wang, L., and Tian, S.:
A deep learning-driven three-dimensional geological modeling method using sparse borehole sampling data, Measurement, 118461, <a href="https://doi.org/10.1016/j.measurement.2025.118461" target="_blank">https://doi.org/10.1016/j.measurement.2025.118461</a>, 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib21"><label>21</label><mixed-citation>
       Hillier, M., de Kemp, E., and Schetselaar, E.:
3D form line construction by structural field interpolation (SFI) of geologic strike and dip observations, J. Struct. Geol., 51, 167–179, <a href="https://doi.org/10.1016/j.jsg.2013.01.012" target="_blank">https://doi.org/10.1016/j.jsg.2013.01.012</a>, 2013.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib22"><label>22</label><mixed-citation>
       Hillier, M., Wellmann, F., Brodaric, B., de Kemp, E., and Schetselaar, E.:
Three-Dimensional Structural Geological Modeling Using Graph Neural Networks, Math. Geosci., 53, 1725–1749, <a href="https://doi.org/10.1007/s11004-021-09945-x" target="_blank">https://doi.org/10.1007/s11004-021-09945-x</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib23"><label>23</label><mixed-citation>
       Hillier, M., Wellmann, F., de Kemp, E. A., Brodaric, B., Schetselaar, E., and Bédard, K.:
GeoINR 1.0: an implicit neural network approach to three-dimensional geological modelling, Geosci. Model Dev., 16, 6987–7012, <a href="https://doi.org/10.5194/gmd-16-6987-2023" target="_blank">https://doi.org/10.5194/gmd-16-6987-2023</a>, 2023. 
    </mixed-citation></ref-html>
<ref-html id="bib1.bib24"><label>24</label><mixed-citation>
       Hu, Y., Wang, Z. Z., Guo, X., Kek, H. Y., Ku, T., Goh, S. H., Leung, C. F., Tan, E., and Zhang, Y.:
Three-dimensional reconstruction of subsurface stratigraphy using machine learning with neighborhood aggregation, Eng. Geol., 337, 107588, <a href="https://doi.org/10.1016/j.enggeo.2024.107588" target="_blank">https://doi.org/10.1016/j.enggeo.2024.107588</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib25"><label>25</label><mixed-citation>
       Jessell, M., Guo, J., Li, Y., Lindsay, M., Scalzo, R., Giraud, J., Pirot, G., Cripps, E., and Ogarko, V.:
Into the Noddyverse: a massive data store of 3D geological models for machine learning and inversion applications, Earth Syst. Sci. Data, 14, 381–392, <a href="https://doi.org/10.5194/essd-14-381-2022" target="_blank">https://doi.org/10.5194/essd-14-381-2022</a>, 2022. 
    </mixed-citation></ref-html>
<ref-html id="bib1.bib26"><label>26</label><mixed-citation>
       Khan, M. S., Kim, I. S., and Seo, J.:
A boundary and voxel-based 3D geological data management system leveraging BIM and GIS, Int. J. Appl. Earth Obs., 118, 103277, <a href="https://doi.org/10.1016/j.jag.2023.103277" target="_blank">https://doi.org/10.1016/j.jag.2023.103277</a>, 2023.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib27"><label>27</label><mixed-citation>
       Khan, U., Zhang, B., Du, J., and Jiang, Z.:
3D structural modeling integrated with seismic attribute and petrophysical evaluation for hydrocarbon prospecting at the Dhulian Oilfield, Pakistan, Front. Earth Sci., 15, 649–675, <a href="https://doi.org/10.1007/s11707-021-0881-1" target="_blank">https://doi.org/10.1007/s11707-021-0881-1</a>, 2021.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib28"><label>28</label><mixed-citation>
       Li, C., Li, F., Liu, C., Tang, Z., Fu, S., Lin, M., Lv, X., Liu, S., and Liu, Y.:
Deep learning-based geological map generation using geological routes, Remote Sens. Environ., 309, 114214, <a href="https://doi.org/10.2139/ssrn.4762404" target="_blank">https://doi.org/10.2139/ssrn.4762404</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib29"><label>29</label><mixed-citation>
       Liao, M., Wang, G., Wen, H., Li, Y., Xiang, X., Wang, R., Huang, J., Sun, F., and Li, B.:
A geology-informed graph neural network solution for addressing the data sparsity challenge in 3D geological modeling, Eng. Geol., 370, 108859, <a href="https://doi.org/10.1016/j.enggeo.2026.108859" target="_blank">https://doi.org/10.1016/j.enggeo.2026.108859</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib30"><label>30</label><mixed-citation>
       Lyu, B., Wang, Y., and Shi, C.:
Multi-scale generative adversarial networks (GAN) for generation of three-dimensional subsurface geological models from limited boreholes and prior geological knowledge, Comput. Geotech., 170, 106336, <a href="https://doi.org/10.1016/j.compgeo.2024.106336" target="_blank">https://doi.org/10.1016/j.compgeo.2024.106336</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib31"><label>31</label><mixed-citation>
       Reichstein, M., Camps-Valls, G., Stevens, B., Jung, M., Denzler, J., Carvalhais, N., and Prabhat, F.:
Deep learning and process understanding for data-driven Earth system science, Nature, 566, 195–204, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib32"><label>32</label><mixed-citation>
       Ren, A., Wu, L., Xu, J., Xing, Y., Qiu, Q., and Xie, Z.:
A deep learning method for 3D geological modeling using ET4DD with offset-attention mechanism, Comput. Geosci., 200, 105929, <a href="https://doi.org/10.1016/j.cageo.2025.105929" target="_blank">https://doi.org/10.1016/j.cageo.2025.105929</a>, 2025.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib33"><label>33</label><mixed-citation>
       Shah, S. Y. A., Du, J., Iqbal, S. M., Du, L., Khan, U., Zhang, B., and Tan, J.:
Integrated Three-Dimensional Structural and Petrophysical Modeling for Assessment of CO<sub>2</sub> Storage Potential in Gas Reservoir, Lithosphere, 2024, <a href="https://doi.org/10.2113/2024/lithosphere_2024_222" target="_blank">https://doi.org/10.2113/2024/lithosphere_2024_222</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib34"><label>34</label><mixed-citation>
       Song, J., Mao, X., Liu, Z., Yang, X., Sun, J., Deng, H., Chen, J., Yu, S., and Huang, J.:
Multiscale MoE-GCN for 3D Mineral Prospectivity Modeling Integrating Surface Geochemical Exploration Data: Application in the Xiadian Gold Deposit, China, Nat. Resour. Res., 1–26, <a href="https://doi.org/10.1007/s11053-026-10735-7" target="_blank">https://doi.org/10.1007/s11053-026-10735-7</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib35"><label>35</label><mixed-citation>
       Sprague, K. B. and De Kemp, E. A.:
Interpretive tools for 3-D structural geological modelling part II: Surface design from sparse spatial data, GeoInformatica, 9, 5–32, 2005.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib36"><label>36</label><mixed-citation>
       Veličković, P., Cucurull, G., Casanova, A., Romero, A., Lio, P., and Bengio, Y.:
Graph attention networks, arXiv [preprint], <a href="https://doi.org/10.48550/arXiv.1710.10903" target="_blank">https://doi.org/10.48550/arXiv.1710.10903</a>, 2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib37"><label>37</label><mixed-citation>
       Wang, G., Zhu, Y., Zhang, S., Yan, C., Song, Y., Ma, Z., Hong, D., and Chen, T.:
3D geological modeling based on gravitational and magnetic data inversion in the Luanchuan ore region, Henan Province, China, J. Appl. Geophys., 80, 1–11, <a href="https://doi.org/10.1016/j.jappgeo.2012.01.006" target="_blank">https://doi.org/10.1016/j.jappgeo.2012.01.006</a>, 2012.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib38"><label>38</label><mixed-citation>
       Wang, L., Yin, Y., Zhang, C., Feng, W., Li, G., Chen, Q., and Chen, M.:
A MPS-based novel method of reconstructing 3D reservoir models from 2D images using seismic constraints, J. Petrol. Sci. Eng., 209, <a href="https://doi.org/10.1016/j.petrol.2021.109974" target="_blank">https://doi.org/10.1016/j.petrol.2021.109974</a>, 2022.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib39"><label>39</label><mixed-citation>
       Wang, L., Jiang, Z., Song, L., Yu, X., Yuan, S., and Zhang, B.:
A groundwater level spatiotemporal prediction model based on graph convolutional networks with a long short-term memory, J. Hydroinform., 26, 2962–2979, <a href="https://doi.org/10.2166/hydro.2024.226" target="_blank">https://doi.org/10.2166/hydro.2024.226</a>, 2024.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib40"><label>40</label><mixed-citation>
       Wang, L. F., Wu, X. B., Zhang, B. Y., Li, X. F., Huang, A. S., Meng, F., and Dai, P. Y.:
Recognition of Significant Surface Soil Geochemical Anomalies Via Weighted 3D Shortest-Distance Field of Subsurface Orebodies: A Case Study in the Hongtoushan Copper Mine, NE China, Nat. Resour. Res., 28, 587–607, <a href="https://doi.org/10.1007/s11053-018-9410-7" target="_blank">https://doi.org/10.1007/s11053-018-9410-7</a>, 2019.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib41"><label>41</label><mixed-citation>
       Wellmann, J. F., de la Varga, M., Murdie, R. E., Gessner, K., and Jessell, M.:
Uncertainty estimation for a geological model of the Sandstone greenstone belt, Western Australia – insights from integrated geological and geophysical inversion in a Bayesian inference framework, in: Characterization of Ore-Forming Systems from Geological, Geochemical and Geophysical Studies, edited by: Gessner, K., Blenkinsop, T. G., and Sorjonen-Ward, P., Geological Society of London, London, 453–464, <a href="https://doi.org/10.6084/m9.figshare.c.3899719.v1" target="_blank">https://doi.org/10.6084/m9.figshare.c.3899719.v1</a>, 2017.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib42"><label>42</label><mixed-citation>
       Wu, Q., Xie, Z., Zhao, Y., Tian, M., Zhang, X., and Qiu, Q.:
Multi-type and multi-scale geological three-dimensional modeling using entity-relationship networks, Adv. Eng. Inform., 72, 104436, <a href="https://doi.org/10.1016/j.aei.2026.104436" target="_blank">https://doi.org/10.1016/j.aei.2026.104436</a>, 2026.


    </mixed-citation></ref-html>
<ref-html id="bib1.bib43"><label>43</label><mixed-citation>
       Yin, L., Guo, Y., Wang, L., Yuan, S., Fang, Z., and Zhang, B.:
A Dual-Transformer Network for Spatiotemporal Modeling of Carbon Dioxide Column Concentration (XCO<sub>2</sub>) on the Basis of Dynamic Heterogeneous Graphs, T. GIS, 30, e70275, <a href="https://doi.org/10.1111/tgis.70275" target="_blank">https://doi.org/10.1111/tgis.70275</a>, 2026.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib44"><label>44</label><mixed-citation>
       Zhang, B., Du, L., Khan, U., Tong, Y., Wang, L., and Deng, H.:
AdaHRBF v1.0: gradient-adaptive Hermite–Birkhoff radial basis function interpolants for three-dimensional stratigraphic implicit modeling, Geosci. Model Dev., 16, 3651–3674, <a href="https://doi.org/10.5194/gmd-16-3651-2023" target="_blank">https://doi.org/10.5194/gmd-16-3651-2023</a>, 2023a. 
    </mixed-citation></ref-html>
<ref-html id="bib1.bib45"><label>45</label><mixed-citation>
       Zhang, B., Li, M., Huan, Y., Khan, U., Wang, L., and Wang, F.:
Bedrock mapping based on terrain weighted directed graph convolutional network using stream sediment geochemical samplings, T. Nonferr. Metal. Soc., 33, 2799–2814, <a href="https://doi.org/10.1016/S1003-6326(23)66299-5" target="_blank">https://doi.org/10.1016/S1003-6326(23)66299-5</a>, 2023b.

    </mixed-citation></ref-html>
<ref-html id="bib1.bib46"><label>46</label><mixed-citation>
       Zhang, B., Xu, Z., Wei, X., Song, L., Shah, S. Y. A., Khan, U., Du, L., and Li, X.:
Deep Subsurface Pseudo-Lithostratigraphic Modeling Based on Three-Dimensional Convolutional Neural Network (3D CNN) Using Inversed Geophysical Properties and Shallow Subsurface Geological Model, Lithosphere, 2024, <a href="https://doi.org/10.2113/2024/lithosphere_2023_273" target="_blank">https://doi.org/10.2113/2024/lithosphere_2023_273</a>, 2024.

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