Prev | Next | atomic_four_call |
afun(ax, ay)
ay = afun(call_id, ax, ay)
template <class Base> template <class ADVector> void atomic_four<Base>::operator()( size_t call_id , const ADVector& ax , ADVector& ay )
ax
, this call computes the corresponding value of
ay
.
If
AD<Base>
operations are being recorded,
it enters the computation as an atomic operation in the recording;
see start recording
.
afun
constructor.
It is also the
Base
type of the elements of
ax
and
ay
in the atomic function call.
To be specific, the elements of
ax
and
ay
have type
AD<Base>
.
ADVector
must be a
simple vector class
with elements of type
AD<Base>
.
afun
function call is implemented by the
atomic_four
class.
n
.
It specifies vector @(@
x \in \B{R}^n
@)@
at which an
AD<Base>
version of
@(@
y = g(x)
@)@ is to be evaluated.
m
.
The input values of its elements
are not specified (must not matter).
Upon return, it is an
AD<Base>
version of
@(@
y = g(x)
@)@.
afun
. For example, it could specify the index in vector of structures
in the
afun
object where the actual information is placed.
for_type
routine,
the values in
type_x
and or
type_y
corresponding
to this atomic function call.
call_id
must be less than or equal
std::numeric_limits<cppad_tape_id_type>::max()
see cppad_tape_id_type
.