pRC
multi-purpose Tensor Train library for C++
Loading...
Searching...
No Matches
sin.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: BSD-2-Clause
2
3#ifndef pRC_CORE_COMPLEX_FUNCTIONS_SIN_H
4#define pRC_CORE_COMPLEX_FUNCTIONS_SIN_H
5
7
8namespace pRC
9{
10 template<class T>
11 static inline constexpr auto sin(Complex<T> const &a)
12 {
13 auto const real = sin(a.real()) * cosh(a.imag());
14 auto const imag = cos(a.real()) * sinh(a.imag());
15
16 return Complex(real, imag);
17 }
18}
19#endif // pRC_CORE_COMPLEX_FUNCTIONS_SIN_H
Definition complex.hpp:26
constexpr decltype(auto) real() &&
Definition complex.hpp:125
constexpr decltype(auto) imag() &&
Definition complex.hpp:145
Definition cholesky.hpp:18
static constexpr auto cos(Complex< T > const &a)
Definition cos.hpp:11
static constexpr decltype(auto) imag(X &&a)
Definition imag.hpp:11
static constexpr decltype(auto) real(X &&a)
Definition real.hpp:11
static constexpr auto sin(Complex< T > const &a)
Definition sin.hpp:11
static constexpr auto cosh(Complex< T > const &a)
Definition cosh.hpp:11
static constexpr auto sinh(Complex< T > const &a)
Definition sinh.hpp:11