|
|
static void | enable_taping (const types::tape_index tape_index, const bool keep_independent_values) |
|
static void | enable_taping (const types::tape_index tape_index, const bool keep_independent_values, const types::tape_buffer_sizes obufsize, const types::tape_buffer_sizes lbufsize, const types::tape_buffer_sizes vbufsize, const types::tape_buffer_sizes tbufsize) |
|
static void | disable_taping (const types::tape_index active_tape_index, const bool write_tapes_to_file) |
|
static void | print_tape_stats (std::ostream &stream, const types::tape_index tape_index) |
|
|
static ScalarType | value (const types::tape_index active_tape_index, const std::vector< ScalarType > &independent_variables) |
|
static void | gradient (const types::tape_index active_tape_index, const std::vector< ScalarType > &independent_variables, Vector< ScalarType > &gradient) |
|
static void | hessian (const types::tape_index active_tape_index, const std::vector< ScalarType > &independent_variables, FullMatrix< ScalarType > &hessian) |
|
|
static void | values (const types::tape_index active_tape_index, const unsigned int n_dependent_variables, const std::vector< ScalarType > &independent_variables, Vector< ScalarType > &values) |
|
static void | jacobian (const types::tape_index active_tape_index, const unsigned int n_dependent_variables, const std::vector< ScalarType > &independent_variables, FullMatrix< ScalarType > &jacobian) |
|
template<typename ADNumberType, typename ScalarType, typename T = void>
struct Differentiation::AD::TapedDrivers< ADNumberType, ScalarType, T >
A driver class for taped auto-differentiable numbers.
It is intended that this class be specialized for the valid combinations of auto-differentiable numbers and output scalar number types.
- Template Parameters
-
ADNumberType | A type corresponding to a supported auto-differentiable number. |
ScalarType | A real or complex floating point number type that is the scalar value type used for input to, and output from, operations performed with auto-differentiable numbers. |
T | An arbitrary type resulting from the application of the SFINAE idiom to selectively specialize this class. |
- Author
- Jean-Paul Pelteret, 2017
Definition at line 156 of file ad_drivers.h.
template<typename ADNumberType , typename ScalarType , typename T = void>
Computes the Jacobian of the vector field.
The Jacobian of a vector field is in essense the gradient of each dependent variable with respect to all independent variables. This operation is therefore analogous to the gradient() operation performed on a collection of scalar valued fields.
- Parameters
-
[in] | active_tape_index | The index of the tape on which the dependent function is recorded. |
[in] | n_dependent_variables | The number of dependent variables. |
[in] | independent_variables | The scalar values of the independent variables whose sensitivities were tracked. |
[out] | jacobian | The scalar values of the dependent functions' Jacobian. It is expected that this matrix be of the correct size (with dimensions n_dependent_variables \(\times\)n_independent_variables ). |