mpqc::math::Tile< T > Class Template Reference

Public Types

using value_type = T
 
using range_type = TA::Range
 
using numeric_type = typename T::numeric_type
 
using size_type = std::size_t
 

Public Member Functions

 Tile ()=default
 
 ~Tile ()
 
 Tile (Tile const &)=default
 
 Tile (Tile &&)=default
 
Tileoperator= (Tile &&)=default
 
Tileoperator= (Tile const &)=default
 
 Tile (TA::Range r)
 
 Tile (TA::Range r, T t)
 
template<typename Value >
 Tile (TA::Range r, Value v)
 
T & tile ()
 
T const & tile () const
 
Tile clone () const
 
TA::Range const & range () const
 
bool empty () const
 
auto norm () const
 
auto trace () const
 
auto sum () const
 
auto min () const
 
auto max () const
 
auto abs_min () const
 
auto abs_max () const
 
auto product () const
 
auto squared_norm () const
 
template<typename Perm , typename = std::enable_if_t< TiledArray::detail::is_permutation_v<Perm>>>
Tile permute (Perm const &p) const
 
template<typename Archive >
std::enable_if< madness::archive::is_output_archive< Archive >::value >::type serialize (Archive &ar)
 
template<typename Archive >
std::enable_if< madness::archive::is_input_archive< Archive >::value >::type serialize (Archive &ar)
 
template<typename... Args>
auto add (Args &&... args) const
 
template<typename U , typename... Args>
auto add (Tile< U > const &u, Args &&... args) const
 
template<typename... Args>
Tileadd_to (Args &&... args)
 
template<typename U , typename... Args>
Tileadd_to (Tile< U > const &u, Args &&... args)
 
template<typename... Args>
auto subt (Args &&... args) const
 
template<typename U , typename... Args>
auto subt (Tile< U > const &u, Args &&... args) const
 
template<typename... Args>
Tilesubt_to (Args &&... args)
 
template<typename U , typename... Args>
Tilesubt_to (Tile< U > const &u, Args &&... args)
 
template<typename... Args>
auto mult (Args &&... args) const
 
template<typename U , typename... Args>
auto mult (Tile< U > const &u, Args &&... args) const
 
template<typename... Args>
Tilemult_to (Args &&... args)
 
template<typename U , typename... Args>
Tilemult_to (Tile< U > const &u, Args &&... args)
 
template<typename... Args>
Tile neg (Args &&... args) const
 
template<typename... Args>
Tile scale (Args &&... args) const
 
template<typename... Args>
Tilescale_to (Args &&... args)
 
Tileneg_to ()
 
template<typename Other >
auto gemm (Other const &o, const numeric_type factor, TA::math::GemmHelper const &gemm_helper) const
 
template<typename U >
auto gemm (Tile< U > const &u, const numeric_type factor, TA::math::GemmHelper const &gemm_helper) const
 
template<typename Left , typename Right >
Tilegemm (Left const &l, Right const &r, const numeric_type factor, TA::math::GemmHelper const &gemm_helper)
 
template<typename U , typename V >
Tilegemm (Tile< U > const &l, Tile< V > const &r, const numeric_type factor, TA::math::GemmHelper const &gemm_helper)
 

Member Typedef Documentation

◆ numeric_type

template<typename T >
using mpqc::math::Tile< T >::numeric_type = typename T::numeric_type

◆ range_type

template<typename T >
using mpqc::math::Tile< T >::range_type = TA::Range

◆ size_type

template<typename T >
using mpqc::math::Tile< T >::size_type = std::size_t

◆ value_type

template<typename T >
using mpqc::math::Tile< T >::value_type = T

Constructor & Destructor Documentation

◆ Tile() [1/6]

template<typename T >
mpqc::math::Tile< T >::Tile ( )
default

◆ ~Tile()

template<typename T >
mpqc::math::Tile< T >::~Tile ( )
inline

◆ Tile() [2/6]

template<typename T >
mpqc::math::Tile< T >::Tile ( Tile< T > const &  )
default

◆ Tile() [3/6]

template<typename T >
mpqc::math::Tile< T >::Tile ( Tile< T > &&  )
default

◆ Tile() [4/6]

template<typename T >
mpqc::math::Tile< T >::Tile ( TA::Range  r)
inline

◆ Tile() [5/6]

template<typename T >
mpqc::math::Tile< T >::Tile ( TA::Range  r,
t 
)
inline

◆ Tile() [6/6]

template<typename T >
template<typename Value >
mpqc::math::Tile< T >::Tile ( TA::Range  r,
Value  v 
)
inline

Member Function Documentation

◆ abs_max()

template<typename T >
auto mpqc::math::Tile< T >::abs_max ( ) const
inline

◆ abs_min()

template<typename T >
auto mpqc::math::Tile< T >::abs_min ( ) const
inline

◆ add() [1/2]

template<typename T >
template<typename... Args>
auto mpqc::math::Tile< T >::add ( Args &&...  args) const
inline

◆ add() [2/2]

template<typename T >
template<typename U , typename... Args>
auto mpqc::math::Tile< T >::add ( Tile< U > const &  u,
Args &&...  args 
) const
inline

◆ add_to() [1/2]

template<typename T >
template<typename... Args>
Tile& mpqc::math::Tile< T >::add_to ( Args &&...  args)
inline

◆ add_to() [2/2]

template<typename T >
template<typename U , typename... Args>
Tile& mpqc::math::Tile< T >::add_to ( Tile< U > const &  u,
Args &&...  args 
)
inline

◆ clone()

template<typename T >
Tile mpqc::math::Tile< T >::clone ( ) const
inline

◆ empty()

template<typename T >
bool mpqc::math::Tile< T >::empty ( ) const
inline

◆ gemm() [1/4]

template<typename T >
template<typename Left , typename Right >
Tile& mpqc::math::Tile< T >::gemm ( Left const &  l,
Right const &  r,
const numeric_type  factor,
TA::math::GemmHelper const &  gemm_helper 
)
inline

◆ gemm() [2/4]

template<typename T >
template<typename Other >
auto mpqc::math::Tile< T >::gemm ( Other const &  o,
const numeric_type  factor,
TA::math::GemmHelper const &  gemm_helper 
) const
inline

◆ gemm() [3/4]

template<typename T >
template<typename U , typename V >
Tile& mpqc::math::Tile< T >::gemm ( Tile< U > const &  l,
Tile< V > const &  r,
const numeric_type  factor,
TA::math::GemmHelper const &  gemm_helper 
)
inline

◆ gemm() [4/4]

template<typename T >
template<typename U >
auto mpqc::math::Tile< T >::gemm ( Tile< U > const &  u,
const numeric_type  factor,
TA::math::GemmHelper const &  gemm_helper 
) const
inline

◆ max()

template<typename T >
auto mpqc::math::Tile< T >::max ( ) const
inline

◆ min()

template<typename T >
auto mpqc::math::Tile< T >::min ( ) const
inline

◆ mult() [1/2]

template<typename T >
template<typename... Args>
auto mpqc::math::Tile< T >::mult ( Args &&...  args) const
inline

◆ mult() [2/2]

template<typename T >
template<typename U , typename... Args>
auto mpqc::math::Tile< T >::mult ( Tile< U > const &  u,
Args &&...  args 
) const
inline

◆ mult_to() [1/2]

template<typename T >
template<typename... Args>
Tile& mpqc::math::Tile< T >::mult_to ( Args &&...  args)
inline

◆ mult_to() [2/2]

template<typename T >
template<typename U , typename... Args>
Tile& mpqc::math::Tile< T >::mult_to ( Tile< U > const &  u,
Args &&...  args 
)
inline

◆ neg()

template<typename T >
template<typename... Args>
Tile mpqc::math::Tile< T >::neg ( Args &&...  args) const
inline

◆ neg_to()

template<typename T >
Tile& mpqc::math::Tile< T >::neg_to ( )
inline

◆ norm()

template<typename T >
auto mpqc::math::Tile< T >::norm ( ) const
inline

◆ operator=() [1/2]

template<typename T >
Tile& mpqc::math::Tile< T >::operator= ( Tile< T > &&  )
default

◆ operator=() [2/2]

template<typename T >
Tile& mpqc::math::Tile< T >::operator= ( Tile< T > const &  )
default

◆ permute()

template<typename T >
template<typename Perm , typename = std::enable_if_t< TiledArray::detail::is_permutation_v<Perm>>>
Tile mpqc::math::Tile< T >::permute ( Perm const &  p) const
inline

◆ product()

template<typename T >
auto mpqc::math::Tile< T >::product ( ) const
inline

◆ range()

template<typename T >
TA::Range const& mpqc::math::Tile< T >::range ( ) const
inline

◆ scale()

template<typename T >
template<typename... Args>
Tile mpqc::math::Tile< T >::scale ( Args &&...  args) const
inline

◆ scale_to()

template<typename T >
template<typename... Args>
Tile& mpqc::math::Tile< T >::scale_to ( Args &&...  args)
inline

◆ serialize() [1/2]

template<typename T >
template<typename Archive >
std::enable_if< madness::archive::is_output_archive<Archive>::value>::type mpqc::math::Tile< T >::serialize ( Archive &  ar)
inline

◆ serialize() [2/2]

template<typename T >
template<typename Archive >
std::enable_if< madness::archive::is_input_archive<Archive>::value>::type mpqc::math::Tile< T >::serialize ( Archive &  ar)
inline

◆ squared_norm()

template<typename T >
auto mpqc::math::Tile< T >::squared_norm ( ) const
inline

◆ subt() [1/2]

template<typename T >
template<typename... Args>
auto mpqc::math::Tile< T >::subt ( Args &&...  args) const
inline

◆ subt() [2/2]

template<typename T >
template<typename U , typename... Args>
auto mpqc::math::Tile< T >::subt ( Tile< U > const &  u,
Args &&...  args 
) const
inline

◆ subt_to() [1/2]

template<typename T >
template<typename... Args>
Tile& mpqc::math::Tile< T >::subt_to ( Args &&...  args)
inline

◆ subt_to() [2/2]

template<typename T >
template<typename U , typename... Args>
Tile& mpqc::math::Tile< T >::subt_to ( Tile< U > const &  u,
Args &&...  args 
)
inline

◆ sum()

template<typename T >
auto mpqc::math::Tile< T >::sum ( ) const
inline

◆ tile() [1/2]

template<typename T >
T& mpqc::math::Tile< T >::tile ( )
inline

◆ tile() [2/2]

template<typename T >
T const& mpqc::math::Tile< T >::tile ( ) const
inline

◆ trace()

template<typename T >
auto mpqc::math::Tile< T >::trace ( ) const
inline

The documentation for this class was generated from the following file: