CppAD: A C++ Algorithmic Differentiation Package
20130102
|
void 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 = p + x(1) + ... + x(m) - y(1) - ... - y(n). H(y, x, w, ...) = G[ z(x, y), y, x, w, ... ]
Vector_set | is the type used for vectors of sets. It can be either sparse_pack , sparse_set , or sparse_list . |
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 p 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) . |
sparsity | For 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 376 of file csum_op.hpp.
Referenced by RevJacSweep().