|
Prev | Next |
# include <cppad/utility/nan.hpp>
b = isnan(s)
b = hasnan(v)
nan.
The IEEE standard specifies that a floating point value
a
is nan if and only if the following returns true
a != a
cppad/nan.hpp is included by cppad/cppad.hpp
but it can also be included separately with out the rest of
the CppAD routines.
nan
and isnan.
These preprocessor symbols will no longer be defined after
this file is included.
nan.
s
has prototype
const Scalar s
b
has prototype
bool b
It is true if the value
s
is nan.
nan.
v
has prototype
const Vector &v
(see Vector
for the definition of
Vector
).
b
has prototype
bool b
It is true if the vector
v
has a nan.
s = nan(z)
z
has prototype
const Scalar &z
and its value is zero
(see Scalar
for the definition of
Scalar
).
s
has prototype
Scalar s
It is the value nan for this floating point type.
Scalar
must support the following operations;
| Operation | Description |
a / b
|
division operator (returns a
Scalar
object)
|
a == b
|
equality operator (returns a bool object)
|
a != b
|
not equality operator (returns a bool object)
|
a
and
b
equal to zero. For some types (e.g. int) this may generate
an exception. No attempt is made to catch any such exception.
Vector
must be a SimpleVector
class with
elements of type
Scalar
.