CppAD: A C++ Algorithmic Differentiation Package  20171217
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
template<class SizeVector , class InternalSparsity >
void CppAD::local::get_internal_sparsity ( bool  transpose,
const vector< size_t > &  internal_index,
const InternalSparsity &  internal_pattern,
sparse_rc< SizeVector > &  pattern_out 

Get sparsity pattern for a sub-set of variables.

Template Parameters
SizeVectorThe type used for index sparsity patterns. This is a simple vector with elements of type size_t.
InternalSparsitiyThe type used for intenal sparsity patterns. This can be either sparse_pack or sparse_list.
transposeIf this is true, pattern_out is transposed.
internal_indexIf transpose is false (true) this is the mapping from row (column) an index in pattern_out to the corresponding row index in internal_pattern.
internal_patternThis is the internal sparsity pattern.
pattern_outThe input value of pattern_out does not matter. Upon return it is an index sparsity pattern for each of the variables in internal_index, or its transpose, depending on the value of transpose.

Definition at line 302 of file sparse_internal.hpp.

Referenced by CppAD::ADFun< Base >::for_hes_sparsity(), CppAD::ADFun< Base >::for_jac_sparsity(), CppAD::atomic_base< double >::for_sparse_jac(), CppAD::ADFun< Base >::rev_hes_sparsity(), CppAD::ADFun< Base >::rev_jac_sparsity(), CppAD::atomic_base< double >::rev_sparse_hes(), and CppAD::atomic_base< double >::rev_sparse_jac().