Automatic Differentiation
 
Loading...
Searching...
No Matches
inv_sqrt.hpp
Go to the documentation of this file.
1#ifndef STAN_MATH_FWD_FUN_INV_SQRT_HPP
2#define STAN_MATH_FWD_FUN_INV_SQRT_HPP
3
6#include <cmath>
7
8namespace stan {
9namespace math {
10
11template <typename T>
12inline fvar<T> inv_sqrt(const fvar<T>& x) {
13 using std::sqrt;
14 T sqrt_x(sqrt(x.val_));
15 return fvar<T>(1 / sqrt_x, -0.5 * x.d_ / (x.val_ * sqrt_x));
16}
17} // namespace math
18} // namespace stan
19#endif
fvar< T > sqrt(const fvar< T > &x)
Definition sqrt.hpp:17
fvar< T > inv_sqrt(const fvar< T > &x)
Definition inv_sqrt.hpp:12
The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation ...
Scalar val_
The value of this variable.
Definition fvar.hpp:49
Scalar d_
The tangent (derivative) of this variable.
Definition fvar.hpp:61
This template class represents scalars used in forward-mode automatic differentiation,...
Definition fvar.hpp:40