Stan Math Library  2.20.0
reverse mode automatic differentiation
erf.hpp
Go to the documentation of this file.
1 #ifndef STAN_MATH_FWD_SCAL_FUN_ERF_HPP
2 #define STAN_MATH_FWD_SCAL_FUN_ERF_HPP
3 
4 #include <stan/math/fwd/meta.hpp>
5 #include <stan/math/fwd/core.hpp>
9 #include <cmath>
10 
11 namespace stan {
12 namespace math {
13 
14 template <typename T>
15 inline fvar<T> erf(const fvar<T>& x) {
16  using std::exp;
17  return fvar<T>(erf(x.val_), x.d_ * exp(-square(x.val_)) * TWO_OVER_SQRT_PI);
18 }
19 
20 } // namespace math
21 } // namespace stan
22 #endif
T d_
The tangent (derivative) of this variable.
Definition: fvar.hpp:50
fvar< T > erf(const fvar< T > &x)
Definition: erf.hpp:15
fvar< T > square(const fvar< T > &x)
Definition: square.hpp:12
const double TWO_OVER_SQRT_PI
Definition: constants.hpp:136
T val_
The value of this variable.
Definition: fvar.hpp:45
fvar< T > exp(const fvar< T > &x)
Definition: exp.hpp:11
This template class represents scalars used in forward-mode automatic differentiation, which consist of values and directional derivatives of the specified template type.
Definition: fvar.hpp:41

     [ Stan Home Page ] © 2011–2018, Stan Development Team.