CppAD: A C++ Algorithmic Differentiation Package  20171217
template<class Vector_set >
 void CppAD::local::reverse_sparse_hessian_csum_op ( size_t i_z, const addr_t * arg, bool * rev_jacobian, Vector_set & rev_hes_sparsity )
inline

Reverse mode Hessian sparsity pattern for CSumOp operator.

This operation is

```     z = q + x(1) + ... + x(m) - y(1) - ... - y(n).
H(y, x, w, ...) = G[ z(x, y), y, x, w, ... ]
```
Template Parameters
 Vector_set is the type used for vectors of sets. It can be either sparse_pack or sparse_list.
Parameters
 i_z variable index corresponding to the result for this operation; i.e. the index in sparsity corresponding to z. arg arg[0] is the number of addition variables in this cummulative summation; i.e., `m + n`. arg[1] is the number of subtraction variables in this cummulative summation; i.e., `m`. `parameter[ arg[2] ]` is the parameter value `q` in this cummunative summation. `arg[2+i]` for `i = 1 , ... , m` is the value `x(i)`. `arg[2+arg[0]+i]` for `i = 1 , ... , n` is the value `y(i)`. rev_jacobian `rev_jacobian[i_z]` is all false (true) if the Jabobian of G with respect to z must be zero (may be non-zero). For `i = 1 , ... , m` `rev_jacobian[ arg[2+i] ]` is all false (true) if the Jacobian with respect to `x(i)` is zero (may be non-zero). On input, it corresponds to the function G, and on output it corresponds to the function H. For `i = 1 , ... , n` `rev_jacobian[ arg[2+arg[0]+i] ]` is all false (true) if the Jacobian with respect to `y(i)` is zero (may be non-zero). On input, it corresponds to the function G, and on output it corresponds to the function H. rev_hes_sparsity The set with index i_z in in rev_hes_sparsity is the Hessian sparsity pattern for the fucntion G where one of the partials derivative is with respect to z. For `i = 1 , ... , m` The set with index `arg[2+i]` in rev_hes_sparsity is the Hessian sparsity pattern where one of the partials derivative is with respect to `x(i)`. On input, it corresponds to the function G, and on output it corresponds to the function H. For `i = 1 , ... , n` The set with index `arg[2+arg[0]+i]` in rev_hes_sparsity is the Hessian sparsity pattern where one of the partials derivative is with respect to `y(i)`. On input, it corresponds to the function G, and on output it corresponds to the function H.

Definition at line 600 of file csum_op.hpp.

Referenced by rev_hes_sweep().