From e09d3b48f0f5539cf0031fdd700f3a4021780790 Mon Sep 17 00:00:00 2001 From: Jean-Paul Pelteret Date: Wed, 1 May 2019 13:16:48 +0200 Subject: [PATCH] Update module on user interfaces to AD libraries --- .../automatic_and_symbolic_differentiation.h | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) 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, -- 2.39.5