CppAD: A C++ Algorithmic Differentiation Package  20130918
template<class Vector_set >
void CppAD::reverse_sparse_jacobian_csum_op ( size_t  i_z,
const addr_t *  arg,
Vector_set &  sparsity 
) [inline]

Reverse mode Jacobian 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_setis the type used for vectors of sets. It can be either sparse_pack, sparse_set, or sparse_list.
Parameters:
i_zvariable index corresponding to the result for this operation; i.e. the index in sparsity corresponding to z.
argarg[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[1]+i] for i = 1 , ... , n is the value y(i).
sparsityFor i = 1 , ... , m, the set with index arg[2+i] in sparsity is the sparsity bit pattern for x(i). This identifies which of the dependent variables depend on x(i). On input, the sparsity patter corresponds to G, and on ouput it corresponds to H.
For i = 1 , ... , m, the set with index arg[2+arg[0]+i] in sparsity is the sparsity bit pattern for y(i). This identifies which of the dependent variables depend on y(i). On input, the sparsity patter corresponds to G, and on ouput it corresponds to H.
Input: The set with index i_z in sparsity is the sparsity bit pattern for z. On input it corresponds to G and on output it is undefined.

Definition at line 383 of file csum_op.hpp.

Referenced by RevJacSweep().

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines