|
|
template<class ... Args> |
| | GeneratorElement (Args &&...args) |
| |
|
csl::unique_Expr | copy_unique () const override |
| |
|
csl::Expr | refresh () const override |
| |
|
void | printCode (int mode=0, std::ostream &out=std::cout) const override |
| |
|
| TensorElement (const Index &t_index, const Parent &t_parent) |
| |
|
| TensorElement (const std::vector< Index > &indices, const Parent &t_parent) |
| |
|
| TensorElement (const IndexStructure &indices, const Parent &t_parent) |
| |
|
| TensorElement (const Abstract *&expression) |
| |
|
| TensorElement (const Expr &expression) |
| |
|
csl::PrimaryType | getPrimaryType () const override |
| |
|
bool | isIndexed () const override |
| |
|
int | getNIndices () const override |
| |
|
IndexStructure | getIndexStructure () const override |
| |
|
bool | compareWithDummy (Expr_info expr, std::map< Index, Index > &constraints, bool keepAllCosntraints=false) const override |
| |
|
csl::Type | getType () const override |
| |
|
std::optional< Expr > | getComplexConjugate () const override |
| |
|
Index | getIndex (int i) const override |
| |
|
bool | askTerm (Expr_info expr, bool exact=false) const override |
| |
|
bool | dependsOn (Expr_info expr) const override |
| |
|
bool | dependsExplicitlyOn (Expr_info expr) const override |
| |
|
const std::vector< Equation *> & | getProperties () const override |
| |
|
void | addProperty (Equation *property) override |
| |
|
void | removeProperty (Equation *property) override |
| |
|
bool | checkIndexStructure (const std::vector< Index > &t_index) const override |
| |
|
std::optional< Expr > | replaceIndex (const Index &indexToReplace, const Index &newIndex, bool refresh=true) const override |
| |
|
void | setIndexStructure (const IndexStructure &t_index) override |
| |
|
bool | hasContractionProperty (Expr_info B) const override |
| |
|
Expr | contraction (Expr_info B) const override |
| |
|
Expr | applyPermutation (const Permutation &permutations) const |
| |
|
csl::vector_expr | getPermutations (bool optimize=true) const override |
| |
|
csl::vector_expr | getAlternateForms () const override |
| |
|
void | print (int mode=0, std::ostream &out=std::cout, bool lib=false) const override |
| |
|
std::string | printLaTeX (int mode=0) const override |
| |
|
std::optional< Expr > | derive (Expr_info expr) const override |
| |
|
std::optional< Expr > | evaluate (csl::eval::mode user_mode=csl::eval::base) const override |
| |
|
bool | operator== (Expr_info expr) const override |
| |
|
| AbstractElement (const std::shared_ptr< AbstractParent > &t_parent) |
| |
|
Parent | getParent () const override |
| |
|
std::string const & | getName () const override |
| |
|
bool | getCommutable () const override |
| |
|
void | setParent (const Parent &t_parent) override |
| |
|
void | setName (const std::string &t_name) override |
| |
|
void | setCommutable (bool t_commutable) override |
| |
|
int | isPolynomial (Expr_info variable) const override |
| |
|
std::optional< Expr > | getPolynomialTerm (Expr_info variable, int order) const override |
| |
|
std::optional< Expr > | getRealPart () const override |
| |
|
Expr | getImaginaryPart () const override |
| |
|
bool | isBuildingBlock () const override |
| |
|
virtual bool | commutesWith (Expr_info expr, int sign=-1) const override |
| |
|
std::optional< Expr > | expand (bool full=false, bool inplace=false) const override |
| |
|
std::optional< Expr > | factor (bool full=false) const override |
| |
|
std::optional< Expr > | factor (Expr_info expr, bool full=false) const override |
| |
|
std::optional< Expr > | getTerm () const override |
| |
|
std::optional< Expr > | getComplexModulus () const override |
| |
|
std::optional< Expr > | findSubExpression (Expr_info subExpression, const Expr &newExpression) const override |
| |
|
void | printExplicit (int mode=0) const |
| |
|
virtual int | getDim () 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 int | getNArgs (int axis=0) const |
| |
|
virtual csl::vector_expr::iterator | begin () |
| |
|
virtual csl::vector_expr::iterator | end () |
| |
|
virtual csl::vector_expr::const_iterator | begin () const |
| |
|
virtual csl::vector_expr::const_iterator | end () const |
| |
|
virtual Expr const & | getArgument (int iArg=0) const |
| |
|
virtual Expr const & | getArgument (const std::vector< int > &indices) const |
| |
|
virtual const csl::vector_expr & | getVectorArgument () 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 IndexStructure | getFreeIndexStructure () const |
| |
|
virtual int | getNContractedPairs () const |
| |
|
virtual std::set< std::pair< int, int > > | getContractedPair () const |
| |
|
virtual void | setValue (long double t_value) |
| |
|
virtual void | setArgument (const Expr &expr, int iArg=0) |
| |
|
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 | setVectorArgument (const csl::vector_expr &t_argument) |
| |
|
virtual void | insert (const Expr &expr, bool side=1) |
| |
|
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 void | getExponents (std::vector< Expr > const &factors, std::vector< Expr > &exponents) const |
| |
|
virtual bool | checkIndexStructure (const std::initializer_list< Index > &index) const |
| |
|
virtual int | getParity (Expr_info t_variable) const |
| |
|
virtual bool | matchShape (Expr_info expr, bool exact=false) const |
| |
|
virtual long double | evaluateScalar () const |
| |
|
virtual std::optional< Expr > | collect (std::vector< Expr > const &factors, bool full=false) const |
| |
|
virtual Expr | suppressTerm (Expr_info expr) const |
| |
|
virtual std::optional< Expr > | suppressExponent (Expr const &factor, Expr const &exponent) const |
| |
|
virtual std::optional< Expr > | expand_if (std::function< bool(Expr const &)> const &f, bool full=false, bool inPlace=false) const |
| |
|
virtual std::optional< Expr > | getComplexArgument () 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 |
| |
|
bool | operator!= (const Expr_c &expr) const |
| |
|
virtual Expr const & | operator[] (int iArg) const |
| |
|
virtual Expr & | operator[] (int iArg) |
| |
|
virtual bool | operator< (Expr_info expr) const=0 |
| |
|
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 |
| |