Prev | Next | wish_list |
f.compare_change
.
In addition, we will need a way to know if
op_index
corresponds to a
variable or dynamic parameter operator.
ay[0] = pow(ax[0], 0.5) * pow(ax[0], 0.5)
yields the result zero when @(@
x_0 = 0
@)@;
see the file bug/pow.sh
.
This is a feature of using azmul
to select which components of
a function are differentiated.
This enables one component to yield nan
for a partial derivative
while another might not.
If a separate flag was used for which variables are selected,
reverse mode multiplications would not need to be converted to azmul
and the function above would return nan
for the derivative value.
This may also be faster that using azmul
.
cppad_lib
library is only needed if one uses
colpack
,
json_ad_graph
,
cpp_ad_graph
, or
code_gen_fun
..
inline
specifier is used to avoid multiple copies
of functions (that are not templates) during the link process.
Perhaps some of these functions should be regular functions and part
in the cppad_lib
library.
AD<double>
could significantly be increased by including some of it's member functions
in the cppad_lib library.
checkpoint
class should allow for re-taping
derivative values.
This would also allow for algorithms where the operations sequence
depends on the independent variable values.
Perhaps (as for tapeless entry above)
the sparsity pattern should be passed into the constructor.
check_finite
(not infinite or nan) so that error detection happens during zero
order forward instead of later.
check_finite
routine made writing
the zero order values optional.
optimization
step.
square(x) = x * x
and have the optimizer recognize when they should be used.
(They could also be in the user API, but it would not be expected
that the user would use them.)
grep '^# *define *CPPAD_.*_TRACE' cppad/local/sweep*.hpp
to find all the possible tracing flags.