CppAD: A C++ Algorithmic Differentiation Package  20171217
template<class Base>
template<class InternalSparsity >
 void CppAD::atomic_base< Base >::rev_sparse_hes ( const vector< Base > & x, const vector< size_t > & x_index, const vector< size_t > & y_index, const InternalSparsity & for_jac_sparsity, bool * rev_jac_flag, InternalSparsity & rev_hes_sparsity )
inlineinherited

Link, before case split, from rev_hes_sweep to atomic_base.

Template Parameters
 InternalSparsity Is the used internaly for sparsity calculations; i.e., sparse_pack or sparse_list.
Parameters
 x is parameter arguments to the function, other components are nan. x_index is the variable index, on the tape, for the arguments to this function. This size of x_index is n, the number of arguments to this function. y_index is the variable index, on the tape, for the results for this function. This size of y_index is m, the number of results for this function. for_jac_sparsity On input, for j = 0, ... , n-1, the sparsity pattern with index x_index[j], is the forward Jacobian sparsity for the j-th argument to this atomic function. rev_jac_flag This shows which variables affect the function we are computing the Hessian of. On input, for i = 0, ... , m-1, the rev_jac_flag[ y_index[i] ] is true if the Jacobian of function (we are computing sparsity for) is no-zero. Upon return, for j = 0, ... , n-1, rev_jac_flag [ x_index[j] ] as been adjusted to accound removing this atomic function. rev_hes_sparsity This is the sparsity pattern for the Hessian. On input, for i = 0, ... , m-1, row y_index[i] is the reverse Hessian sparsity with one of the partials with respect to to y_index[i].

Definition at line 2234 of file atomic_base.hpp.