Adjoint Modeling
A typical question 'asked' of a model is:
what is the sensitivity of a large number of output
parameters w.r.t. one (or a small number) of input parameters?
For example the CO2 concentration in an atmospheric
model is doubled and this 'projects' on to the myriad output
parameters of the model.
But often a more useful question is to ask:
what is the sensitivity of a small number of output
parameters w.r.t. a large number of input variables? For
example, to what parameter in the model is the global-mean
temperature at the surface of the earth most sensitive?
The
former question can be answered by use of the tangent linear
model or by Monte-Carlo approaches. The latter question can be
answered using the adjoint of the tangent linear model and
involves integration of it backwards in time to yield the
sensitivity of some scalar function of the output parameters to
input parameters.
Often one is more interested in the answer to the latter
question but, unless the adjoint of the tangent linear model is
available, it involves prohibitively many forward integrations,
each one corresponding to a small change in one of the many
input parameters.
CMI has put much effort on to the development of models that
can be 'automatically differentiated'. MITgcm is one of the very few models that have sibling
tangent-linear and adjoint codes. Moreover, they are maintained
automatically using an automatic adjoint compiler.
Look here for details of our studies on Automatic
Differentiation.
Applications
of our adjoint techniques can be found here.
Technical web sites on AD are here:
|