pRC
multi-purpose Tensor Train library for C++
Loading...
Searching...
No Matches
atan.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: BSD-2-Clause
2
3#ifndef pRC_CORE_VALUE_FUNCTIONS_ATAN_H
4#define pRC_CORE_VALUE_FUNCTIONS_ATAN_H
5
6#include <cmath>
7
11
12namespace pRC
13{
21 template<class T, If<IsFloat<T>> = 0>
22 static inline constexpr auto atan(T const &a)
23 {
24 return Float(std::atan(a()));
25 }
26
34 template<class T, If<IsInteger<T>> = 0>
35 static inline constexpr auto atan(T const &a)
36 {
37 return atan(cast<Float<>>(a));
38 }
39}
40#endif // pRC_CORE_VALUE_FUNCTIONS_ATAN_H
Top-level class storing a floating point number.
Definition float.hpp:35
Definition cholesky.hpp:18
static constexpr auto atan(Complex< T > const &a)
Definition atan.hpp:11
static constexpr Conditional< IsSatisfied< C >, RemoveConstReference< X >, X > copy(X &&a)
Definition copy.hpp:13
static constexpr auto cast(Complex< T > const &a)
Definition cast.hpp:13