CppAD: A C++ Algorithmic Differentiation Package  20130918
template<class Base , class VectorSet >
void CppAD::RevSparseJacBool ( bool  transpose,
bool  nz_compare,
size_t  q,
const VectorSet &  r,
VectorSet &  s,
size_t  total_num_var,
CppAD::vector< size_t > &  dep_taddr,
CppAD::vector< size_t > &  ind_taddr,
CppAD::player< Base > &  play 
)

Calculate Jacobian vector of bools sparsity patterns using reverse mode.

The C++ source code corresponding to this operation is

	s = f.RevSparseJac(q, r)
Template Parameters:
Baseis the base type for this recording.
VectorSetis a simple vector class with elements of type bool.
Parameters:
transposeare the sparsity patterns transposed.
nz_compareAre the derivatives with respect to left and right of the expression below considered to be non-zero:
     CondExpRel(left, right, if_true, if_false)
This is used by the optimizer to obtain the correct dependency relations.
qis the number of rows in the matrix $ R $.
ris a sparsity pattern for the matrix $ R $.
sthe input value of s must be a vector with size p*n where n is the number of independent variables corresponding to the operation sequence stored in play. The input value of the components of s does not matter. On output, s is the sparsity pattern for the matrix

\[ S(x) = R * F^{(1)} (x) \]

where $ F $ is the function corresponding to the operation sequence and x is any argument value.
total_num_varis the total number of variable in this recording.
dep_taddrmaps dependendent variable index to the corresponding variable in the tape.
ind_taddrmaps independent variable index to the corresponding variable in the tape.
playis the recording that defines the function we are computing the sparsity pattern for.

Definition at line 253 of file rev_sparse_jac.hpp.

Referenced by CppAD::ADFun< Base >::RevSparseJacCase().

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines