subt_expr.h File Reference
Include dependency graph for subt_expr.h:
This graph shows which files directly or indirectly include this file:

Classes

struct  TiledArray::expressions::ExprTrait< SubtExpr< Left, Right > >
 
struct  TiledArray::expressions::ExprTrait< ScalSubtExpr< Left, Right, Scalar > >
 
class  TiledArray::expressions::SubtExpr< Left, Right >
 Subtraction expression. More...
 
class  TiledArray::expressions::ScalSubtExpr< Left, Right, Scalar >
 Subtraction expression. More...
 

Namespaces

 TiledArray
 
 TiledArray::expressions
 

Typedefs

template<typename Left , typename Right >
using TiledArray::expressions::ConjSubtExpr = ScalSubtExpr< Left, Right, TiledArray::detail::ComplexConjugate< void > >
 
template<typename Left , typename Right , typename Scalar >
using TiledArray::expressions::ScalConjSubtExpr = ScalSubtExpr< Left, Right, TiledArray::detail::ComplexConjugate< Scalar > >
 

Functions

template<typename Left , typename Right >
SubtExpr< Left, Right > TiledArray::expressions::operator- (const Expr< Left > &left, const Expr< Right > &right)
 Subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric_v< Scalar > >::type * = nullptr>
ScalSubtExpr< Left, Right, Scalar > TiledArray::expressions::operator* (const SubtExpr< Left, Right > &expr, const Scalar &factor)
 Scaled-subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric_v< Scalar > >::type * = nullptr>
ScalSubtExpr< Left, Right, Scalar > TiledArray::expressions::operator* (const Scalar &factor, const SubtExpr< Left, Right > &expr)
 Scaled-subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric_v< Scalar2 > >::type * = nullptr>
ScalSubtExpr< Left, Right, mult_t< Scalar1, Scalar2 > > TiledArray::expressions::operator* (const ScalSubtExpr< Left, Right, Scalar1 > &expr, const Scalar2 &factor)
 Scaled-subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric_v< Scalar1 > >::type * = nullptr>
ScalSubtExpr< Left, Right, mult_t< Scalar2, Scalar1 > > TiledArray::expressions::operator* (const Scalar1 &factor, const ScalSubtExpr< Left, Right, Scalar2 > &expr)
 Scaled-subtraction expression factor. More...
 
template<typename Left , typename Right >
ScalSubtExpr< Left, Right, typename ExprTrait< SubtExpr< Left, Right > >::numeric_type > TiledArray::expressions::operator- (const SubtExpr< Left, Right > &expr)
 Negated subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
ScalSubtExpr< Left, Right, Scalar > TiledArray::expressions::operator- (const ScalSubtExpr< Left, Right, Scalar > &expr)
 Negated scaled-subtraction expression factor. More...
 
template<typename Left , typename Right >
ConjSubtExpr< Left, Right > TiledArray::expressions::conj (const SubtExpr< Left, Right > &expr)
 Conjugated subtraction expression factory. More...
 
template<typename Left , typename Right >
SubtExpr< Left, Right > TiledArray::expressions::conj (const ConjSubtExpr< Left, Right > &expr)
 Conjugated-conjugate subtraction expression factory. More...
 
template<typename Left , typename Right , typename Scalar >
ScalConjSubtExpr< Left, Right, Scalar > TiledArray::expressions::conj (const ScalSubtExpr< Left, Right, Scalar > &expr)
 Conjugated subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
ScalSubtExpr< Left, Right, Scalar > TiledArray::expressions::conj (const ScalConjSubtExpr< Left, Right, Scalar > &expr)
 Conjugated-conjugate subtraction expression factory. More...
 
template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric_v< Scalar > >::type * = nullptr>
ScalConjSubtExpr< Left, Right, Scalar > TiledArray::expressions::operator* (const ConjSubtExpr< Left, Right > &expr, const Scalar &factor)
 Scaled-conjugated subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric_v< Scalar > >::type * = nullptr>
ScalConjSubtExpr< Left, Right, Scalar > TiledArray::expressions::operator* (const Scalar &factor, const ConjSubtExpr< Left, Right > &expr)
 Scaled-conjugated subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric_v< Scalar2 > >::type * = nullptr>
ScalConjSubtExpr< Left, Right, mult_t< Scalar1, Scalar2 > > TiledArray::expressions::operator* (const ScalConjSubtExpr< Left, Right, Scalar1 > &expr, const Scalar2 &factor)
 Scaled-conjugated subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric_v< Scalar1 > >::type * = nullptr>
ScalConjSubtExpr< Left, Right, mult_t< Scalar2, Scalar1 > > TiledArray::expressions::operator* (const Scalar1 &factor, const ScalConjSubtExpr< Left, Right, Scalar2 > &expr)
 Scaled-conjugated subtraction expression factor. More...
 
template<typename Left , typename Right >
ScalConjSubtExpr< Left, Right, typename ExprTrait< ConjSubtExpr< Left, Right > >::numeric_type > TiledArray::expressions::operator- (const ConjSubtExpr< Left, Right > &expr)
 Negated-conjugated subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
ScalConjSubtExpr< Left, Right, Scalar > TiledArray::expressions::operator- (const ScalConjSubtExpr< Left, Right, Scalar > &expr)
 Negated-conjugated subtraction expression factor. More...