1 |
heimbach |
1.1 |
Adjoint Compiler Technology and Standards |
2 |
|
|
|
3 |
|
|
Uwe Nauman, Patrick Heimbach, Christopher Hill and Carl Wunsch |
4 |
|
|
|
5 |
|
|
Adjoint models are important both to understanding the sensitivity of the |
6 |
|
|
ocean state to initial/boundary conditions, model parameters of all types, |
7 |
|
|
and in a secondary role as a numerical method for doing data assimilation. |
8 |
|
|
Although also important in engineering, economics, and most scientific |
9 |
|
|
disciplines, they have thus far found their widest and most advanced applications |
10 |
|
|
in physical oceanography. While oceanographers have long experience in |
11 |
|
|
constructing `direct' or forward models, the construction of the corresponding |
12 |
|
|
adjoint model has proven, for many, burdensome and tedious. The advent of |
13 |
|
|
compilers capable of generating the adjoint model nearly automatically from the |
14 |
|
|
forward code has been revolutionary. |
15 |
|
|
|
16 |
|
|
The adjoint corresponds to taking the derivatives of the direct model with |
17 |
|
|
respect to any field or parameter subject to change. Its numerical values |
18 |
|
|
can be computed using either a tangent-linear or an adjoint model both of |
19 |
|
|
which can be generated by compilers for Automatic Differentiation (AD). The |
20 |
|
|
problems arising from making this source transformation fully automatic are |
21 |
|
|
investigated as part of a collaborative NSF-ITR funded research project between |
22 |
|
|
MIT, Rice University, and Argonne National Laboratory / University of Chicago. |
23 |
|
|
The project's goals are to develop a fully-automatic, easy to use open-source tool |
24 |
|
|
for AD that is immediately applicable to Fortran and C codes and that is designed |
25 |
|
|
to allow community extension to include more elaborate code transformations, for |
26 |
|
|
example Hessian calculation. A primary focus of the project is geophysical applications. |
27 |
|
|
|
28 |
|
|
The poster gives an overview of how compilers for AD work in principle. Various |
29 |
|
|
successful applications illustrate the feasibility of the general approach. Some |
30 |
|
|
of the major challenges in the field are discussed. Features of forward model |
31 |
|
|
implementations that are favorable from the point of view of automatic adjoint code |
32 |
|
|
generation are proposed. |
33 |
|
|
|