complex.h File Reference
#include <TiledArray/config.h>
#include <TiledArray/type_traits.h>
Include dependency graph for complex.h:
This graph shows which files directly or indirectly include this file:

Classes

class  TiledArray::detail::ComplexConjugate< S >
 
struct  TiledArray::detail::ComplexNegTag
 
class  TiledArray::detail::ComplexConjugate< void >
 Specialization of ComplexConjugate for the case of a unit/identity factor. More...
 
class  TiledArray::detail::ComplexConjugate< ComplexNegTag >
 
struct  TiledArray::detail::is_numeric< ComplexConjugate< S > >
 

Namespaces

 TiledArray
 
 TiledArray::detail
 

Functions

template<typename R , typename std::enable_if< is_numeric_v< R > &&!is_complex< R >::value >::type * = nullptr>
TILEDARRAY_FORCE_INLINE R TiledArray::detail::conj (const R r)
 Wrapper function for std::conj More...
 
template<typename R >
TILEDARRAY_FORCE_INLINE std::complex< R > TiledArray::detail::conj (const std::complex< R > z)
 Wrapper function for std::conj. More...
 
template<typename L , typename R , typename std::enable_if< is_numeric_v< L > &&!is_complex< L >::value >::type * = nullptr>
TILEDARRAY_FORCE_INLINE auto TiledArray::detail::inner_product (const L l, const R r)
 Inner product of a real value and a numeric value. More...
 
template<typename R , typename std::enable_if< is_numeric_v< R > &&!is_complex< R >::value >::type * = nullptr>
TILEDARRAY_FORCE_INLINE R TiledArray::detail::norm (const R r)
 Wrapper function for std::norm More...
 
template<typename R >
TILEDARRAY_FORCE_INLINE R TiledArray::detail::norm (const std::complex< R > z)
 Compute the norm of a complex number z More...
 
template<typename S >
ComplexConjugate< S > TiledArray::detail::conj_op (const S factor)
 ComplexConjugate operator factory function. More...
 
ComplexConjugate< void > TiledArray::detail::conj_op ()
 ComplexConjugate operator factory function. More...
 
template<typename L , typename R >
TILEDARRAY_FORCE_INLINE auto TiledArray::detail::operator* (const L value, const ComplexConjugate< R > op)
 
template<typename L >
TILEDARRAY_FORCE_INLINE auto TiledArray::detail::operator* (const L value, const ComplexConjugate< void > &)
 
template<typename L >
TILEDARRAY_FORCE_INLINE auto TiledArray::detail::operator* (const L value, const ComplexConjugate< ComplexNegTag > &)
 
template<typename L , typename R >
TILEDARRAY_FORCE_INLINE auto TiledArray::detail::operator* (const ComplexConjugate< L > op, const R value)
 
template<typename R >
TILEDARRAY_FORCE_INLINE auto TiledArray::detail::operator* (const ComplexConjugate< void >, const R value)
 
template<typename R >
TILEDARRAY_FORCE_INLINE auto TiledArray::detail::operator* (const ComplexConjugate< ComplexNegTag >, const R value)
 
template<typename L , typename R , typename std::enable_if<!std::is_void< R >::value >::type * = nullptr>
TILEDARRAY_FORCE_INLINE L & TiledArray::detail::operator*= (L &value, const ComplexConjugate< R > op)
 
template<typename L >
TILEDARRAY_FORCE_INLINE L & TiledArray::detail::operator*= (L &value, const ComplexConjugate< void > &)
 
template<typename L >
TILEDARRAY_FORCE_INLINE L & TiledArray::detail::operator*= (L &value, const ComplexConjugate< ComplexNegTag > &)
 
template<typename T >
auto TiledArray::detail::abs (const ComplexConjugate< T > &a)
 
int TiledArray::detail::abs (const ComplexConjugate< void > &a)