Documentation of MARTY
A Modern ARtificial Theoretical phYsicist
Public Member Functions | Private Attributes
mty::GeneratorParent Class Reference
Inheritance diagram for mty::GeneratorParent:
[legend]

Public Member Functions

template<class ... Args>
 GeneratorParent (mty::GaugedGroup *t_group, mty::Irrep const &t_irrep, Args &&...args)
 
void printDefinition (std::ostream &out=std::cout, int indentSize=4, bool header=false) const override
 
csl::Expr operator() (csl::Index index) override
 
csl::Expr operator() (std::vector< csl::Index > indices) override
 
csl::Expr operator() (const std::vector< int > &indices) override
 
std::string getCodeName () const
 
- Public Member Functions inherited from csl::TensorParent
 TensorParent (const std::string &t_name)
 
 TensorParent (const TensorParent &abstract)=default
 
 TensorParent (const std::string &t_name, const Space *t_space)
 
 TensorParent (const std::string &t_name, const std::vector< const Space * > &t_space)
 
 TensorParent (const std::string &t_name, const std::vector< const Space * > &t_space, const Expr &t_tensor)
 
 TensorParent (const std::string &t_name, const Space *t_space, const Expr &t_tensor)
 
cslParent::PrimaryType getPrimaryType () const override
 
cslParent::Type getType () const override
 
int getDim (const Space *t_space) const override
 
std::vector< const Space *> getSpace () const override
 
Symmetry getSymmetry () const
 
bool getFullySymmetric () const override
 
bool getFullyAntiSymmetric () const override
 
std::vector< PermutationgetPermutation () const override
 
Expr getTensor () const override
 
Expr getTrace () const override
 
bool dependsOn (Expr_info expr) const override
 
bool dependsExplicitlyOn (Expr_info expr) const override
 
const std::vector< Equation *> & getProperties () const override
 
void setFullySymmetric () override
 
void setFullyAntiSymmetric () override
 
void addSpace (const Space *space) override
 
void addSymmetry (int i1, int i2) override
 
void addAntiSymmetry (int i1, int i2) override
 
void setSymmetry (const Symmetry &t_symetry) override
 
void setTensor (const Expr &t_tensor) override
 
void setElementary (bool t_elementary)
 
bool hasContractionProperty (const Abstract *self, Expr_info B) const override
 
Expr contraction (const Abstract *self, Expr_info B) const override
 
void addSelfContraction (const Expr &A, const Expr &B, const Expr &res, std::optional< std::function< bool(Expr_info, Expr_info)>> condition=std::nullopt) override
 
virtual bool operator== (const TensorParent &other) const
 
virtual bool operator!= (const TensorParent &other) const
 
- Public Member Functions inherited from csl::AbstractParent
 AbstractParent (const std::string &t_name)
 
 AbstractParent (const AbstractParent &abstract)=default
 
std::string const & getName () const
 
bool getCommutable () const
 
virtual void setName (std::string t_name)
 
void setCommutable (bool t_commutable)
 
void addProperty (Equation *prop)
 
void removeProperty (Equation *prop)
 
virtual int getDim () const
 

Private Attributes

mty::GaugedGroupgroup
 
mty::Irrep irrep
 

Additional Inherited Members

- Protected Attributes inherited from csl::TensorParent
std::vector< const Space *> space
 
Symmetry symmetry
 
bool fullySymmetric
 
bool fullyAntiSymmetric
 
std::vector< std::pair< SelfContraction, Expr > > selfContraction
 
bool valued
 
Expr tensor
 
Expr trace
 
- Protected Attributes inherited from csl::AbstractParent
std::string name
 
std::string latexName
 
bool commutable
 
std::vector< Equation *> props
 

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