Prev Next

@(@\newcommand{\W}[1]{ \; #1 \; } \newcommand{\R}[1]{ {\rm #1} } \newcommand{\B}[1]{ {\bf #1} } \newcommand{\D}[2]{ \frac{\partial #1}{\partial #2} } \newcommand{\DD}[3]{ \frac{\partial^2 #1}{\partial #2 \partial #3} } \newcommand{\Dpow}[2]{ \frac{\partial^{#1}}{\partial {#2}^{#1}} } \newcommand{\dpow}[2]{ \frac{ {\rm d}^{#1}}{{\rm d}\, {#2}^{#1}} }@)@
Check Gradient of Determinant of 3 by 3 matrix

Syntax
# include <cppad/speed/det_grad_33.hpp>
ok = det_grad_33(xg)

Purpose
This routine can be used to check a method for computing the gradient of the determinant of a matrix.

Inclusion
The template function det_grad_33 is defined in the CppAD namespace by including the file cppad/speed/det_grad_33.hpp (relative to the CppAD distribution directory).

x
The argument x has prototype
     const 
Vector &x
. It contains the elements of the matrix @(@ X @)@ in row major order; i.e., @[@ X_{i,j} = x [ i * 3 + j ] @]@

g
The argument g has prototype
     const 
Vector &g
. It contains the elements of the gradient of @(@ \det ( X ) @)@ in row major order; i.e., @[@ \D{\det (X)}{X(i,j)} = g [ i * 3 + j ] @]@

Vector
If y is a Vector object, it must support the syntax
     
y[i]
where i has type size_t with value less than 9. This must return a double value corresponding to the i-th element of the vector y . This is the only requirement of the type Vector .

ok
The return value ok has prototype
     bool 
ok
It is true, if the gradient g passes the test and false otherwise.

Source Code
The file det_grad_33.hpp contains the source code for this template function.
Input File: cppad/speed/det_grad_33.hpp