Automatic Differentiation
 
Loading...
Searching...
No Matches
acos.hpp
Go to the documentation of this file.
1#ifndef STAN_MATH_FWD_FUN_ACOS_HPP
2#define STAN_MATH_FWD_FUN_ACOS_HPP
3
8#include <cmath>
9#include <complex>
10
11namespace stan {
12namespace math {
13
14template <typename T>
15inline fvar<T> acos(const fvar<T>& x) {
16 using std::acos;
17 using std::sqrt;
18 return fvar<T>(acos(x.val_), x.d_ / -sqrt(1 - square(x.val_)));
19}
20
28template <typename T>
29inline std::complex<fvar<T>> acos(const std::complex<fvar<T>>& x) {
30 return internal::complex_acos(x);
31}
32
33} // namespace math
34} // namespace stan
35#endif
std::complex< V > complex_acos(const std::complex< V > &x)
Return the arc cosine of the complex argument.
Definition acos.hpp:77
fvar< T > acos(const fvar< T > &x)
Definition acos.hpp:15
fvar< T > sqrt(const fvar< T > &x)
Definition sqrt.hpp:17
fvar< T > square(const fvar< T > &x)
Definition square.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