First Order Derivative: Driver Routine
Keywords: first order derivative: driver routine derivative easy syntax purpose f x i dw vector revone uses forward example

| Prev | Next |  |  |  |  |  |  |

First Order Derivative: Driver Routine
Syntax
`dw = f.RevOne(x, i)`
Purpose
We use F : B n → B m to denote the AD function corresponding to `f` . The syntax above sets `dw` to the derivative of F i with respect to x ; i.e., dw = F i ( 1 ) ( x ) = [∂ F i ∂ x 0 ( x ) , ⋯ , ∂ F i ∂ x n -1 ( x ) ]
f
The object `f` has prototype `
ADFun<Base> f
` Note that the ADFun object `f` is not `const` (see RevOne Uses Forward below).
x
The argument `x` has prototype `
const Vector &x
` (see Vector below) and its size must be equal to `n` , the dimension of the domain space for `f` . It specifies that point at which to evaluate the derivative.
i
The index `i` has prototype `
size_t i
` and is less than m , the dimension of the range space for `f` . It specifies the component of F that we are computing the derivative of.
dw
The result `dw` has prototype `
Vector dw
` (see Vector below) and its size is `n` , the dimension of the domain space for `f` . The value of `dw` is the derivative of F i evaluated at `x` ; i.e., for j = 0 , … , n - 1 . dw [ j ] = ∂ F i ∂ x j ( x )
Vector
The type `Vector` must be a SimpleVector class with elements of type `Base` . The routine CheckSimpleVector will generate an error message if this is not the case.
RevOne Uses Forward
After each call to Forward , the object `f` contains the corresponding Taylor coefficients . After a call to `RevOne`, the zero order Taylor coefficients correspond to `f.Forward(0, x)` and the other coefficients are unspecified.
Example
The routine RevOne is both an example and test. It returns `true`, if it succeeds and `false` otherwise.

Input File: cppad/local/rev_one.hpp