TiledArray  0.7.0
TiledArray::expressions Namespace Reference

Namespaces

 detail
 

Classes

class  AddEngine
 Addition expression engine. More...
 
class  AddExpr
 Addition expression. More...
 
class  BinaryEngine
 
class  BinaryExpr
 Binary expression object. More...
 
class  BlkTsrEngine
 Tensor expression engine. More...
 
class  BlkTsrEngineBase
 Tensor expression engine. More...
 
class  BlkTsrExpr
 Block expression. More...
 
class  BlkTsrExpr< const Array, true >
 Block expression. More...
 
class  BlkTsrExprBase
 Block expression. More...
 
class  ContEngine
 Multiplication expression engine. More...
 
struct  EngineParamOverride
 
struct  EngineTrait
 
struct  EngineTrait< AddEngine< Left, Right, Result > >
 
struct  EngineTrait< BlkTsrEngine< DistArray< Tile, Policy >, Result, Alias > >
 
struct  EngineTrait< MultEngine< Left, Right, Result > >
 
struct  EngineTrait< ScalAddEngine< Left, Right, Scalar, Result > >
 
struct  EngineTrait< ScalBlkTsrEngine< DistArray< Tile, Policy >, Scalar, Result > >
 
struct  EngineTrait< ScalEngine< Arg, Scalar, Result > >
 
struct  EngineTrait< ScalMultEngine< Left, Right, Scalar, Result > >
 
struct  EngineTrait< ScalSubtEngine< Left, Right, Scalar, Result > >
 
struct  EngineTrait< ScalTsrEngine< DistArray< Tile, Policy >, Scalar, Result > >
 
struct  EngineTrait< SubtEngine< Left, Right, Result > >
 
struct  EngineTrait< TsrEngine< DistArray< Tile, Policy >, Result, Alias > >
 
class  Expr
 Base class for expression evaluation. More...
 
class  ExprEngine
 Expression engine. More...
 
class  ExprOStream
 Expression output stream. More...
 
class  ExprTraceTarget
 Expression trace target. More...
 
struct  ExprTrait
 
struct  ExprTrait< AddExpr< Left, Right > >
 
struct  ExprTrait< BlkTsrExpr< Array, Alias > >
 
struct  ExprTrait< BlkTsrExpr< const Array, Alias > >
 
struct  ExprTrait< MultExpr< Left, Right > >
 
struct  ExprTrait< ScalAddExpr< Left, Right, Scalar > >
 
struct  ExprTrait< ScalBlkTsrExpr< Array, Scalar > >
 
struct  ExprTrait< ScalBlkTsrExpr< const Array, Scalar > >
 
struct  ExprTrait< ScalExpr< Arg, Scalar > >
 
struct  ExprTrait< ScalMultExpr< Left, Right, Scalar > >
 
struct  ExprTrait< ScalSubtExpr< Left, Right, Scalar > >
 
struct  ExprTrait< ScalTsrExpr< Array, Scalar > >
 
struct  ExprTrait< SubtExpr< Left, Right > >
 
struct  ExprTrait< TsrExpr< Array, Alias > >
 
struct  ExprTrait< TsrExpr< const Array, true > >
 
class  has_array
 type trait checks if T has array() member Useful to determine if an Expr is a TsrExpr or a related type More...
 
struct  is_aliased
 
struct  is_aliased< BlkTsrExpr< Array, Alias > >
 
struct  is_aliased< TsrExpr< Array, Alias > >
 
class  LeafEngine
 Leaf expression engine. More...
 
class  MultEngine
 Multiplication expression engine. More...
 
class  MultExpr
 Multiplication expression. More...
 
class  ScalAddEngine
 Addition expression engine. More...
 
class  ScalAddExpr
 Add-then-scale expression. More...
 
class  ScalBlkTsrEngine
 Scaled tensor block expression engine. More...
 
class  ScalBlkTsrExpr
 Block expression. More...
 
class  ScalEngine
 Scaling expression engine. More...
 
class  ScalExpr
 Scaling expression. More...
 
class  ScalMultEngine
 Scaled multiplication expression engine. More...
 
class  ScalMultExpr
 Multiplication expression. More...
 
class  ScalSubtEngine
 Subtraction expression engine. More...
 
class  ScalSubtExpr
 Subtraction expression. More...
 
class  ScalTsrEngine
 Scaled tensor expression engine. More...
 
class  ScalTsrExpr
 Expression wrapper for scaled array objects. More...
 
class  SubtEngine
 Subtraction expression engine. More...
 
class  SubtExpr
 Subtraction expression. More...
 
class  TsrEngine
 Tensor expression engine. More...
 
class  TsrExpr
 Expression wrapper for array objects. More...
 
class  TsrExpr< const Array, true >
 Expression wrapper for const array objects. More...
 
class  UnaryEngine
 
class  UnaryExpr
 
class  VariableList
 Variable list manages a list variable strings. More...
 

Typedefs

template<typename Left , typename Right >
using ConjAddExpr = ScalAddExpr< Left, Right, TiledArray::detail::ComplexConjugate< void > >
 
template<typename Left , typename Right , typename Scalar >
using ScalConjAddExpr = ScalAddExpr< Left, Right, TiledArray::detail::ComplexConjugate< Scalar > >
 
template<typename Array >
using ConjBlkTsrExpr = ScalBlkTsrExpr< Array, TiledArray::detail::ComplexConjugate< void > >
 
template<typename Array , typename Scalar >
using ScalConjBlkTsrExpr = ScalBlkTsrExpr< Array, TiledArray::detail::ComplexConjugate< Scalar > >
 
template<typename Left , typename Right >
using ConjMultExpr = ScalMultExpr< Left, Right, TiledArray::detail::ComplexConjugate< void > >
 
template<typename Left , typename Right , typename Scalar >
using ScalConjMultExpr = ScalMultExpr< Left, Right, TiledArray::detail::ComplexConjugate< Scalar > >
 
template<typename Array >
using ConjTsrExpr = ScalTsrExpr< Array, TiledArray::detail::ComplexConjugate< void > >
 
template<typename Array , typename Scalar >
using ScalConjTsrExpr = ScalTsrExpr< Array, TiledArray::detail::ComplexConjugate< Scalar > >
 
template<typename Left , typename Right >
using ConjSubtExpr = ScalSubtExpr< Left, Right, TiledArray::detail::ComplexConjugate< void > >
 
template<typename Left , typename Right , typename Scalar >
using ScalConjSubtExpr = ScalSubtExpr< Left, Right, TiledArray::detail::ComplexConjugate< Scalar > >
 

Functions

template<typename Left , typename Right >
AddExpr< Left, Right > operator+ (const Expr< Left > &left, const Expr< Right > &right)
 Addition expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
std::enable_if< TiledArray::detail::is_numeric< Scalar >::value, ScalAddExpr< Left, Right, Scalar > >::type operator* (const AddExpr< Left, Right > &expr, const Scalar &factor)
 Scaled-addition expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
std::enable_if< TiledArray::detail::is_numeric< Scalar >::value, ScalAddExpr< Left, Right, Scalar > >::type operator* (const Scalar &factor, const AddExpr< Left, Right > &expr)
 Scaled-addition expression factor. More...
 
template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalAddExpr< Left, Right, mult_t< Scalar1, Scalar2 > > operator* (const ScalAddExpr< Left, Right, Scalar1 > &expr, const Scalar2 &factor)
 Scaled-addition expression factor. More...
 
template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalAddExpr< Left, Right, mult_t< Scalar2, Scalar1 > > operator* (const Scalar1 &factor, const ScalAddExpr< Left, Right, Scalar2 > &expr)
 Scaled-addition expression factor. More...
 
template<typename Left , typename Right >
ScalAddExpr< Left, Right, typename ExprTrait< AddExpr< Left, Right > >::numeric_type > operator- (const AddExpr< Left, Right > &expr)
 Negated addition expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
ScalAddExpr< Left, Right, Scalar > operator- (const ScalAddExpr< Left, Right, Scalar > &expr)
 Negated scaled-addition expression factor. More...
 
template<typename Left , typename Right >
ConjAddExpr< Left, Right > conj (const AddExpr< Left, Right > &expr)
 Conjugated addition expression factory. More...
 
template<typename Left , typename Right >
AddExpr< Left, Right > conj (const ConjAddExpr< Left, Right > &expr)
 Conjugated-conjugate addition expression factory. More...
 
template<typename Left , typename Right , typename Scalar >
ScalConjAddExpr< Left, Right, Scalar > conj (const ScalAddExpr< Left, Right, Scalar > &expr)
 Conjugated addition expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
ScalAddExpr< Left, Right, Scalar > conj (const ScalConjAddExpr< Left, Right, Scalar > &expr)
 Conjugated-conjugate addition expression factory. More...
 
template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjAddExpr< Left, Right, Scalar > operator* (const ConjAddExpr< Left, Right > &expr, const Scalar &factor)
 Scaled-conjugated addition expression factor. More...
 
template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjAddExpr< Left, Right, Scalar > operator* (const Scalar &factor, const ConjAddExpr< Left, Right > &expr)
 Scaled-conjugated addition expression factor. More...
 
template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalConjAddExpr< Left, Right, mult_t< Scalar1, Scalar2 > > operator* (const ScalConjAddExpr< Left, Right, Scalar1 > &expr, const Scalar2 &factor)
 Scaled-conjugated addition expression factor. More...
 
template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalConjAddExpr< Left, Right, mult_t< Scalar2, Scalar1 > > operator* (const Scalar1 &factor, const ScalConjAddExpr< Left, Right, Scalar2 > &expr)
 Scaled-conjugated addition expression factor. More...
 
template<typename Left , typename Right >
ScalConjAddExpr< Left, Right, typename ExprTrait< ConjAddExpr< Left, Right > >::numeric_type > operator- (const ConjAddExpr< Left, Right > &expr)
 Negated-conjugated addition expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
ScalConjAddExpr< Left, Right, Scalar > operator- (const ScalConjAddExpr< Left, Right, Scalar > &expr)
 Negated-conjugated addition expression factor. More...
 
template<typename Array , typename Scalar , bool Alias, typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalBlkTsrExpr< typename std::remove_const< Array >::type, Scalar > operator* (const BlkTsrExpr< Array, Alias > &expr, const Scalar &factor)
 Scaled-block expression factor. More...
 
template<typename Array , typename Scalar , bool Alias, typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalBlkTsrExpr< typename std::remove_const< Array >::type, Scalar > operator* (const Scalar &factor, const BlkTsrExpr< Array, Alias > &expr)
 Scaled-block expression factor. More...
 
template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalBlkTsrExpr< Array, mult_t< Scalar1, Scalar2 > > operator* (const ScalBlkTsrExpr< Array, Scalar1 > &expr, const Scalar2 &factor)
 Scaled-block expression factor. More...
 
template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalBlkTsrExpr< Array, mult_t< Scalar2, Scalar1 > > operator* (const Scalar1 &factor, const ScalBlkTsrExpr< Array, Scalar2 > &expr)
 Scaled-block expression factor. More...
 
template<typename Array >
ScalBlkTsrExpr< typename std::remove_const< Array >::type, typename ExprTrait< BlkTsrExpr< Array, true > >::numeric_type > operator- (const BlkTsrExpr< Array, true > &expr)
 Negated block expression factor. More...
 
template<typename Array , typename Scalar >
ScalBlkTsrExpr< Array, Scalar > operator- (const ScalBlkTsrExpr< Array, Scalar > &expr)
 Negated scaled-block expression factor. More...
 
template<typename Array , bool Alias>
ConjBlkTsrExpr< typename std::remove_const< Array >::type > conj (const BlkTsrExpr< Array, Alias > &expr)
 Conjugated block tensor expression factory. More...
 
template<typename Array >
BlkTsrExpr< const Array, true > conj (const ConjBlkTsrExpr< Array > &expr)
 Conjugate-conjugate block tensor expression factory. More...
 
template<typename Array , typename Scalar >
ScalConjBlkTsrExpr< Array, Scalar > conj (const ScalBlkTsrExpr< Array, Scalar > &expr)
 Conjugated block tensor expression factor. More...
 
template<typename Array , typename Scalar >
ScalBlkTsrExpr< Array, Scalar > conj (const ScalConjBlkTsrExpr< Array, Scalar > &expr)
 Conjugate-conjugate tensor expression factory. More...
 
template<typename Array , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjBlkTsrExpr< Array, Scalar > operator* (const ConjBlkTsrExpr< const Array > &expr, const Scalar &factor)
 Scaled block tensor expression factor. More...
 
template<typename Array , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjBlkTsrExpr< Array, Scalar > operator* (const Scalar &factor, const ConjBlkTsrExpr< Array > &expr)
 Scaled block tensor expression factor. More...
 
template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalConjBlkTsrExpr< Array, mult_t< Scalar1, Scalar2 > > operator* (const ScalConjBlkTsrExpr< Array, Scalar1 > &expr, const Scalar2 &factor)
 Scaled block tensor expression factor. More...
 
template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalConjBlkTsrExpr< Array, mult_t< Scalar2, Scalar1 > > operator* (const Scalar1 &factor, const ScalConjBlkTsrExpr< Array, Scalar2 > &expr)
 Scaled-tensor expression factor. More...
 
template<typename Array >
ScalConjBlkTsrExpr< Array, typename ExprTrait< ConjBlkTsrExpr< Array > >::numeric_type > operator- (const ConjBlkTsrExpr< Array > &expr)
 Negated-conjugated-tensor expression factor. More...
 
template<typename Array , typename Scalar >
ScalConjBlkTsrExpr< Array, Scalar > operator- (const ScalConjBlkTsrExpr< Array, Scalar > &expr)
 Negated-conjugated-tensor expression factor. More...
 
template<typename A , bool Alias>
ExprTraceTarget operator<< (std::ostream &os, const TsrExpr< A, Alias > &tsr)
 Expression trace factory function. More...
 
template<typename Left , typename Right >
MultExpr< Left, Right > operator* (const Expr< Left > &left, const Expr< Right > &right)
 Multiplication expression factor. More...
 
template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalMultExpr< Left, Right, Scalar > operator* (const MultExpr< Left, Right > &expr, const Scalar &factor)
 Scaled-multiplication expression factor. More...
 
template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalMultExpr< Left, Right, Scalar > operator* (const Scalar &factor, const MultExpr< Left, Right > &expr)
 Scaled-multiplication expression factor. More...
 
template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalMultExpr< Left, Right, mult_t< Scalar1, Scalar2 > > operator* (const ScalMultExpr< Left, Right, Scalar1 > &expr, const Scalar2 &factor)
 Scaled-multiplication expression factor. More...
 
template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalMultExpr< Left, Right, mult_t< Scalar2, Scalar1 > > operator* (const Scalar1 &factor, const ScalMultExpr< Left, Right, Scalar2 > &expr)
 Scaled-multiplication expression factor. More...
 
template<typename Left , typename Right >
ScalMultExpr< Left, Right, typename ExprTrait< MultExpr< Left, Right > >::numeric_type > operator- (const MultExpr< Left, Right > &expr)
 Negated multiplication expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
ScalMultExpr< Left, Right, Scalar > operator- (const ScalMultExpr< Left, Right, Scalar > &expr)
 Negated scaled-multiplication expression factor. More...
 
template<typename Left , typename Right >
ConjMultExpr< Left, Right > conj (const MultExpr< Left, Right > &expr)
 Conjugated multiplication expression factory. More...
 
template<typename Left , typename Right >
MultExpr< Left, Right > conj (const ConjMultExpr< Left, Right > &expr)
 Conjugated-conjugate multiplication expression factory. More...
 
template<typename Left , typename Right , typename Scalar >
ScalConjMultExpr< Left, Right, Scalar > conj (const ScalMultExpr< Left, Right, Scalar > &expr)
 Conjugated multiplication expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
ScalMultExpr< Left, Right, Scalar > conj (const ScalConjMultExpr< Left, Right, Scalar > &expr)
 Conjugated-conjugate multiplication expression factory. More...
 
template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjMultExpr< Left, Right, Scalar > operator* (const ConjMultExpr< Left, Right > &expr, const Scalar &factor)
 Scaled-conjugated multiplication expression factor. More...
 
template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjMultExpr< Left, Right, Scalar > operator* (const Scalar &factor, const ConjMultExpr< Left, Right > &expr)
 Scaled-conjugated multiplication expression factor. More...
 
template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalConjMultExpr< Left, Right, mult_t< Scalar1, Scalar2 > > operator* (const ScalConjMultExpr< Left, Right, Scalar1 > &expr, const Scalar2 &factor)
 Scaled-conjugated multiplication expression factor. More...
 
template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalConjMultExpr< Left, Right, mult_t< Scalar2, Scalar1 > > operator* (const Scalar1 &factor, const ScalConjMultExpr< Left, Right, Scalar2 > &expr)
 Scaled-conjugated multiplication expression factor. More...
 
template<typename Left , typename Right >
ScalConjMultExpr< Left, Right, typename ExprTrait< ConjMultExpr< Left, Right > >::numeric_type > operator- (const ConjMultExpr< Left, Right > &expr)
 Negated-conjugated multiplication expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
ScalConjMultExpr< Left, Right, Scalar > operator- (const ScalConjMultExpr< Left, Right, Scalar > &expr)
 Negated-conjugated multiplication expression factor. More...
 
template<typename Numeric , typename Left , typename Right , typename std::enable_if< TiledArray::detail::is_numeric< Numeric >::value >::type * = nullptr>
Numeric & operator+= (Numeric &result, const MultExpr< Left, Right > &expr)
 Dot product add-to operator. More...
 
template<typename Numeric , typename Left , typename Right , typename std::enable_if< TiledArray::detail::is_numeric< Numeric >::value >::type * = nullptr>
Numeric & operator-= (Numeric &result, const MultExpr< Left, Right > &expr)
 Dot product subtract-to operator. More...
 
template<typename Numeric , typename Left , typename Right , typename std::enable_if< TiledArray::detail::is_numeric< Numeric >::value >::type * = nullptr>
Numeric & operator*= (Numeric &result, const MultExpr< Left, Right > &expr)
 Dot product multiply-to operator. More...
 
template<typename Arg , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalExpr< Arg, Scalar > operator* (const Expr< Arg > &expr, const Scalar &factor)
 Scaled expression factor. More...
 
template<typename Arg , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalExpr< Arg, Scalar > operator* (const Scalar &factor, const Expr< Arg > &expr)
 Scaled expression factor. More...
 
template<typename Arg , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalExpr< Arg, mult_t< Scalar1, Scalar2 > > operator* (const ScalExpr< Arg, Scalar1 > &expr, const Scalar2 &factor)
 Scaled expression factor. More...
 
template<typename Arg , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalExpr< Arg, mult_t< Scalar2, Scalar1 > > operator* (const Scalar1 &factor, const ScalExpr< Arg, Scalar2 > &expr)
 Scaled expression factor. More...
 
template<typename Arg >
ScalExpr< Arg, typename ExprTrait< Arg >::scalar_type > operator- (const Expr< Arg > &expr)
 Negated expression factor. More...
 
template<typename Arg , typename Scalar >
ScalExpr< Arg, Scalar > operator- (const ScalExpr< Arg, Scalar > &expr)
 Negated expression factor. More...
 
template<typename Array , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalTsrExpr< typename std::remove_const< Array >::type, Scalar > operator* (const TsrExpr< Array, true > &expr, const Scalar &factor)
 Scaled-tensor expression factor. More...
 
template<typename Array , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalTsrExpr< typename std::remove_const< Array >::type, Scalar > operator* (const Scalar &factor, const TsrExpr< Array, true > &expr)
 Scaled-tensor expression factor. More...
 
template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalTsrExpr< Array, mult_t< Scalar1, Scalar2 > > operator* (const ScalTsrExpr< Array, Scalar1 > &expr, const Scalar2 &factor)
 Scaled-tensor expression factor. More...
 
template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalTsrExpr< Array, mult_t< Scalar2, Scalar1 > > operator* (const Scalar1 &factor, const ScalTsrExpr< Array, Scalar2 > &expr)
 Scaled-tensor expression factor. More...
 
template<typename Array >
ScalTsrExpr< typename std::remove_const< Array >::type, typename ExprTrait< TsrExpr< Array, true > >::numeric_type > operator- (const TsrExpr< Array, true > &expr)
 Negated-tensor expression factor. More...
 
template<typename Array , typename Scalar >
ScalTsrExpr< Array, Scalar > operator- (const ScalTsrExpr< Array, Scalar > &expr)
 Negated-tensor expression factor. More...
 
template<typename Array >
ConjTsrExpr< typename std::remove_const< Array >::type > conj (const TsrExpr< Array, true > &expr)
 Conjugated tensor expression factory. More...
 
template<typename Array >
TsrExpr< const Array, true > conj (const ConjTsrExpr< Array > &expr)
 Conjugate-conjugate tensor expression factory. More...
 
template<typename Array , typename Scalar >
ScalConjTsrExpr< Array, Scalar > conj (const ScalTsrExpr< Array, Scalar > &expr)
 Conjugated-tensor expression factor. More...
 
template<typename Array , typename Scalar >
ScalTsrExpr< Array, Scalar > conj (const ScalConjTsrExpr< Array, Scalar > &expr)
 Conjugate-conjugate tensor expression factory. More...
 
template<typename Array , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjTsrExpr< Array, Scalar > operator* (const ConjTsrExpr< const Array > &expr, const Scalar &factor)
 Scaled-tensor expression factor. More...
 
template<typename Array , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjTsrExpr< Array, Scalar > operator* (const Scalar &factor, const ConjTsrExpr< Array > &expr)
 Scaled-tensor expression factor. More...
 
template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalConjTsrExpr< Array, mult_t< Scalar1, Scalar2 > > operator* (const ScalConjTsrExpr< Array, Scalar1 > &expr, const Scalar2 &factor)
 Scaled-tensor expression factor. More...
 
template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalConjTsrExpr< Array, mult_t< Scalar2, Scalar1 > > operator* (const Scalar1 &factor, const ScalConjTsrExpr< Array, Scalar2 > &expr)
 Scaled-tensor expression factor. More...
 
template<typename Array >
ScalConjTsrExpr< Array, typename ExprTrait< ConjTsrExpr< Array > >::numeric_type > operator- (const ConjTsrExpr< Array > &expr)
 Negated-conjugated-tensor expression factor. More...
 
template<typename Array , typename Scalar >
ScalConjTsrExpr< Array, Scalar > operator- (const ScalConjTsrExpr< Array, Scalar > &expr)
 Negated-conjugated-tensor expression factor. More...
 
template<typename Left , typename Right >
SubtExpr< Left, Right > 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< Scalar >::value >::type * = nullptr>
ScalSubtExpr< Left, Right, Scalar > 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< Scalar >::value >::type * = nullptr>
ScalSubtExpr< Left, Right, Scalar > 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< Scalar2 >::value >::type * = nullptr>
ScalSubtExpr< Left, Right, mult_t< Scalar1, Scalar2 > > 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< Scalar1 >::value >::type * = nullptr>
ScalSubtExpr< Left, Right, mult_t< Scalar2, Scalar1 > > 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 > operator- (const SubtExpr< Left, Right > &expr)
 Negated subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
ScalSubtExpr< Left, Right, Scalar > operator- (const ScalSubtExpr< Left, Right, Scalar > &expr)
 Negated scaled-subtraction expression factor. More...
 
template<typename Left , typename Right >
ConjSubtExpr< Left, Right > conj (const SubtExpr< Left, Right > &expr)
 Conjugated subtraction expression factory. More...
 
template<typename Left , typename Right >
SubtExpr< Left, Right > conj (const ConjSubtExpr< Left, Right > &expr)
 Conjugated-conjugate subtraction expression factory. More...
 
template<typename Left , typename Right , typename Scalar >
ScalConjSubtExpr< Left, Right, Scalar > conj (const ScalSubtExpr< Left, Right, Scalar > &expr)
 Conjugated subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
ScalSubtExpr< Left, Right, Scalar > 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< Scalar >::value >::type * = nullptr>
ScalConjSubtExpr< Left, Right, Scalar > 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< Scalar >::value >::type * = nullptr>
ScalConjSubtExpr< Left, Right, Scalar > 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< Scalar2 >::value >::type * = nullptr>
ScalConjSubtExpr< Left, Right, mult_t< Scalar1, Scalar2 > > 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< Scalar1 >::value >::type * = nullptr>
ScalConjSubtExpr< Left, Right, mult_t< Scalar2, Scalar1 > > 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 > operator- (const ConjSubtExpr< Left, Right > &expr)
 Negated-conjugated subtraction expression factor. More...
 
template<typename Left , typename Right , typename Scalar >
ScalConjSubtExpr< Left, Right, Scalar > operator- (const ScalConjSubtExpr< Left, Right, Scalar > &expr)
 Negated-conjugated subtraction expression factor. More...
 
VariableList operator* (const ::TiledArray::Permutation &, const VariableList &)
 
void swap (VariableList &v0, VariableList &v1)
 Exchange the content of the two variable lists. More...
 
bool operator== (const VariableList &v0, const VariableList &v1)
 
bool operator!= (const VariableList &v0, const VariableList &v1)
 
std::ostream & operator<< (std::ostream &out, const VariableList &v)
 ostream VariableList output operator. More...
 

Typedef Documentation

◆ ConjAddExpr

template<typename Left , typename Right >
using TiledArray::expressions::ConjAddExpr = typedef ScalAddExpr<Left, Right, TiledArray::detail::ComplexConjugate<void> >

Definition at line 37 of file add_expr.h.

◆ ConjBlkTsrExpr

Definition at line 42 of file blk_tsr_expr.h.

◆ ConjMultExpr

template<typename Left , typename Right >
using TiledArray::expressions::ConjMultExpr = typedef ScalMultExpr<Left, Right, TiledArray::detail::ComplexConjugate<void> >

Definition at line 37 of file mult_expr.h.

◆ ConjSubtExpr

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

Definition at line 38 of file subt_expr.h.

◆ ConjTsrExpr

Definition at line 36 of file scal_tsr_expr.h.

◆ ScalConjAddExpr

template<typename Left , typename Right , typename Scalar >
using TiledArray::expressions::ScalConjAddExpr = typedef ScalAddExpr<Left, Right, TiledArray::detail::ComplexConjugate<Scalar> >

Definition at line 41 of file add_expr.h.

◆ ScalConjBlkTsrExpr

template<typename Array , typename Scalar >
using TiledArray::expressions::ScalConjBlkTsrExpr = typedef ScalBlkTsrExpr<Array, TiledArray::detail::ComplexConjugate<Scalar> >

Definition at line 46 of file blk_tsr_expr.h.

◆ ScalConjMultExpr

template<typename Left , typename Right , typename Scalar >
using TiledArray::expressions::ScalConjMultExpr = typedef ScalMultExpr<Left, Right, TiledArray::detail::ComplexConjugate<Scalar> >

Definition at line 41 of file mult_expr.h.

◆ ScalConjSubtExpr

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

Definition at line 42 of file subt_expr.h.

◆ ScalConjTsrExpr

template<typename Array , typename Scalar >
using TiledArray::expressions::ScalConjTsrExpr = typedef ScalTsrExpr<Array, TiledArray::detail::ComplexConjugate<Scalar> >

Definition at line 39 of file scal_tsr_expr.h.

Function Documentation

◆ conj() [1/20]

template<typename Array >
ConjTsrExpr<typename std::remove_const<Array>::type> TiledArray::expressions::conj ( const TsrExpr< Array, true > &  expr)
inline

Conjugated tensor expression factory.

Template Parameters
ArrayA DistArray type
Parameters
exprThe tensor expression object
Returns
A conjugated expression object

Definition at line 222 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ conj() [2/20]

template<typename Array >
TsrExpr<const Array, true> TiledArray::expressions::conj ( const ConjTsrExpr< Array > &  expr)
inline

Conjugate-conjugate tensor expression factory.

Template Parameters
ArrayA DistArray type
Parameters
exprThe tensor expression object
Returns
A tensor expression object

Definition at line 233 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ conj() [3/20]

template<typename Array , typename Scalar >
ScalConjTsrExpr<Array, Scalar> TiledArray::expressions::conj ( const ScalTsrExpr< Array, Scalar > &  expr)
inline

Conjugated-tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
exprThe tensor expression object
Returns
A conjugated expression object

Definition at line 244 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ conj() [4/20]

template<typename Array , typename Scalar >
ScalTsrExpr<Array, Scalar> TiledArray::expressions::conj ( const ScalConjTsrExpr< Array, Scalar > &  expr)
inline

Conjugate-conjugate tensor expression factory.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
exprThe scaled conjugate tensor expression object
Returns
A conjugated expression object

Definition at line 257 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ conj() [5/20]

template<typename Left , typename Right >
ConjAddExpr<Left, Right> TiledArray::expressions::conj ( const AddExpr< Left, Right > &  expr)
inline

Conjugated addition expression factory.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe addition expression object
Returns
A conjugated addition expression object

Definition at line 292 of file add_expr.h.

Here is the call graph for this function:

◆ conj() [6/20]

template<typename Left , typename Right >
ConjSubtExpr<Left, Right> TiledArray::expressions::conj ( const SubtExpr< Left, Right > &  expr)
inline

Conjugated subtraction expression factory.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe subtraction expression object
Returns
A conjugated subtraction expression object

Definition at line 293 of file subt_expr.h.

Here is the call graph for this function:

◆ conj() [7/20]

template<typename Left , typename Right >
AddExpr<Left, Right> TiledArray::expressions::conj ( const ConjAddExpr< Left, Right > &  expr)
inline

Conjugated-conjugate addition expression factory.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe addition expression object
Returns
A tensor expression object

Definition at line 303 of file add_expr.h.

Here is the call graph for this function:

◆ conj() [8/20]

template<typename Left , typename Right >
SubtExpr<Left, Right> TiledArray::expressions::conj ( const ConjSubtExpr< Left, Right > &  expr)
inline

Conjugated-conjugate subtraction expression factory.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe subtraction expression object
Returns
A tensor expression object

Definition at line 304 of file subt_expr.h.

Here is the call graph for this function:

◆ conj() [9/20]

template<typename Left , typename Right >
ConjMultExpr<Left, Right> TiledArray::expressions::conj ( const MultExpr< Left, Right > &  expr)
inline

Conjugated multiplication expression factory.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe multiplication expression object
Returns
A conjugated multiplication expression object

Definition at line 313 of file mult_expr.h.

Here is the call graph for this function:

◆ conj() [10/20]

template<typename Left , typename Right , typename Scalar >
ScalConjAddExpr<Left, Right, Scalar> TiledArray::expressions::conj ( const ScalAddExpr< Left, Right, Scalar > &  expr)
inline

Conjugated addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe addition expression object
Returns
A conjugated addition expression object

Definition at line 316 of file add_expr.h.

Here is the call graph for this function:

◆ conj() [11/20]

template<typename Left , typename Right , typename Scalar >
ScalConjSubtExpr<Left, Right, Scalar> TiledArray::expressions::conj ( const ScalSubtExpr< Left, Right, Scalar > &  expr)
inline

Conjugated subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe subtraction expression object
Returns
A conjugated subtraction expression object

Definition at line 317 of file subt_expr.h.

Here is the call graph for this function:

◆ conj() [12/20]

template<typename Left , typename Right >
MultExpr<Left, Right> TiledArray::expressions::conj ( const ConjMultExpr< Left, Right > &  expr)
inline

Conjugated-conjugate multiplication expression factory.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe multiplication expression object
Returns
A multiplication expression object

Definition at line 324 of file mult_expr.h.

Here is the call graph for this function:

◆ conj() [13/20]

template<typename Left , typename Right , typename Scalar >
ScalAddExpr<Left, Right, Scalar> TiledArray::expressions::conj ( const ScalConjAddExpr< Left, Right, Scalar > &  expr)
inline

Conjugated-conjugate addition expression factory.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe scaled conjugate tensor expression object
Returns
A conjugated expression object

Definition at line 330 of file add_expr.h.

Here is the call graph for this function:

◆ conj() [14/20]

template<typename Left , typename Right , typename Scalar >
ScalSubtExpr<Left, Right, Scalar> TiledArray::expressions::conj ( const ScalConjSubtExpr< Left, Right, Scalar > &  expr)
inline

Conjugated-conjugate subtraction expression factory.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe scaled conjugate tensor expression object
Returns
A conjugated expression object

Definition at line 331 of file subt_expr.h.

Here is the call graph for this function:

◆ conj() [15/20]

template<typename Left , typename Right , typename Scalar >
ScalConjMultExpr<Left, Right, Scalar> TiledArray::expressions::conj ( const ScalMultExpr< Left, Right, Scalar > &  expr)
inline

Conjugated multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe multiplication expression object
Returns
A scaled-conjugated multiplication expression object

Definition at line 337 of file mult_expr.h.

Here is the call graph for this function:

◆ conj() [16/20]

template<typename Left , typename Right , typename Scalar >
ScalMultExpr<Left, Right, Scalar> TiledArray::expressions::conj ( const ScalConjMultExpr< Left, Right, Scalar > &  expr)
inline

Conjugated-conjugate multiplication expression factory.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe scaled conjugate tensor expression object
Returns
A scaled multiplication expression object

Definition at line 351 of file mult_expr.h.

Here is the call graph for this function:

◆ conj() [17/20]

template<typename Array , bool Alias>
ConjBlkTsrExpr<typename std::remove_const<Array>::type> TiledArray::expressions::conj ( const BlkTsrExpr< Array, Alias > &  expr)
inline

Conjugated block tensor expression factory.

Template Parameters
ArrayA DistArray type
AliasTiles alias flag
Parameters
exprThe block tensor expression object
Returns
A conjugated expression object

Definition at line 578 of file blk_tsr_expr.h.

Here is the call graph for this function:

◆ conj() [18/20]

template<typename Array >
BlkTsrExpr<const Array, true> TiledArray::expressions::conj ( const ConjBlkTsrExpr< Array > &  expr)
inline

Conjugate-conjugate block tensor expression factory.

Template Parameters
ArrayA DistArray type
Parameters
exprThe tensor expression object
Returns
A tensor expression object

Definition at line 591 of file blk_tsr_expr.h.

Here is the call graph for this function:

◆ conj() [19/20]

template<typename Array , typename Scalar >
ScalConjBlkTsrExpr<Array, Scalar> TiledArray::expressions::conj ( const ScalBlkTsrExpr< Array, Scalar > &  expr)
inline

Conjugated block tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
exprThe block tensor expression object
Returns
A conjugated expression object

Definition at line 604 of file blk_tsr_expr.h.

Here is the call graph for this function:

◆ conj() [20/20]

template<typename Array , typename Scalar >
ScalBlkTsrExpr<Array, Scalar> TiledArray::expressions::conj ( const ScalConjBlkTsrExpr< Array, Scalar > &  expr)
inline

Conjugate-conjugate tensor expression factory.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
exprThe scaled conjugate tensor expression object
Returns
A conjugated expression object

Definition at line 618 of file blk_tsr_expr.h.

Here is the call graph for this function:

◆ operator!=()

bool TiledArray::expressions::operator!= ( const VariableList v0,
const VariableList v1 
)
inline

Definition at line 293 of file variable_list.h.

Here is the call graph for this function:

◆ operator*() [1/46]

VariableList TiledArray::expressions::operator* ( const ::TiledArray::Permutation p,
const VariableList v 
)
inline

Definition at line 297 of file variable_list.h.

Here is the call graph for this function:

◆ operator*() [2/46]

template<typename Arg , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalExpr<Arg, Scalar> TiledArray::expressions::operator* ( const Expr< Arg > &  expr,
const Scalar &  factor 
)
inline

Scaled expression factor.

Template Parameters
ArgThe expression type
ScalarA scalar type
Parameters
exprThe expression object
factorThe scaling factor
Returns
A scaled expression object

Definition at line 116 of file scal_expr.h.

Here is the call graph for this function:

◆ operator*() [3/46]

template<typename Array , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalTsrExpr<typename std::remove_const<Array>::type, Scalar> TiledArray::expressions::operator* ( const TsrExpr< Array, true > &  expr,
const Scalar &  factor 
)
inline

Scaled-tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
exprThe tensor expression object
factorThe scaling factor
Returns
A scaled-tensor expression object

Definition at line 131 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ operator*() [4/46]

template<typename Arg , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalExpr<Arg, Scalar> TiledArray::expressions::operator* ( const Scalar &  factor,
const Expr< Arg > &  expr 
)
inline

Scaled expression factor.

Template Parameters
ArgThe expression type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe expression object
Returns
A scaled expression object

Definition at line 135 of file scal_expr.h.

Here is the call graph for this function:

◆ operator*() [5/46]

template<typename Array , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalTsrExpr<typename std::remove_const<Array>::type, Scalar> TiledArray::expressions::operator* ( const Scalar &  factor,
const TsrExpr< Array, true > &  expr 
)
inline

Scaled-tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe tensor expression object
Returns
A scaled-tensor expression object

Definition at line 148 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ operator*() [6/46]

template<typename Arg , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalExpr<Arg, mult_t<Scalar1, Scalar2> > TiledArray::expressions::operator* ( const ScalExpr< Arg, Scalar1 > &  expr,
const Scalar2 &  factor 
)
inline

Scaled expression factor.

Template Parameters
ArgThe argument expression type
ScalarA scalar type
Parameters
exprThe scaled expression object
factorThe scaling factor
Returns
A scaled expression object

Definition at line 154 of file scal_expr.h.

◆ operator*() [7/46]

template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalTsrExpr<Array, mult_t<Scalar1, Scalar2> > TiledArray::expressions::operator* ( const ScalTsrExpr< Array, Scalar1 > &  expr,
const Scalar2 &  factor 
)
inline

Scaled-tensor expression factor.

Template Parameters
ArrayA DistArray type
Scalar1A scalar type
Scalar2A scalar type
Parameters
exprThe scaled-tensor expression object
factorThe scaling factor
Returns
A scaled-tensor expression object

Definition at line 166 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ operator*() [8/46]

template<typename Arg , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalExpr<Arg, mult_t<Scalar2, Scalar1> > TiledArray::expressions::operator* ( const Scalar1 &  factor,
const ScalExpr< Arg, Scalar2 > &  expr 
)
inline

Scaled expression factor.

Template Parameters
ArgThe argument expression type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe scaled expression object
Returns
A scaled expression object

Definition at line 170 of file scal_expr.h.

◆ operator*() [9/46]

template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalTsrExpr<Array, mult_t<Scalar2, Scalar1> > TiledArray::expressions::operator* ( const Scalar1 &  factor,
const ScalTsrExpr< Array, Scalar2 > &  expr 
)
inline

Scaled-tensor expression factor.

Template Parameters
ArrayA DistArray type
Scalar1A scalar type
Scalar2A scalar type
Parameters
factorThe scaling factor
exprThe scaled-tensor expression object
Returns
A scaled-tensor expression object

Definition at line 184 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ operator*() [10/46]

template<typename Left , typename Right >
MultExpr<Left, Right> TiledArray::expressions::operator* ( const Expr< Left > &  left,
const Expr< Right > &  right 
)
inline

Multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
leftThe left-hand expression object
rightThe right-hand expression object
Returns
An multiplication expression object

Definition at line 192 of file mult_expr.h.

Here is the call graph for this function:

◆ operator*() [11/46]

template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalSubtExpr<Left, Right, Scalar> TiledArray::expressions::operator* ( const SubtExpr< Left, Right > &  expr,
const Scalar &  factor 
)
inline

Scaled-subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe subtraction expression object
factorThe scaling factor
Returns
A scaled-subtraction expression object

Definition at line 195 of file subt_expr.h.

Here is the call graph for this function:

◆ operator*() [12/46]

template<typename Left , typename Right , typename Scalar >
std::enable_if<TiledArray::detail::is_numeric<Scalar>::value, ScalAddExpr<Left, Right, Scalar> >::type TiledArray::expressions::operator* ( const AddExpr< Left, Right > &  expr,
const Scalar &  factor 
)
inline

Scaled-addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe addition expression object
factorThe scaling factor
Returns
A scaled-addition expression object

Definition at line 198 of file add_expr.h.

Here is the call graph for this function:

◆ operator*() [13/46]

template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalSubtExpr<Left, Right, Scalar> TiledArray::expressions::operator* ( const Scalar &  factor,
const SubtExpr< Left, Right > &  expr 
)
inline

Scaled-subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe subtraction expression object
Returns
A scaled-subtraction expression object

Definition at line 213 of file subt_expr.h.

Here is the call graph for this function:

◆ operator*() [14/46]

template<typename Left , typename Right , typename Scalar >
std::enable_if<TiledArray::detail::is_numeric<Scalar>::value, ScalAddExpr<Left, Right, Scalar> >::type TiledArray::expressions::operator* ( const Scalar &  factor,
const AddExpr< Left, Right > &  expr 
)
inline

Scaled-addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe addition expression object
Returns
A scaled-addition expression object

Definition at line 214 of file add_expr.h.

Here is the call graph for this function:

◆ operator*() [15/46]

template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalMultExpr<Left, Right, Scalar> TiledArray::expressions::operator* ( const MultExpr< Left, Right > &  expr,
const Scalar &  factor 
)
inline

Scaled-multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe multiplication expression object
factorThe scaling factor
Returns
A scaled-multiplication expression object

Definition at line 215 of file mult_expr.h.

Here is the call graph for this function:

◆ operator*() [16/46]

template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalSubtExpr<Left, Right, mult_t<Scalar1, Scalar2> > TiledArray::expressions::operator* ( const ScalSubtExpr< Left, Right, Scalar1 > &  expr,
const Scalar2 &  factor 
)
inline

Scaled-subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Scalar1The expression scaling factor type
Scalar2The scaling factor type
Parameters
exprThe scaled-subtraction expression object
factorThe scaling factor
Returns
A scaled-subtraction expression object

Definition at line 232 of file subt_expr.h.

◆ operator*() [17/46]

template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalAddExpr<Left, Right, mult_t<Scalar1, Scalar2> > TiledArray::expressions::operator* ( const ScalAddExpr< Left, Right, Scalar1 > &  expr,
const Scalar2 &  factor 
)
inline

Scaled-addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Scalar1The expression scaling factor type
Scalar2The scaling factor type
Parameters
exprThe addition expression object
factorThe scaling factor
Returns
A scaled-addition expression object

Definition at line 233 of file add_expr.h.

◆ operator*() [18/46]

template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalMultExpr<Left, Right, Scalar> TiledArray::expressions::operator* ( const Scalar &  factor,
const MultExpr< Left, Right > &  expr 
)
inline

Scaled-multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe multiplication expression object
Returns
A scaled-multiplication expression object

Definition at line 233 of file mult_expr.h.

Here is the call graph for this function:

◆ operator*() [19/46]

template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalAddExpr<Left, Right, mult_t<Scalar2, Scalar1> > TiledArray::expressions::operator* ( const Scalar1 &  factor,
const ScalAddExpr< Left, Right, Scalar2 > &  expr 
)
inline

Scaled-addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Scalar1The scaling factor type
Scalar2The expression scaling factor type
Parameters
factorThe scaling factor
exprThe addition expression object
Returns
A scaled-addition expression object

Definition at line 252 of file add_expr.h.

◆ operator*() [20/46]

template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalMultExpr<Left, Right, mult_t<Scalar1, Scalar2> > TiledArray::expressions::operator* ( const ScalMultExpr< Left, Right, Scalar1 > &  expr,
const Scalar2 &  factor 
)
inline

Scaled-multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Scalar1A scalar type
Scalar2A scalar type
Parameters
exprThe multiplication expression object
factorThe scaling factor
Returns
A scaled-multiplication expression object

Definition at line 252 of file mult_expr.h.

◆ operator*() [21/46]

template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalSubtExpr<Left, Right, mult_t<Scalar2, Scalar1> > TiledArray::expressions::operator* ( const Scalar1 &  factor,
const ScalSubtExpr< Left, Right, Scalar2 > &  expr 
)
inline

Scaled-subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Scalar1The scaling factor type
Scalar2The expression scaling factor type
Parameters
factorThe scaling factor
exprThe scaled-subtraction expression object
Returns
A scaled-subtraction expression object

Definition at line 253 of file subt_expr.h.

◆ operator*() [22/46]

template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalMultExpr<Left, Right, mult_t<Scalar2, Scalar1> > TiledArray::expressions::operator* ( const Scalar1 &  factor,
const ScalMultExpr< Left, Right, Scalar2 > &  expr 
)
inline

Scaled-multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Scalar1A scalar type
Scalar2A scalar type
Parameters
factorThe scaling factor
exprThe multiplication expression object
Returns
A scaled-multiplication expression object

Definition at line 273 of file mult_expr.h.

◆ operator*() [23/46]

template<typename Array , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjTsrExpr<Array, Scalar> TiledArray::expressions::operator* ( const ConjTsrExpr< const Array > &  expr,
const Scalar &  factor 
)
inline

Scaled-tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
exprThe tensor expression object
factorThe scaling factor
Returns
A scaled-tensor expression object

Definition at line 274 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ operator*() [24/46]

template<typename Array , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjTsrExpr<Array, Scalar> TiledArray::expressions::operator* ( const Scalar &  factor,
const ConjTsrExpr< Array > &  expr 
)
inline

Scaled-tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe tensor expression object
Returns
A scaled-tensor expression object

Definition at line 291 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ operator*() [25/46]

template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalConjTsrExpr<Array, mult_t<Scalar1, Scalar2> > TiledArray::expressions::operator* ( const ScalConjTsrExpr< Array, Scalar1 > &  expr,
const Scalar2 &  factor 
)
inline

Scaled-tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
exprThe scaled-tensor expression object
factorThe scaling factor
Returns
A scaled-tensor expression object

Definition at line 308 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ operator*() [26/46]

template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalConjTsrExpr<Array, mult_t<Scalar2, Scalar1> > TiledArray::expressions::operator* ( const Scalar1 &  factor,
const ScalConjTsrExpr< Array, Scalar2 > &  expr 
)
inline

Scaled-tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe scaled-tensor expression object
Returns
A scaled-tensor expression object

Definition at line 325 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ operator*() [27/46]

template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjAddExpr<Left, Right, Scalar> TiledArray::expressions::operator* ( const ConjAddExpr< Left, Right > &  expr,
const Scalar &  factor 
)
inline

Scaled-conjugated addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe tensor expression object
factorThe scaling factor
Returns
A scaled-tensor expression object

Definition at line 348 of file add_expr.h.

Here is the call graph for this function:

◆ operator*() [28/46]

template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjSubtExpr<Left, Right, Scalar> TiledArray::expressions::operator* ( const ConjSubtExpr< Left, Right > &  expr,
const Scalar &  factor 
)
inline

Scaled-conjugated subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe tensor expression object
factorThe scaling factor
Returns
A scaled-tensor expression object

Definition at line 349 of file subt_expr.h.

Here is the call graph for this function:

◆ operator*() [29/46]

template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjAddExpr<Left, Right, Scalar> TiledArray::expressions::operator* ( const Scalar &  factor,
const ConjAddExpr< Left, Right > &  expr 
)
inline

Scaled-conjugated addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe tensor expression object
Returns
A scaled-conjugated addition expression object

Definition at line 366 of file add_expr.h.

Here is the call graph for this function:

◆ operator*() [30/46]

template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjSubtExpr<Left, Right, Scalar> TiledArray::expressions::operator* ( const Scalar &  factor,
const ConjSubtExpr< Left, Right > &  expr 
)
inline

Scaled-conjugated subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe tensor expression object
Returns
A scaled-conjugated subtraction expression object

Definition at line 367 of file subt_expr.h.

Here is the call graph for this function:

◆ operator*() [31/46]

template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjMultExpr<Left, Right, Scalar> TiledArray::expressions::operator* ( const ConjMultExpr< Left, Right > &  expr,
const Scalar &  factor 
)
inline

Scaled-conjugated multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe tensor expression object
factorThe scaling factor
Returns
A scaled-conjugated multiplication expression object

Definition at line 369 of file mult_expr.h.

Here is the call graph for this function:

◆ operator*() [32/46]

template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalConjAddExpr<Left, Right, mult_t<Scalar1, Scalar2> > TiledArray::expressions::operator* ( const ScalConjAddExpr< Left, Right, Scalar1 > &  expr,
const Scalar2 &  factor 
)
inline

Scaled-conjugated addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Scalar1The expression scaling factor type
Scalar2The scaling factor type
Parameters
exprThe scaled-tensor expression object
factorThe scaling factor
Returns
A scaled-conjugated addition expression object

Definition at line 385 of file add_expr.h.

Here is the call graph for this function:

◆ operator*() [33/46]

template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalConjSubtExpr<Left, Right, mult_t<Scalar1, Scalar2> > TiledArray::expressions::operator* ( const ScalConjSubtExpr< Left, Right, Scalar1 > &  expr,
const Scalar2 &  factor 
)
inline

Scaled-conjugated subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Scalar1The expression scaling factor type
Scalar2The scaling factor type
Parameters
exprThe scaled-tensor expression object
factorThe scaling factor
Returns
A scaled-conjugated subtraction expression object

Definition at line 386 of file subt_expr.h.

Here is the call graph for this function:

◆ operator*() [34/46]

template<typename Left , typename Right , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjMultExpr<Left, Right, Scalar> TiledArray::expressions::operator* ( const Scalar &  factor,
const ConjMultExpr< Left, Right > &  expr 
)
inline

Scaled-conjugated multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe multiplication expression object
Returns
A scaled-conjugated multiplication expression object

Definition at line 387 of file mult_expr.h.

Here is the call graph for this function:

◆ operator*() [35/46]

template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalConjAddExpr<Left, Right, mult_t<Scalar2, Scalar1> > TiledArray::expressions::operator* ( const Scalar1 &  factor,
const ScalConjAddExpr< Left, Right, Scalar2 > &  expr 
)
inline

Scaled-conjugated addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Scalar1The scaling factor type
Scalar2The expression scaling factor type
Parameters
factorThe scaling factor
exprThe scaled-conjugated addition expression object
Returns
A scaled-conjugated addition expression object

Definition at line 404 of file add_expr.h.

Here is the call graph for this function:

◆ operator*() [36/46]

template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalConjSubtExpr<Left, Right, mult_t<Scalar2, Scalar1> > TiledArray::expressions::operator* ( const Scalar1 &  factor,
const ScalConjSubtExpr< Left, Right, Scalar2 > &  expr 
)
inline

Scaled-conjugated subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Scalar1The scaling factor type
Scalar2The expression scaling factor type
Parameters
factorThe scaling factor
exprThe scaled-conjugated subtraction expression object
Returns
A scaled-conjugated subtraction expression object

Definition at line 405 of file subt_expr.h.

Here is the call graph for this function:

◆ operator*() [37/46]

template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalConjMultExpr<Left, Right, mult_t<Scalar1, Scalar2> > TiledArray::expressions::operator* ( const ScalConjMultExpr< Left, Right, Scalar1 > &  expr,
const Scalar2 &  factor 
)
inline

Scaled-conjugated multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Scalar1The expression scaling factor type
Scalar2The scaling factor type
Parameters
exprThe scaled-tensor expression object
factorThe scaling factor
Returns
A scaled-conjugated multiplication expression object

Definition at line 406 of file mult_expr.h.

Here is the call graph for this function:

◆ operator*() [38/46]

template<typename Left , typename Right , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalConjMultExpr<Left, Right, mult_t<Scalar2, Scalar1> > TiledArray::expressions::operator* ( const Scalar1 &  factor,
const ScalConjMultExpr< Left, Right, Scalar2 > &  expr 
)
inline

Scaled-conjugated multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Scalar1The scaling factor type
Scalar2The expression scaling factor type
Parameters
factorThe scaling factor
exprThe scaled-conjugated multiplication expression object
Returns
A scaled-conjugated multiplication expression object

Definition at line 425 of file mult_expr.h.

Here is the call graph for this function:

◆ operator*() [39/46]

template<typename Array , typename Scalar , bool Alias, typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalBlkTsrExpr<typename std::remove_const<Array>::type, Scalar> TiledArray::expressions::operator* ( const BlkTsrExpr< Array, Alias > &  expr,
const Scalar &  factor 
)
inline

Scaled-block expression factor.

Template Parameters
ArrayThe array type
ScalarArray scalar type
AliasTiles alias flag
Parameters
exprThe block expression object
factorThe scaling factor
Returns
Array scaled-block expression object

Definition at line 477 of file blk_tsr_expr.h.

◆ operator*() [40/46]

template<typename Array , typename Scalar , bool Alias, typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalBlkTsrExpr<typename std::remove_const<Array>::type, Scalar> TiledArray::expressions::operator* ( const Scalar &  factor,
const BlkTsrExpr< Array, Alias > &  expr 
)
inline

Scaled-block expression factor.

Template Parameters
ArrayThe array type
ScalarA scalar type
AliasTiles alias flag
Parameters
factorThe scaling factor
exprThe block expression object
Returns
A scaled-block expression object

Definition at line 496 of file blk_tsr_expr.h.

◆ operator*() [41/46]

template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalBlkTsrExpr<Array, mult_t<Scalar1, Scalar2> > TiledArray::expressions::operator* ( const ScalBlkTsrExpr< Array, Scalar1 > &  expr,
const Scalar2 &  factor 
)
inline

Scaled-block expression factor.

Template Parameters
ArrayThe array type
Scalar1A scalar factor type
Scalar2A scalar factor type
Parameters
exprThe block expression object
factorThe scaling factor
Returns
A scaled-block expression object

Definition at line 515 of file blk_tsr_expr.h.

◆ operator*() [42/46]

template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalBlkTsrExpr<Array, mult_t<Scalar2, Scalar1> > TiledArray::expressions::operator* ( const Scalar1 &  factor,
const ScalBlkTsrExpr< Array, Scalar2 > &  expr 
)
inline

Scaled-block expression factor.

Template Parameters
ArrayThe array type
Scalar1A scalar factor type
Scalar2A scalar factor type
Parameters
factorThe scaling factor
exprThe block expression object
Returns
A scaled-block expression object

Definition at line 534 of file blk_tsr_expr.h.

◆ operator*() [43/46]

template<typename Array , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjBlkTsrExpr<Array, Scalar> TiledArray::expressions::operator* ( const ConjBlkTsrExpr< const Array > &  expr,
const Scalar &  factor 
)
inline

Scaled block tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
exprThe block tensor expression object
factorThe scaling factor
Returns
A scaled-tensor expression object

Definition at line 636 of file blk_tsr_expr.h.

Here is the call graph for this function:

◆ operator*() [44/46]

template<typename Array , typename Scalar , typename std::enable_if< TiledArray::detail::is_numeric< Scalar >::value >::type * = nullptr>
ScalConjBlkTsrExpr<Array, Scalar> TiledArray::expressions::operator* ( const Scalar &  factor,
const ConjBlkTsrExpr< Array > &  expr 
)
inline

Scaled block tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe block tensor expression object
Returns
A scaled-tensor expression object

Definition at line 653 of file blk_tsr_expr.h.

Here is the call graph for this function:

◆ operator*() [45/46]

template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar2 >::value >::type * = nullptr>
ScalConjBlkTsrExpr<Array, mult_t<Scalar1, Scalar2> > TiledArray::expressions::operator* ( const ScalConjBlkTsrExpr< Array, Scalar1 > &  expr,
const Scalar2 &  factor 
)
inline

Scaled block tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
exprThe scaled block tensor expression object
factorThe scaling factor
Returns
A scaled-tensor expression object

Definition at line 670 of file blk_tsr_expr.h.

Here is the call graph for this function:

◆ operator*() [46/46]

template<typename Array , typename Scalar1 , typename Scalar2 , typename std::enable_if< TiledArray::detail::is_numeric< Scalar1 >::value >::type * = nullptr>
ScalConjBlkTsrExpr<Array, mult_t<Scalar2, Scalar1> > TiledArray::expressions::operator* ( const Scalar1 &  factor,
const ScalConjBlkTsrExpr< Array, Scalar2 > &  expr 
)
inline

Scaled-tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
factorThe scaling factor
exprThe scaled block tensor expression object
Returns
A scaled-tensor expression object

Definition at line 688 of file blk_tsr_expr.h.

Here is the call graph for this function:

◆ operator*=()

template<typename Numeric , typename Left , typename Right , typename std::enable_if< TiledArray::detail::is_numeric< Numeric >::value >::type * = nullptr>
Numeric& TiledArray::expressions::operator*= ( Numeric &  result,
const MultExpr< Left, Right > &  expr 
)
inline

Dot product multiply-to operator.

Template Parameters
NumericThe numeric result type
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
resultThe result that the dot product will be multiplied by.
exprThe multiply expression object
Returns
A reference to result

Definition at line 510 of file mult_expr.h.

Here is the call graph for this function:

◆ operator+()

template<typename Left , typename Right >
AddExpr<Left, Right> TiledArray::expressions::operator+ ( const Expr< Left > &  left,
const Expr< Right > &  right 
)
inline

Addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
leftThe left-hand expression object
rightThe right-hand expression object
Returns
An addition expression object

Definition at line 177 of file add_expr.h.

Here is the call graph for this function:

◆ operator+=()

template<typename Numeric , typename Left , typename Right , typename std::enable_if< TiledArray::detail::is_numeric< Numeric >::value >::type * = nullptr>
Numeric& TiledArray::expressions::operator+= ( Numeric &  result,
const MultExpr< Left, Right > &  expr 
)
inline

Dot product add-to operator.

Template Parameters
NumericThe numeric result type
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
resultThe result that the dot product will be added to.
exprThe multiply expression object
Returns
A reference to result

Definition at line 474 of file mult_expr.h.

Here is the call graph for this function:

◆ operator-() [1/23]

template<typename Left , typename Right >
SubtExpr<Left, Right> TiledArray::expressions::operator- ( const Expr< Left > &  left,
const Expr< Right > &  right 
)
inline

Subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
leftThe left-hand expression object
rightThe right-hand expression object
Returns
A subtraction expression object

Definition at line 172 of file subt_expr.h.

Here is the call graph for this function:

◆ operator-() [2/23]

template<typename Arg >
ScalExpr<Arg, typename ExprTrait<Arg>::scalar_type> TiledArray::expressions::operator- ( const Expr< Arg > &  expr)
inline

Negated expression factor.

Template Parameters
ArgThe expression type
Parameters
exprThe expression object
Returns
A scaled expression object

Definition at line 181 of file scal_expr.h.

Here is the call graph for this function:

◆ operator-() [3/23]

template<typename Arg , typename Scalar >
ScalExpr<Arg, Scalar> TiledArray::expressions::operator- ( const ScalExpr< Arg, Scalar > &  expr)
inline

Negated expression factor.

Template Parameters
ArgThe argument expression type
Parameters
exprThe scaled expression object
Returns
A scaled expression object

Definition at line 194 of file scal_expr.h.

◆ operator-() [4/23]

template<typename Array >
ScalTsrExpr<typename std::remove_const<Array>::type, typename ExprTrait<TsrExpr<Array, true> >::numeric_type> TiledArray::expressions::operator- ( const TsrExpr< Array, true > &  expr)
inline

Negated-tensor expression factor.

Template Parameters
ArrayA DistArray type
Parameters
exprThe tensor expression object
Returns
A scaled-tensor expression object

Definition at line 197 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ operator-() [5/23]

template<typename Array , typename Scalar >
ScalTsrExpr<Array, Scalar> TiledArray::expressions::operator- ( const ScalTsrExpr< Array, Scalar > &  expr)
inline

Negated-tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
exprThe scaled-tensor expression object
Returns
A scaled-tensor expression object

Definition at line 211 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ operator-() [6/23]

template<typename Left , typename Right >
ScalAddExpr<Left, Right, typename ExprTrait<AddExpr<Left, Right> >::numeric_type> TiledArray::expressions::operator- ( const AddExpr< Left, Right > &  expr)
inline

Negated addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe addition expression object
Returns
A scaled-addition expression object

Definition at line 266 of file add_expr.h.

Here is the call graph for this function:

◆ operator-() [7/23]

template<typename Left , typename Right >
ScalSubtExpr<Left, Right, typename ExprTrait<SubtExpr<Left, Right> >::numeric_type> TiledArray::expressions::operator- ( const SubtExpr< Left, Right > &  expr)
inline

Negated subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe subtraction expression object
Returns
A scaled-subtraction expression object

Definition at line 268 of file subt_expr.h.

Here is the call graph for this function:

◆ operator-() [8/23]

template<typename Left , typename Right , typename Scalar >
ScalAddExpr<Left, Right, Scalar> TiledArray::expressions::operator- ( const ScalAddExpr< Left, Right, Scalar > &  expr)
inline

Negated scaled-addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe addition expression object
Returns
A scaled-addition expression object

Definition at line 281 of file add_expr.h.

◆ operator-() [9/23]

template<typename Left , typename Right , typename Scalar >
ScalSubtExpr<Left, Right, Scalar> TiledArray::expressions::operator- ( const ScalSubtExpr< Left, Right, Scalar > &  expr)
inline

Negated scaled-subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe subtraction expression object
Returns
A scaled-subtraction expression object

Definition at line 282 of file subt_expr.h.

◆ operator-() [10/23]

template<typename Left , typename Right >
ScalMultExpr<Left, Right, typename ExprTrait<MultExpr<Left, Right> >::numeric_type> TiledArray::expressions::operator- ( const MultExpr< Left, Right > &  expr)
inline

Negated multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe multiplication expression object
Returns
A scaled-multiplication expression object

Definition at line 288 of file mult_expr.h.

Here is the call graph for this function:

◆ operator-() [11/23]

template<typename Left , typename Right , typename Scalar >
ScalMultExpr<Left, Right, Scalar> TiledArray::expressions::operator- ( const ScalMultExpr< Left, Right, Scalar > &  expr)
inline

Negated scaled-multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe multiplication expression object
Returns
A scaled-multiplication expression object

Definition at line 301 of file mult_expr.h.

◆ operator-() [12/23]

template<typename Array >
ScalConjTsrExpr<Array, typename ExprTrait<ConjTsrExpr<Array> >::numeric_type> TiledArray::expressions::operator- ( const ConjTsrExpr< Array > &  expr)
inline

Negated-conjugated-tensor expression factor.

Template Parameters
ArrayA DistArray type
Parameters
exprThe tensor expression object
Returns
A scaled-tensor expression object

Definition at line 337 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ operator-() [13/23]

template<typename Array , typename Scalar >
ScalConjTsrExpr<Array, Scalar> TiledArray::expressions::operator- ( const ScalConjTsrExpr< Array, Scalar > &  expr)
inline

Negated-conjugated-tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
exprThe scaled-conjugated-tensor expression object
Returns
A scaled-tensor expression object

Definition at line 352 of file scal_tsr_expr.h.

Here is the call graph for this function:

◆ operator-() [14/23]

template<typename Left , typename Right >
ScalConjAddExpr<Left, Right, typename ExprTrait<ConjAddExpr<Left, Right> >::numeric_type> TiledArray::expressions::operator- ( const ConjAddExpr< Left, Right > &  expr)
inline

Negated-conjugated addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe tensor expression object
Returns
A scaled-addition expression object

Definition at line 418 of file add_expr.h.

Here is the call graph for this function:

◆ operator-() [15/23]

template<typename Left , typename Right >
ScalConjSubtExpr<Left, Right, typename ExprTrait<ConjSubtExpr<Left, Right> >::numeric_type> TiledArray::expressions::operator- ( const ConjSubtExpr< Left, Right > &  expr)
inline

Negated-conjugated subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe tensor expression object
Returns
A scaled-subtraction expression object

Definition at line 419 of file subt_expr.h.

Here is the call graph for this function:

◆ operator-() [16/23]

template<typename Left , typename Right , typename Scalar >
ScalConjAddExpr<Left, Right, Scalar> TiledArray::expressions::operator- ( const ScalConjAddExpr< Left, Right, Scalar > &  expr)
inline

Negated-conjugated addition expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe scaled-conjugated-tensor expression object
Returns
A scaled-conjugated addition expression object

Definition at line 434 of file add_expr.h.

Here is the call graph for this function:

◆ operator-() [17/23]

template<typename Left , typename Right , typename Scalar >
ScalConjSubtExpr<Left, Right, Scalar> TiledArray::expressions::operator- ( const ScalConjSubtExpr< Left, Right, Scalar > &  expr)
inline

Negated-conjugated subtraction expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe scaled-conjugated-tensor expression object
Returns
A scaled-conjugated subtraction expression object

Definition at line 435 of file subt_expr.h.

Here is the call graph for this function:

◆ operator-() [18/23]

template<typename Left , typename Right >
ScalConjMultExpr<Left, Right, typename ExprTrait<ConjMultExpr<Left, Right> >::numeric_type> TiledArray::expressions::operator- ( const ConjMultExpr< Left, Right > &  expr)
inline

Negated-conjugated multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
exprThe tensor expression object
Returns
A scaled-multiplication expression object

Definition at line 439 of file mult_expr.h.

Here is the call graph for this function:

◆ operator-() [19/23]

template<typename Left , typename Right , typename Scalar >
ScalConjMultExpr<Left, Right, Scalar> TiledArray::expressions::operator- ( const ScalConjMultExpr< Left, Right, Scalar > &  expr)
inline

Negated-conjugated multiplication expression factor.

Template Parameters
LeftThe left-hand expression type
RightThe right-hand expression type
ScalarA scalar type
Parameters
exprThe scaled-conjugated-tensor expression object
Returns
A scaled-conjugated multiplication expression object

Definition at line 455 of file mult_expr.h.

Here is the call graph for this function:

◆ operator-() [20/23]

template<typename Array >
ScalBlkTsrExpr<typename std::remove_const<Array>::type, typename ExprTrait<BlkTsrExpr<Array, true> >::numeric_type> TiledArray::expressions::operator- ( const BlkTsrExpr< Array, true > &  expr)
inline

Negated block expression factor.

Template Parameters
ArrayThe array type
Parameters
exprThe block expression object
Returns
A scaled-block expression object

Definition at line 548 of file blk_tsr_expr.h.

◆ operator-() [21/23]

template<typename Array , typename Scalar >
ScalBlkTsrExpr<Array, Scalar> TiledArray::expressions::operator- ( const ScalBlkTsrExpr< Array, Scalar > &  expr)
inline

Negated scaled-block expression factor.

Template Parameters
ArrayThe array type
ScalarA scalar factor type
Parameters
exprThe block expression object
Returns
A scaled-block expression object

Definition at line 564 of file blk_tsr_expr.h.

◆ operator-() [22/23]

template<typename Array >
ScalConjBlkTsrExpr<Array, typename ExprTrait<ConjBlkTsrExpr<Array> >::numeric_type> TiledArray::expressions::operator- ( const ConjBlkTsrExpr< Array > &  expr)
inline

Negated-conjugated-tensor expression factor.

Template Parameters
ArrayArray DistArray type
Parameters
exprThe block tensor expression object
Returns
A scaled-tensor expression object

Definition at line 702 of file blk_tsr_expr.h.

Here is the call graph for this function:

◆ operator-() [23/23]

template<typename Array , typename Scalar >
ScalConjBlkTsrExpr<Array, Scalar> TiledArray::expressions::operator- ( const ScalConjBlkTsrExpr< Array, Scalar > &  expr)
inline

Negated-conjugated-tensor expression factor.

Template Parameters
ArrayA DistArray type
ScalarA scalar type
Parameters
exprThe scaled-conjugated block tensor expression object
Returns
A scaled-tensor expression object

Definition at line 717 of file blk_tsr_expr.h.

Here is the call graph for this function:

◆ operator-=()

template<typename Numeric , typename Left , typename Right , typename std::enable_if< TiledArray::detail::is_numeric< Numeric >::value >::type * = nullptr>
Numeric& TiledArray::expressions::operator-= ( Numeric &  result,
const MultExpr< Left, Right > &  expr 
)
inline

Dot product subtract-to operator.

Template Parameters
NumericThe numeric result type
LeftThe left-hand expression type
RightThe right-hand expression type
Parameters
resultThe result that the dot product will be subtracted from.
exprThe multiply expression object
Returns
A reference to result

Definition at line 492 of file mult_expr.h.

Here is the call graph for this function:

◆ operator<<() [1/2]

template<typename A , bool Alias>
ExprTraceTarget TiledArray::expressions::operator<< ( std::ostream &  os,
const TsrExpr< A, Alias > &  tsr 
)
inline

Expression trace factory function.

Template Parameters
AAn Array object
AliasTiles alias flag
Parameters
osThe output stream for the expression trace
tsrThe tensor that will be the target of the expression
Returns
The expression trace object

Definition at line 131 of file expr_trace.h.

◆ operator<<() [2/2]

std::ostream& TiledArray::expressions::operator<< ( std::ostream &  out,
const VariableList v 
)
inline

ostream VariableList output operator.

Definition at line 306 of file variable_list.h.

Here is the call graph for this function:

◆ operator==()

bool TiledArray::expressions::operator== ( const VariableList v0,
const VariableList v1 
)
inline

Definition at line 289 of file variable_list.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ swap()

void TiledArray::expressions::swap ( VariableList v0,
VariableList v1 
)
inline

Exchange the content of the two variable lists.

Definition at line 285 of file variable_list.h.

Here is the caller graph for this function: