Stan Math Library
2.14.0
reverse mode automatic differentiation
stan
math
fwd
scal
fun
abs.hpp
Go to the documentation of this file.
1
#ifndef STAN_MATH_FWD_SCAL_FUN_ABS_HPP
2
#define STAN_MATH_FWD_SCAL_FUN_ABS_HPP
3
4
#include <
stan/math/fwd/core.hpp
>
5
#include <
stan/math/fwd/scal/fun/value_of.hpp
>
6
#include <
stan/math/prim/scal/fun/constants.hpp
>
7
#include <
stan/math/prim/scal/fun/abs.hpp
>
8
#include <
stan/math/prim/scal/fun/value_of.hpp
>
9
#include <
stan/math/prim/scal/meta/likely.hpp
>
10
11
namespace
stan
{
12
namespace
math {
13
14
template
<
typename
T>
15
inline
fvar<T>
abs
(
const
fvar<T>
& x) {
16
if
(x.
val_
> 0.0)
17
return
x;
18
else
if
(x.
val_
< 0.0)
19
return
fvar<T>
(-x.
val_
, -x.
d_
);
20
else
if
(x.
val_
== 0.0)
21
return
fvar<T>
(0, 0);
22
else
23
return
fvar<T>
(
abs
(x.
val_
),
NOT_A_NUMBER
);
24
}
25
26
}
27
}
28
#endif
stan::math::abs
fvar< T > abs(const fvar< T > &x)
Definition:
abs.hpp:15
core.hpp
stan::math::fvar::d_
T d_
Definition:
fvar.hpp:16
stan::math::NOT_A_NUMBER
const double NOT_A_NUMBER
(Quiet) not-a-number value.
Definition:
constants.hpp:55
stan
Definition:
log_sum_exp.hpp:8
value_of.hpp
abs.hpp
stan::math::fvar::val_
T val_
Definition:
fvar.hpp:15
likely.hpp
constants.hpp
value_of.hpp
stan::math::fvar
Definition:
fvar.hpp:14
[
Stan Home Page
]
© 2011–2016, Stan Development Team.