Prev Next size_order

@(@\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}} }@)@
Number Taylor Coefficient Orders Currently Stored

Syntax
s = f.size_order()

See Also
seq_property

Purpose
Determine the number of Taylor coefficient orders, per variable,direction, currently calculated and stored in the ADFun object f . See the discussion under Constructor , Forward , and capacity_order for a description of when this value can change.

f
The object f has prototype
     const ADFun<
Basef

s
The result s has prototype
     size_t 
s
and is the number of Taylor coefficient orders, per variable,direction in the AD operation sequence, currently calculated and stored in the ADFun object f .

Constructor
Directly after the FunConstruct syntax
     ADFun<
Basef(xy)
the value of s returned by size_order is one. This is because there is an implicit call to Forward that computes the zero order Taylor coefficients during this constructor.

Forward
After a call to Forward with the syntax
        
f.Forward(qx_q)
the value of s returned by size_order would be @(@ q + 1 @)@. The call to Forward above uses the lower order Taylor coefficients to compute and store the q-th order Taylor coefficients for all the variables in the operation sequence corresponding to f . Thus there are @(@ q + 1 @)@ (order zero through q ) Taylor coefficients per variable,direction. (You can determine the number of variables in the operation sequence using the size_var function.)

capacity_order
If the number of Taylor coefficient orders currently stored in f is less than or equal c , a call to capacity_order with the syntax
     
f.capacity_order(c)
does not affect the value s returned by size_order. Otherwise, the value s returned by size_order is equal to c (only Taylor coefficients of order zero through @(@ c-1 @)@ have been retained).

Example
The file forward.cpp contains an example and test of this operation. It returns true if it succeeds and false otherwise.
Input File: omh/forward/size_order.omh