

Automatic differentiation in geophysical inverse problems
Article in a journal
  

Area Geophysics 
Author(s)
M. Sambridge
, P. Rickwood
, N. Rawlinson
, S. Sommacal

Published in
Geophysical Journal International 
Year 2007 
Abstract Automatic differentiation (ad) is the technique whereby output variables of a computer code evaluating any complicated function (e.g. the solution to a differential equation) can be differentiated with respect to the input variables. Often ad tools take the form of source to source translators and produce computer code without the need for deriving and hand coding of explicit mathematical formulae by the user. The power of ad lies in the fact that it combines the generality of finite difference techniques and the accuracy and efficiency of analytical derivatives, while at the same time eliminating human coding errors. It also provides the possibility of accurate, efficient derivative calculation from complex forward codes where no analytical derivatives are possible and finite difference techniques are too cumbersome. ad is already having a major impact in areas such as optimization, meteorology and oceanography. Similarly it has considerable potential for use in nonlinear inverse problems in geophysics where linearization is desirable, or for sensitivity analysis of large numerical simulation codes, for example, wave propagation and geodynamic modelling. At present, however, ad tools appear to be little used in the geosciences. Here we report on experiments using a state of the art ad tool to perform source to source code translation in a range of geoscience problems. These include calculating derivatives for Gibbs free energy minimization, seismic receiver function inversion, and seismic ray tracing. Issues of accuracy and efficiency are discussed. 
AD Tools TAF 
AD Theory and Techniques Introduction 
BibTeX
@ARTICLE{
Sambridge2007Adi,
author = "M. Sambridge and P. Rickwood and N. Rawlinson and S. Sommacal",
title = "Automatic differentiation in geophysical inverse problems",
journal = "Geophysical Journal International",
pages = "18",
year = "2007",
volume = "170",
number = "1",
doi = "10.1111/j.1365246X.2007.03400.x",
abstract = "Automatic differentiation (AD) is the technique whereby output variables of a
computer code evaluating any complicated function (e.g. the solution to a differential equation) can
be differentiated with respect to the input variables. Often AD tools take the form of source to
source translators and produce computer code without the need for deriving and hand coding of
explicit mathematical formulae by the user. The power of AD lies in the fact that it combines the
generality of finite difference techniques and the accuracy and efficiency of analytical
derivatives, while at the same time eliminating human coding errors. It also provides the
possibility of accurate, efficient derivative calculation from complex forward codes where no
analytical derivatives are possible and finite difference techniques are too cumbersome. AD is
already having a major impact in areas such as optimization, meteorology and oceanography. Similarly
it has considerable potential for use in nonlinear inverse problems in geophysics where
linearization is desirable, or for sensitivity analysis of large numerical simulation codes, for
example, wave propagation and geodynamic modelling. At present, however, AD tools appear to be
little used in the geosciences. Here we report on experiments using a state of the art AD tool to
perform source to source code translation in a range of geoscience problems. These include
calculating derivatives for Gibbs free energy minimization, seismic receiver function inversion, and
seismic ray tracing. Issues of accuracy and efficiency are discussed.",
ad_area = "Geophysics",
ad_tools = "TAF",
ad_theotech = "Introduction"
}
 
back

