DiFfRG
|
#include <DiFfRG/common/cuda_prefix.hh>
#include <autodiff/common/numbertraits.hpp>
#include <cuda/std/complex>
#include <autodiff/forward/real.hpp>
Go to the source code of this file.
Classes | |
struct | autodiff::detail::ArithmeticTraits<::cuda::std::__4::complex< T > > |
struct | DiFfRG::is_complex< T > |
struct | DiFfRG::is_complex< complex< T > > |
struct | DiFfRG::is_complex< cxreal< N, T > > |
Namespaces | |
namespace | DiFfRG |
namespace | autodiff |
namespace | autodiff::detail |
Typedefs | |
template<size_t N, typename T > | |
using | DiFfRG::cxreal = autodiff::Real<N, complex<T>> |
using | DiFfRG::cxReal = autodiff::Real<1, complex<double>> |
Functions | |
template<typename NT > | |
constexpr auto | DiFfRG::cot (const NT x) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
__host__ __device__ auto | autodiff::detail::operator* (const T1 x, const complex< T2 > y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
__host__ __device__ auto | autodiff::detail::operator* (const complex< T1 > &x, const T2 &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
__host__ __device__ auto | autodiff::detail::operator+ (const T1 &x, const complex< T2 > &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
__host__ __device__ auto | autodiff::detail::operator+ (const complex< T1 > &x, const T2 &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
__host__ __device__ auto | autodiff::detail::operator- (const T1 &x, const complex< T2 > &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
__host__ __device__ auto | autodiff::detail::operator- (const complex< T1 > &x, const T2 &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
__host__ __device__ auto | autodiff::detail::operator/ (const T1 &x, const complex< T2 > &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
__host__ __device__ auto | autodiff::detail::operator/ (const complex< T1 > x, const T2 &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::real (const autodiff::Real< N, T > &a) |
template<size_t N, typename T > | |
constexpr AUTODIFF_DEVICE_FUNC auto | DiFfRG::imag (const autodiff::Real< N, T > &) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::real (const cxreal< N, T > &x) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::imag (const cxreal< N, T > &x) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator* (const autodiff::Real< N, T > &x, const complex< double > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator* (const complex< double > x, const autodiff::Real< N, T > y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator+ (const autodiff::Real< N, T > &x, const complex< double > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator+ (const complex< double > x, const autodiff::Real< N, T > y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator- (const autodiff::Real< N, T > &x, const complex< double > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator- (const complex< double > x, const autodiff::Real< N, T > y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator/ (const autodiff::Real< N, T > &x, const complex< double > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator/ (const complex< double > x, const autodiff::Real< N, T > y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator* (const autodiff::Real< N, T > &x, const cxreal< N, T > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator* (const cxreal< N, T > &x, const autodiff::Real< N, T > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator+ (const autodiff::Real< N, T > &x, const cxreal< N, T > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator+ (const cxreal< N, T > &x, const autodiff::Real< N, T > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator- (const autodiff::Real< N, T > &x, const cxreal< N, T > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator- (const cxreal< N, T > &x, const autodiff::Real< N, T > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator/ (const autodiff::Real< N, T > &x, const cxreal< N, T > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator/ (const cxreal< N, T > &x, const autodiff::Real< N, T > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator* (const complex< double > &x, const cxreal< N, T > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator* (const cxreal< N, T > &x, const complex< double > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator+ (const complex< double > &x, const cxreal< N, T > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator+ (const cxreal< N, T > &x, const complex< double > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator- (const complex< double > &x, const cxreal< N, T > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator- (const cxreal< N, T > &x, const complex< double > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator/ (const cxreal< N, T > &x, const complex< double > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator/ (const complex< double > &x, const cxreal< N, T > &y) |
template<size_t N, typename T > | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator/ (const double x, const cxreal< N, T > &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator* (const T1 x, const complex< T2 > y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator* (const complex< T1 > &x, const T2 &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator+ (const T1 &x, const complex< T2 > &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator+ (const complex< T1 > &x, const T2 &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator- (const T1 &x, const complex< T2 > &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator- (const complex< T1 > &x, const T2 &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator/ (const T1 &x, const complex< T2 > &y) |
template<typename T1 , typename T2 > requires (!std::is_same_v<T1, T2>) && std::is_arithmetic_v<T1> && std::is_arithmetic_v<T2> | |
AUTODIFF_DEVICE_FUNC auto | DiFfRG::operator/ (const complex< T1 > x, const T2 &y) |