sisi4s
Loading...
Searching...
No Matches
sisi4s::CtfMachineTensor< F > Class Template Reference

#include <CtfMachineTensor.hpp>

Inheritance diagram for sisi4s::CtfMachineTensor< F >:
Collaboration diagram for sisi4s::CtfMachineTensor< F >:

Classes

class  ProtectedToken
 

Public Types

typedef CtfMachineTensorFactory< F > Factory
 
typedef Tensor< F > Tensor
 

Public Member Functions

 CtfMachineTensor (const std::vector< int > &lens, const std::string &name, CTF::World *world, const ProtectedToken &)
 
 CtfMachineTensor (const Tensor &T, const ProtectedToken &)
 
virtual ~CtfMachineTensor ()
 
virtual void move (F alpha, const std::shared_ptr< tcc::MachineTensor< F > > &A, const std::string &aIndices, F beta, const std::string &bIndices)
 
void move (F alpha, const std::shared_ptr< tcc::MachineTensor< F > > &A, const std::string &aIndices, F beta, const std::string &bIndices, const std::function< F(const F)> &f)
 
void contract (F alpha, const std::shared_ptr< tcc::MachineTensor< F > > &A, const std::string &aIndices, const std::shared_ptr< tcc::MachineTensor< F > > &B, const std::string &bIndices, F beta, const std::string &cIndices)
 
void contract (F alpha, const std::shared_ptr< tcc::MachineTensor< F > > &A, const std::string &aIndices, const std::shared_ptr< tcc::MachineTensor< F > > &B, const std::string &bIndices, F beta, const std::string &cIndices, const std::function< F(const F, const F)> &g)
 
virtual std::vector< int > getLens () const
 
virtual std::string getName () const
 

Static Public Member Functions

static std::shared_ptr< CtfMachineTensor< F > > create (const Tensor &T)
 

Public Attributes

Tensor tensor
 The adapted CTF tensor.
 

Friends

class CtfMachineTensorFactory< F >
 

Member Typedef Documentation

◆ Factory

template<typename F = double>
typedef CtfMachineTensorFactory<F> sisi4s::CtfMachineTensor< F >::Factory

◆ Tensor

template<typename F = double>
typedef Tensor<F> sisi4s::CtfMachineTensor< F >::Tensor

Constructor & Destructor Documentation

◆ CtfMachineTensor() [1/2]

template<typename F = double>
sisi4s::CtfMachineTensor< F >::CtfMachineTensor ( const std::vector< int > &  lens,
const std::string &  name,
CTF::World *  world,
const ProtectedToken  
)
inline

◆ CtfMachineTensor() [2/2]

template<typename F = double>
sisi4s::CtfMachineTensor< F >::CtfMachineTensor ( const Tensor T,
const ProtectedToken  
)
inline

◆ ~CtfMachineTensor()

template<typename F = double>
virtual sisi4s::CtfMachineTensor< F >::~CtfMachineTensor ( )
inlinevirtual

Member Function Documentation

◆ contract() [1/2]

template<typename F = double>
void sisi4s::CtfMachineTensor< F >::contract ( alpha,
const std::shared_ptr< tcc::MachineTensor< F > > &  A,
const std::string &  aIndices,
const std::shared_ptr< tcc::MachineTensor< F > > &  B,
const std::string &  bIndices,
beta,
const std::string &  cIndices 
)
inline
Here is the call graph for this function:

◆ contract() [2/2]

template<typename F = double>
void sisi4s::CtfMachineTensor< F >::contract ( alpha,
const std::shared_ptr< tcc::MachineTensor< F > > &  A,
const std::string &  aIndices,
const std::shared_ptr< tcc::MachineTensor< F > > &  B,
const std::string &  bIndices,
beta,
const std::string &  cIndices,
const std::function< F(const F, const F)> &  g 
)
inline
Here is the call graph for this function:

◆ create()

template<typename F = double>
static std::shared_ptr< CtfMachineTensor< F > > sisi4s::CtfMachineTensor< F >::create ( const Tensor T)
inlinestatic

◆ getLens()

template<typename F = double>
virtual std::vector< int > sisi4s::CtfMachineTensor< F >::getLens ( ) const
inlinevirtual

◆ getName()

template<typename F = double>
virtual std::string sisi4s::CtfMachineTensor< F >::getName ( ) const
inlinevirtual
Here is the caller graph for this function:

◆ move() [1/2]

template<typename F = double>
virtual void sisi4s::CtfMachineTensor< F >::move ( alpha,
const std::shared_ptr< tcc::MachineTensor< F > > &  A,
const std::string &  aIndices,
beta,
const std::string &  bIndices 
)
inlinevirtual
Here is the call graph for this function:

◆ move() [2/2]

template<typename F = double>
void sisi4s::CtfMachineTensor< F >::move ( alpha,
const std::shared_ptr< tcc::MachineTensor< F > > &  A,
const std::string &  aIndices,
beta,
const std::string &  bIndices,
const std::function< F(const F)> &  f 
)
inline
Here is the call graph for this function:

Friends And Related Symbol Documentation

◆ CtfMachineTensorFactory< F >

template<typename F = double>
friend class CtfMachineTensorFactory< F >
friend

Member Data Documentation

◆ tensor

template<typename F = double>
Tensor sisi4s::CtfMachineTensor< F >::tensor

The adapted CTF tensor.


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