\(\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}} }\)
Integer¶
View page sourceConvert From AD to Integer¶
Syntax¶
Integer
( x )Purpose¶
Converts from an AD type to the corresponding integer value.
i¶
The result i has prototype
int
i
x¶
Real Types¶
If the argument x has either of the following prototypes:
const float
& xconst double
& xthe fractional part is dropped to form the integer value. For example, if x is 1.5, i is 1. In general, if \(x \geq 0\), i is the greatest integer less than or equal x . If \(x \leq 0\), i is the smallest integer greater than or equal x .
Complex Types¶
If the argument x has either of the following prototypes:
const std::complex<float>
& xconst std::complex<double>
& xThe result i is given by
i =
Integer
( x .real
())
AD Types¶
If the argument x has either of the following prototypes:
const AD
< Base > & xconst VecAD
< Base >:: reference &
xBase must support the Integer
function and
the conversion has the same meaning as for Base .
Operation Sequence¶
The result of this operation is not an AD of Base object. Thus it will not be recorded as part of an AD of Base operation sequence .
Example¶
The file integer.cpp contains an example and test of this operation.