<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing with OASIS Tables v3.0 20080202//EN" "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" dtd-version="3.0">
  <front>
    <journal-meta>
<journal-id journal-id-type="publisher">TC</journal-id>
<journal-title-group>
<journal-title>The Cryosphere</journal-title>
<abbrev-journal-title abbrev-type="publisher">TC</abbrev-journal-title>
<abbrev-journal-title abbrev-type="nlm-ta">The Cryosphere</abbrev-journal-title>
</journal-title-group>
<issn pub-type="epub">1994-0424</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/tc-10-1477-2016</article-id><title-group><article-title>Inversion of geothermal heat flux in a thermomechanically <?xmltex \hack{\newline}?> coupled nonlinear Stokes ice sheet model</article-title>
      </title-group><?xmltex \runningtitle{Inversion of geothermal heat flux in a thermomechanically coupled Stokes ice sheet model}?><?xmltex \runningauthor{H.~Zhu et al.}?>
      <contrib-group>
        <contrib contrib-type="author" corresp="yes" rid="aff1">
          <name><surname>Zhu</surname><given-names>Hongyu</given-names></name>
          <email>zhuhongyu@ices.utexas.edu</email>
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff2">
          <name><surname>Petra</surname><given-names>Noemi</given-names></name>
          
        <ext-link>https://orcid.org/0000-0002-9491-0034</ext-link></contrib>
        <contrib contrib-type="author" corresp="no" rid="aff3">
          <name><surname>Stadler</surname><given-names>Georg</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff4">
          <name><surname>Isaac</surname><given-names>Tobin</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1 aff5">
          <name><surname>Hughes</surname><given-names>Thomas J. R.</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff1 aff6 aff7">
          <name><surname>Ghattas</surname><given-names>Omar</given-names></name>
          
        </contrib>
        <aff id="aff1"><label>1</label><institution>Institute for Computational Engineering and Sciences, The University of Texas at Austin, Austin, TX 78712, USA</institution>
        </aff>
        <aff id="aff2"><label>2</label><institution>Applied Mathematics, School of Natural Sciences, University of California, Merced, CA 95343, USA</institution>
        </aff>
        <aff id="aff3"><label>3</label><institution>Courant Institute of Mathematical Sciences, New York University, New York, NY 10012, USA</institution>
        </aff>
        <aff id="aff4"><label>4</label><institution>Computation Institute, University of Chicago, Chicago, IL 60637, USA</institution>
        </aff>
        <aff id="aff5"><label>5</label><institution>Department of Aerospace Engineering and Engineering Mechanics, The University of Texas at Austin, <?xmltex \hack{\newline}?> Austin, TX 78712, USA</institution>
        </aff>
        <aff id="aff6"><label>6</label><institution>Jackson School of Geosciences, The University of Texas at Austin, Austin, TX 78712, USA</institution>
        </aff>
        <aff id="aff7"><label>7</label><institution>Department of Mechanical Engineering, The University of Texas at Austin, Austin, TX 78712, USA</institution>
        </aff>
      </contrib-group>
      <author-notes><corresp id="corr1">Hongyu Zhu (zhuhongyu@ices.utexas.edu)</corresp></author-notes><pub-date><day>13</day><month>July</month><year>2016</year></pub-date>
      
      <volume>10</volume>
      <issue>4</issue>
      <fpage>1477</fpage><lpage>1494</lpage>
      <history>
        <date date-type="received"><day>14</day><month>December</month><year>2015</year></date>
           <date date-type="rev-request"><day>18</day><month>January</month><year>2016</year></date>
           <date date-type="rev-recd"><day>27</day><month>May</month><year>2016</year></date>
           <date date-type="accepted"><day>15</day><month>June</month><year>2016</year></date>
      </history>
      <permissions>
<license license-type="open-access">
<license-p>This work is licensed under a Creative Commons Attribution 3.0 Unported License. To view a copy of this license, visit <ext-link ext-link-type="uri" xlink:href="http://creativecommons.org/licenses/by/3.0/">http://creativecommons.org/licenses/by/3.0/</ext-link></license-p>
</license>
</permissions><self-uri xlink:href="https://tc.copernicus.org/articles/.html">This article is available from https://tc.copernicus.org/articles/.html</self-uri>
<self-uri xlink:href="https://tc.copernicus.org/articles/.pdf">The full text article is available as a PDF file from https://tc.copernicus.org/articles/.pdf</self-uri>


      <abstract>
    <p>We address the inverse problem of inferring the basal geothermal heat flux
from surface velocity observations using a steady-state thermomechanically
coupled nonlinear Stokes ice flow model. This is a challenging inverse
problem since the map from basal heat flux to surface velocity observables is
indirect: the heat flux is a boundary condition for the thermal
advection–diffusion equation, which couples to the nonlinear Stokes ice flow
equations; together they determine the surface ice flow velocity. This
multiphysics inverse problem is formulated as a nonlinear least-squares
optimization problem with a cost functional that includes the data misfit
between surface velocity observations and model predictions. A Tikhonov
regularization term is added to render the problem well posed. We derive
adjoint-based gradient and Hessian expressions for the resulting
partial differential equation (PDE)-constrained optimization problem and propose an inexact Newton method for
its solution. As a consequence of the Petrov–Galerkin discretization of the
energy equation, we show that discretization and differentiation do not
commute; that is, the order in which we discretize the cost functional and
differentiate it affects the correctness of the gradient. Using two- and
three-dimensional model problems, we study the prospects for and limitations
of the inference of the geothermal heat flux field from surface velocity
observations. The results show that the reconstruction improves as the noise
level in the observations decreases and that short-wavelength variations in
the geothermal heat flux are difficult to recover. We analyze the
ill-posedness of the inverse problem as a function of the number of
observations by examining the spectrum of the Hessian of the cost functional.
Motivated by the popularity of operator-split or staggered solvers for
forward multiphysics problems – i.e., those that drop two-way coupling terms
to yield a one-way coupled forward Jacobian – we study the effect on the
inversion of a one-way coupling of the adjoint energy and Stokes equations.
We show that taking such a one-way coupled approach for the adjoint equations
can lead to an incorrect gradient and premature termination of optimization
iterations. This is due to loss of a descent direction stemming from
inconsistency of the gradient with the contours of the cost functional.
Nevertheless, one may still obtain a reasonable approximate inverse solution
particularly if important features of the reconstructed solution emerge early
in optimization iterations, before the premature termination.</p>
  </abstract>
    </article-meta>
  </front>
<body>
      

<sec id="Ch1.S1" sec-type="intro">
  <title>Introduction</title>
      <p>We consider the following inverse problem: to infer the
unknown basal geothermal heat flux field given surface velocity
observations and a non-Newtonian full Stokes ice sheet flow model governed by
thermomechanically coupled mass, momentum, and energy equations. Grid-based discretization of the
basal heat flux field leads to a high-dimensional inverse problem. The main
aim of this paper is to present an efficient method for solving this
large-scale coupled-physics inverse problem and to use model problems to
study the prospects for, and limitations of, inferring the geothermal heat
flux from surface ice velocities.</p>
      <p>Ice sheet models are characterized by unknown or uncertain parameters
stemming from the lack of direct observations of the interior and the base of
the ice sheet. Unknown parameters include those that represent basal
friction, basal topography, rheology, geothermal heat flux, and ice
thickness. The geothermal heat flux parameter field, in particular, has a
strong influence on the thermal state of the ice and hence plays a critical
role in understanding the dynamics of the ice sheet through its effect on
basal and internal ice temperatures <xref ref-type="bibr" rid="bib1.bibx9 bib1.bibx24 bib1.bibx29 bib1.bibx10" id="paren.1"/>.
The direct measurement of the geothermal heat
flux is only locally available <xref ref-type="bibr" rid="bib1.bibx10" id="paren.2"/>. Estimates
of this parameter field have been obtained via inference using global seismic
tomographic models <xref ref-type="bibr" rid="bib1.bibx33" id="paren.3"/>, satellite magnetic data
models <xref ref-type="bibr" rid="bib1.bibx24" id="paren.4"/>, or tectonic
models <xref ref-type="bibr" rid="bib1.bibx30" id="paren.5"/>. However, these inferred basal heat
flux fields do not agree with one another in large regions. While sensitivity
studies show that the resulting uncertainties in the geothermal heat flux
have an impact on the ice flow, especially in the slow flow
regions <xref ref-type="bibr" rid="bib1.bibx31 bib1.bibx23" id="paren.6"/>, inversion for the geothermal heat flux from
surface velocity observations has not been addressed previously to
the best of our knowledge.</p>
      <p>When formulating the thermomechanically coupled inverse problem, we must
assume an appropriate thermal regime, which depends critically on the
geothermal heat flux. Ice sheets and glaciers can be in one of the following
four thermal states: (1) all of the ice is below the melting point; (2) the
melting point is reached only at the bed; (3) a basal layer of finite
thickness is at melting point; or (4) all of the ice is at the melting point
except for a surface layer <xref ref-type="bibr" rid="bib1.bibx26" id="paren.7"><named-content content-type="post">p. 205</named-content></xref>. While in the first
case the thermal basal boundary condition is simply characterized by the
geothermal heat flux, in the other three cases this condition must be
modified to include the heat generated by friction at the base and to account
for melting. Due to the unknown basal state of the ice, these latter three
cases lead to more complex inverse problems. These inverse problems typically
involve variational inequalities in the forward problem since the thermal
regime depends on the geothermal heat flux. Here, we assume that all of the
ice is below the melting point. In the model problems studied in this paper
we ensure this by providing a moderate (about the average of the geothermal
heat flux at the base of Antarctica) geothermal heat flux. In addition, we
assume the ice flow is in a steady state. These assumptions result in a
tractable inverse problem that allows us to study the sensitivity of the ice
flow velocity with respect to the geothermal heat flux and thus the
characteristics of the inverse problem.</p>
      <p>The inverse problem is formulated as a regularized nonlinear least-squares
minimization problem governed by thermomechanically coupled nonlinear Stokes
and thermal advection–diffusion equations. The cost functional we minimize
represents the sum of the squared differences between observed and predicted
surface velocities and a regularization term that renders this ill-posed
inverse problem well posed. Discretizing the infinite-dimensional geothermal
heat flux field and the governing partial differential equations (PDEs) leads to a large-scale numerical
optimization problem; as such, derivative-based optimization methods offer
the best hope for its efficient solution <xref ref-type="bibr" rid="bib1.bibx14 bib1.bibx15 bib1.bibx2 bib1.bibx6" id="paren.8"/>.
In <xref ref-type="bibr" rid="bib1.bibx27" id="text.9"/>, we presented an infinite-dimensional
adjoint-based inexact Gauss–Newton method for the inference of basal friction
and rheology parameters from surface velocity observations and a nonlinear
Stokes model of ice sheet flow. Here, we extend our previous work to the
present inverse problem of inferring the geothermal heat flux in a
thermomechanically coupled ice flow model. This problem also serves as a
prototype for a broader class of multiphysics inverse problems.</p>
      <p>We systematically study how well finite-amplitude variations of the
geothermal heat flux can be recovered from noisy surface velocity
observations. To be precise, we invert for geothermal heat flux fields that
contain large and short-wavelength variations using velocity observations
with various degrees of error. Our results show that the quality of the
reconstructed geothermal heat flux deteriorates with shorter-wavelength
variations and with increasing noise level in the observations. In addition,
we study the influence of the number of observations and find that the
reconstruction improves as the number of observation points increases,
provided the discretization of the model equations is sufficiently fine to
capture the additional information from a larger number of observations. To
analyze prospects and limitations of the inversion, we also investigate the
spectrum of the Hessian of the data misfit part of the cost functional, which
provides information about directions in parameter space that can be
recovered from observations.</p>
      <p>A common approach to the numerical solution of multiphysics problems uses
operator splitting; namely, motivated by the difficulty of either solving a
two-way coupled system or computing the Jacobian
of a coupling term, one discards certain coupling terms in the Jacobian of
the forward problem to reduce the two-way coupled problem to one that is
coupled in one direction. The coupled problem is then solved by iterating
back and forth between the solution of single physics components. This
approach, which we term “one-way coupled”, can often yield convergence to
the solution of the fully coupled multiphysics problem, depending on the
spectral radius of a certain iteration matrix. The one-way coupled approach
has been used successfully for the solution of thermomechanically coupled ice
sheet forward problems in <xref ref-type="bibr" rid="bib1.bibx5" id="text.10"/>, <xref ref-type="bibr" rid="bib1.bibx18" id="text.11"/>, <xref ref-type="bibr" rid="bib1.bibx32" id="text.12"/>,
<xref ref-type="bibr" rid="bib1.bibx39" id="text.13"/>, and <xref ref-type="bibr" rid="bib1.bibx38" id="text.14"/>.</p>
      <p>However, when solving the corresponding multiphysics inverse problem using
gradient-based methods, the use of such a one-way coupled approach may be
problematic. In particular, sacrificing coupling terms in the Jacobian (while
often acceptable for the forward problem) will lead to an incorrect adjoint
operator, since this operator is given by the transpose of the Jacobian. This
approximate adjoint operator leads to an incorrect adjoint solution, which
then leads to an incorrect gradient. Since the necessary optimality condition
for the inverse problem states that the gradient must vanish, an incorrect
gradient leads to the wrong solution of the inverse problem. Moreover, since
line search methods require descent on the cost functional in a direction
based on the gradient, the inconsistency between the cost functional and its
gradient can lead to failure of the line search and thus lack of convergence.
Thus, sacrificing coupling terms as is commonly done for the forward problem
may not lead to convergent inverse iterations, and if the inverse iterations
do converge, they will converge to the wrong inverse solution.</p>
      <p>In general, how much of a difference this will make to the solution of the
inverse problem will depend on the strength of the coupling terms that have
been neglected in the adjoint problem. In particular, despite a gradient that
has been computed from an incorrect adjoint equation, and early termination
of optimization iterations, one might still obtain a reasonable approximation
of the correct inverse solution. To illustrate these issues in the context of
a thermomechanically coupled ice sheet inverse problem, we neglect certain
coupling terms in the Jacobian (as might be done in a forward solver),
leading to an incorrect adjoint operator. We then compare inversion results
obtained using an approximate gradient based on a one-way coupled adjoint
operator –  which we refer to as a “one-way coupled gradient” – with
inversions that use the correct gradient (i.e., based on the fully coupled
adjoint). The results indicate  that using this one-way coupled gradient
instead of the correct gradient leads to a deterioration in the convergence
rate of the inverse solver and eventual failure of the line search, but
the resulting inverse solution for the geothermal flux does not differ
substantially from the correct inverse solution.</p>
      <p>The remaining sections of this paper are organized as follows. In
Sect. <xref ref-type="sec" rid="Ch1.S2"/>, we describe the forward ice sheet problem and
the corresponding inverse problem for the geothermal heat flux. In
Sect. <xref ref-type="sec" rid="Ch1.S3"/>, we give expressions for the adjoint-based
gradient and action of the Hessian of the cost functional. Then, in
Sect. <xref ref-type="sec" rid="Ch1.S4"/> we present the discretization of the forward
problem, which involves a stabilization technique applied to prevent
oscillatory solutions when the heat equation is advection-dominated, and
discuss the optimize-then-discretize (OTD) and discretize-then-optimize (DTO) approaches
for computing the gradient of the cost functional. In
Sect. <xref ref-type="sec" rid="Ch1.S5"/>, we present inversion results for two- and
three-dimensional model problems and in Sect. <xref ref-type="sec" rid="Ch1.S6"/> we discuss
the fully coupled versus one-way coupled approaches to computing the gradient
for thermomechanically coupled ice sheet inverse problem.</p>
</sec>
<sec id="Ch1.S2">
  <title>Formulation of the inverse problem</title>
      <p>We first state the forward problem and then formulate the inverse problem to infer
the geothermal heat flux from surface velocity observations.</p>
<sec id="Ch1.S2.SS1">
  <title>The forward problem</title>
      <p>Ice can be modeled as viscous, incompressible, non-Newtonian, heat-conducting
fluids. Assuming the mass of ice occupying a domain <inline-formula><mml:math display="inline"><mml:mi mathvariant="normal">Ω</mml:mi></mml:math></inline-formula> is in steady
state, the balance of mass, linear momentum, and energy states that <xref ref-type="bibr" rid="bib1.bibx17" id="paren.15"/>

                <disp-formula specific-use="align" content-type="numbered"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E1"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E2"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi mathvariant="bold-italic">g</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E3"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

            where <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">u</mml:mi></mml:math></inline-formula> is the velocity field, <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">θ</mml:mi></mml:math></inline-formula> the temperature field,
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> the stress tensor, <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">ρ</mml:mi></mml:math></inline-formula> the density, <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">g</mml:mi></mml:math></inline-formula> the
acceleration of gravity, <inline-formula><mml:math display="inline"><mml:mi>c</mml:mi></mml:math></inline-formula> the specific heat capacity, and <inline-formula><mml:math display="inline"><mml:mi>K</mml:mi></mml:math></inline-formula> the
thermal conductivity. The stress, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, can be
decomposed as <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">τ</mml:mi><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="bold-italic">I</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mi>p</mml:mi></mml:mrow></mml:math></inline-formula>,
where <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">τ</mml:mi><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the deviatoric stress tensor, <inline-formula><mml:math display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> the
pressure, and <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">I</mml:mi></mml:math></inline-formula> the second-order unit tensor. A commonly employed
isotropic constitutive law is Glen's flow law <xref ref-type="bibr" rid="bib1.bibx12" id="paren.16"/>:

                <disp-formula id="Ch1.E4" content-type="numbered"><mml:math display="block"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">τ</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>with</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mo>:=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:mi>A</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:msup><mml:mo>)</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mfrac><mml:mn mathvariant="normal">1</mml:mn><mml:mi>n</mml:mi></mml:mfrac></mml:mrow></mml:msup><mml:msubsup><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext><mml:mfrac><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>n</mml:mi></mml:mrow></mml:mfrac></mml:msubsup><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          where <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the effective viscosity, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> :<inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mstyle displaystyle="false"><mml:mfrac style="text"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle></mml:math></inline-formula> (<inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="normal">∇</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mi mathvariant="bold-italic">u</mml:mi></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>+</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="normal">∇</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>T</mml:mi></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> the strain rate
tensor,
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> :<inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mstyle displaystyle="false"><mml:mfrac style="text"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> : <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> the second
invariant of the strain rate tensor (where “:” denotes the scalar product
between second-order tensors), and <inline-formula><mml:math display="inline"><mml:mi>n</mml:mi></mml:math></inline-formula> Glen's flow law exponent. Here,
<inline-formula><mml:math display="inline"><mml:mi>A</mml:mi></mml:math></inline-formula> depends on the ice temperature according to the Arrhenius relation
<inline-formula><mml:math display="inline"><mml:mrow><mml:mi>A</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>A</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mi>exp⁡</mml:mi><mml:mo>(</mml:mo><mml:mo>-</mml:mo><mml:mstyle displaystyle="false"><mml:mfrac style="text"><mml:mi>Q</mml:mi><mml:mrow><mml:mi>R</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, where <inline-formula><mml:math display="inline"><mml:mi>Q</mml:mi></mml:math></inline-formula> is the
activation energy, <inline-formula><mml:math display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula> is Boltzmann's constant, and <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>A</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> is a pre-exponential
constant <xref ref-type="bibr" rid="bib1.bibx26" id="paren.17"/>. The appropriate value of Glen's flow law
exponent <inline-formula><mml:math display="inline"><mml:mi>n</mml:mi></mml:math></inline-formula> has been a matter of debate; one could invert for it as a
spatial field from surface velocities <xref ref-type="bibr" rid="bib1.bibx27" id="paren.18"/>. However,
here we use the constant value <inline-formula><mml:math display="inline"><mml:mi>n</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 3, which is typically used in
glaciology <xref ref-type="bibr" rid="bib1.bibx26 bib1.bibx36" id="paren.19"/>. To avoid singularities in Glen's flow
law, we add a small positive number <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">ϵ</mml:mi></mml:math></inline-formula> to <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>
in Eq. (<xref ref-type="disp-formula" rid="Ch1.E4"/>), such that the modified viscosity

                <disp-formula id="Ch1.E5" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mo>:=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:mi>A</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:msup><mml:mo>)</mml:mo><mml:mrow><mml:mo>-</mml:mo><mml:mfrac><mml:mn mathvariant="normal">1</mml:mn><mml:mi>n</mml:mi></mml:mfrac></mml:mrow></mml:msup><mml:msup><mml:mfenced open="(" close=")"><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">ϵ</mml:mi></mml:mfenced><mml:mfrac><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>n</mml:mi></mml:mrow></mml:mfrac></mml:msup></mml:mrow></mml:math></disp-formula>

          is bounded from below <xref ref-type="bibr" rid="bib1.bibx17 bib1.bibx20" id="paren.20"/>.</p>
      <p>The energy equation (Eq. <xref ref-type="disp-formula" rid="Ch1.E3"/>) is an advection–diffusion equation for
the temperature field with a strain heating term on the right-hand side. Note
that the Stokes system (Eqs. <xref ref-type="disp-formula" rid="Ch1.E1"/> and <xref ref-type="disp-formula" rid="Ch1.E2"/>) and the energy
equation (Eq. <xref ref-type="disp-formula" rid="Ch1.E3"/>) are two-way coupled: the velocity governed by the
Stokes equations is the advection velocity in the energy equation and it
additionally enters through the strain heating term on the right side
of Eq. (<xref ref-type="disp-formula" rid="Ch1.E3"/>). In the opposite direction, the temperature enters in
the Stokes equations through the viscosity term given in Eq. (<xref ref-type="disp-formula" rid="Ch1.E4"/>)
and thus affects the flow field.</p>
      <p>The domain <inline-formula><mml:math display="inline"><mml:mi mathvariant="normal">Ω</mml:mi></mml:math></inline-formula> is taken as a two- or three-dimensional ice slab with the
following boundary conditions. On the top surface, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>, we impose
a traction-free boundary condition for the momentum equation and an imposed
temperature for the energy equation. At the base of the ice sheet,
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>, we assume that the ice is below the pressure melting point
and frozen to the bedrock. Hence, the boundary conditions are no-slip
conditions for the momentum equation and thermal flux conditions for the
energy equation representing the flux of geothermal heat into the ice from
below <xref ref-type="bibr" rid="bib1.bibx13" id="paren.21"/>. Additional conditions for the lateral
boundaries for the model problems used in our study are specified in Sect. <xref ref-type="sec" rid="Ch1.S5"/>.</p>
      <p>In summary, the <italic>forward problem</italic> is given by

                <disp-formula specific-use="align" content-type="numbered"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E6"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>in</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E7"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi mathvariant="bold-italic">g</mml:mi><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>in</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E8"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>in</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E9"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="bold">0</mml:mn><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mtext>s</mml:mtext></mml:msub><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>on</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E10"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="bold">0</mml:mn><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mi>G</mml:mi><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>on</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:mtext>additional</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>lateral</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>boundary conditions (BCs)</mml:mtext><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

            where <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">n</mml:mi></mml:math></inline-formula> is the outward unit normal vector on <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> or <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>,
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mtext>s</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is the prescribed temperature at the top surface,
<inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> is the geothermal heat flux, and the expressions for the
stress <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> have been given previously (see
Table <xref ref-type="table" rid="Ch1.T1"/> for the primary variables used in this paper).</p>

<?xmltex \floatpos{t}?><table-wrap id="Ch1.T1"><caption><p>Primary variables in the forward and adjoint problems.</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">Symbol</oasis:entry>  
         <oasis:entry colname="col2">Variable</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">u</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">velocity</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">pressure</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">θ</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">absolute temperature</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">stress tensor</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">η</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">effective viscosity</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">strain rate tensor</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">the second invariant of the strain rate tensor</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">n</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">the outward unit normal vector</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mtext>s</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">surface temperature</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">geothermal heat flux</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">cost functional</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="script">B</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">observation operator</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="script">R</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">regularization</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">T</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">tangential operator</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">γ</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">regularization parameter</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="script">G</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">gradient</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="script">H</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">Hessian</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">v</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">adjoint velocity</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi>q</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">adjoint pressure</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">λ</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">adjoint temperature</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="script">B</mml:mi><mml:mo>*</mml:mo></mml:msup></mml:mrow></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">adjoint observation operator</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math 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></oasis:entry>  
         <oasis:entry colname="col2">adjoint stress tensor</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">adjoint strain rate tensor</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p>Next, we present a weak form of the forward
problem (Eqs. <xref ref-type="disp-formula" rid="Ch1.E6"/>–<xref ref-type="disp-formula" rid="Ch1.E10"/>), which serves as the basis
for the finite element discretization of these equations <xref ref-type="bibr" rid="bib1.bibx16" id="paren.22"/>
and is also used in the Lagrangian functional in
Sect. <xref ref-type="sec" rid="Ch1.S3"/>. This weak form is found by multiplying the
Stokes system (Eqs. <xref ref-type="disp-formula" rid="Ch1.E1"/> and <xref ref-type="disp-formula" rid="Ch1.E2"/>) and the energy
equation (Eq. <xref ref-type="disp-formula" rid="Ch1.E3"/>) by test functions, integrating over <inline-formula><mml:math display="inline"><mml:mi mathvariant="normal">Ω</mml:mi></mml:math></inline-formula>,
integrating by parts where appropriate and adding up the three weak
equations. The weak form of the forward
problem (Eqs. <xref ref-type="disp-formula" rid="Ch1.E6"/>–<xref ref-type="disp-formula" rid="Ch1.E10"/>) is thus: find <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula>,
<inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>∈</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">U</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">P</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">T</mml:mi></mml:math></inline-formula> such that

                <disp-formula id="Ch1.E11" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mi>a</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi>p</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>;</mml:mo><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mi>q</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mo>〈</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi mathvariant="bold-italic">g</mml:mi><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:msub><mml:mo>〉</mml:mo><mml:mi mathvariant="normal">Ω</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:mo>〈</mml:mo><mml:mi>G</mml:mi><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:msub><mml:mo>〉</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          for all test functions (<inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi>q</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover></mml:math></inline-formula>) <inline-formula><mml:math display="inline"><mml:mo>∈</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">U</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">P</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">T</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>, where
<?xmltex \hack{\newpage}?><?xmltex \hack{\vspace*{-8mm}}?>

                <disp-formula specific-use="align"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mtr><mml:mtd><mml:mrow><mml:mi>a</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi>p</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>;</mml:mo><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mi>q</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mo>)</mml:mo></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:munder><mml:mo movablelimits="false">∫</mml:mo><mml:mi mathvariant="normal">Ω</mml:mi></mml:munder><mml:mo>(</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mover accent="true"><mml:mi>v</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover></mml:msub><mml:mo>-</mml:mo><mml:mi>p</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>q</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>)</mml:mo><mml:mtext>d</mml:mtext><mml:mi mathvariant="bold-italic">x</mml:mi></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:munder><mml:mo movablelimits="false">∫</mml:mo><mml:mi mathvariant="normal">Ω</mml:mi></mml:munder><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>+</mml:mo><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mo>)</mml:mo><mml:mtext>d</mml:mtext><mml:mi mathvariant="bold-italic">x</mml:mi></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:munder><mml:mo movablelimits="false">∫</mml:mo><mml:mi mathvariant="normal">Ω</mml:mi></mml:munder><mml:mfenced close=")" open="("><mml:mn mathvariant="normal">2</mml:mn><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mfenced><mml:mtext>d</mml:mtext><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

            and

                <disp-formula id="Ch1.Ex5"><mml:math display="block"><mml:mrow><mml:mo>〈</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi mathvariant="bold-italic">g</mml:mi><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:msub><mml:mo>〉</mml:mo><mml:mi mathvariant="normal">Ω</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:munder><mml:mo movablelimits="false">∫</mml:mo><mml:mi mathvariant="normal">Ω</mml:mi></mml:munder><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi mathvariant="bold-italic">g</mml:mi><mml:mo>⋅</mml:mo><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mtext>d</mml:mtext><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>and</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mo>〈</mml:mo><mml:mi>G</mml:mi><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:msub><mml:mo>〉</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:munder><mml:mo movablelimits="false">∫</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:munder><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>G</mml:mi><mml:mtext>d</mml:mtext><mml:mi mathvariant="bold-italic">s</mml:mi><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

          Here, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mover accent="true"><mml:mi>v</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover></mml:msub></mml:mrow></mml:math></inline-formula> is the strain rate tensor based on
<inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover></mml:math></inline-formula>. The spaces in the above equations are defined as

                <disp-formula specific-use="align" content-type="numbered"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="script">U</mml:mi><mml:mo>=</mml:mo><mml:mfenced open="{" close="}"><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>:</mml:mo><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>→</mml:mo><mml:msup><mml:mi mathvariant="double-struck">R</mml:mi><mml:mi>d</mml:mi></mml:msup><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo mathsize="1.1em">|</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi mathvariant="bold-italic">u</mml:mi><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="bold">0</mml:mn></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="script">P</mml:mi><mml:mo>=</mml:mo><mml:mo mathvariant="italic">{</mml:mo><mml:mi>p</mml:mi><mml:mo>:</mml:mo><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>→</mml:mo><mml:mi mathvariant="double-struck">R</mml:mi><mml:mo mathvariant="italic">}</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="script">T</mml:mi><mml:mo>=</mml:mo><mml:mfenced close="}" open="{"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>:</mml:mo><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>→</mml:mo><mml:mi mathvariant="double-struck">R</mml:mi><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mo mathsize="1.1em">|</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi mathvariant="italic">θ</mml:mi><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mtext>s</mml:mtext></mml:msub></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mi mathvariant="script">T</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mfenced open="{" close="}"><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mo>:</mml:mo><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>→</mml:mo><mml:mi mathvariant="double-struck">R</mml:mi><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mo mathsize="1.1em">|</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mlabeledtr id="Ch1.E12"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="script">Q</mml:mi><mml:mo>=</mml:mo><mml:mfenced open="{" close="}"><mml:mi>G</mml:mi><mml:mo>:</mml:mo><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub><mml:mo>→</mml:mo><mml:mi mathvariant="double-struck">R</mml:mi></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

            where all functions are assumed to be sufficiently regular for the weak
form Eq. (<xref ref-type="disp-formula" rid="Ch1.E11"/>) to be well defined. In the next section, we formulate an
inverse problem to infer the unknown geothermal heat flux <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> present in the
basal boundary conditions from surface velocity observations.</p>
</sec>
<sec id="Ch1.S2.SS2">
  <title>The inverse problem</title>
      <p>The geothermal heat flux field <inline-formula><mml:math display="inline"><mml:mrow><mml:mi>G</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is, in general, not directly
observable and thus uncertain. For instance, the current estimates for
<inline-formula><mml:math display="inline"><mml:mrow><mml:mi>G</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> in Antarctica differ significantly <xref ref-type="bibr" rid="bib1.bibx33 bib1.bibx24" id="paren.23"/>.
Therefore, our goal is to infer this field from
available surface ice velocity observations by exploiting the temperature
dependence of the flow, which enters through the dependence of the viscosity
on the ice temperature. The inverse problem is formulated as follows: given
(possibly noisy) pointwise observations of the ice surface velocity,
<inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mtext>obs</mml:mtext></mml:msup></mml:mrow></mml:math></inline-formula>, we wish to infer the geothermal heat flux
field <inline-formula><mml:math display="inline"><mml:mrow><mml:mi>G</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> at the base of the ice sheet that best reproduces the
observed velocity via the coupled thermomechanics ice flow
model Eqs. (<xref ref-type="disp-formula" rid="Ch1.E6"/>)–(<xref ref-type="disp-formula" rid="Ch1.E10"/>). This can be formulated as
the following nonlinear least-squares optimization problem:

                <disp-formula id="Ch1.E13" content-type="numbered"><mml:math display="block"><mml:mrow><mml:msub><mml:mtext>min</mml:mtext><mml:mrow><mml:mi>G</mml:mi><mml:mo>∈</mml:mo><mml:mi mathvariant="script">Q</mml:mi></mml:mrow></mml:msub><mml:mi mathvariant="script">J</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>:=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:mo>|</mml:mo><mml:mi mathvariant="script">B</mml:mi><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>-</mml:mo><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mtext>obs</mml:mtext></mml:msup><mml:msup><mml:mo>|</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>+</mml:mo><mml:mi mathvariant="script">R</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          where the dependence of the velocity <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">u</mml:mi></mml:math></inline-formula> on the geothermal heat flux <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>
is given by the solution of the coupled thermomechanics ice flow
model Eqs. (<xref ref-type="disp-formula" rid="Ch1.E6"/>)–(<xref ref-type="disp-formula" rid="Ch1.E10"/>), and <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">B</mml:mi></mml:math></inline-formula> is an
observation operator that maps the surface velocity field to velocity
observations at a set of observation points on <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>.</p>
      <p>The first term in the cost functional <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">J</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the data misfit
that represents the error between the observed velocity field
<inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mtext>obs</mml:mtext></mml:msup></mml:mrow></mml:math></inline-formula> and that predicted by the thermomechanics
ice flow model, <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">u</mml:mi></mml:math></inline-formula>. The regularization term <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">R</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> imposes
regularity on the inversion field, such as smoothness. Often, this reflects
prior knowledge on the model parameters. In the absence of regularization,
the inverse problem is ill posed; in particular, the solution is not unique
in that many model parameter fields may be consistent with the data to within
the observational noise, and thus the solution is highly sensitive to errors
in the observations <xref ref-type="bibr" rid="bib1.bibx8 bib1.bibx37" id="paren.24"/>. For instance, as
will be discussed in Sect. <xref ref-type="sec" rid="Ch1.S5"/>, short-wavelength components
in the geothermal heat flux cannot be identified from surface observations
and thus will have to be constrained by the regularization. Here we apply a
gradient-type Tikhonov regularization:

                <disp-formula id="Ch1.E14" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mi mathvariant="script">R</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>:=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi mathvariant="italic">γ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:munder><mml:mo movablelimits="false">∫</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:munder><mml:mo>|</mml:mo><mml:mi mathvariant="bold-italic">T</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi>G</mml:mi><mml:msup><mml:mo>|</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mtext>d</mml:mtext><mml:mi>s</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          where <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">T</mml:mi></mml:math></inline-formula> :<inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">I</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">n</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>⊗</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">n</mml:mi></mml:math></inline-formula> is the tangential
operator, “<inline-formula><mml:math display="inline"><mml:mo>⊗</mml:mo></mml:math></inline-formula>” represents the tensor (or outer) product, and
<inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">I</mml:mi></mml:math></inline-formula> is the second-order unit tensor. This regularization imposes a
greater penalty on more oscillatory components of <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>, and, thus, smoothly
varying fields are preferred in the inversion of the geothermal heat flux.
The regularization parameter <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">γ</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>&gt;</mml:mo></mml:math></inline-formula> 0 controls the strength of the imposed
smoothness relative to the data misfit.</p><?xmltex \hack{\newpage}?>
</sec>
</sec>
<sec id="Ch1.S3">
  <title>Solution of the inverse problem via an adjoint-based inexact Newton method</title>
      <p>To compute the minimizer for the large-scale optimization
problem Eq. (<xref ref-type="disp-formula" rid="Ch1.E13"/>), we employ a derivative-based descent method and thus
require derivatives of the nonlinear least-squares optimization
problem Eq. (<xref ref-type="disp-formula" rid="Ch1.E13"/>) with respect to the parameter <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>. To improve over
linearly convergent methods (such as the nonlinear conjugate gradients (CG) method) or
superlinearly convergent methods (such as limited-memory Broyden–Fletcher–Goldfarb–Shanno (L-BFGS) method), here we
advocate a Newton method, which employs Hessian information (i.e., second
derivatives) to provide an (asymptotic) quadratic convergence rate. Moreover,
typically Newton's method converges in a number of iterations that is
independent of the parameter dimension/mesh size, which is typically not true
of gradient-only methods <xref ref-type="bibr" rid="bib1.bibx27" id="paren.25"/>. Beyond the faster
convergence, in our experience the use of Hessian information for highly
nonlinear inverse problems such as those involving ice sheet models is
typically able to obtain a reduction of another 1 or 2 orders of magnitude in
the norm of the gradient, leading to the extraction of additional details in
the reconstructed parameter field.</p>
      <p>Starting with an initial guess for the parameter field <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>, Newton's method
iteratively updates the parameter field based on minimizing a sequence of
quadratic approximations of the cost functional, <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula>, using
gradient and Hessian information of <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula> with respect to <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>. That
is, the parameter is updated by

              <disp-formula id="Ch1.E15" content-type="numbered"><mml:math display="block"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mtext>new</mml:mtext></mml:msub><mml:mo>=</mml:mo><mml:mi>G</mml:mi><mml:mo>+</mml:mo><mml:mi mathvariant="italic">α</mml:mi><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> is the current model parameter field, <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">α</mml:mi></mml:math></inline-formula> is the step length,
appropriately chosen so that the cost functional <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula> is
sufficiently decreased at each iteration, and <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:math></inline-formula> is the direction
which is obtained by solving the linear system

              <disp-formula id="Ch1.E16" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mi mathvariant="script">H</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>(</mml:mo><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:mi mathvariant="script">G</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

        Here, <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">G</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">H</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> denote the gradient and the
Hessian of the least-squares cost functional <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula>, respectively,
evaluated at the current parameter field <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>.</p>
      <p>In this section, we provide expressions for the gradient <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">G</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> and
Hessian <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">H</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. For the efficient computation of gradient and
Hessian operators, we employ adjoint methods (see, for example,
<xref ref-type="bibr" rid="bib1.bibx14 bib1.bibx35 bib1.bibx2" id="altparen.26"/>). All expressions in this
section are given in infinite-dimensional form, which has several advantages
compared to discretizing the optimization problem first and then
differentiating. First, one avoids differentiating through artifacts of the
discretization or solver, which may not even be differentiable. Second, it is
much easier and “cleaner” to derive gradient and Hessian information at the
infinite-dimensional level. Third, the resulting expressions are in weak
form, which provides a natural and systematic path to discretization by
Galerkin finite elements. The downside to differentiating at the
infinite-dimensional level is that the resulting gradient and Hessian
expressions may not be “consistent”. These issues will be discussed in the
next section.</p>
      <p>In what follows, we use the formal Lagrange approach, which computes the
gradient by taking variations of a Lagrangian functional. The Lagrangian
functional <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">L</mml:mi></mml:math></inline-formula> combines the cost functional Eq. (<xref ref-type="disp-formula" rid="Ch1.E13"/>) with the
weak form Eq. (<xref ref-type="disp-formula" rid="Ch1.E11"/>) of the forward problem, with test functions
<inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi>q</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover></mml:math></inline-formula>, and <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover></mml:math></inline-formula>. These test functions act as
Lagrange multipliers and become the adjoint velocity <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">v</mml:mi></mml:math></inline-formula>, adjoint
pressure <inline-formula><mml:math display="inline"><mml:mi>q</mml:mi></mml:math></inline-formula>, and adjoint temperature <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">λ</mml:mi></mml:math></inline-formula>:

              <disp-formula specific-use="align" content-type="numbered"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mtr><mml:mtd><mml:mrow><mml:mi mathvariant="script">L</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi>p</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>;</mml:mo><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo>,</mml:mo><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>;</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi>G</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>:=</mml:mo><mml:mi mathvariant="script">J</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>+</mml:mo><mml:mi>a</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi>p</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>;</mml:mo><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo>,</mml:mo><mml:mi>q</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mlabeledtr id="Ch1.E17"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:mo>〈</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi mathvariant="bold-italic">g</mml:mi><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi mathvariant="bold-italic">v</mml:mi><mml:msub><mml:mo>〉</mml:mo><mml:mi mathvariant="normal">Ω</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mo>〈</mml:mo><mml:mi>G</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">λ</mml:mi><mml:msub><mml:mo>〉</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula></p>
      <p>The gradient of <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula> with respect to the unknown heat flux <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> is
found by requiring that variations of the Lagrangian <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">L</mml:mi></mml:math></inline-formula> with
respect to the forward and adjoint variables vanish. The gradient <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">G</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>
is then found by taking the variation of <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">L</mml:mi></mml:math></inline-formula> with respect to <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>.
In strong form, the gradient evaluated at <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">G</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, is then given by

              <disp-formula id="Ch1.E18" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mi mathvariant="script">G</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>:=</mml:mo><mml:mfenced open="{" close=""><mml:mtable class="array" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mi mathvariant="italic">γ</mml:mi><mml:mi mathvariant="bold-italic">T</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>-</mml:mo><mml:mi mathvariant="italic">λ</mml:mi></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mtext>on</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mo>(</mml:mo><mml:mi mathvariant="italic">γ</mml:mi><mml:mi mathvariant="bold-italic">T</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:mover accent="true"><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mtext>on</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo>∂</mml:mo><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover></mml:math></inline-formula> is the outer normal vector on <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>∂</mml:mo><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>.
Variations of <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">L</mml:mi></mml:math></inline-formula> with respect to the adjoint
variables (<inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">v</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi>q</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">λ</mml:mi></mml:math></inline-formula>) simply recover the forward problem. However, variations of <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">L</mml:mi></mml:math></inline-formula> with respect to the forward
variables (<inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">u</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">θ</mml:mi></mml:math></inline-formula>) yield the so-called “adjoint problem”,
which is given in strong form by

              <disp-formula specific-use="align" content-type="numbered"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E19"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>in</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E20"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><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="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mi mathvariant="italic">λ</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>in</mml:mtext><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E21"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mi>F</mml:mi><mml:mi mathvariant="italic">λ</mml:mi></mml:msub><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>in</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E22"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:msup><mml:mi mathvariant="script">B</mml:mi><mml:mo>*</mml:mo></mml:msup><mml:mfenced open="(" close=")"><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mtext>obs</mml:mtext></mml:msup><mml:mo>-</mml:mo><mml:mi mathvariant="script">B</mml:mi><mml:mi mathvariant="bold-italic">u</mml:mi></mml:mfenced><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>on</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E23"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="bold">0</mml:mn><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>on</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:mtext>additional</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>lateral</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>BCs</mml:mtext><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

          Here, <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="script">B</mml:mi><mml:mo>*</mml:mo></mml:msup></mml:mrow></mml:math></inline-formula> is the adjoint of the observation operator, which maps
point observations on <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> to a function. In particular, if
<inline-formula><mml:math display="inline"><mml:mi mathvariant="script">B</mml:mi></mml:math></inline-formula> corresponds to the evaluation of a sufficiently smooth function
at points, the adjoint <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="script">B</mml:mi><mml:mo>*</mml:mo></mml:msup></mml:mrow></mml:math></inline-formula> maps a finite-dimensional vector to
the sum of Dirac delta functions corresponding to these points, weighted by
the input vector. The adjoint stress <inline-formula><mml:math 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 Eq. (<xref ref-type="disp-formula" rid="Ch1.E20"/>) depends on the forward velocity <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">u</mml:mi></mml:math></inline-formula> and the
temperature <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">θ</mml:mi></mml:math></inline-formula> and is given by

              <disp-formula id="Ch1.Ex12"><mml:math display="block"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>:=</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mfenced open="[" close="]"><mml:mfenced open="(" close=")"><mml:mi mathvariant="sans-serif">I</mml:mi><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>n</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>⊗</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">ϵ</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mi>n</mml:mi></mml:mfrac></mml:mstyle><mml:mi mathvariant="italic">λ</mml:mi><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mfenced><mml:mo>-</mml:mo><mml:mi mathvariant="bold-italic">I</mml:mi><mml:mi>q</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the adjoint strain rate tensor and is given by
<inline-formula><mml:math display="inline"><mml:mrow><mml:mstyle displaystyle="false"><mml:mfrac style="text"><mml:mn mathvariant="normal">1</mml:mn><mml:mn mathvariant="normal">2</mml:mn></mml:mfrac></mml:mstyle><mml:mo>(</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mi mathvariant="bold-italic">v</mml:mi></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>+</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="normal">∇</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mi>T</mml:mi></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi mathvariant="sans-serif">I</mml:mi></mml:math></inline-formula> is the
fourth-order identity tensor, and <inline-formula><mml:math display="inline"><mml:mo>⊗</mml:mo></mml:math></inline-formula> represents the tensor (or
outer) product between second-order tensors. Note that
<inline-formula><mml:math 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> coincides with the adjoint stress derived
by <xref ref-type="bibr" rid="bib1.bibx27" id="text.27"/> for the isothermal Stokes model except the
term proportional to the adjoint temperature <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">λ</mml:mi></mml:math></inline-formula>, which arises due to
the strain heating term on the right-hand side of Eq. (<xref ref-type="disp-formula" rid="Ch1.E8"/>).
The right-hand side in the adjoint energy equation (Eq. <xref ref-type="disp-formula" rid="Ch1.E21"/>) is
given by

              <disp-formula id="Ch1.Ex13"><mml:math display="block"><mml:mrow><mml:msub><mml:mi>F</mml:mi><mml:mi mathvariant="italic">λ</mml:mi></mml:msub><mml:mo>:=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>Q</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi><mml:mi>R</mml:mi><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mfenced close=")" open="("><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mi mathvariant="italic">λ</mml:mi><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mfenced><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

        As can be seen from Eqs. (<xref ref-type="disp-formula" rid="Ch1.E19"/>)–(<xref ref-type="disp-formula" rid="Ch1.E23"/>), the adjoint
problem is driven by the misfit between observed and predicted surface
velocity on the top boundary, i.e.,
<inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="script">B</mml:mi><mml:mo>*</mml:mo></mml:msup><mml:mo>(</mml:mo><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mtext>obs</mml:mtext></mml:msup></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">B</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. Since
the observations are of ice velocity on the top surface <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>, the
data misfit shows up in the adjoint problem as a source term for the Neumann
boundary condition on <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>, Eq. (<xref ref-type="disp-formula" rid="Ch1.E22"/>). Observations in the
interior of <inline-formula><mml:math display="inline"><mml:mi mathvariant="normal">Ω</mml:mi></mml:math></inline-formula> would amount to a similar contribution on the right-hand
side of Eq. (<xref ref-type="disp-formula" rid="Ch1.E20"/>). Since the adjoint equation depends on
<inline-formula><mml:math display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, each gradient computation also requires the solution
of the forward problem (Eqs. <xref ref-type="disp-formula" rid="Ch1.E6"/>–<xref ref-type="disp-formula" rid="Ch1.E10"/>). Solution of
the adjoint problem (Eqs. <xref ref-type="disp-formula" rid="Ch1.E19"/>–<xref ref-type="disp-formula" rid="Ch1.E23"/>) provides the
adjoint temperature <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">λ</mml:mi></mml:math></inline-formula> needed to evaluate the gradient in Eq. (<xref ref-type="disp-formula" rid="Ch1.E18"/>).</p>
      <p>Now that the computation of the gradient, which forms the right-hand side of
the Newton system Eq. (<xref ref-type="disp-formula" rid="Ch1.E16"/>) has been described, we present the
computation of the Hessian operator, <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">H</mml:mi></mml:math></inline-formula>, on the left-hand side of
the Newton system. We note that explicitly forming and storing the Hessian
matrix resulting upon discretization is not an option, since computing each
column would require at least a linearized forward solve. Instead, we solve
the Newton system Eq. (<xref ref-type="disp-formula" rid="Ch1.E16"/>) using the linear CG
method, which requires not the explicit Hessian but rather only the action of
the Hessian on a vector at each CG iteration. We next present expressions for
this Hessian action on vectors in terms of the solution of a pair of
linearized forward and adjoint problems. These expressions are simply stated
here; an analogous derivation, for the isothermal case, is presented
in <xref ref-type="bibr" rid="bib1.bibx27" id="text.28"/>. The action of the Hessian operator in a
given CG direction <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:math></inline-formula>, evaluated at the current iterate, <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>, can be
expressed in strong form as

              <disp-formula id="Ch1.E24" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mi mathvariant="script">H</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>(</mml:mo><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>)</mml:mo><mml:mo>:=</mml:mo><mml:mfenced close="" open="{"><mml:mtable class="array" columnalign="right left"><mml:mtr><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mi mathvariant="italic">γ</mml:mi><mml:mi mathvariant="bold-italic">T</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>)</mml:mo><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mtext>on</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mo>(</mml:mo><mml:mi mathvariant="italic">γ</mml:mi><mml:mi mathvariant="bold-italic">T</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>)</mml:mo><mml:mo>⋅</mml:mo><mml:mover accent="true"><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mtext>on</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo>∂</mml:mo><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

        Beyond the forward and adjoint equations that must be solved to evaluate the
gradient, the Hessian action requires two additional forward-like equations:
the “incremental forward” and “incremental adjoint' equations. These
can be derived using second derivatives of the Lagrangian functional
<xref ref-type="bibr" rid="bib1.bibx2" id="paren.29"/>. The resulting incremental forward problem, which
is to be solved for the incremental forward velocity, pressure, and
temperature variables <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mover accent="true"><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi>p</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, is
given by

              <disp-formula specific-use="align" content-type="numbered"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E25"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mover accent="true"><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>in</mml:mtext><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E26"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="bold">0</mml:mn><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>in</mml:mtext><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

          <?xmltex \hack{\newpage}?><?xmltex \hack{\vspace*{-8mm}}?>

              <disp-formula specific-use="align" content-type="numbered"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E27"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mi>F</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>in</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E28"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="bold">0</mml:mn><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>on</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E29"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mover accent="true"><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn mathvariant="bold">0</mml:mn><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>on</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:mtext>additional</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>lateral</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>BCs</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

          with

              <disp-formula specific-use="align"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mo>:=</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mfenced open="[" close="]"><mml:mfenced open="(" close=")"><mml:mi mathvariant="sans-serif">I</mml:mi><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>n</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>⊗</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">ϵ</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi>Q</mml:mi><mml:mrow><mml:mi>n</mml:mi><mml:mi>R</mml:mi><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mfenced><mml:mo>-</mml:mo><mml:mi mathvariant="bold-italic">I</mml:mi><mml:mover accent="true"><mml:mi>p</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msub><mml:mi>F</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mo>:=</mml:mo><mml:mo>-</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mover accent="true"><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>⋅</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi mathvariant="italic">η</mml:mi><mml:mfenced close=")" open="("><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mi>n</mml:mi></mml:mfrac></mml:mstyle><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi>Q</mml:mi><mml:mrow><mml:mi>n</mml:mi><mml:mi>R</mml:mi><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mfenced><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

          Note that the incremental forward problem
Eqs. (<xref ref-type="disp-formula" rid="Ch1.E25"/>)–(<xref ref-type="disp-formula" rid="Ch1.E29"/>) resembles the forward
problem and in fact corresponds to a linearized (with respect to all
variables) version of it. Both the operator and the right-hand side depend on
the forward variables <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, and the right-hand side also
depends on the CG direction <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:math></inline-formula>.</p>
      <p>The resulting incremental adjoint problem, to be solved for the
incremental adjoint velocity, pressure, and temperature (<inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:math></inline-formula>,
<inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi>q</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:math></inline-formula>), is then given by

              <disp-formula specific-use="align" content-type="numbered"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mlabeledtr id="Ch1.E30"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>in</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E31"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mover accent="true"><mml:mi>v</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>=</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><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:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mi mathvariant="italic">λ</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>in</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E32"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mo>⋅</mml:mo><mml:mo>(</mml:mo><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mi>F</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></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:mspace width="0.25em" linebreak="nobreak"/><mml:mtext>in</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E33"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mover accent="true"><mml:mi>v</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mo>-</mml:mo><mml:msup><mml:mi mathvariant="script">B</mml:mi><mml:mo>*</mml:mo></mml:msup><mml:mi mathvariant="script">B</mml:mi><mml:mover accent="true"><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>-</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">τ</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>on</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mlabeledtr id="Ch1.E34"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn mathvariant="bold">0</mml:mn><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>on</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:mtext>additional</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>lateral</mml:mtext><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>BCs</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

          with

              <disp-formula id="Ch1.Ex18"><mml:math display="block"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mover accent="true"><mml:mi>v</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mo>:=</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mfenced close="]" open="["><mml:mfenced close=")" open="("><mml:mtext>I</mml:mtext><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>n</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>⊗</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">ϵ</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mover accent="true"><mml:mi>v</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mi>n</mml:mi></mml:mfrac></mml:mstyle><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mfenced><mml:mo>-</mml:mo><mml:mi mathvariant="bold-italic">I</mml:mi><mml:mover accent="true"><mml:mi>q</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

              <disp-formula specific-use="align"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">τ</mml:mi><mml:mi>v</mml:mi></mml:msub><mml:mo>:</mml:mo></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mfenced close="" open="["><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>n</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mfenced open="(" close=")"><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">ϵ</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mtext>I</mml:mtext><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>⊗</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub><mml:mo>⊗</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">ϵ</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mfenced close="" open="."><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>n</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mn mathvariant="normal">3</mml:mn><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>n</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mfenced open="(" close=")"><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub></mml:mfenced><mml:mfenced close=")" open="("><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>⊗</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mfenced></mml:mrow><mml:mrow><mml:msup><mml:mfenced open="(" close=")"><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">ϵ</mml:mi></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mfenced open="." close=""><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mi>n</mml:mi></mml:mfrac></mml:mstyle><mml:mi mathvariant="italic">λ</mml:mi><mml:mfenced open="(" close=")"><mml:mtext>I</mml:mtext><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>n</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>⊗</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">ϵ</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mfenced open="." close="]"><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi>Q</mml:mi><mml:mrow><mml:mi>n</mml:mi><mml:mi>R</mml:mi><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mfenced open="(" close=")"><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mi>n</mml:mi></mml:mfrac></mml:mstyle><mml:mi mathvariant="italic">λ</mml:mi><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mfenced close=")" open="("><mml:mtext>I</mml:mtext><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>n</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>⊗</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">ϵ</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub></mml:mfenced></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

              <disp-formula id="Ch1.Ex23"><mml:math display="block"><mml:mrow><mml:msub><mml:mi>F</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mo>:=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>Q</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi><mml:mi>R</mml:mi><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mfenced open="(" close=")"><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mover accent="true"><mml:mi>v</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

              <disp-formula specific-use="align"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mtr><mml:mtd><mml:mrow><mml:mover accent="true"><mml:mi>F</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mo>:=</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mover accent="true"><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mo>⋅</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">λ</mml:mi><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>Q</mml:mi><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mi>n</mml:mi><mml:mi>R</mml:mi><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>Q</mml:mi><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mi>n</mml:mi><mml:mi>R</mml:mi><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:mfenced open="(" close=")"><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>-</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>n</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mtext>II</mml:mtext></mml:msub><mml:mo>+</mml:mo><mml:mi mathvariant="italic">ϵ</mml:mi></mml:mrow></mml:mfrac></mml:mstyle><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">1</mml:mn><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mi>n</mml:mi></mml:mfrac></mml:mstyle><mml:mi mathvariant="italic">λ</mml:mi><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mover accent="true"><mml:mi>u</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:msub></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>Q</mml:mi><mml:mover accent="true"><mml:mi mathvariant="italic">θ</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mi mathvariant="italic">η</mml:mi><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mi>n</mml:mi><mml:mi>R</mml:mi><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:mfenced close=")" open="("><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mi>Q</mml:mi><mml:mrow><mml:mi>n</mml:mi><mml:mi>R</mml:mi><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">2</mml:mn><mml:mrow><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:mfenced close=")" open="("><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>v</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mi mathvariant="italic">λ</mml:mi><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mi>u</mml:mi></mml:msub></mml:mfenced><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>

          Note that the incremental adjoint problem
Eqs. (<xref ref-type="disp-formula" rid="Ch1.E30"/>)–(<xref ref-type="disp-formula" rid="Ch1.E34"/>) resembles the adjoint problem and is
in fact its linearization with respect to the forward and adjoint variables
and the unknown geothermal heat flux. Its operator depends on the forward
variables only (as does the incremental forward operator), while its right-hand-side source terms depend  not just on the forward variables (as does the
incremental forward problem) but also on the adjoint and incremental forward
variables.</p>
      <p>In conclusion, to evaluate the expression for the
gradient Eq. (<xref ref-type="disp-formula" rid="Ch1.E18"/>) for a given value of the geothermal heat flux <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>,
we first solve the forward problem Eqs. (<xref ref-type="disp-formula" rid="Ch1.E6"/>)–(<xref ref-type="disp-formula" rid="Ch1.E10"/>), followed by the adjoint problem
Eqs. (<xref ref-type="disp-formula" rid="Ch1.E19"/>)–(<xref ref-type="disp-formula" rid="Ch1.E23"/>) (given the forward solution). To then
evaluate the Hessian action Eq. (<xref ref-type="disp-formula" rid="Ch1.E24"/>) in a given direction <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:math></inline-formula>
at each CG iteration, we solve the incremental forward problem
Eqs. (<xref ref-type="disp-formula" rid="Ch1.E25"/>)–(<xref ref-type="disp-formula" rid="Ch1.E29"/>) (given the forward
solution) and then solve the incremental adjoint equation
(Eqs. <xref ref-type="disp-formula" rid="Ch1.E30"/>–<xref ref-type="disp-formula" rid="Ch1.E34"/>) (given the forward, adjoint, and
incremental forward solutions).</p>
      <p>It is well known that the Newton update direction computed by
solving Eq. (<xref ref-type="disp-formula" rid="Ch1.E16"/>) is a descent direction only if the Hessian is
positive definite, which is only guaranteed close to a
minimizer <xref ref-type="bibr" rid="bib1.bibx25" id="paren.30"/>. The remedy we apply here (for more
details, see <xref ref-type="bibr" rid="bib1.bibx27 bib1.bibx1" id="altparen.31"/>) is to neglect terms
in the Hessian expression that involve the adjoint variable, that is, the
terms highlighted in blue in Eqs. (<xref ref-type="disp-formula" rid="Ch1.E31"/>)–(<xref ref-type="disp-formula" rid="Ch1.E33"/>). This
leads to the so-called Gauss–Newton approximation of the Hessian
<xref ref-type="bibr" rid="bib1.bibx25" id="paren.32"/>, which (with appropriate regularization) is
guaranteed to be positive definite. Moreover, since accurate solution of the
Newton system Eq. (<xref ref-type="disp-formula" rid="Ch1.E16"/>) is needed only close to the minimum of the
regularized data misfit functional <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula>, we terminate the CG
iterations early for iterates that are far from the converged solution. This
so-called “inexact Newton” method terminates the CG iterations when the
norm of the residual of the linear system Eq. (<xref ref-type="disp-formula" rid="Ch1.E16"/>) drops below a
tolerance that is proportional to the norm of the gradient; i.e., we
terminate at CG iteration <inline-formula><mml:math display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula> when

              <disp-formula id="Ch1.Ex27"><mml:math display="block"><mml:mrow><mml:mo>|</mml:mo><mml:mi mathvariant="script">H</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mfenced open="(" close=")"><mml:msup><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mi>i</mml:mi></mml:msup></mml:mfenced><mml:mo>+</mml:mo><mml:mi mathvariant="script">G</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>|</mml:mo><mml:mo>≤</mml:mo><mml:mi mathvariant="italic">β</mml:mi><mml:mo>|</mml:mo><mml:mi mathvariant="script">G</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>|</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where the so-called forcing term <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">β</mml:mi></mml:math></inline-formula> itself can depend on <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>|</mml:mo><mml:mi mathvariant="script">G</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>|</mml:mo></mml:mrow></mml:math></inline-formula>.
Far from the minimum – when the relative gradient is
large – the tolerance is also large, and the CG iterations are terminated
early to prevent over-solving. As the minimum is approached, the norm of the
gradient decreases, thereby enforcing an increasingly more accurate solution
of the Newton system Eq. (<xref ref-type="disp-formula" rid="Ch1.E16"/>). The criterion above is often able to
significantly reduce the overall number of CG iterations – and thus the
required number of incremental forward/adjoint solves – while still
maintaining fast local convergence. When <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">β</mml:mi></mml:math></inline-formula> is taken as the order of
square root of the gradient, the inexact Newton method retains superlinear
convergence <xref ref-type="bibr" rid="bib1.bibx7" id="paren.33"/>.</p>
      <p><?xmltex \hack{\newpage}?>It is critical that the total number of CG iterations be as small as
possible, since as mentioned above, each iteration requires a pair of
forward/adjoint incremental problem solves. Despite the reduction in overall
number of CG iterations provided by inexact solution of the Newton step, the
number can still be large when a good preconditioner is not used. An effective
preconditioner is simply the inverse of the regularization operator, which
amounts to a Laplacian solve on the basal surface. This is because the
Hessian of the data misfit operator, like many ill-posed infinite-dimensional
inverse operators, has eigenvalues that decay to zero; preconditioning by an
inverse Laplacian simply increases the rate of decay. Thus the resulting
preconditioned Hessian behaves like a compact perturbation of the identity
with smooth dominant eigenfunctions, for which CG converges rapidly and in a
number of iterations that is independent of the mesh size; see, for example,
<xref ref-type="bibr" rid="bib1.bibx19" id="text.34"/>. This is the preconditioner we use in the
numerical examples below.</p>
      <p>Once a descent direction is computed by inexact solution of the Newton step
equation (Eq. <xref ref-type="disp-formula" rid="Ch1.E16"/>), we must guarantee that sufficient decrease
in <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula> is obtained in that direction so that convergence of the
iterations can be assured. This is achieved by a line search that finds
a step size <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">α</mml:mi></mml:math></inline-formula> satisfying the so-called Armijo condition
<xref ref-type="bibr" rid="bib1.bibx25" id="paren.35"/>, which has the attractive property that it requires
only cost functional evaluations and not gradient information. The Newton
iterations are repeated until the norm of the gradient of <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula> is
sufficiently small. The inexact Newton method is summarized in
Algorithm <xref ref-type="other" rid="Ch1.Prog1"/>, in which we use <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">μ</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.5 and <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">ν</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 10<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> for the
line search.</p><boxed-text content-type="algorithm" position="float" id="Ch1.Prog1"><caption><p>
          <sc>Adjoint-based inexact Newton</sc>
        </p></caption><?xmltex \hack{\setcounter{ALC@depth}{0}}?>
        <disp-quote content-type="algorithmic" specific-use="numbering{0}"><list>

    <list-item>

            <p specific-use="STATE">Initialize/define variables <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">α</mml:mi></mml:math></inline-formula>,
<inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">μ</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">ν</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ε</mml:mi><mml:mtext>tol</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula></p>
          </list-item>

    <list-item>

            <p specific-use="FOR"><bold>for</bold> <inline-formula><mml:math display="inline"><mml:mi>k</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 1, … <bold>do</bold>  <list>
    <list-item><p specific-use="STATE"><inline-formula><mml:math display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>←</mml:mo></mml:math></inline-formula> solve the forward equation with <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula></p></list-item>
    <list-item><p specific-use="STATE"><inline-formula><mml:math display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>q</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">λ</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>←</mml:mo></mml:math></inline-formula> solve the adjoint equation
with <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula></p></list-item>
    <list-item><p specific-use="STATE"><inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>←</mml:mo></mml:math></inline-formula> compute the discrete gradient</p></list-item>
    <list-item><p specific-use="IF"><bold>if</bold> <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>|</mml:mo><mml:mo>|</mml:mo><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>|</mml:mo><mml:mo>|</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ε</mml:mi><mml:mtext>tol</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> <bold>then</bold>  <list>
    <list-item><p specific-use="STATE">converged</p></list-item></list></p></list-item>
    <list-item><p specific-use="ENDIF"><bold>end</bold> <bold>if</bold></p></list-item>
    <list-item><p specific-use="STATE">Perform preconditioned inexact CG iterations for solving <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">H</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mspace width="0.125em" linebreak="nobreak"/><mml:msub><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>
to compute <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> (each iteration requires solution of a pair of incremental forward/adjoint problems)</p></list-item>
    <list-item><p specific-use="STATE"><inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">α</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>←</mml:mo></mml:math></inline-formula> 1, descent <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0</p></list-item>
    <list-item><p specific-use="WHILE"><bold>while</bold> descent <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0 <bold>do</bold>  <list>
    <list-item><p specific-use="STATE"><inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mi>k</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>←</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>+</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="italic">α</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msub><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula></p></list-item>
    <list-item><p specific-use="STATE">Solve the forward equation with <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mi>k</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula></p></list-item>
    <list-item><p specific-use="IF"><bold>if</bold> <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">J</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mrow><mml:mi>k</mml:mi><mml:mo>+</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>≤</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">J</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>+</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="italic">ν</mml:mi><mml:mi mathvariant="italic">α</mml:mi><mml:mo>〈</mml:mo><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mi>k</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:mi>k</mml:mi></mml:msub><mml:msub><mml:mo>〉</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> <bold>then</bold>  <list>
    <list-item><p specific-use="STATE">descent <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 1</p></list-item></list></p></list-item>
    <list-item><p specific-use="ELSE"><bold>else</bold>  <list>
    <list-item><p specific-use="STATE"><inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">α</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>←</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="italic">μ</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mi mathvariant="italic">α</mml:mi></mml:mrow></mml:math></inline-formula></p></list-item></list></p></list-item>
    <list-item><p specific-use="ENDIF"><bold>end</bold> <bold>if</bold></p></list-item></list></p></list-item>
    <list-item><p specific-use="ENDWHILE"><bold>end</bold> <bold>while</bold></p></list-item></list></p>
          </list-item>

    <list-item>

            <p specific-use="ENDFOR"><bold>end</bold> <bold>for</bold></p>
          </list-item>
        </list></disp-quote></boxed-text><?xmltex \hack{\newpage}?>
</sec>
<sec id="Ch1.S4">
  <title>Discretization</title>
      <p>In this section, we describe the discretization of the forward and the
inverse problems and discuss a stabilization technique required to avoid
oscillations for advection-dominated problems. We compare two approaches for
computing the gradient of the cost functional, namely the
OTD and the DTO approaches.</p>
<sec id="Ch1.S4.SS1">
  <title>Discretization of the forward problem and streamline upwind Petrov–Galerkin (SUPG) stabilization</title>
      <p>For advection-dominated problems, the standard Galerkin finite element method
applied to the energy equation (Eq. <xref ref-type="disp-formula" rid="Ch1.E3"/>) can result in strongly
oscillatory solutions, unless the mesh size is less than 2<inline-formula><mml:math display="inline"><mml:mrow><mml:mi>K</mml:mi><mml:mo>/</mml:mo><mml:mo>(</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mo>|</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>|</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>,
which results in a smaller critical mesh size as the Peclet
number increases. To avoid this onerous mesh size restriction for high Peclet
flows, we discretize Eq. (<xref ref-type="disp-formula" rid="Ch1.E3"/>) with a consistent stabilization
method, the  SUPG method
<xref ref-type="bibr" rid="bib1.bibx3" id="paren.36"/>, which suppresses oscillations on coarser meshes. The
SUPG method adds a stabilization term to the standard Galerkin weak form.
This term involves the element residual and thus vanishes at the exact
solution,  preserving the correct solution of the energy equation in the
limit of infinitesimal mesh size.</p>
      <p>We use quadratic elements for temperature, and the Taylor–Hood element pair
for velocity and pressure (quadratic elements for velocity and linear
elements for pressure). We let <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>′</mml:mo></mml:msup></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mo mathvariant="italic">{</mml:mo><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub><mml:mo mathvariant="italic">}</mml:mo></mml:mrow></mml:math></inline-formula> be a family of
quadrilateral elements of <inline-formula><mml:math display="inline"><mml:mi mathvariant="normal">Ω</mml:mi></mml:math></inline-formula>, denoted by <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>Q</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> bilinear or
trilinear functions (in <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="double-struck">R</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="double-struck">R</mml:mi><mml:mn mathvariant="normal">3</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula>, respectively) and
by <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>Q</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> biquadratic or triquadratic functions (in <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="double-struck">R</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula>
and <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="double-struck">R</mml:mi><mml:mn mathvariant="normal">3</mml:mn></mml:msup></mml:mrow></mml:math></inline-formula>, respectively) defined on <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>. The discretized
spaces are then given by

                <disp-formula specific-use="align" content-type="numbered"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msup><mml:mi mathvariant="script">U</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>=</mml:mo><mml:mfenced close="}" open="{"><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>∈</mml:mo><mml:mi mathvariant="script">U</mml:mi><mml:mo>:</mml:mo><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>∈</mml:mo><mml:msub><mml:mi>Q</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:msup><mml:mfenced close=")" open="("><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub></mml:mfenced><mml:mi>d</mml:mi></mml:msup><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo>∀</mml:mo><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub><mml:mo>∈</mml:mo><mml:msup><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>′</mml:mo></mml:msup></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msup><mml:mi mathvariant="script">P</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>=</mml:mo><mml:mfenced close="}" open="{"><mml:msup><mml:mi>p</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>∈</mml:mo><mml:mi mathvariant="script">P</mml:mi><mml:mo>:</mml:mo><mml:msup><mml:mi>P</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>∈</mml:mo><mml:msub><mml:mi>Q</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mfenced open="(" close=")"><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub></mml:mfenced><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mo>∀</mml:mo><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub><mml:mo>∈</mml:mo><mml:msup><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>′</mml:mo></mml:msup></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msup><mml:mi mathvariant="script">T</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>=</mml:mo><mml:mfenced open="{" close="}"><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>∈</mml:mo><mml:mi mathvariant="script">T</mml:mi><mml:mo>:</mml:mo><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>∈</mml:mo><mml:msub><mml:mi>Q</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mfenced open="(" close=")"><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub></mml:mfenced><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo>∀</mml:mo><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub><mml:mo>∈</mml:mo><mml:msup><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>′</mml:mo></mml:msup></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:msubsup><mml:mi mathvariant="script">T</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mi>h</mml:mi></mml:msubsup><mml:mo>=</mml:mo><mml:mfenced open="{" close="}"><mml:msup><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup><mml:mo>∈</mml:mo><mml:msub><mml:mi mathvariant="script">T</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mo>:</mml:mo><mml:msup><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>∈</mml:mo><mml:msub><mml:mi>Q</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mfenced open="(" close=")"><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub></mml:mfenced><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo>∀</mml:mo><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub><mml:mo>∈</mml:mo><mml:msup><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>′</mml:mo></mml:msup></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mlabeledtr id="Ch1.E35"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:msup><mml:mi mathvariant="script">Q</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>=</mml:mo><mml:mfenced open="{" close="}"><mml:msup><mml:mi>G</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>∈</mml:mo><mml:mi mathvariant="script">Q</mml:mi><mml:mo>:</mml:mo><mml:msup><mml:mi>G</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>∈</mml:mo><mml:msub><mml:mi>Q</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mfenced close=")" open="("><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub></mml:mfenced><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mo>∀</mml:mo><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub><mml:mo>∈</mml:mo><mml:msup><mml:mi mathvariant="normal">Ω</mml:mi><mml:mo>′</mml:mo></mml:msup></mml:mfenced><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula></p>
      <p>The SUPG-stabilized discretization of Eq. (<xref ref-type="disp-formula" rid="Ch1.E11"/>) is thus as follows:
find <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi>p</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>) <inline-formula><mml:math display="inline"><mml:mo>∈</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="script">U</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="script">P</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="script">T</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> such that

                <disp-formula id="Ch1.E36" content-type="numbered"><mml:math display="block"><mml:mrow><mml:msub><mml:mi>a</mml:mi><mml:mtext>s</mml:mtext></mml:msub><mml:mfenced open="(" close=")"><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi>p</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>;</mml:mo><mml:msup><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mover accent="true"><mml:mi>q</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup></mml:mfenced><mml:mo>=</mml:mo><mml:mo>〈</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi mathvariant="bold-italic">g</mml:mi><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:msup><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup><mml:msub><mml:mo>〉</mml:mo><mml:mi mathvariant="normal">Ω</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:mo>〈</mml:mo><mml:msup><mml:mi>G</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:msup><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup><mml:msub><mml:mo>〉</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:math></disp-formula>

          for all <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mover accent="true"><mml:mi>q</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>∈</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="script">U</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="script">P</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:msubsup><mml:mi mathvariant="script">T</mml:mi><mml:mn mathvariant="normal">0</mml:mn><mml:mi>h</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, where
<?xmltex \hack{\newpage}?><?xmltex \hack{\vspace*{-8mm}}?>

                <disp-formula specific-use="align" content-type="numbered"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi>a</mml:mi><mml:mtext>s</mml:mtext></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:mfenced close=")" open="("><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi>p</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>;</mml:mo><mml:msup><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mover accent="true"><mml:mi>q</mml:mi><mml:mo mathvariant="normal" stretchy="false">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup></mml:mfenced><mml:mo>=</mml:mo><mml:mi>a</mml:mi><mml:mfenced close=")" open="("><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi>p</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>;</mml:mo><mml:msup><mml:mover accent="true"><mml:mi mathvariant="bold-italic">v</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mover accent="true"><mml:mi>q</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mlabeledtr id="Ch1.E37"><mml:mtd/><mml:mtd/><mml:mtd><mml:mrow><mml:mo>+</mml:mo><mml:munder><mml:mo movablelimits="false">∑</mml:mo><mml:mi>e</mml:mi></mml:munder><mml:mo>〈</mml:mo><mml:msub><mml:mi mathvariant="italic">τ</mml:mi><mml:mi>e</mml:mi></mml:msub><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>⋅</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:msup><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:msub><mml:mi>R</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:msub><mml:msub><mml:mo>〉</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Ω</mml:mi><mml:mtext>e</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mlabeledtr></mml:mtable></mml:math></disp-formula>

            with the residual <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>R</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> of the forward energy equation in Eq. (<xref ref-type="disp-formula" rid="Ch1.E8"/>) given by

                <disp-formula id="Ch1.E38" content-type="numbered"><mml:math display="block"><mml:mrow><?xmltex \hack{\hbox\bgroup\fontsize{9}{9}\selectfont$\displaystyle}?><mml:msub><mml:mi>R</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:msub><mml:mfenced open="(" close=")"><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mfenced><mml:mo>:=</mml:mo><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>⋅</mml:mo><mml:mi mathvariant="normal">∇</mml:mi><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>-</mml:mo><mml:mi>K</mml:mi><mml:mi mathvariant="normal">Δ</mml:mi><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>-</mml:mo><mml:mi mathvariant="italic">η</mml:mi><mml:mfenced close=")" open="("><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>h</mml:mi></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mfenced><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mrow><mml:msup><mml:mi>u</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:msub><mml:mo>:</mml:mo><mml:msub><mml:mover accent="true"><mml:mi mathvariant="italic">ε</mml:mi><mml:mo mathvariant="normal">˙</mml:mo></mml:mover><mml:mrow><mml:msup><mml:mi>u</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:msub><mml:mo>.</mml:mo><?xmltex \hack{$\egroup}?></mml:mrow></mml:math></disp-formula>

          As can be seen in Eq. (<xref ref-type="disp-formula" rid="Ch1.E37"/>), the test function for the energy
equation residual is a multiple of <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>⋅</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="normal">∇</mml:mi><mml:mspace linebreak="nobreak" width="0.125em"/><mml:msup><mml:mover accent="true"><mml:mi mathvariant="italic">λ</mml:mi><mml:mo stretchy="false" mathvariant="normal">^</mml:mo></mml:mover><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>
and, in particular, depends on <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>h</mml:mi></mml:msup></mml:mrow></mml:math></inline-formula>. The stabilization factor
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">τ</mml:mi><mml:mi>e</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>≥</mml:mo></mml:math></inline-formula> 0 controls the weight of the stabilization term and influences
the quality of the discrete solution. Often, by analogy with the optimal
one-dimensional choice, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">τ</mml:mi><mml:mi>e</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> (coth(<italic>Pe</italic>) <inline-formula><mml:math display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula> 1/Pe)<inline-formula><mml:math display="inline"><mml:mrow><mml:mi>h</mml:mi><mml:mo>/</mml:mo><mml:mo>(</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mo>|</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>|</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>,
where <inline-formula><mml:math display="inline"><mml:mi>h</mml:mi></mml:math></inline-formula> is the element diameter in the direction of the advective velocity <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">u</mml:mi></mml:math></inline-formula>,
and <italic>Pe</italic> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="italic">ρ</mml:mi><mml:mi>c</mml:mi><mml:mo>|</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>|</mml:mo><mml:mi>h</mml:mi><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:mi>K</mml:mi></mml:mrow></mml:math></inline-formula> is the local Peclet number, which
determines whether the problem is locally convection dominated or diffusion
dominated <xref ref-type="bibr" rid="bib1.bibx3" id="paren.37"/>. The introduction of this stabilization term
makes Eq. (<xref ref-type="disp-formula" rid="Ch1.E36"/>) a Petrov–Galerkin discretization
<xref ref-type="bibr" rid="bib1.bibx3" id="paren.38"/>, which has consequences for the computation of the
derivatives of <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">J</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> as defined in Eq. (<xref ref-type="disp-formula" rid="Ch1.E13"/>), which is the
subject of the next section.</p>
</sec>
<sec id="Ch1.S4.SS2">
  <title>Optimize-then-discretize versus discretize-then-optimize</title>
      <p>The numerical solution of the inverse problem requires the computation of
gradients of <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula> with respect to <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>. These gradients are computed
using an adjoint system of equations, and there are two approaches: the
OTD and the DTO
approach. In OTD, one derives the adjoint equations at the
infinite-dimensional (i.e., the PDE) level and then discretizes both the
forward system Eqs. (<xref ref-type="disp-formula" rid="Ch1.E6"/>)–(<xref ref-type="disp-formula" rid="Ch1.E10"/>) and the adjoint
system Eqs. (<xref ref-type="disp-formula" rid="Ch1.E19"/>)–(<xref ref-type="disp-formula" rid="Ch1.E23"/>) independently. Note that the
adjoint energy equation (Eq. <xref ref-type="disp-formula" rid="Ch1.E21"/>) is also an advection–diffusion
equation, but with advection velocity <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi></mml:mrow></mml:math></inline-formula>. As a consequence, one would
then use SUPG stabilization for the forward and adjoint energy equations. In
DTO, the forward problem and the cost functional <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="script">J</mml:mi><mml:mo>(</mml:mo><mml:mo>⋅</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> are
discretized first, resulting in a finite-dimensional optimization problem.
Then, for this discretized optimization problem, gradients are computed using
a finite-dimensional Lagrangian function, resulting in a finite-dimensional
system of adjoint equations. For more details, we refer the reader
to <xref ref-type="bibr" rid="bib1.bibx14" id="text.39"/> and <xref ref-type="bibr" rid="bib1.bibx15" id="text.40"/>.</p>
      <p>For standard Galerkin discretizations, OTD and DTO usually coincide, i.e., they result
in exactly the same finite-dimensional gradient. However, the operations of
optimization and discretization do not commute when the forward problem is
discretized by SUPG. As SUPG is used to stabilize the adjoint equation, the
discrete gradient becomes inconsistent with the discrete cost functional.
This is because the discrete adjoint of SUPG stabilization for the forward
equation is not equivalent to SUPG stabilization of the adjoint equation. The
implication of an inconsistent gradient is that the computed gradient may not
actually lead to a direction of descent with respect to the discretized cost
functional, which can result in a failure in the line search and lack of
convergence. In the DTO approach, the SUPG stabilization term
in Eq. (<xref ref-type="disp-formula" rid="Ch1.E37"/>) produces a contribution in the adjoint equation that
has a stabilizing effect. However, this contribution is not a weighted
residual of the continuous adjoint energy equation, which can degrade the
convergence of the discrete adjoint temperature to the continuous adjoint
temperature <xref ref-type="bibr" rid="bib1.bibx4" id="paren.41"/>. However, the resulting
gradient is consistent with the discrete cost functional, and therefore
convergence is guaranteed with a Gauss–Newton method and an appropriate line search.</p>
      <p>Both DTO and OTD approaches have advantages and disadvantages, and the
preference for one over the other depends on the circumstances of the problem
at hand <xref ref-type="bibr" rid="bib1.bibx14" id="paren.42"/>. For sufficiently smooth problems, the
differences between OTD and DTO diminish as the mesh size is reduced, and the
approaches are equivalent in the limit. In the numerical results of the next
section, we choose DTO so that we can be assured a direction of descent
without having to refine the mesh beyond what is necessary for accurate
approximation of the forward, adjoint, and parameter fields. The resulting
expressions for the discrete gradient and Hessian constructed via the DTO
approach are specific approximations of the expressions for the continuous
gradient and Hessian presented in the previous section, and they will converge to
those expressions as the mesh is refined. The infinite-dimensional
expressions provided in the previous section provide useful intuition on the
nature of the gradient and Hessian action (for example, the resemblance of the
incremental forward and adjoint operators to the forward and adjoint
operators, the fourth-order anisotropy of the effective viscosity in the adjoint
and incremental operators, and the role of the boundary conditions).</p>
</sec>
</sec>
<sec id="Ch1.S5">
  <title>Numerical results and discussion</title>
      <p>In this section, we study properties of the inverse problem to infer the
unknown geothermal heat flux field from surface velocity observations. In
particular, we study the limits of our ability to invert for the heat flux as
a function of the length scales of the heat flux and of the noise level in
the velocity observations.</p>
      <p>We consider a two- and a three-dimensional ice slab, <inline-formula><mml:math display="inline"><mml:mi mathvariant="normal">Ω</mml:mi></mml:math></inline-formula>, of length
<inline-formula><mml:math display="inline"><mml:mi>L</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 80 km and the surface elevation <inline-formula><mml:math display="inline"><mml:mi>s</mml:mi></mml:math></inline-formula> given by

              <disp-formula id="Ch1.E39" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mi>s</mml:mi><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mfenced open="(" close=")"><mml:mi>H</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mfenced><mml:mi>cos⁡</mml:mi><mml:mfenced close=")" open="("><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mi mathvariant="italic">π</mml:mi><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi>L</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:mo>+</mml:mo><mml:msub><mml:mi>H</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math display="inline"><mml:mi>x</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>∈</mml:mo></mml:math></inline-formula> [0, <inline-formula><mml:math display="inline"><mml:mrow><mml:mi>L</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi>H</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 2 km is the maximum ice thickness, and <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>H</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.1 km is
the ice thickness at the outflow boundary <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>o</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>. The coordinate
system and the ice slab domain for the two-dimensional problem are shown in
Fig. <xref ref-type="fig" rid="Ch1.F1"/>; the three-dimensional geometry is an extrusion in the
<inline-formula><mml:math display="inline"><mml:mi>y</mml:mi></mml:math></inline-formula> direction of this geometry.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F1"><caption><p>Coordinate system and cross section through a three-dimensional slab
of ice, as used in the computational experiments (exaggerated in height for
visualization).</p></caption>
        <?xmltex \igopts{width=236.157874pt}?><graphic xlink:href="https://tc.copernicus.org/articles/10/1477/2016/tc-10-1477-2016-f01.pdf"/>

      </fig>

      <p>In all model problems, we assume that the surface temperature increases as
the elevation decreases as follows:

              <disp-formula id="Ch1.E40" content-type="numbered"><mml:math display="block"><mml:mrow><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mtext>s</mml:mtext></mml:msub><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mo>+</mml:mo><mml:mi>a</mml:mi><mml:mo>(</mml:mo><mml:mi>H</mml:mi><mml:mo>-</mml:mo><mml:mi>s</mml:mi><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo><mml:mo>)</mml:mo><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>50 <inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mo>∘</mml:mo></mml:msup></mml:math></inline-formula>C is the temperature at <inline-formula><mml:math display="inline"><mml:mi>x</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0, and <inline-formula><mml:math display="inline"><mml:mi>a</mml:mi></mml:math></inline-formula> is the
lapse rate, taken to be <inline-formula><mml:math display="inline"><mml:mi>a</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 6.5 <inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mo>∘</mml:mo></mml:msup></mml:math></inline-formula>C km<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>.</p>
      <p>The boundary conditions are as follows.
<list list-type="bullet"><list-item><p>On the top surface, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>t</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>, we assume zero traction for
the velocity and the surface temperature <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mtext>s</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> defined
in Eq. (<xref ref-type="disp-formula" rid="Ch1.E40"/>), i.e.,<disp-formula id="Ch1.Ex33"><mml:math display="block"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="bold">0</mml:mn><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mtext>s</mml:mtext></mml:msub><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula></p></list-item><list-item><p>On the bottom surface <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>, we assume that the ice is
frozen to the bedrock, i.e., we apply a no sliding condition, and assume a
geothermal heat flux condition for the temperature, i.e.,<disp-formula id="Ch1.Ex34"><mml:math display="block"><mml:mrow><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="bold">0</mml:mn><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mi>G</mml:mi><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula></p></list-item><list-item><p>On the outflow boundary, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>o</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>, we ignore the
atmospheric stress (i.e., the atmospheric pressure and wind stress), which is
small compared to the typical stresses in an ice sheet, and thus impose a
traction-free condition; the surface temperature <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mtext>s</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is as defined
in Eq. (<xref ref-type="disp-formula" rid="Ch1.E40"/>), i.e.,<disp-formula id="Ch1.Ex35"><mml:math display="block"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="bold">0</mml:mn><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="italic">θ</mml:mi><mml:mtext>s</mml:mtext></mml:msub><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula></p></list-item><list-item><p>We assume that <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>i</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is an ice divide, i.e., there is no
inflow, no shear stress and no heat flux, i.e.,<disp-formula id="Ch1.Ex36"><mml:math display="block"><mml:mrow><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi mathvariant="bold-italic">T</mml:mi><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="bold">0</mml:mn><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">n</mml:mi><mml:mo>=</mml:mo><mml:mn>0.</mml:mn></mml:mrow></mml:math></disp-formula></p></list-item><list-item><p>In addition, for the three-dimensional problem, we impose
periodic boundary conditions on the fore and aft boundaries, i.e.,<disp-formula specific-use="align"><mml:math display="block"><mml:mtable displaystyle="true"><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="bold-italic">u</mml:mi><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>fore</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>aft</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mi mathvariant="bold-italic">n</mml:mi><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>fore</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">σ</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mi mathvariant="bold-italic">n</mml:mi><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>aft</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>fore</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi mathvariant="italic">θ</mml:mi><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>aft</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">n</mml:mi><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>fore</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>K</mml:mi><mml:mi mathvariant="normal">∇</mml:mi><mml:mi mathvariant="italic">θ</mml:mi><mml:mo>⋅</mml:mo><mml:mi mathvariant="bold-italic">n</mml:mi><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>aft</mml:mtext></mml:msub></mml:mrow></mml:msub><mml:mo>.</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p></list-item></list>
The values for the physical constants used in the numerical experiments are
taken from <xref ref-type="bibr" rid="bib1.bibx13" id="text.43"/> and are shown in Table <xref ref-type="table" rid="Ch1.T2"/>.</p>

<?xmltex \floatpos{t}?><table-wrap id="Ch1.T2"><caption><p>Parameters and constants. Note that we choose <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>A</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math display="inline"><mml:mi>Q</mml:mi></mml:math></inline-formula> for
the case that the temperature of the ice is below <inline-formula><mml:math display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula>10 <inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mo>∘</mml:mo></mml:msup></mml:math></inline-formula>C, as the
solutions are mostly within this range.</p></caption><oasis:table frame="topbot"><?xmltex \begin{scaleboxenv}{.90}[.90]?><oasis:tgroup cols="4">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:colspec colnum="4" colname="col4" align="left"/>
     <oasis:thead>
       <oasis:row rowsep="1">  
         <oasis:entry colname="col1">Symbol</oasis:entry>  
         <oasis:entry colname="col2">Parameter</oasis:entry>  
         <oasis:entry colname="col3">Value</oasis:entry>  
         <oasis:entry colname="col4">SI unit</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi>n</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">Glen's flow law exponent</oasis:entry>  
         <oasis:entry colname="col3">3</oasis:entry>  
         <oasis:entry colname="col4">–</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>A</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">pre-exponential constant</oasis:entry>  
         <oasis:entry colname="col3">3.985 <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> 10<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn>13</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col4">Pa<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">3</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> s<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi>Q</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">activation energy</oasis:entry>  
         <oasis:entry colname="col3">6 <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> 10<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mn mathvariant="normal">4</mml:mn></mml:msup></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col4">J(mol)<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">universal gas constant</oasis:entry>  
         <oasis:entry colname="col3">8.314</oasis:entry>  
         <oasis:entry colname="col4">J(mol K)<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi>g</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">gravitational acceleration</oasis:entry>  
         <oasis:entry colname="col3">9.81</oasis:entry>  
         <oasis:entry colname="col4">m s<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi>c</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">heat capacity of ice</oasis:entry>  
         <oasis:entry colname="col3">2009</oasis:entry>  
         <oasis:entry colname="col4">J(kg K)<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi>K</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">thermal conductivity</oasis:entry>  
         <oasis:entry colname="col3">2.10</oasis:entry>  
         <oasis:entry colname="col4">W(m K)<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">ρ</mml:mi></mml:math></inline-formula></oasis:entry>  
         <oasis:entry colname="col2">density</oasis:entry>  
         <oasis:entry colname="col3">910</oasis:entry>  
         <oasis:entry colname="col4">kg m<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">3</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup><?xmltex \end{scaleboxenv}?></oasis:table></table-wrap>

      <p>For all numerical experiments, we extract surface velocities at points from
forward solution fields with specified “truth” geothermal heat flux field
as synthetic observations, and add random Gaussian noise to lessen the
“inverse crime”, which occurs when the same numerical method is used to
both synthesize the observations and drive the inverse solution
<xref ref-type="bibr" rid="bib1.bibx21" id="paren.44"><named-content content-type="pre">e.g.,</named-content></xref>. We specify the noise level through the
signal-to-noise ratio (SNR), which is defined as the ratio between the
average surface velocity <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>〈</mml:mo><mml:mi>u</mml:mi><mml:mo>〉</mml:mo></mml:mrow></mml:math></inline-formula> of <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi>N</mml:mi><mml:mtext>obs</mml:mtext></mml:msup></mml:mrow></mml:math></inline-formula>
observation points and the standard deviation of the added noise,
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">σ</mml:mi><mml:mtext>noise</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>, i.e.,

              <disp-formula id="Ch1.E41" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mtext>SNR</mml:mtext><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>〈</mml:mo><mml:mi>u</mml:mi><mml:mo>〉</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mi mathvariant="italic">σ</mml:mi><mml:mtext>noise</mml:mtext></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:mtext>with</mml:mtext><mml:mspace width="0.25em" linebreak="nobreak"/><mml:mo>〈</mml:mo><mml:mi>u</mml:mi><mml:mo>〉</mml:mo><mml:mo>=</mml:mo><mml:msqrt><mml:mrow><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mrow><mml:msup><mml:mi>N</mml:mi><mml:mtext>obs</mml:mtext></mml:msup></mml:mrow></mml:mfrac></mml:mstyle><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mrow><mml:msup><mml:mi>N</mml:mi><mml:mtext>obs</mml:mtext></mml:msup></mml:mrow></mml:munderover><mml:mo>|</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi>k</mml:mi></mml:msub><mml:msup><mml:mo>|</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:msqrt><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

        We choose a regularization parameter that approximately satisfies Morozov's
discrepancy principle <xref ref-type="bibr" rid="bib1.bibx37" id="paren.45"/>; i.e., we find a regularization
parameter such that <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>〈</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi mathvariant="italic">γ</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>-</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:msup><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mtext>obs</mml:mtext></mml:msup><mml:mo>〉</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>≈</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">δ</mml:mi></mml:math></inline-formula>, where <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">δ</mml:mi></mml:math></inline-formula> is
the noise level and <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mi mathvariant="italic">γ</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the surface velocity at the
observations points corresponding to the inferred geothermal heat flux for a
regularization parameter <inline-formula><mml:math display="inline"><mml:mi mathvariant="italic">γ</mml:mi></mml:math></inline-formula>.</p>
<sec id="Ch1.S5.SS1">
  <title>Two-dimensional model problem</title>
      <p>First, we consider inversion for a geothermal heat flux in a two-dimensional
problem. We discretize the domain, <inline-formula><mml:math display="inline"><mml:mi mathvariant="normal">Ω</mml:mi></mml:math></inline-formula>, into quadrilaterals
(Fig. <xref ref-type="fig" rid="Ch1.F2"/>) and employ biquadratic elements for the velocity
components, bilinear elements for pressure, and biquadratic elements for
temperature. Linear elements are used for the unknown geothermal heat
flux <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> defined on <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>, unless otherwise specified. For the
40 <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> 4 element discretization shown in Fig. <xref ref-type="fig" rid="Ch1.F2"/>, the combined number
of unknowns for the velocity, pressure, and temperature fields is 2392 and
for the geothermal heat flux it is 41. We have experimented with finer
uniform and nonuniform meshes and obtained similar result; hence unless
otherwise specified the results presented in this section are based on the
mesh shown in Fig. <xref ref-type="fig" rid="Ch1.F2"/>. Unless specified otherwise, we use 50 uniformly
distributed observation points on the top surface.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F2"><caption><p>Two-dimensional mesh (exaggerated in height for
visualization).</p></caption>
          <?xmltex \igopts{width=142.26378pt}?><graphic xlink:href="https://tc.copernicus.org/articles/10/1477/2016/tc-10-1477-2016-f02.pdf"/>

        </fig>

<sec id="Ch1.S5.SS1.SSS1">
  <title>Inversion for heat flux containing long- and short-wavelength variations</title>
      <p>We first study inversion with a “truth” geothermal heat flux defined by

                  <disp-formula id="Ch1.E42" content-type="numbered"><mml:math display="block"><mml:mrow><?xmltex \hack{\hbox\bgroup\fontsize{9}{9}\selectfont$\displaystyle}?><mml:mi>G</mml:mi><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn>20</mml:mn></mml:mfrac></mml:mstyle><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn>20</mml:mn></mml:mfrac></mml:mstyle><mml:mi>exp⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>-</mml:mo><mml:mi>L</mml:mi><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:msup><mml:mo>)</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mo>(</mml:mo><mml:mi>L</mml:mi><mml:mo>/</mml:mo><mml:mn>10</mml:mn><mml:msup><mml:mo>)</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn>100</mml:mn></mml:mfrac></mml:mstyle><mml:mi>sin⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn>20</mml:mn><mml:mi mathvariant="italic">π</mml:mi><mml:mi>x</mml:mi></mml:mrow><mml:mi>L</mml:mi></mml:mfrac></mml:mstyle></mml:mfenced><mml:mo>.</mml:mo><?xmltex \hack{$\egroup}?></mml:mrow></mml:math></disp-formula>

            Here, the second and third terms contribute a long-wavelength and a
short-wavelength variation to the geothermal heat flux, respectively; the
resulting “truth” heat flux is visualized in
Fig. <xref ref-type="fig" rid="Ch1.F4"/>b. The Gauss–Newton algorithm terminates
after eight Gauss–Newton iterations (requiring a total of 105 CG iterations),
when a decrease in the norm of the gradient by a factor of 10<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mn mathvariant="normal">5</mml:mn></mml:msup></mml:math></inline-formula> was achieved.</p>
      <p>In Fig. <xref ref-type="fig" rid="Ch1.F3"/>, we show the forward solution (temperature and
velocity fields) obtained by solving
Eqs. (<xref ref-type="disp-formula" rid="Ch1.E6"/>)–(<xref ref-type="disp-formula" rid="Ch1.E10"/>) with the geothermal heat flux given
by Eq. (<xref ref-type="disp-formula" rid="Ch1.E42"/>). This figure shows that the ice is in a cold state,
i.e., the temperature is below the pressure melting point. We note that a
temperature boundary layer is formed at the base of the ice corresponding to
the accumulation zone due to the flow of cold ice from the surface and due to
the advection dominating the diffusion. As the warmer ice close to the base
flows toward the surface in the ablation zone, another temperature boundary
layer forms at the surface at the right part of the ablation zone.</p>
      <p>Figure <xref ref-type="fig" rid="Ch1.F4"/>a shows the synthetic pointwise velocity
observations, obtained by extracting the surface velocities shown in
Fig. <xref ref-type="fig" rid="Ch1.F3"/> at the observation points, followed by adding
independent noise corresponding to SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20 to each observation. The
reconstruction of the geothermal heat flux and the corresponding recovered
velocity fields are shown in Fig. <xref ref-type="fig" rid="Ch1.F4"/>a and b, respectively.
Figure <xref ref-type="fig" rid="Ch1.F4"/>a illustrates that inversion is able to fit the
data to within the noise. However, while the long-wavelength component of the
geothermal heat flux is well recovered, the short-wavelength variations
cannot be reconstructed. This can be explained by the fact that the
sensitivity of the surface velocity to the short-wavelength variations in <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula>
is low due to the smoothing property of the Stokes operator. These low
sensitivities are overwhelmed by the noise in the data, making the
reconstruction of the short-wavelength component of <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> impossible. Taken
together, these results reinforce the ill-posedness of the inverse problem.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F3"><caption><p>Temperature and velocity found by solving the forward problem with
geothermal heat flux given in Eq. (<xref ref-type="disp-formula" rid="Ch1.E42"/>). The color visualizes
the temperature (in <inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mo>∘</mml:mo></mml:msup></mml:math></inline-formula>C) and the arrows show the corresponding
velocity field.</p></caption>
            <?xmltex \igopts{width=236.157874pt}?><graphic xlink:href="https://tc.copernicus.org/articles/10/1477/2016/tc-10-1477-2016-f03.pdf"/>

          </fig>

      <?xmltex \floatpos{t}?><fig id="Ch1.F4"><caption><p>Reconstruction of geothermal heat flux <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> in two-dimensional model
problem with SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20. <bold>(a)</bold> Surface velocity observations (red
dots show horizontal component; red squares vertical component) and
reconstructed velocities (black solid line shows horizontal component; black
dashed line shows vertical component); <bold>(b)</bold> “truth” and
reconstructed geothermal heat flux (the dashed line shows the “truth”
geothermal heat flux defined in Eq. (<xref ref-type="disp-formula" rid="Ch1.E42"/>); the solid line
shows the reconstructed geothermal heat flux).</p></caption>
            <?xmltex \igopts{width=170.716535pt}?><graphic xlink:href="https://tc.copernicus.org/articles/10/1477/2016/tc-10-1477-2016-f04.png"/>

          </fig>

      <?xmltex \floatpos{t}?><fig id="Ch1.F5" specific-use="star"><caption><p>Reconstructions of geothermal heat flux with different noise levels
and different wavelength variations for the two-dimensional model problem. In
<bold>(a)</bold>–<bold>(c)</bold> we display synthetic observations (red circles
for horizontal component and red squares for vertical component; the data
correspond to SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20) computed from the “truth” heat fluxes
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mtext>true</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> with <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>L</mml:mi><mml:mtext>w</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 80, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>L</mml:mi><mml:mtext>w</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 40, and
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>L</mml:mi><mml:mtext>w</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20 shown as red dashed lines
in <bold>(d)</bold>–<bold>(f)</bold>, respectively. Also shown
in <bold>(a)</bold>–<bold>(c)</bold> are the velocity components (solid and dashed
black lines) corresponding to the reconstructed heat fluxes shown as black
solid lines in <bold>(d)</bold>–<bold>(f)</bold>. In <bold>(d)</bold>–<bold>(f)</bold> we
additionally show the reconstruction of the geothermal heat fluxes from
surface velocity data with SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 100 (blue solid
lines).</p></caption>
            <?xmltex \igopts{width=398.338583pt}?><graphic xlink:href="https://tc.copernicus.org/articles/10/1477/2016/tc-10-1477-2016-f05.pdf"/>

          </fig>

<?xmltex \hack{\newpage}?>
</sec>
<sec id="Ch1.S5.SS1.SSS2">
  <title>Inversion for different SNR and different wavelength variation in the geothermal heat flux</title>
      <p>We continue with a systematic study of the consequence
of the wavelength variation of the geothermal heat flux and of the SNR on the
reconstruction. For this study, we consider different wavelengths of
variations in the “truth” geothermal heat flux

                  <disp-formula id="Ch1.E43" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mi>G</mml:mi><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">3</mml:mn><mml:mn>50</mml:mn></mml:mfrac></mml:mstyle><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">2</mml:mn><mml:mn>50</mml:mn></mml:mfrac></mml:mstyle><mml:mi>sin⁡</mml:mi><mml:mfenced open="(" close=")"><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mi mathvariant="italic">π</mml:mi><mml:mi>x</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mi>L</mml:mi><mml:mtext>w</mml:mtext></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

            where <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>L</mml:mi><mml:mtext>w</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is taken as 80, 40, or 20 km. As before, we solve the forward
problem with the true geothermal heat flux field Eq. (<xref ref-type="disp-formula" rid="Ch1.E43"/>) for the
different wavelengths. Then we add noise with a given SNR to the resulting
point velocity observations and use these synthetic observations to
reconstruct the geothermal heat flux field.</p>

<?xmltex \floatpos{t}?><table-wrap id="Ch1.T3"><caption><p>The relative error <inline-formula><mml:math display="inline"><mml:mrow><mml:mi>e</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, computed using Eq. (<xref ref-type="disp-formula" rid="Ch1.E44"/>),
between the “truth” Eq. (<xref ref-type="disp-formula" rid="Ch1.E43"/>) and the reconstructed
geothermal flux for wavelength variations <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>L</mml:mi><mml:mtext>w</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 80, 40, and
20 km and for SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 100, 20,
and 10.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="4">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="center"/>
     <oasis:colspec colnum="3" colname="col3" align="center"/>
     <oasis:colspec colnum="4" colname="col4" align="center"/>
     <oasis:thead>
       <oasis:row>  
         <oasis:entry colname="col1"><inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>L</mml:mi><mml:mtext>w</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula></oasis:entry>  
         <oasis:entry rowsep="1" namest="col2" nameend="col4">SNR </oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">  
         <oasis:entry colname="col1"/>  
         <oasis:entry colname="col2">100</oasis:entry>  
         <oasis:entry colname="col3">20</oasis:entry>  
         <oasis:entry colname="col4">10</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>  
         <oasis:entry colname="col1">80</oasis:entry>  
         <oasis:entry colname="col2">0.038</oasis:entry>  
         <oasis:entry colname="col3">0.136</oasis:entry>  
         <oasis:entry colname="col4">0.266</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1">40</oasis:entry>  
         <oasis:entry colname="col2">0.136</oasis:entry>  
         <oasis:entry colname="col3">0.570</oasis:entry>  
         <oasis:entry colname="col4">0.938</oasis:entry>
       </oasis:row>
       <oasis:row>  
         <oasis:entry colname="col1">20</oasis:entry>  
         <oasis:entry colname="col2">0.528</oasis:entry>  
         <oasis:entry colname="col3">0.999</oasis:entry>  
         <oasis:entry colname="col4">1.002</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p>In Fig. <xref ref-type="fig" rid="Ch1.F5"/>, we show inversion results for different
wavelength variations and for different noise levels. To assess the
reconstruction quantitatively, in Table <xref ref-type="table" rid="Ch1.T3"/> we report on the
relative error between the “truth” and reconstructed geothermal flux fields
for various wavelengths variations and noise levels. This relative error is
computed as follows.

                  <disp-formula id="Ch1.E44" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mi>e</mml:mi><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>|</mml:mo><mml:mi>G</mml:mi><mml:mo>-</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mtext>true</mml:mtext></mml:msub><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi>L</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mo>|</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mi>G</mml:mi><mml:mtext>true</mml:mtext></mml:msub><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msub><mml:mi>L</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

            <?xmltex \hack{\newpage}?><?xmltex \hack{\noindent}?>where <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 0.06 W m<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> is the mean of the “truth” geothermal
heat flux <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mtext>true</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>. Based on the results summarized in
Fig. <xref ref-type="fig" rid="Ch1.F5"/> and Table <xref ref-type="table" rid="Ch1.T3"/>, we make the following observations:
<list list-type="order"><list-item><p>For fixed wavelength, the reconstructed geothermal heat flux <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> approaches
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mtext>true</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> as the noise level decreases.</p></list-item><list-item><p>For fixed noise level, shorter-wavelength variations of the
geothermal heat flux are more difficult to reconstruct.</p></list-item><list-item><p>For short wavelength (e.g., <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>L</mml:mi><mml:mtext>w</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20 km, see
Fig. <xref ref-type="fig" rid="Ch1.F5"/>f) and small noise (e.g., SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 100), the wave
crests and valleys of the truth heat flux are recovered, but the magnitude of
the reconstruction is smaller than of the “truth” geothermal heat flux. For
the case with larger noise (e.g., SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20), the reconstruction does not
detect the crests and valleys, although the corresponding surface velocity
still matches the observations within the noise (see the black curve in
Fig. <xref ref-type="fig" rid="Ch1.F5"/>f). The results in Table <xref ref-type="table" rid="Ch1.T3"/>
confirm these findings, in particular we note that the relative errors for
the short wavelength and large noise (i.e., <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>L</mml:mi><mml:mtext>w</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20 km with SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20 or
SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 10) is roughly 100 %, i.e., the reconstruction fails to capture the
variations of the “truth” geothermal heat flux.</p></list-item></list></p>
</sec>
<sec id="Ch1.S5.SS1.SSS3">
  <title>Influence of the number of observations and the mesh resolution</title>
      <p>We consider 10, 25, 50, and 100 uniformly distributed observation points and two
different meshes, namely a mesh consisting of 40 <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> 4 elements with
linear elements for the geothermal heat flux and a mesh consisting of
80 <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> 4 elements with quadratic finite elements for the unknown heat
flux. The “truth” geothermal heat flux field is given
by Eq. (<xref ref-type="disp-formula" rid="Ch1.E43"/>) and the noise level in the observations is SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20.
In Fig. <xref ref-type="fig" rid="Ch1.F6"/>a, we show the “truth” and the
reconstructed geothermal heat flux fields for 10, 25, 50, and 100 observation
points. This figure shows that the reconstruction improves significantly as
the number of observation points increases.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F6"><caption><p>Shown in <bold>(a)</bold> are the “truth” (red dashed line) and the
reconstructed geothermal heat flux fields for 10 (magenta), 25 (blue),
50 (black), and 100 (cyan) uniformly distributed observation points. The
corresponding relative error computed using Eq. (<xref ref-type="disp-formula" rid="Ch1.E44"/>) are 0.425,
0.374, 0.243, and 0.195. These reconstructions are computed using the finer
discretization, which uses 80 quadratic elements for the heat flux; the
reconstructions obtained with the coarser discretization are similar.
In <bold>(b)</bold>, the corresponding (normalized) spectrum of the data misfit
Hessian for the two different discretizations (solid lines correspond to the
40 <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> 4 element mesh with a linear basis for the heat flux, and
dashed lines correspond to the 80 <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> 4 element mesh with a quadratic
basis for the heat flux) and different numbers of observation points are
shown. We note that the cyan solid line covers the black solid line as the
recoverable information is limited by the mesh
resolution.</p></caption>
            <?xmltex \igopts{width=170.716535pt}?><graphic xlink:href="https://tc.copernicus.org/articles/10/1477/2016/tc-10-1477-2016-f06.png"/>

          </fig>

      <p>To study the influence of the number of observations and of the mesh
resolution on the ill-posedness of the inversion, we study the properties of
the Hessian matrix of the data misfit component of <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula> (i.e., the
Hessian of the first term in the cost function defined by Eq. <xref ref-type="disp-formula" rid="Ch1.E13"/>). To
explain why the Hessian of the data misfit provides insight into the
ill-posedness of an inverse problem, consider a Taylor expansion of the data
misfit term in <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula> about the solution of the inverse problem
Eq. (<xref ref-type="disp-formula" rid="Ch1.E13"/>). When the inverse solution is able to fit the data to within
the noise and the noise is small, the gradient of the data misfit component
of <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula> is negligible, and the local behavior of <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula> is
governed by the Hessian term. Perturbations of the geothermal heat flux in
directions associated with large eigenvalues of the data misfit Hessian
result in a large change of the cost functional and are thus well constrained
by the data misfit term. However, the cost functional is not
sensitive to perturbations in parameter directions associated with small
eigenvalues of the Hessian and, as a consequence, these directions are only
weakly (or not at all) constrained. The more such directions exist, the more
ill-posed the inverse problem is. Thus, the spectrum of the Hessian provides
information on which directions in the parameter space can be reliably
recovered (namely, those corresponding to large eigenvalues) and which
directions are poorly or not at all recoverable (those corresponding to small
or zero eigenvalues). The Hessian also plays an analogous role in quantifying
uncertainty in the inversion in the framework of Bayesian inference
<xref ref-type="bibr" rid="bib1.bibx34" id="paren.46"/>. Here, the inverse of the Hessian provides an
approximation to the covariance matrix of the posterior probability density
function, which is regarded as the solution of an appropriately formulated
Bayesian inverse problem. An approximation of the inverse Hessian can be
computed even for large-scale inverse problems by exploiting low-rank
properties that are typical for many ill-posed inverse problems
<xref ref-type="bibr" rid="bib1.bibx11 bib1.bibx28 bib1.bibx22" id="paren.47"/>.</p>
      <p>Since we are using a Newton method to solve the inverse problem, the Hessian
matrix is available (or more correctly, its action in a particular direction,
as presented in Sect. <xref ref-type="sec" rid="Ch1.S3"/>, is available, and this is all
that is required to extract the spectrum using a Lanczos method). In the
following, we use the spectrum of the data misfit component of the Hessian to
characterize how the ill-posedness of the inverse problem varies with the
number of observations and the mesh resolution. In
Fig. <xref ref-type="fig" rid="Ch1.F6"/>b, the spectra of the data misfit Hessians
for different numbers of observations and the two different mesh resolutions
are shown. If we were to include the regularization in the Hessians (i.e.,
consider the full Hessian of the cost functional <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula>, not only the
data misfit term), these spectra would not collapse to zero but would remain
bounded from below. Figure <xref ref-type="fig" rid="Ch1.F6"/>b shows that the spectra
of the data misfit Hessians decay rapidly, in particular for the cases with a
small number of observation points. This illustrates the severe ill-posedness
of the geothermal heat flux inversion problem considered here. Note that
since the observed data are the horizontal and vertical components of the
velocity fields at points on the top surface, the rank of the data misfit
Hessian cannot be larger than twice the number of the observations points;
this can be seen, for instance, in the spectrum for the case with
10 observation points. As the number of observation points increases, the number
of nonzero eigenvalues of the data misfit Hessian increases. However, the
largest eigenvalues, which correspond to the parameter directions most
strongly constrained by the data, do not change as the number of observations
increases. Thus, these parameter directions are already well constrained by a
small number of observations. Also, note that the finer discretization of the
model and the heat flux becomes more important as more observations are
available. This is because the additional information obtained from more
observations can be used to better inform the geothermal heat flux only when
the finite element discretization of that heat flux and of the model
equations has sufficient degrees of freedom to capture that information.</p>
</sec>
</sec>
<sec id="Ch1.S5.SS2">
  <title>Three-dimensional model problem</title>
      <p>Next, we consider a three-dimensional model problem with domain <inline-formula><mml:math display="inline"><mml:mi mathvariant="normal">Ω</mml:mi></mml:math></inline-formula> of
length and width <inline-formula><mml:math display="inline"><mml:mi>L</mml:mi></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 80 km and height given by Eq. (<xref ref-type="disp-formula" rid="Ch1.E39"/>). A cross
section of the geometry is shown in Fig. <xref ref-type="fig" rid="Ch1.F1"/>. We discretize the
domain, <inline-formula><mml:math display="inline"><mml:mi mathvariant="normal">Ω</mml:mi></mml:math></inline-formula>, using 20 <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> 10 <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> 4 hexahedra. The combined number
of degrees of freedom for velocity, pressure, and temperature is 32 151 and
for the geothermal heat flux it is 231. In this numerical experiment, we aim
to reconstruct the spatially varying geothermal heat flux

                <disp-formula id="Ch1.E45" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mi>G</mml:mi><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn>20</mml:mn></mml:mfrac></mml:mstyle><mml:mo>+</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mn mathvariant="normal">1</mml:mn><mml:mn>20</mml:mn></mml:mfrac></mml:mstyle><mml:mi>exp⁡</mml:mi><mml:mfenced close=")" open="("><mml:mo>-</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>(</mml:mo><mml:mi>y</mml:mi><mml:mo>-</mml:mo><mml:mi>L</mml:mi><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn><mml:msup><mml:mo>)</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow><mml:mrow><mml:mn mathvariant="normal">2</mml:mn><mml:mo>(</mml:mo><mml:mi>L</mml:mi><mml:mo>/</mml:mo><mml:mn>10</mml:mn><mml:msup><mml:mo>)</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

          where <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>(</mml:mo><mml:mi>x</mml:mi></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>∈</mml:mo></mml:math></inline-formula> [0, <inline-formula><mml:math display="inline"><mml:mi>L</mml:mi></mml:math></inline-formula>] <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> [0, <inline-formula><mml:math display="inline"><mml:mi>L</mml:mi></mml:math></inline-formula>]. We use 20 <inline-formula><mml:math display="inline"><mml:mo>×</mml:mo></mml:math></inline-formula> 20 uniformly distributed
pointwise velocity observations at the top surface and add noise to the
synthetic observations such that SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20. The algorithm converged after
six Gauss–Newton iterations (involving a total of 42 CG iterations), where we
again terminated the iterations as soon as the norm of the gradient was
decreased by a factor of 10<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mn mathvariant="normal">5</mml:mn></mml:msup></mml:math></inline-formula>.</p>
      <p>The top row in Fig. <xref ref-type="fig" rid="Ch1.F7"/> shows the velocity
observations on the top surface and the surface velocities obtained with the
reconstructed geothermal heat flux. The bottom row shows the “truth” and
the reconstructed geothermal heat flux fields. We note that the higher
geothermal heat flux in the center warms up the ice, results in lower
viscosity and, thus, faster ice flow. Also note that the inverse solution is
able to fit the reconstructed velocity to the observations to within the
noise. The geothermal heat flux in the upstream part is well recovered, but
the reconstruction deteriorates downstream. We attribute this phenomenon to
the fact that the heating effect mostly affects the downstream surface flow
and, hence, the larger heat flux near the outflow boundary has little effect
on the ice flow velocity on the surface above. In
Fig. <xref ref-type="fig" rid="Ch1.F8"/>, we show the temperature field based on the
reconstructed geothermal heat flux. We note that the ice is cold, with a
temperature field comparable to the two-dimensional model problem on each
slice (Fig. <xref ref-type="fig" rid="Ch1.F8"/>a). In Fig. <xref ref-type="fig" rid="Ch1.F8"/>b, we
show the temperature at the base <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> of the ice. Note that the
temperature is higher in the center due to the nonuniform geothermal heat
flux, but it is below the melting point everywhere in <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F7"><caption><p>Reconstruction of geothermal heat flux <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> for the three-dimensional
model problem. Shown in <bold>(a)</bold> are observations of the surface velocity
(arrows and contour lines) with SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20, and <bold>(b)</bold> shows the
surface velocity corresponding to the reconstructed geothermal heat flux.
In <bold>(c)</bold>, we show the “truth” geothermal heat flux defined in
Eq. (<xref ref-type="disp-formula" rid="Ch1.E45"/>), and <bold>(d)</bold> shows the reconstructed heat
flux.</p></caption>
          <?xmltex \igopts{width=236.157874pt}?><graphic xlink:href="https://tc.copernicus.org/articles/10/1477/2016/tc-10-1477-2016-f07.pdf"/>

        </fig>

      <?xmltex \floatpos{t}?><fig id="Ch1.F8"><caption><p>The temperature field (in <inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mo>∘</mml:mo></mml:msup></mml:math></inline-formula>C) corresponding to the
reconstructed geothermal heat flux <inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> for the three-dimensional model
problem. Shown in <bold>(a)</bold> are slices through the domain, and
<bold>(b)</bold> shows the temperature at the base
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>.</p></caption>
          <?xmltex \igopts{width=170.716535pt}?><graphic xlink:href="https://tc.copernicus.org/articles/10/1477/2016/tc-10-1477-2016-f08.png"/>

        </fig>

</sec>
</sec>
<sec id="Ch1.S6">
  <title>Fully coupled versus one-way coupled approaches in multiphysics inversion</title>
      <p>Multiphysics forward problems are commonly solved using so-called
“one-way coupled” or “operator-split” approaches. For example, for a
coupled problem with two physics components, the first physics subproblem
would be solved assuming the state variables of the second physics subproblem
remain fixed, after which the second physics subproblem is solved using the
just-computed first physics state variables. One then iterates until
convergence, which is guaranteed only if the spectral radius of a certain
iteration matrix is less than unity. If the iteration converges, it converges
to the correct solution. Such one-way coupled solvers have been used
successfully for ice flow forward problems
<xref ref-type="bibr" rid="bib1.bibx5 bib1.bibx18 bib1.bibx32 bib1.bibx39 bib1.bibx38" id="paren.48"/>,
in which case the solver iterates back and forth
between Stokes and energy equation solves, passing velocities from the former
to the latter, and temperatures from the latter to the former. The
convergence rate is only linear, as opposed to quadratic for a fully coupled
Newton forward solver, but one might still prefer the one-way coupled
approach due to its ability to capitalize on existing single-physics solvers
and codes, its avoidance of computing Jacobians of coupling terms, and the
difficulties of designing preconditioners for the fully coupled Jacobian.
Therefore, it is tempting to use the same operator from a one-way coupled
forward solver to also solve the adjoint problem during inversion. However,
this also leads to an incorrect adjoint operator, since it discards some of
the coupling blocks within the operator. This in turn leads to an incorrect
gradient, which can lead to inaccurate or incorrect solutions of the inverse
problem, depending on how strong the coupling terms in the Jacobian of the
fully coupled problem are. In this section we illustrate this issue using the
multiphysics inverse problem given by the coupled system consisting of the
Stokes equations (Eqs. <xref ref-type="disp-formula" rid="Ch1.E1"/> and <xref ref-type="disp-formula" rid="Ch1.E2"/>) and the energy
equation (Eq. <xref ref-type="disp-formula" rid="Ch1.E3"/>). In the rest of this section, to simplify the
notation, we drop the <inline-formula><mml:math display="inline"><mml:mi>h</mml:mi></mml:math></inline-formula> superscripts on discrete variables.</p>
      <p><?xmltex \hack{\newpage}?>In the following discussion, we express the forward
problem Eqs. (<xref ref-type="disp-formula" rid="Ch1.E6"/>)–(<xref ref-type="disp-formula" rid="Ch1.E10"/>) in terms of the residuals
of the discretized equations, as follows:

              <disp-formula id="Ch1.Ex39"><mml:math display="block"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="bold-italic">p</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="bold-italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mspace linebreak="nobreak" width="0.25em"/><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi>p</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo><mml:mspace width="0.25em" linebreak="nobreak"/><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:msub><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi><mml:mo>,</mml:mo><mml:mi mathvariant="bold-italic">θ</mml:mi><mml:mo>)</mml:mo><mml:mo>=</mml:mo><mml:mn mathvariant="normal">0</mml:mn><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">u</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">p</mml:mi></mml:math></inline-formula>, and <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">θ</mml:mi></mml:math></inline-formula> denote the discretized
velocity, pressure, and temperature, respectively, and <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>,
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi>p</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, and <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> are the discrete residuals of the
momentum, mass, and energy equations, respectively. The discrete adjoint
system corresponding to Eqs. (<xref ref-type="disp-formula" rid="Ch1.E19"/>)–(<xref ref-type="disp-formula" rid="Ch1.E23"/>) can be written as

              <disp-formula id="Ch1.E46" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mfenced close="]" open="["><mml:mtable class="array" columnalign="center center center"><mml:mtr><mml:mtd><mml:mrow><mml:msubsup><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi>u</mml:mi></mml:mrow><mml:mi>T</mml:mi></mml:msubsup></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi>p</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd><mml:mtd><mml:mrow><mml:msubsup><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>u</mml:mi></mml:mrow><mml:mi>T</mml:mi></mml:msubsup></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:msubsup><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi>p</mml:mi></mml:mrow><mml:mi>T</mml:mi></mml:msubsup></mml:mrow></mml:mtd><mml:mtd><mml:mn mathvariant="normal">0</mml:mn></mml:mtd><mml:mtd><mml:mn mathvariant="normal">0</mml:mn></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:msubsup><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:mrow><mml:mi>T</mml:mi></mml:msubsup></mml:mrow></mml:mtd><mml:mtd><mml:mn mathvariant="normal">0</mml:mn></mml:mtd><mml:mtd><mml:mrow><mml:msubsup><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:mrow><mml:mi>T</mml:mi></mml:msubsup></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mfenced><mml:mfenced open="[" close="]"><mml:mtable class="array" columnalign="center"><mml:mtr><mml:mtd><mml:mi mathvariant="bold-italic">v</mml:mi></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mi mathvariant="bold-italic">q</mml:mi></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mi mathvariant="bold-italic">λ</mml:mi></mml:mtd></mml:mtr></mml:mtable></mml:mfenced><mml:mo>=</mml:mo><mml:mfenced open="[" close="]"><mml:mtable class="array" columnalign="center"><mml:mtr><mml:mtd><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">f</mml:mi><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn mathvariant="bold">0</mml:mn></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn mathvariant="bold">0</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mfenced><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">v</mml:mi></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">q</mml:mi></mml:math></inline-formula>, and <inline-formula><mml:math display="inline"><mml:mi mathvariant="bold-italic">λ</mml:mi></mml:math></inline-formula> denote the discretized
adjoint velocity, pressure, and temperature, respectively, and <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">f</mml:mi><mml:mi>v</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is
the right-hand side of the discrete adjoint momentum equation corresponding
to the misfit term in Eq. (<xref ref-type="disp-formula" rid="Ch1.E22"/>). Here, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi>u</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>∂</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mo>/</mml:mo><mml:mo>∂</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi></mml:mrow></mml:math></inline-formula>,
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi>p</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>∂</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mo>/</mml:mo><mml:mo>∂</mml:mo><mml:mi mathvariant="bold-italic">p</mml:mi></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>∂</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi>u</mml:mi></mml:msub><mml:mo>/</mml:mo><mml:mo>∂</mml:mo><mml:mi mathvariant="bold-italic">θ</mml:mi></mml:mrow></mml:math></inline-formula>,
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>u</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>∂</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:msub><mml:mo>/</mml:mo><mml:mo>∂</mml:mo><mml:mi mathvariant="bold-italic">u</mml:mi></mml:mrow></mml:math></inline-formula>,
and
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>∂</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:msub><mml:mo>/</mml:mo><mml:mo>∂</mml:mo><mml:mi mathvariant="bold-italic">θ</mml:mi></mml:mrow></mml:math></inline-formula>.
We note that the submatrix [<inline-formula><mml:math display="inline"><mml:mrow><mml:msubsup><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi>u</mml:mi></mml:mrow><mml:mi>T</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>,
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi>p</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula>; <inline-formula><mml:math display="inline"><mml:mrow><mml:msubsup><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi>p</mml:mi></mml:mrow><mml:mi>T</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, 0] is the transpose of the linearized
discrete Stokes operator (which is in fact symmetric), and
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>u</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> are Jacobians of the
coupling terms between the Stokes and the energy equations. In particular,
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> is the term corresponding to the derivative of the
momentum residual <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi>u</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> with respect to the temperature, and
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>u</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> is the term corresponding to the derivative of the
energy residual <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> with respect to the velocity. We call the
gradients obtained when neglecting either of these coupling matrices in the
adjoint systems “one-way coupled gradients” and denote these by
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mtext>owc</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>. Next, we study the consequences of the
use of one-way coupled gradients on the inversion.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F9" specific-use="star"><caption><p>Reconstructions of the geothermal heat flux based on the one-way
coupled gradient obtained when the coupling matrix
<inline-formula><mml:math display="inline"><mml:mrow><mml:msubsup><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>u</mml:mi></mml:mrow><mml:mi>T</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> is neglected in the adjoint system for
observations with SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20. Shown in <bold>(a)</bold> is the “truth”
geothermal heat flux <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi>G</mml:mi><mml:mtext>true</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> (red dashed line), the reconstructions
<inline-formula><mml:math display="inline"><mml:mi>G</mml:mi></mml:math></inline-formula> based on the exact gradient (blue dash-dot line), and based on the
one-way coupled gradient (black solid line). In <bold>(b)</bold>, the evolution
of the norm of the exact gradient is shown for two different solutions of the
minimization problem, one using the exact (blue dashed) and one using the
one-way coupled (black solid) gradient. We show in <bold>(c)</bold> the cosine of
the angle between the one-way coupled gradient and the exact gradient in each
iteration (black solid line; see Eq. <xref ref-type="disp-formula" rid="Ch1.E47"/>) and the cosine of the
angle between the search direction and the steepest descent direction (black
dashed line: based on the one-way coupled gradient; blue dashed line: based
on the exact gradient; see Eq. <xref ref-type="disp-formula" rid="Ch1.E48"/>). When the latter value becomes
negative, the search direction is not a descent direction and the algorithm
terminates as the line search fails.</p></caption>
        <?xmltex \igopts{width=426.791339pt}?><graphic xlink:href="https://tc.copernicus.org/articles/10/1477/2016/tc-10-1477-2016-f09.pdf"/>

      </fig>

      <p>As an illustration of neglecting Jacobians of coupling terms in the adjoint
equation, we neglect <inline-formula><mml:math display="inline"><mml:mrow><mml:msubsup><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>u</mml:mi></mml:mrow><mml:mi>T</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> in Eq. (<xref ref-type="disp-formula" rid="Ch1.E46"/>). Note
that we retain <inline-formula><mml:math display="inline"><mml:mrow><mml:msubsup><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi>u</mml:mi><mml:mi mathvariant="italic">θ</mml:mi></mml:mrow><mml:mi>T</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> in the adjoint operator. This allows
us to uncouple the adjoint Stokes equation from the adjoint energy equation,
leading to a block triangular system. This can be solved by first solving for
the adjoint velocity and pressure and then computing the adjoint temperature
using the just-computed adjoint velocity. Because we have neglected a block
within the adjoint operator, we obtain an incorrect adjoint solution, which
then leads to an incorrect gradient. How incorrect the gradient is depends on
the “magnitude” of <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold">B</mml:mi><mml:mrow><mml:mi mathvariant="italic">θ</mml:mi><mml:mi>u</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula>. To study the implications of
using the resulting one-way coupled gradient <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mtext>owc</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> in an inverse problem, we compare the
inverse solution based on the one-way coupled gradient with the solution
obtained with the exact gradient <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mtext>exact</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>. We
summarize our findings in Fig. <xref ref-type="fig" rid="Ch1.F9"/>. Since the
one-way coupled gradient is not the correct gradient of the cost functional <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula>,
a descent direction is not guaranteed, and as a result the
Gauss–Newton method for solving the inverse problem Eq. (<xref ref-type="disp-formula" rid="Ch1.E13"/>) terminates
when the search direction based on the one-way coupled gradient is not a
descent direction for <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula>. Thus the solution of the inverse problem
based on the one-way coupled gradient can differ from the correct solution
not only because the incorrect optimality condition is being satisfied but
also because the search direction can terminate prematurely due to
inconsistency of the gradient and cost functional. However, despite the fact
that we attempt to solve the wrong optimality conditions (i.e., vanishing of
the one-way coupled gradient rather than the exact gradient) and despite the
premature termination, one can still obtain a reasonable approximation of the
inverse solution. This is depicted in Fig. <xref ref-type="fig" rid="Ch1.F9"/>a,
which shows the inferred geothermal heat flux based both on the exact
gradient and on the one-way coupled gradient. As can be seen, they are close
to each other.</p>
      <p>In Fig. <xref ref-type="fig" rid="Ch1.F9"/>b we show the convergence of the norm of
the gradient for two iterations, one corresponding to the correct gradient
and one corresponding to the one-way coupled gradient. Note that the one-way
coupled gradient iteration terminates prematurely after 11 iterations.
Figure <xref ref-type="fig" rid="Ch1.F9"/>c explores why the one-way coupled iteration
terminated early.</p>
      <p>First, we plot the angle between the exact gradient
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mtext>exact</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> and the one-way coupled gradient
<inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mtext>owc</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula>, i.e,

              <disp-formula id="Ch1.E47" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mi>cos⁡</mml:mi><mml:msub><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>〈</mml:mo><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mtext>exact</mml:mtext></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mtext>owc</mml:mtext></mml:msub><mml:msub><mml:mo>〉</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mo>|</mml:mo><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mtext>exact</mml:mtext></mml:msub><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msup><mml:mi>L</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mtext>owc</mml:mtext></mml:msub><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msup><mml:mi>L</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>.</mml:mo></mml:mrow></mml:math></disp-formula>

        As can be seen, initially the one-way coupled gradient direction coincides
with the exact gradient direction, but the angle between them increases
substantially in the later iterations. Beyond this incorrectness, the
Gauss–Newton search direction based on the one-way coupled gradient is not
even a descent direction for the cost function <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula>, leading to the
premature termination of the Gauss–Newton iterations. This is because the
one-way coupled gradient is not consistent with the contours of <inline-formula><mml:math display="inline"><mml:mi mathvariant="script">J</mml:mi></mml:math></inline-formula>
(which are computed using the correct forward model). Note that a search
direction <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:math></inline-formula> is a descent direction only if its angle <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> with
respect to the negative gradient direction <inline-formula><mml:math display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mtext>exact</mml:mtext></mml:msub></mml:mrow></mml:math></inline-formula> is less than <inline-formula><mml:math display="inline"><mml:mrow><mml:mi mathvariant="italic">π</mml:mi><mml:mo>/</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:math></inline-formula>, i.e.,
<inline-formula><mml:math display="inline"><mml:mrow><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>&gt;</mml:mo></mml:math></inline-formula> 0 <xref ref-type="bibr" rid="bib1.bibx25" id="paren.49"><named-content content-type="post">p. 21</named-content></xref>. The cosine of <inline-formula><mml:math display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula> is thus given by

              <disp-formula id="Ch1.E48" content-type="numbered"><mml:math display="block"><mml:mrow><mml:mi>cos⁡</mml:mi><mml:msub><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:mo>〈</mml:mo><mml:mo>-</mml:mo><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mtext>exact</mml:mtext></mml:msub><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:msub><mml:mo>〉</mml:mo><mml:mrow><mml:msub><mml:mi mathvariant="normal">Γ</mml:mi><mml:mtext>b</mml:mtext></mml:msub></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:mo>|</mml:mo><mml:msub><mml:mi mathvariant="script">G</mml:mi><mml:mtext>exact</mml:mtext></mml:msub><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msup><mml:mi>L</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover><mml:msub><mml:mo>|</mml:mo><mml:mrow><mml:msup><mml:mi>L</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>

        where <inline-formula><mml:math display="inline"><mml:mover accent="true"><mml:mi>G</mml:mi><mml:mo mathvariant="normal">̃</mml:mo></mml:mover></mml:math></inline-formula> is the Newton search direction.
Figure <xref ref-type="fig" rid="Ch1.F9"/>c plots the values of <inline-formula><mml:math display="inline"><mml:mrow><mml:mi>cos⁡</mml:mi><mml:msub><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub></mml:mrow></mml:math></inline-formula>. As can
be seen, the line search with the search direction based on the one-way
coupled approach fails at iteration 11, when <inline-formula><mml:math display="inline"><mml:mrow><mml:mi>cos⁡</mml:mi><mml:mo>(</mml:mo><mml:msub><mml:mi mathvariant="italic">ϕ</mml:mi><mml:mn mathvariant="normal">2</mml:mn></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> <inline-formula><mml:math display="inline"><mml:mo>&lt;</mml:mo></mml:math></inline-formula> 0. In other
words, not only is the computed search direction incorrect (relative to that
of a correct Gauss–Newton step), but it does not even point downhill!</p>
      <p>These results illustrate several important characteristics of approximations
made in inverse problems governed by multiphysics forward models. First,
discarding the Jacobians of coupling terms within the adjoint operator can
result in substantially incorrect gradients. This could lead to incorrect
solution of the inverse problem due to the fact that the vanishing of the
gradient constitutes the first-order necessary condition for solution of the
inverse problem. It could also lead to premature termination of the
iterations due to the loss of a descent direction stemming from
inconsistency of the gradient with the contours of the cost function. Second,
despite the incorrect gradient, it may still be possible to obtain a
reasonable solution to the inverse problem, particularly when the discrepancy
between exact and approximate gradients remains small for a sufficient number
of iterations to provide a good approximate inverse solution.</p><?xmltex \hack{\newpage}?>
</sec>
<sec id="Ch1.S7" sec-type="conclusions">
  <title>Conclusions</title>
      <p>We have formulated an inverse problem for estimating the uncertain geothermal
heat flux at the base of an ice sheet or glacier in a thermomechanically
coupled nonlinear Stokes model from surface velocity observations. Since the
forward problem involves an advection-dominated energy equation, a SUPG stabilization was used to suppresses
non-physical oscillations in the temperature field. This required use of a
discretize-then-optimize approach to compute adjoint-based gradients and
Hessians. We advocated an inexact Newton method to solve the discretized
inverse problem. Using two- and three-dimensional model problems, we studied
the identifiability of the geothermal heat flux field on the basal boundary.
We found that the quality of the reconstruction deteriorates with
shorter-wavelength variations of this heat flux and with increasing noise in
the observations. In particular, a geothermal heat flux with a mean value of
0.06 W m<inline-formula><mml:math display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> can be reconstructed accurately from observations that
contain 1 % noise (SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 100) when the wavelength-to-ice-thickness ratio is
<inline-formula><mml:math display="inline"><mml:mo>∼</mml:mo></mml:math></inline-formula>20 and from observations that contain 5 % noise (SNR <inline-formula><mml:math display="inline"><mml:mo>=</mml:mo></mml:math></inline-formula> 20) for a
wavelength-to-ice-thickness ratio of <inline-formula><mml:math display="inline"><mml:mo>∼</mml:mo></mml:math></inline-formula> 40. In addition, we studied the
influence of the number of observations and the mesh resolution on the
reconstruction and found that the reconstruction improves substantially as
the number of observation points increases, provided the discretization is
fine enough.</p>
      <p>Moreover, we derived expressions for the gradient and the Hessian of the cost
functional for a fully thermomechanically coupled Stokes forward model. We
discussed problems that can occur when the gradient is approximated by a
so-called one-way coupled approach, in which the two-way coupling of Stokes
and the energy equations is replaced by one-way coupling, as is frequently
done within forward solvers. The results show that the inversion based on a
one-way coupled approach can fail to converge due to the inconsistency of the
gradient and the cost functional, leading to the loss of a descent direction.
Nevertheless, one might still obtain a reasonable approximate inverse
solution, particularly if important features of the reconstructed solution
emerge early in optimization iterations, before the iterations terminate prematurely.</p>
      <p>We have used synthetic observations on idealized geometries to probe the
limits of invertibility for the geothermal heat flux field. We have assumed
that the ice is cold everywhere and thus enforced a no-slip boundary
condition at the base. In reality, the ice may reach the pressure melting
point at some basal locations. This requires a different set of boundary
conditions, which account for ice either below or at the melting point.
Solution of thermomechanically coupled ice flow models with such variational
inequality boundary conditions is the subject of our current work.</p><?xmltex \hack{\newpage}?>
</sec>

      
      </body>
    <back><ack><title>Acknowledgements</title><p>We appreciate helpful comments from Ginny Catania. This work was partially
supported by NSF's Cyber-Enabled Discovery and Innovation Program
(OPP-0941678) and DOE Office of Science, Office of Advanced Scientific
Computing Research (DE-SC0002710, DE-SC0009286). Hongyu Zhu also acknowledges
funding through the ICES NIMS Fellowship. <?xmltex \hack{\newline}?><?xmltex \hack{\newline}?>
Edited by: G. H. Gudmundsson</p></ack><ref-list>
    <title>References</title>

      <ref id="bib1.bibx1"><label>Bangerth(2008)</label><mixed-citation>Bangerth, W.: A Framework for the Adaptive Finite Element Solution of Large-Scale
Inverse Problems, SIAM J. Scient. Comput., 30, 2965–2989, <ext-link xlink:href="http://dx.doi.org/10.1137/070690560" ext-link-type="DOI">10.1137/070690560</ext-link>, 2008.</mixed-citation></ref>
      <ref id="bib1.bibx2"><label>Borzì and Schulz(2012)</label><mixed-citation>
Borzì, A. and Schulz, V.: Computational Optimization of Systems Governed
by Partial Differential Equations, SIAM, Philadelphia, PA, 3–26, 2012.</mixed-citation></ref>
      <ref id="bib1.bibx3"><label>Brooks and Hughes(1982)</label><mixed-citation>
Brooks, A. N. and Hughes, T. J. R.: Streamline Upwind/Petrov–Galerkin
Formulations for Convection Dominated Flows with Particular Emphasis on the
Incompressible Navier–Stokes Equations, Comput. Meth. Appl. Mech. Eng., 32, 199–259, 1982.</mixed-citation></ref>
      <ref id="bib1.bibx4"><label>Collis and Heinkenschloss(2002)</label><mixed-citation>Collis, S. S. and Heinkenschloss, M.: Analysis of the Streamline
Upwind/Petrov Galerkin Method Applied to the Solution of Optimal Control
Problems, Tech. Rep. TR02-01, Department of Computational and Applied
Mathematics, Rice University, Houston, <uri>http://www.caam.rice.edu/~heinken/papers/supg_analysis.html</uri>
(last access: July 2016), 2002.</mixed-citation></ref>
      <ref id="bib1.bibx5"><label>Dahl-Jensen(1989)</label><mixed-citation>
Dahl-Jensen, D.: Steady thermomechanical flow along two-dimensional flow lines
in large grounded ice sheets, J. Geophys. Res., 94, 10355–10362, 1989.</mixed-citation></ref>
      <ref id="bib1.bibx6"><label>De los Reyes(2015)</label><mixed-citation>
De los Reyes, J. C.: Numerical PDE-Constrained Optimization, Springer, Cham,
Heidelberg, New York, Dordrecht, London, 25–68, 2015.</mixed-citation></ref>
      <ref id="bib1.bibx7"><label>Eisenstat and Walker(1996)</label><mixed-citation>
Eisenstat, S. C. and Walker, H. F.: Choosing the forcing terms in an inexact
Newton method, SIAM J. Scient. Comput., 17, 16–32, 1996.</mixed-citation></ref>
      <ref id="bib1.bibx8"><label>Engl et al.(1996)Engl, Hanke, and Neubauer</label><mixed-citation>
Engl, H. W., Hanke, M., and Neubauer, A.: Regularization of Inverse Problems,
Springer Netherlands, 31–32, 1996.</mixed-citation></ref>
      <ref id="bib1.bibx9"><label>Fahnestock et al.(2001)Fahnestock, Abdalati, Joughin, Brozena, and
Gogineni</label><mixed-citation>
Fahnestock, M., Abdalati, W., Joughin, I., Brozena, J., and Gogineni, P.: High
geothermal heat flow, basal melt, and the origin of rapid ice flow in central
Greenland, Science, 294, 2338–2342, 2001.</mixed-citation></ref>
      <ref id="bib1.bibx10"><label>Fisher et al.(2015)Fisher, Mankoff, Tulaczyk, Tyler, Foley, and the
WISSARD Science Team</label><mixed-citation>Fisher, A. T., Mankoff, K. D., Tulaczyk, S. M., Tyler, S. W., Foley, N., and
the WISSARD Science Team: High geothermal heat flux measured below the West
Antarctic Ice Sheet, Sci. Adv., 1, e1500093, <ext-link xlink:href="http://dx.doi.org/10.1126/sciadv.1500093" ext-link-type="DOI">10.1126/sciadv.1500093</ext-link>, 2015.</mixed-citation></ref>
      <ref id="bib1.bibx11"><label>Flath et al.(2011)Flath, Wilcox, Akçelik, Hill, van
Bloemen Waanders, and Ghattas</label><mixed-citation>Flath, P. H., Wilcox, L. C., Akçelik, V., Hill, J., van Bloemen Waanders,
B., and Ghattas, O.: Fast Algorithms for Bayesian Uncertainty Quantification
in Large-Scale Linear Inverse Problems Based on Low-Rank Partial Hessian
Approximations, SIAM J. Scient. Comput., 33, 407–432, <ext-link xlink:href="http://dx.doi.org/10.1137/090780717" ext-link-type="DOI">10.1137/090780717</ext-link>, 2011.</mixed-citation></ref>
      <ref id="bib1.bibx12"><label>Glen(1955)</label><mixed-citation>
Glen, J. W.: The creep of polycrystalline ice, P. Roy. Soc. Lond. A, 228, 519–538, 1955.</mixed-citation></ref>
      <ref id="bib1.bibx13"><label>Greve and Blatter(2009)</label><mixed-citation>
Greve, R. and Blatter, H.: Dynamics of ice sheets and glaciers, Advances in
Geophysical and Environmental Mechanics and Mathematics, Springer, Berlin,
Heidelberg, 65–70, 2009.</mixed-citation></ref>
      <ref id="bib1.bibx14"><label>Gunzburger(2003)</label><mixed-citation>
Gunzburger, M. D.: Perspectives in Flow Control and Optimization, SIAM, Philadelphia,
PA, 11–62, 2003.</mixed-citation></ref>
      <ref id="bib1.bibx15"><label>Hinze et al.(2009)Hinze, Pinnau, Ulbrich, and Ulbrich</label><mixed-citation>Hinze, M., Pinnau, R., Ulbrich, M., and Ulbrich, S.: Optimization with PDE
Constraints, Springer Science <inline-formula><mml:math display="inline"><mml:mo>+</mml:mo></mml:math></inline-formula> Business Media B.V., 157–196, 2009.</mixed-citation></ref>
      <ref id="bib1.bibx16"><label>Hughes(2000)</label><mixed-citation>
Hughes, T. J. R.: The Finite Element Method: Linear Static and Dynamic Finite
Element Analysis, Dover, New York, 1–108, 2000.</mixed-citation></ref>
      <ref id="bib1.bibx17"><label>Hutter(1983)</label><mixed-citation>
Hutter, K.: Theoretical Glaciology, Mathematical Approaches to Geophysics,
D. Reidel Publishing Company, Dordrecht, the Netherlands, 119–187, 1983.</mixed-citation></ref>
      <ref id="bib1.bibx18"><label>Hvidberg(1996)</label><mixed-citation>
Hvidberg, C. S.: Steady-state thermomechanical modelling of ice flow near the
centre of large ice sheets with the finite-element technique, Ann. Glaciol.,
23, 116–123, 1996.</mixed-citation></ref>
      <ref id="bib1.bibx19"><label>Isaac et al.(2015)Isaac, Petra, Stadler, and Ghattas</label><mixed-citation>Isaac, T., Petra, N., Stadler, G., and Ghattas, O.: Scalable and efficient
algorithms for the propagation of uncertainty from data through inference to
prediction for large-scale problems, with application to flow of the Antarctic
ice sheet, J. Comput. Phys., 296, 348–368, <ext-link xlink:href="http://dx.doi.org/10.1016/j.jcp.2015.04.047" ext-link-type="DOI">10.1016/j.jcp.2015.04.047</ext-link>, 2015.</mixed-citation></ref>
      <ref id="bib1.bibx20"><label>Jouvet and Rappaz(2012)</label><mixed-citation>Jouvet, G. and Rappaz, J.: Analysis and finite element approximation of a
nonlinear stationary Stokes problem arising in glaciology, Adv. Numer. Anal.,
2011, 164581, <ext-link xlink:href="http://dx.doi.org/10.1155/2011/164581" ext-link-type="DOI">10.1155/2011/164581</ext-link>, 2012.</mixed-citation></ref>
      <ref id="bib1.bibx21"><label>Kaipio and Somersalo(2005)</label><mixed-citation>
Kaipio, J. and Somersalo, E.: Statistical and Computational Inverse Problems,
in: vol. 160 of Applied Mathematical Sciences, Springer-Verlag, New York, 1–48, 2005.</mixed-citation></ref>
      <ref id="bib1.bibx22"><label>Kalmikov and Heimbach(2014)</label><mixed-citation>
Kalmikov, A. G. and Heimbach, P.: A Hessian-Based Method for Uncertainty
Quantification in Global Ocean State Estimation, SIAM J. Scient. Comput., 36, S267–S295, 2014.</mixed-citation></ref>
      <ref id="bib1.bibx23"><label>Larour et al.(2012)Larour, Morlighem, Seroussi, Schiermeier, and
Rignot</label><mixed-citation>Larour, E., Morlighem, M., Seroussi, H., Schiermeier, J., and Rignot, E.: Ice
flow sensitivity to geothermal heat flux of Pine Island Glacier, Antarctica,
J. Geophys. Res., 117, F04023, <ext-link xlink:href="http://dx.doi.org/10.1029/2012JF002371" ext-link-type="DOI">10.1029/2012JF002371</ext-link>, 2012.</mixed-citation></ref>
      <ref id="bib1.bibx24"><label>Maule et al.(2005)Maule, Purucker, Olsen, and Mosegaard</label><mixed-citation>Maule, C. F., Purucker, M. E., Olsen, N., and Mosegaard, K.: Heat Flux Anomalies
in Antarctica Revealed by Satellite Magnetic Data, Science, 309, 464–467,
<ext-link xlink:href="http://dx.doi.org/10.1126/science.1106888" ext-link-type="DOI">10.1126/science.1106888</ext-link>, 2005.</mixed-citation></ref>
      <ref id="bib1.bibx25"><label>Nocedal and Wright(2006)</label><mixed-citation>
Nocedal, J. and Wright, S. J.: Numerical Optimization, 2nd Edn., Springer Verlag,
Berlin, Heidelberg, New York, 37–96, 2006.</mixed-citation></ref>
      <ref id="bib1.bibx26"><label>Paterson(1994)</label><mixed-citation>
Paterson, W. S. B.: The Physics of Glaciers, 3rd Edn., Butterworth Heinemann,
Birlington, MA, 78–102, 1994.</mixed-citation></ref>
      <ref id="bib1.bibx27"><label>Petra et al.(2012)Petra, Zhu, Stadler, Hughes, and
Ghattas</label><mixed-citation>Petra, N., Zhu, H., Stadler, G., Hughes, T. J. R., and Ghattas, O.: An inexact
Gauss-Newton method for inversion of basal sliding and rheology parameters in
a nonlinear Stokes ice sheet model, J. Glaciol., 58, 889–903, <ext-link xlink:href="http://dx.doi.org/10.3189/2012JoG11J182" ext-link-type="DOI">10.3189/2012JoG11J182</ext-link>, 2012.
</mixed-citation></ref><?xmltex \hack{\newpage}?>
      <ref id="bib1.bibx28"><label>Petra et al.(2014)Petra, Martin, Stadler, and Ghattas</label><mixed-citation>
Petra, N., Martin, J., Stadler, G., and Ghattas, O.: A computational framework
for infinite-dimensional Bayesian inverse problems: Part II. Stochastic Newton
MCMC with application to ice sheet inverse problems, SIAM J. Scient. Comput.,
36, A1525–A1555, 2014.</mixed-citation></ref>
      <ref id="bib1.bibx29"><label>Petrunin et al.(2013)Petrunin, Rogozhina, Vaughan, Kukkonen, Kaban,
Koulakov, and Thomas</label><mixed-citation>
Petrunin, A. G., Rogozhina, I., Vaughan, A. P. M., Kukkonen, I. T., Kaban,
M. K., Koulakov, I., and Thomas, M.: Heat flux variations beneath central
Greenland's ice due to anomalously thin lithosphere, Nat. Geosci., 6, 746–750, 2013.</mixed-citation></ref>
      <ref id="bib1.bibx30"><label>Pollack et al.(1993)Pollack, Hurter, and
Johnson</label><mixed-citation>
Pollack, H. N., Hurter, S. J., and Johnson, J. R.: Heat flow from the Earth's
interior: Analysis of the global data set, Rev. Geophys., 31, 267–280, 1993.</mixed-citation></ref>
      <ref id="bib1.bibx31"><label>Pollard et al.(2005)Pollard, DeConto, and Nyblade</label><mixed-citation>
Pollard, D., DeConto, R. M., and Nyblade, A. A.: Sensitivity of Cenozoic
Antarctic ice sheet variations to geothermal heat flux, Global Planet. Change,
49, 63–74, 2005.</mixed-citation></ref>
      <ref id="bib1.bibx32"><label>Price et al.(2007)Price, Waddington, and Conway</label><mixed-citation>Price, S. F., Waddington, E. D., and Conway, H.: A full-stress, thermomechanical
flow band model using the finite volume method, J. Geophys. Res., 112, F03020,
<ext-link xlink:href="http://dx.doi.org/10.1029/2006JF000724" ext-link-type="DOI">10.1029/2006JF000724</ext-link>, 2007.</mixed-citation></ref>
      <ref id="bib1.bibx33"><label>Shapiro and Ritzwoller(2004)</label><mixed-citation>Shapiro, N. M. and Ritzwoller, M. H.: Inferring surface heat flux distributions
guided by a global seismic model: particular application to Antarctica, Earth
Planet. Sc. Lett., 223, 213–224, <ext-link xlink:href="http://dx.doi.org/10.1016/j.epsl.2004.04.011" ext-link-type="DOI">10.1016/j.epsl.2004.04.011</ext-link>, 2004.</mixed-citation></ref>
      <ref id="bib1.bibx34"><label>Tarantola(2005)</label><mixed-citation>
Tarantola, A.: Inverse Problem Theory and Methods for Model Parameter Estimation,
SIAM, Philadelphia, PA, 1–40, 2005.</mixed-citation></ref>
      <ref id="bib1.bibx35"><label>Tröltzsch(2010)</label><mixed-citation>
Tröltzsch, F.: Optimal Control of Partial Differential Equations: Theory,
Methods and Applications, in: vol. 112 of Graduate Studies in Mathematics,
American Mathematical Society, Providence, RI, 181–264, 2010.</mixed-citation></ref>
      <ref id="bib1.bibx36"><label>Van der Veen(2013)</label><mixed-citation>
Van der Veen, C. J.: Fundamentals of glacier dynamics, CRC Press, Boca Raton, FL, 30–34, 2013.</mixed-citation></ref>
      <ref id="bib1.bibx37"><label>Vogel(2002)</label><mixed-citation>
Vogel, C. R.: Computational Methods for Inverse Problems, Frontiers in Applied
Mathematics, Society for Industrial and Applied Mathematics (SIAM), Philadelphia, PA, 97–145, 2002.</mixed-citation></ref>
      <ref id="bib1.bibx38"><label>Zhang et al.(2011)Zhang, Ju, Gunzburger, Ringler, and
Price</label><mixed-citation>
Zhang, H., Ju, L., Gunzburger, M., Ringler, T., and Price, S.: Coupled models
and parallel simulations for three dimensional full-Stokes ice sheet modeling,
Numer. Math., 4, 359–381, 2011.</mixed-citation></ref>
      <ref id="bib1.bibx39"><label>Zwinger et al.(2007)Zwinger, Greve, Gagliardini, Shiraiwa, and
Lyly</label><mixed-citation>
Zwinger, T., Greve, R., Gagliardini, O., Shiraiwa, T., and Lyly, M.: A full
Stokes-flow thermo-mechanical model for firn and ice applied to the Gorshkov
crater glacier, Kamchatka, Ann. Glaciol., 45, 29–37, 2007.</mixed-citation></ref>

  </ref-list><app-group content-type="float"><app><title/>

    </app></app-group></back>
    <!--<article-title-html>Inversion of geothermal heat flux in a thermomechanically  coupled nonlinear Stokes ice sheet model</article-title-html>
<abstract-html><p class="p">We address the inverse problem of inferring the basal geothermal heat flux
from surface velocity observations using a steady-state thermomechanically
coupled nonlinear Stokes ice flow model. This is a challenging inverse
problem since the map from basal heat flux to surface velocity observables is
indirect: the heat flux is a boundary condition for the thermal
advection–diffusion equation, which couples to the nonlinear Stokes ice flow
equations; together they determine the surface ice flow velocity. This
multiphysics inverse problem is formulated as a nonlinear least-squares
optimization problem with a cost functional that includes the data misfit
between surface velocity observations and model predictions. A Tikhonov
regularization term is added to render the problem well posed. We derive
adjoint-based gradient and Hessian expressions for the resulting
partial differential equation (PDE)-constrained optimization problem and propose an inexact Newton method for
its solution. As a consequence of the Petrov–Galerkin discretization of the
energy equation, we show that discretization and differentiation do not
commute; that is, the order in which we discretize the cost functional and
differentiate it affects the correctness of the gradient. Using two- and
three-dimensional model problems, we study the prospects for and limitations
of the inference of the geothermal heat flux field from surface velocity
observations. The results show that the reconstruction improves as the noise
level in the observations decreases and that short-wavelength variations in
the geothermal heat flux are difficult to recover. We analyze the
ill-posedness of the inverse problem as a function of the number of
observations by examining the spectrum of the Hessian of the cost functional.
Motivated by the popularity of operator-split or staggered solvers for
forward multiphysics problems – i.e., those that drop two-way coupling terms
to yield a one-way coupled forward Jacobian – we study the effect on the
inversion of a one-way coupling of the adjoint energy and Stokes equations.
We show that taking such a one-way coupled approach for the adjoint equations
can lead to an incorrect gradient and premature termination of optimization
iterations. This is due to loss of a descent direction stemming from
inconsistency of the gradient with the contours of the cost functional.
Nevertheless, one may still obtain a reasonable approximate inverse solution
particularly if important features of the reconstructed solution emerge early
in optimization iterations, before the premature termination.</p></abstract-html>
<ref-html id="bib1.bib1"><label>Bangerth(2008)</label><mixed-citation>
Bangerth, W.: A Framework for the Adaptive Finite Element Solution of Large-Scale
Inverse Problems, SIAM J. Scient. Comput., 30, 2965–2989, <a href="http://dx.doi.org/10.1137/070690560" target="_blank">doi:10.1137/070690560</a>, 2008.
</mixed-citation></ref-html>
<ref-html id="bib1.bib2"><label>Borzì and Schulz(2012)</label><mixed-citation>
Borzì, A. and Schulz, V.: Computational Optimization of Systems Governed
by Partial Differential Equations, SIAM, Philadelphia, PA, 3–26, 2012.
</mixed-citation></ref-html>
<ref-html id="bib1.bib3"><label>Brooks and Hughes(1982)</label><mixed-citation>
Brooks, A. N. and Hughes, T. J. R.: Streamline Upwind/Petrov–Galerkin
Formulations for Convection Dominated Flows with Particular Emphasis on the
Incompressible Navier–Stokes Equations, Comput. Meth. Appl. Mech. Eng., 32, 199–259, 1982.
</mixed-citation></ref-html>
<ref-html id="bib1.bib4"><label>Collis and Heinkenschloss(2002)</label><mixed-citation>
Collis, S. S. and Heinkenschloss, M.: Analysis of the Streamline
Upwind/Petrov Galerkin Method Applied to the Solution of Optimal Control
Problems, Tech. Rep. TR02-01, Department of Computational and Applied
Mathematics, Rice University, Houston, <a href="http://www.caam.rice.edu/~heinken/papers/supg_analysis.html" target="_blank">http://www.caam.rice.edu/~heinken/papers/supg_analysis.html</a>
(last access: July 2016), 2002.
</mixed-citation></ref-html>
<ref-html id="bib1.bib5"><label>Dahl-Jensen(1989)</label><mixed-citation>
Dahl-Jensen, D.: Steady thermomechanical flow along two-dimensional flow lines
in large grounded ice sheets, J. Geophys. Res., 94, 10355–10362, 1989.
</mixed-citation></ref-html>
<ref-html id="bib1.bib6"><label>De los Reyes(2015)</label><mixed-citation>
De los Reyes, J. C.: Numerical PDE-Constrained Optimization, Springer, Cham,
Heidelberg, New York, Dordrecht, London, 25–68, 2015.
</mixed-citation></ref-html>
<ref-html id="bib1.bib7"><label>Eisenstat and Walker(1996)</label><mixed-citation>
Eisenstat, S. C. and Walker, H. F.: Choosing the forcing terms in an inexact
Newton method, SIAM J. Scient. Comput., 17, 16–32, 1996.
</mixed-citation></ref-html>
<ref-html id="bib1.bib8"><label>Engl et al.(1996)Engl, Hanke, and Neubauer</label><mixed-citation>
Engl, H. W., Hanke, M., and Neubauer, A.: Regularization of Inverse Problems,
Springer Netherlands, 31–32, 1996.
</mixed-citation></ref-html>
<ref-html id="bib1.bib9"><label>Fahnestock et al.(2001)Fahnestock, Abdalati, Joughin, Brozena, and
Gogineni</label><mixed-citation>
Fahnestock, M., Abdalati, W., Joughin, I., Brozena, J., and Gogineni, P.: High
geothermal heat flow, basal melt, and the origin of rapid ice flow in central
Greenland, Science, 294, 2338–2342, 2001.
</mixed-citation></ref-html>
<ref-html id="bib1.bib10"><label>Fisher et al.(2015)Fisher, Mankoff, Tulaczyk, Tyler, Foley, and the
WISSARD Science Team</label><mixed-citation>
Fisher, A. T., Mankoff, K. D., Tulaczyk, S. M., Tyler, S. W., Foley, N., and
the WISSARD Science Team: High geothermal heat flux measured below the West
Antarctic Ice Sheet, Sci. Adv., 1, e1500093, <a href="http://dx.doi.org/10.1126/sciadv.1500093" target="_blank">doi:10.1126/sciadv.1500093</a>, 2015.
</mixed-citation></ref-html>
<ref-html id="bib1.bib11"><label>Flath et al.(2011)Flath, Wilcox, Akçelik, Hill, van
Bloemen Waanders, and Ghattas</label><mixed-citation>
Flath, P. H., Wilcox, L. C., Akçelik, V., Hill, J., van Bloemen Waanders,
B., and Ghattas, O.: Fast Algorithms for Bayesian Uncertainty Quantification
in Large-Scale Linear Inverse Problems Based on Low-Rank Partial Hessian
Approximations, SIAM J. Scient. Comput., 33, 407–432, <a href="http://dx.doi.org/10.1137/090780717" target="_blank">doi:10.1137/090780717</a>, 2011.
</mixed-citation></ref-html>
<ref-html id="bib1.bib12"><label>Glen(1955)</label><mixed-citation>
Glen, J. W.: The creep of polycrystalline ice, P. Roy. Soc. Lond. A, 228, 519–538, 1955.
</mixed-citation></ref-html>
<ref-html id="bib1.bib13"><label>Greve and Blatter(2009)</label><mixed-citation>
Greve, R. and Blatter, H.: Dynamics of ice sheets and glaciers, Advances in
Geophysical and Environmental Mechanics and Mathematics, Springer, Berlin,
Heidelberg, 65–70, 2009.
</mixed-citation></ref-html>
<ref-html id="bib1.bib14"><label>Gunzburger(2003)</label><mixed-citation>
Gunzburger, M. D.: Perspectives in Flow Control and Optimization, SIAM, Philadelphia,
PA, 11–62, 2003.
</mixed-citation></ref-html>
<ref-html id="bib1.bib15"><label>Hinze et al.(2009)Hinze, Pinnau, Ulbrich, and Ulbrich</label><mixed-citation>
Hinze, M., Pinnau, R., Ulbrich, M., and Ulbrich, S.: Optimization with PDE
Constraints, Springer Science + Business Media B.V., 157–196, 2009.
</mixed-citation></ref-html>
<ref-html id="bib1.bib16"><label>Hughes(2000)</label><mixed-citation>
Hughes, T. J. R.: The Finite Element Method: Linear Static and Dynamic Finite
Element Analysis, Dover, New York, 1–108, 2000.
</mixed-citation></ref-html>
<ref-html id="bib1.bib17"><label>Hutter(1983)</label><mixed-citation>
Hutter, K.: Theoretical Glaciology, Mathematical Approaches to Geophysics,
D. Reidel Publishing Company, Dordrecht, the Netherlands, 119–187, 1983.
</mixed-citation></ref-html>
<ref-html id="bib1.bib18"><label>Hvidberg(1996)</label><mixed-citation>
Hvidberg, C. S.: Steady-state thermomechanical modelling of ice flow near the
centre of large ice sheets with the finite-element technique, Ann. Glaciol.,
23, 116–123, 1996.
</mixed-citation></ref-html>
<ref-html id="bib1.bib19"><label>Isaac et al.(2015)Isaac, Petra, Stadler, and Ghattas</label><mixed-citation>
Isaac, T., Petra, N., Stadler, G., and Ghattas, O.: Scalable and efficient
algorithms for the propagation of uncertainty from data through inference to
prediction for large-scale problems, with application to flow of the Antarctic
ice sheet, J. Comput. Phys., 296, 348–368, <a href="http://dx.doi.org/10.1016/j.jcp.2015.04.047" target="_blank">doi:10.1016/j.jcp.2015.04.047</a>, 2015.
</mixed-citation></ref-html>
<ref-html id="bib1.bib20"><label>Jouvet and Rappaz(2012)</label><mixed-citation>
Jouvet, G. and Rappaz, J.: Analysis and finite element approximation of a
nonlinear stationary Stokes problem arising in glaciology, Adv. Numer. Anal.,
2011, 164581, <a href="http://dx.doi.org/10.1155/2011/164581" target="_blank">doi:10.1155/2011/164581</a>, 2012.
</mixed-citation></ref-html>
<ref-html id="bib1.bib21"><label>Kaipio and Somersalo(2005)</label><mixed-citation>
Kaipio, J. and Somersalo, E.: Statistical and Computational Inverse Problems,
in: vol. 160 of Applied Mathematical Sciences, Springer-Verlag, New York, 1–48, 2005.
</mixed-citation></ref-html>
<ref-html id="bib1.bib22"><label>Kalmikov and Heimbach(2014)</label><mixed-citation>
Kalmikov, A. G. and Heimbach, P.: A Hessian-Based Method for Uncertainty
Quantification in Global Ocean State Estimation, SIAM J. Scient. Comput., 36, S267–S295, 2014.
</mixed-citation></ref-html>
<ref-html id="bib1.bib23"><label>Larour et al.(2012)Larour, Morlighem, Seroussi, Schiermeier, and
Rignot</label><mixed-citation>
Larour, E., Morlighem, M., Seroussi, H., Schiermeier, J., and Rignot, E.: Ice
flow sensitivity to geothermal heat flux of Pine Island Glacier, Antarctica,
J. Geophys. Res., 117, F04023, <a href="http://dx.doi.org/10.1029/2012JF002371" target="_blank">doi:10.1029/2012JF002371</a>, 2012.
</mixed-citation></ref-html>
<ref-html id="bib1.bib24"><label>Maule et al.(2005)Maule, Purucker, Olsen, and Mosegaard</label><mixed-citation>
Maule, C. F., Purucker, M. E., Olsen, N., and Mosegaard, K.: Heat Flux Anomalies
in Antarctica Revealed by Satellite Magnetic Data, Science, 309, 464–467,
<a href="http://dx.doi.org/10.1126/science.1106888" target="_blank">doi:10.1126/science.1106888</a>, 2005.
</mixed-citation></ref-html>
<ref-html id="bib1.bib25"><label>Nocedal and Wright(2006)</label><mixed-citation>
Nocedal, J. and Wright, S. J.: Numerical Optimization, 2nd Edn., Springer Verlag,
Berlin, Heidelberg, New York, 37–96, 2006.
</mixed-citation></ref-html>
<ref-html id="bib1.bib26"><label>Paterson(1994)</label><mixed-citation>
Paterson, W. S. B.: The Physics of Glaciers, 3rd Edn., Butterworth Heinemann,
Birlington, MA, 78–102, 1994.
</mixed-citation></ref-html>
<ref-html id="bib1.bib27"><label>Petra et al.(2012)Petra, Zhu, Stadler, Hughes, and
Ghattas</label><mixed-citation>
Petra, N., Zhu, H., Stadler, G., Hughes, T. J. R., and Ghattas, O.: An inexact
Gauss-Newton method for inversion of basal sliding and rheology parameters in
a nonlinear Stokes ice sheet model, J. Glaciol., 58, 889–903, <a href="http://dx.doi.org/10.3189/2012JoG11J182" target="_blank">doi:10.3189/2012JoG11J182</a>, 2012.

</mixed-citation></ref-html>
<ref-html id="bib1.bib28"><label>Petra et al.(2014)Petra, Martin, Stadler, and Ghattas</label><mixed-citation>
Petra, N., Martin, J., Stadler, G., and Ghattas, O.: A computational framework
for infinite-dimensional Bayesian inverse problems: Part II. Stochastic Newton
MCMC with application to ice sheet inverse problems, SIAM J. Scient. Comput.,
36, A1525–A1555, 2014.
</mixed-citation></ref-html>
<ref-html id="bib1.bib29"><label>Petrunin et al.(2013)Petrunin, Rogozhina, Vaughan, Kukkonen, Kaban,
Koulakov, and Thomas</label><mixed-citation>
Petrunin, A. G., Rogozhina, I., Vaughan, A. P. M., Kukkonen, I. T., Kaban,
M. K., Koulakov, I., and Thomas, M.: Heat flux variations beneath central
Greenland's ice due to anomalously thin lithosphere, Nat. Geosci., 6, 746–750, 2013.
</mixed-citation></ref-html>
<ref-html id="bib1.bib30"><label>Pollack et al.(1993)Pollack, Hurter, and
Johnson</label><mixed-citation>
Pollack, H. N., Hurter, S. J., and Johnson, J. R.: Heat flow from the Earth's
interior: Analysis of the global data set, Rev. Geophys., 31, 267–280, 1993.
</mixed-citation></ref-html>
<ref-html id="bib1.bib31"><label>Pollard et al.(2005)Pollard, DeConto, and Nyblade</label><mixed-citation>
Pollard, D., DeConto, R. M., and Nyblade, A. A.: Sensitivity of Cenozoic
Antarctic ice sheet variations to geothermal heat flux, Global Planet. Change,
49, 63–74, 2005.
</mixed-citation></ref-html>
<ref-html id="bib1.bib32"><label>Price et al.(2007)Price, Waddington, and Conway</label><mixed-citation>
Price, S. F., Waddington, E. D., and Conway, H.: A full-stress, thermomechanical
flow band model using the finite volume method, J. Geophys. Res., 112, F03020,
<a href="http://dx.doi.org/10.1029/2006JF000724" target="_blank">doi:10.1029/2006JF000724</a>, 2007.
</mixed-citation></ref-html>
<ref-html id="bib1.bib33"><label>Shapiro and Ritzwoller(2004)</label><mixed-citation>
Shapiro, N. M. and Ritzwoller, M. H.: Inferring surface heat flux distributions
guided by a global seismic model: particular application to Antarctica, Earth
Planet. Sc. Lett., 223, 213–224, <a href="http://dx.doi.org/10.1016/j.epsl.2004.04.011" target="_blank">doi:10.1016/j.epsl.2004.04.011</a>, 2004.
</mixed-citation></ref-html>
<ref-html id="bib1.bib34"><label>Tarantola(2005)</label><mixed-citation>
Tarantola, A.: Inverse Problem Theory and Methods for Model Parameter Estimation,
SIAM, Philadelphia, PA, 1–40, 2005.
</mixed-citation></ref-html>
<ref-html id="bib1.bib35"><label>Tröltzsch(2010)</label><mixed-citation>
Tröltzsch, F.: Optimal Control of Partial Differential Equations: Theory,
Methods and Applications, in: vol. 112 of Graduate Studies in Mathematics,
American Mathematical Society, Providence, RI, 181–264, 2010.
</mixed-citation></ref-html>
<ref-html id="bib1.bib36"><label>Van der Veen(2013)</label><mixed-citation>
Van der Veen, C. J.: Fundamentals of glacier dynamics, CRC Press, Boca Raton, FL, 30–34, 2013.
</mixed-citation></ref-html>
<ref-html id="bib1.bib37"><label>Vogel(2002)</label><mixed-citation>
Vogel, C. R.: Computational Methods for Inverse Problems, Frontiers in Applied
Mathematics, Society for Industrial and Applied Mathematics (SIAM), Philadelphia, PA, 97–145, 2002.
</mixed-citation></ref-html>
<ref-html id="bib1.bib38"><label>Zhang et al.(2011)Zhang, Ju, Gunzburger, Ringler, and
Price</label><mixed-citation>
Zhang, H., Ju, L., Gunzburger, M., Ringler, T., and Price, S.: Coupled models
and parallel simulations for three dimensional full-Stokes ice sheet modeling,
Numer. Math., 4, 359–381, 2011.
</mixed-citation></ref-html>
<ref-html id="bib1.bib39"><label>Zwinger et al.(2007)Zwinger, Greve, Gagliardini, Shiraiwa, and
Lyly</label><mixed-citation>
Zwinger, T., Greve, R., Gagliardini, O., Shiraiwa, T., and Lyly, M.: A full
Stokes-flow thermo-mechanical model for firn and ice applied to the Gorshkov
crater glacier, Kamchatka, Ann. Glaciol., 45, 29–37, 2007.
</mixed-citation></ref-html>--></article>
