![Hier klicken, um den Treffer aus der Auswahl zu entfernen](images/unchecked.gif) |
Titel |
Fully automatic adjoints: a robust and efficient mechanism for generating adjoint ocean models |
VerfasserIn |
D. A. Ham, P. E. Farrell, S. W. Funke, M. E. Rognes |
Konferenz |
EGU General Assembly 2012
|
Medientyp |
Artikel
|
Sprache |
Englisch
|
Digitales Dokument |
PDF |
Erschienen |
In: GRA - Volume 14 (2012) |
Datensatznummer |
250063141
|
|
|
|
Zusammenfassung |
The problem of generating and maintaining adjoint models is sufficiently difficult that
typically only the most advanced and well-resourced community ocean models achieve it.
There are two current technologies which each suffer from their own limitations. Algorithmic
differentiation, also called automatic differentiation, is employed by models such
as the MITGCM [2] and the Alfred Wegener Institute model FESOM [3]. This
technique is very difficult to apply to existing code, and requires a major initial
investment to prepare the code for automatic adjoint generation. AD tools may also have
difficulty with code employing modern software constructs such as derived data
types.
An alternative is to formulate the adjoint differential equation and to discretise this
separately. This approach, known as the continuous adjoint and employed in ROMS [4], has
the disadvantage that two different model code bases must be maintained and manually kept
synchronised as the model develops. The discretisation of the continuous adjoint is not
automatically consistent with that of the forward model, producing an additional source of
error.
The alternative presented here is to formulate the flow model in the high level language
UFL (Unified Form Language) and to automatically generate the model using the software of
the FEniCS project. In this approach it is the high level code specification which is
differentiated, a task very similar to the formulation of the continuous adjoint [5]. However
since the forward and adjoint models are generated automatically, the difficulty of
maintaining them vanishes and the software engineering process is therefore robust. The
scheduling and execution of the adjoint model, including the application of an appropriate
checkpointing strategy is managed by libadjoint [1]. In contrast to the conventional
algorithmic differentiation description of a model as a series of primitive mathematical
operations, libadjoint employs a new abstraction of the simulation process as a
sequence of discrete equations which are assembled and solved. It is the coupling of
the respective abstractions employed by libadjoint and the FEniCS project which
produces the adjoint model automatically, without further intervention from the model
developer.
This presentation will demonstrate this new technology through linear and non-linear
shallow water test cases. The exceptionally simple model syntax will be highlighted and the
correctness of the resulting adjoint simulations will be demonstrated using rigorous
convergence tests.
References
[1]   P. E. Farrell, S. W. Funke, and D. A. Ham. A new approach for developing
discrete adjoint models. Submitted to ACM Transactions on Mathematical
Software, 2012.
[2]   P. Heimbach, C. Hill, and R. Giering. An efficient exact adjoint of the parallel
mit general circulation model, generated via automatic differentiation. Future
Generation Computer Systems, 21(8):1356–1371, 2005.
[3]   S. Maßmann. Sensitivities of an adjoint, unstructured mesh, tidal model on the
european continental shelf. Ocean Dynamics, pages 1–15, 2010.
[4]   A.M. Moore, H.G. Arango, E. Di Lorenzo, B.D. Cornuelle, A.J. Miller, and
D.J. Neilson. A comprehensive ocean prediction and analysis system based on
the tangent linear and adjoint of a regional ocean model. Ocean Modelling,
7(1-2):227–258, 2004.
[5]   M. E. Rognes and A. Logg. Automated goal-oriented error control I:
Stationary variational problems. Submitted to Submitted to SIAM Journal on
Scientific Computing, 2010. |
|
|
|
|
|