48 bool collect_symmetries(
const std::vector<tab_t>& tabs, std::vector<symmetrizer_t>& symmetrizers)
const;
Algorithm(const Kernel &, Ex &)
Initialise the algorithm with a reference to the expression tree, but do not yet do anything with thi...
Definition Algorithm.cc:52
Ex::result_t result_t
Definition Algorithm.hh:65
Definition Storage.hh:170
Ex::iterator iterator
Definition ExManip.hh:12
const Kernel & kernel
Definition ExManip.hh:43
To ensure consistency when creating adjforms out of two different Ex objects an IndexMap object is re...
Definition Adjform.hh:121
yngtab::filled_tableau< unsigned int > tab_t
Definition TableauBase.hh:12
void symmetrize_as_sum(ProjectedTerm &adj, const std::vector< symmetrizer_t > &symmetries)
Definition meld.cc:1116
std::vector< tab_t > collect_tableaux(Ex &ex) const
Definition meld.cc:720
bool can_apply_traceless(iterator it)
Definition meld.cc:130
bool collect_symmetries_as_product(const std::vector< tab_t > &tabs, std::vector< symmetrizer_t > &symmetrizers) const
Definition meld.cc:771
bool apply_tableaux(iterator it)
Definition meld.cc:210
virtual result_t apply(iterator &it) override
Definition meld.cc:52
virtual ~meld()
Definition meld.cc:39
bool can_apply_diagonals(iterator it)
Definition meld.cc:99
void symmetrize(ProjectedTerm &adj, const std::vector< symmetrizer_t > &symmetries)
Definition meld.cc:990
IndexMap index_map
Definition meld.hh:77
bool can_apply_tableaux(iterator it)
Definition meld.cc:193
bool project_as_sum
Definition meld.hh:78
bool can_apply_cycle_traces(iterator it)
Definition meld.cc:1202
bool apply_traceless(iterator it)
Definition meld.cc:136
void symmetrize_idents(ProjectedTerm &sym)
Definition meld.cc:1168
bool collect_symmetries(const std::vector< tab_t > &tabs, std::vector< symmetrizer_t > &symmetrizers) const
Definition meld.cc:763
virtual bool can_apply(iterator it) override
Definition meld.cc:43
cadabra::TableauBase::tab_t tab_t
Definition meld.hh:21
bool apply_diagonals(iterator it)
Definition meld.cc:105
bool apply_cycle_traces(iterator it)
Definition meld.cc:1290
void symmetrize_as_product(ProjectedTerm &adj, const std::vector< symmetrizer_t > &symmetrizers)
Definition meld.cc:998
meld(const Kernel &kernel, Ex &ex, bool project_as_sum=false)
Definition meld.cc:32
bool collect_symmetries_as_sum(const std::vector< tab_t > &tabs, std::vector< symmetrizer_t > &symmetrizers) const
Definition meld.cc:873
Functions to handle the exchange properties of two or more symbols in a product.
Definition Adjform.cc:83
Ex::iterator it
Definition meld.hh:31
Ex tensor
Definition meld.hh:28
bool changed
Definition meld.hh:32
Adjform ident
Definition meld.hh:30
Ex scalar
Definition meld.hh:28
ProjectedTerm(const Kernel &kernel, IndexMap &index_map, Ex &ex, Ex::iterator it)
Definition meld.cc:484
ProjectedAdjform projection
Definition meld.hh:29
bool compare(const Kernel &kernel, const ProjectedTerm &other)
Definition meld.cc:563
bool antisymmetric
Definition meld.hh:38
std::vector< size_t > indices
Definition meld.hh:37
symmetrizer_t(bool antisymmetric, bool independent)
Definition meld.hh:36
bool independent
Definition meld.hh:38