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

Public Member Functions

 Propagator (csl::Expr const &impulsion, csl::Expr const &mass, csl::Expr const &width=CSL_0)
 
void print (int mode=0, std::ostream &out=std::cout, bool lib=false) const override
 
std::string printLaTeX (int mode=0) const override
 
csl::unique_Expr copy_unique () const override
 
csl::Expr refresh () const override
 
csl::Expr deepCopy () const override
 
csl::Expr deepRefresh () const override
 
std::optional< csl::Exprevaluate (csl::eval::mode user_mode=csl::eval::base) const override
 
std::optional< csl::Exprderive (csl::Expr_info variable) const override
 
std::optional< csl::ExprgetComplexConjugate () const override
 
bool isIndexed () const override
 
csl::IndexStructure getIndexStructure () const override
 
bool operator== (csl::Expr_info other) const override
 
- Public Member Functions inherited from csl::AbstractMultiFunc
csl::Type getType () const override
 
virtual csl::PrimaryType getPrimaryType () const override
 
bool getCommutable () const override
 
int getNArgs (int axis=0) const override
 
const csl::vector_expr & getVectorArgument () const override
 
Expr const & getArgument (int iArg=0) const override
 
std::optional< ExprfindSubExpression (Expr_info subExpression, const Expr &newExpression) const override
 
csl::vector_expr::iterator begin () override
 
csl::vector_expr::iterator end () override
 
csl::vector_expr::const_iterator begin () const override
 
csl::vector_expr::const_iterator end () const override
 
void setArgument (const Expr &t_argument, int iArg=0) override
 
void setVectorArgument (const csl::vector_expr &t_argument) override
 
std::optional< ExprgetRealPart () const override
 
Expr getImaginaryPart () const override
 
std::optional< ExprgetComplexModulus () const override
 
std::optional< ExprgetComplexArgument () const override
 
virtual std::optional< ExprreplaceIndex (const Index &indexToReplace, const Index &newIndex, bool refresh=true) const override
 
virtual std::optional< Exprfactor (bool full=false) const override
 
virtual std::optional< Exprfactor (Expr_info expr, bool full=false) const override
 
virtual std::optional< Exprcollect (std::vector< Expr > const &factors, bool full=false) const override
 
virtual std::optional< Exprexpand (bool full=false, bool inPlace=false) const override
 
virtual std::optional< Exprexpand_if (std::function< bool(Expr const &)> const &f, bool full=false, bool inPlace=false) const override
 
bool dependsOn (Expr_info expr) const override
 
bool dependsExplicitlyOn (Expr_info expr) const override
 
bool commutesWith (Expr_info expr, int sign=-1) const override
 
int isPolynomial (Expr_info expr) const override
 
bool operator< (Expr_info other) const override
 
Expr const & operator[] (int i) const override
 
Exproperator[] (int i) override
 
- Public Member Functions inherited from csl::Abstract
void printExplicit (int mode=0) const
 
virtual std::string const & getName () const
 
virtual int getDim () const
 
virtual bool isBuildingBlock () const
 
virtual const std::vector< Equation *> & getProperties () const
 
virtual bool isInteger () const
 
virtual bool getValued () const
 
virtual long double getValue () const
 
virtual long long int getNum () const
 
virtual long long int getDenom () const
 
virtual Expr const & getArgument (const std::vector< int > &indices) const
 
virtual Expr getVariable () const
 
virtual int getOrder () const
 
virtual int getSign () const
 
virtual bool isAnOperator () const
 
virtual bool isEmpty () const
 
virtual Expr getOperand () const
 
virtual std::vector< int > getShape () const
 
virtual int getNIndices () const
 
virtual Index getIndex (int i=0) const
 
virtual IndexStructure getFreeIndexStructure () const
 
virtual Parent getParent () const
 
virtual int getNContractedPairs () const
 
virtual csl::vector_expr getPermutations (bool optimize=true) const
 
virtual std::set< std::pair< int, int > > getContractedPair () const
 
virtual void setName (const std::string &t_name)
 
virtual void setCommutable (bool t_commutable)
 
virtual void addProperty (Equation *property)
 
virtual void removeProperty (Equation *property)
 
virtual void setValue (long double t_value)
 
virtual void setArgument (const Expr &expr, const std::vector< int > &indices)
 
virtual void setOperand (const Expr &operand)
 
virtual void setOperandPrivate (const Expr &operand, bool leaveEmpty)
 
virtual void insert (const Expr &expr, bool side=1)
 
virtual void setIndexStructure (const IndexStructure &t_index)
 
virtual void setFullySymmetric ()
 
virtual void setFullyAntiSymmetric ()
 
virtual void addSymmetry (int i1, int i2)
 
virtual void addAntiSymmetry (int i1, int i2)
 
virtual int permut (int i1, int i2)
 
virtual Expr getNumericalFactor () const
 
virtual int getNFactor () const
 
virtual csl::vector_expr getFactors () const
 
virtual std::optional< ExprgetTerm () const
 
virtual void getExponents (std::vector< Expr > const &factors, std::vector< Expr > &exponents) const
 
virtual bool checkIndexStructure (const std::vector< Index > &t_index) const
 
virtual bool checkIndexStructure (const std::initializer_list< Index > &index) const
 
virtual bool compareWithDummy (Expr_info expr, std::map< Index, Index > &constraints, bool keepAllCosntraints=false) const
 
virtual int getParity (Expr_info t_variable) const
 
virtual bool askTerm (Expr_info expr, bool exact=false) const
 
virtual bool matchShape (Expr_info expr, bool exact=false) const
 
virtual bool hasContractionProperty (Expr_info B) const
 
virtual Expr contraction (Expr_info B) const
 
virtual long double evaluateScalar () const
 
virtual std::optional< Exprderive (Expr_info expr) const
 
virtual Expr suppressTerm (Expr_info expr) const
 
virtual std::optional< ExprsuppressExponent (Expr const &factor, Expr const &exponent) const
 
virtual std::optional< ExprgetPolynomialTerm (Expr_info t_variable, int order) const
 
virtual csl::vector_expr getAlternateForms () const
 
virtual Expr applyOperator (const Expr &operand, bool leaveEmpty=false) const
 
virtual Expr addition_own (const Expr &expr) const
 
virtual Expr multiplication_own (const Expr &expr, bool side=1) const
 
virtual Expr division_own (const Expr &expr) const
 
virtual Expr exponentiation_own (const Expr &expr) const
 
virtual Expr getRegularExpression () const
 
virtual Expr tensordot (const Expr &expr) const
 
virtual Expr dot (const Expr &expr) const
 
virtual Expr getSum () const
 
virtual Expr getProduct () const
 
virtual Expr getVectorialModulus () const
 
virtual Expr getSubVectorial (int iExcept) const
 
virtual Expr getSubVectorial (int iExcept, int jExcept) const
 
virtual Expr getSubVectorial (const std::vector< int > &exceptions) const
 
virtual Expr determinant () const
 
virtual Expr trace () const
 
virtual Expr trace (int axis1, int axis2) const
 
virtual Expr transpose () const
 
virtual Expr symmetrise () const
 
virtual Expr antisymmetrise () const
 
virtual Expr inverseMatrix () const
 
virtual void operator= (double t_value)
 
virtual bool operator== (int t_value) const
 
virtual bool operator== (double t_value) const
 
virtual bool operator!= (int t_value) const
 
virtual bool operator!= (double t_value) const
 
virtual bool operator== (Expr_info expr) const=0
 
bool operator!= (const Expr_c &expr) const
 
bool operator< (const Expr_c &expr) const
 
bool operator> (Expr_info expr) const
 
bool operator>= (Expr_info expr) const
 
bool operator<= (const Expr_c &expr) const
 

Static Public Attributes

static csl::Expr Peps = csl::constant_s("reg_prop")
 

Additional Inherited Members

- Protected Attributes inherited from csl::AbstractMultiFunc
csl::vector_expr argument
 

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