From: Jean-Paul Pelteret Date: Wed, 1 May 2019 11:16:48 +0000 (+0200) Subject: Update module on user interfaces to AD libraries X-Git-Tag: v9.1.0-rc1~156^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F7985%2Fhead;p=dealii.git Update module on user interfaces to AD libraries --- diff --git a/doc/doxygen/headers/automatic_and_symbolic_differentiation.h b/doc/doxygen/headers/automatic_and_symbolic_differentiation.h index 2a15a2ae0b..5d92190352 100644 --- a/doc/doxygen/headers/automatic_and_symbolic_differentiation.h +++ b/doc/doxygen/headers/automatic_and_symbolic_differentiation.h @@ -450,9 +450,23 @@ * * @subsubsection auto_diff_1_3 User interface to the automatic differentiation libraries * - * As of the current release, there is no formal, unified interface to the automatic - * differentation libraries that we support. It is therefore necessary for users to - * manage the initialization and derivative computations themselves. + * The deal.II library offers a unified interface to the automatic differentiation libraries that + * we support. To date, the helper classes have been developed for the following contexts: + * + * - Classes designed to operate at the quadrature point level (or any general continuum point): + * - ScalarFunction: Differentiation of a scalar-valued function. One typical use would be the + * the development of constitutive laws directly from a strain energy function. + * - VectorFunction: Differentiation of a vector-valued function. This could be used to + * linearize the kinematic variables of a constitutive law, or assist in solving + * the evolution equations of local internal variables. + * - Classes designed to operate at the cell level: + * - EnergyFunctional: Differentiation of a scalar-valued energy functional, such as might arise + * from variational formulations. + * - ResidualLinearization: Differentiation of a vector-valued finite element residual, leading to + * its consistent linearization. + * + * Naturally, it is also possible for users to manage the initialization and derivative + * computations themselves. * * The most up-to-date examples of how this is done using ADOL-C can be found in * - their user manual,