CppAD: A C++ Algorithmic Differentiation Package
20171217


inline 
Prototype for reverse mode z = pow(x, y) (not used).
This routine is given the partial derivatives of a function G( z , y , x , w , ... ) and it uses them to compute the partial derivatives of
H( y , x , w , u , ... ) = G[ pow(x , y) , y , x , w , u , ... ]
Base  base type for the operator; i.e., this operation was recorded using AD< Base > and computations by this routine are done using type Base . 
d  highest order Taylor coefficient that we are computing the partial derivatives with respect to. 
i_z  variable index corresponding to the last (primary) result for this operation; i.e. the row index in taylor corresponding to z. Note that there are three results for this operation, below they are referred to as z_0, z_1, z_2 and correspond to z_0 = log(x) z_1 = z0 * y z_2 = exp(z1)It follows that the final result is equal to z; i.e., z = z_2 = pow(x, y). 
arg  arg[0] index corresponding to the left operand for this operator; i.e. the index corresponding to x. arg[1] index corresponding to the right operand for this operator; i.e. the index corresponding to y. 
parameter  If x is a parameter, parameter [ arg[0] ] is the value corresponding to x. If y is a parameter, parameter [ arg[1] ] is the value corresponding to y. 
cap_order  maximum number of orders that will fit in the taylor array. 
taylor  taylor [ (i_z  2 + j) * cap_order + k ] for j = 0, 1, 2 and k = 0 , ... , d is the kth order Taylor coefficient corresponding to z_j. If x is a variable, taylor [ arg[0] * cap_order + k ] for k = 0 , ... , d is the kth order Taylor coefficient corresponding to x. If y is a variable, taylor [ arg[1] * cap_order + k ] for k = 0 , ... , d is the kth order Taylor coefficient corresponding to y. 
nc_partial  number of colums in the matrix containing all the partial derivatives. 
partial  Input: partial [ (i_z  2 + j) * nc_partial + k ] for j = 0, 1, 2, and k = 0 , ... , d is the partial derivative of G( z , y , x , w , u , ... ) with respect to the kth order Taylor coefficient for z_j. Input: If x is a variable, partial [ arg[0] * nc_partial + k ] for k = 0 , ... , d is the partial derivative of G( z , y , x , w , u , ... ) with respect to the kth order Taylor coefficient for x. Input: If y is a variable, partial [ arg[1] * nc_partial + k ] for k = 0 , ... , d is the partial derivative of G( z , x , w , u , ... ) with respect to the kth order Taylor coefficient for the auxillary variable y. Output: If x is a variable, partial [ arg[0] * nc_partial + k ] for k = 0 , ... , d is the partial derivative of H( y , x , w , u , ... ) with respect to the kth order Taylor coefficient for x. Output: If y is a variable, partial [ arg[1] * nc_partial + k ] for k = 0 , ... , d is the partial derivative of H( y , x , w , u , ... ) with respect to the kth order Taylor coefficient for y. Output: partial [ ( i_z  j ) * nc_partial + k ] for j = 0 , 1 , 2 and for k = 0 , ... , d may be used as work space; i.e., may change in an unspecified manner. 
Definition at line 1284 of file prototype_op.hpp.