45 color(
const ex & b,
unsigned char rl = 0);
46 color(
const ex & b,
const ex & i1,
unsigned char rl = 0);
This class stores all properties needed to record/retrieve the state of one object of class basic (or...
This class is the ABC (abstract base class) of GiNaC's class hierarchy.
This class holds a generator T_a or the unity element of the Lie algebra of SU(3),...
return_type_t return_type_tinfo() const override
ex eval_ncmul(const exvector &v) const override
Perform automatic simplification on noncommutative product of color objects.
unsigned char representation_label
Representation label to distinguish independent color matrices coming from separated fermion lines.
unsigned return_type() const override
unsigned char get_representation_label() const
void read_archive(const archive_node &n, lst &sym_lst) override
Load (deserialize) the object from an archive node.
void archive(archive_node &n) const override
Save (serialize) the object into archive node.
bool match_same_type(const basic &other) const override
Returns true if the attributes of two objects are similar enough for a match.
color(const ex &b, unsigned char rl=0)
Construct object without any color index.
ex thiscontainer(const exvector &v) const override
Wrapper template for making GiNaC classes out of STL containers.
Lightweight wrapper for GiNaC's symbolic objects.
This class holds an indexed expression.
Base class for print_contexts.
Context for latex-parsable output.
This class represents the tensor of symmetric su(3) structure constants.
unsigned return_type() const override
void do_print_latex(const print_latex &c, unsigned level) const
void do_print(const print_context &c, unsigned level) const
ex eval_indexed(const basic &i) const override
Automatic symbolic evaluation of indexed symmetric structure constant.
bool contract_with(exvector::iterator self, exvector::iterator other, exvector &v) const override
Contraction of an indexed symmetric structure constant with something else.
This class represents the tensor of antisymmetric su(3) structure constants.
ex eval_indexed(const basic &i) const override
Automatic symbolic evaluation of indexed antisymmetric structure constant.
unsigned return_type() const override
bool contract_with(exvector::iterator self, exvector::iterator other, exvector &v) const override
Contraction of an indexed antisymmetric structure constant with something else.
void do_print(const print_context &c, unsigned level) const
void do_print_latex(const print_latex &c, unsigned level) const
This class represents the su(3) unity element.
void do_print(const print_context &c, unsigned level) const
void do_print_latex(const print_latex &c, unsigned level) const
This class represents an su(3) generator.
bool contract_with(exvector::iterator self, exvector::iterator other, exvector &v) const override
Contraction of generator with something else.
void do_print(const print_context &c, unsigned level) const
void do_print_latex(const print_latex &c, unsigned level) const
This class holds one of GiNaC's predefined special tensors such as the delta and the metric tensors.
Interface to GiNaC's indexed expressions.
ex color_ONE(unsigned char rl)
Create the su(3) unity element.
GINAC_DECLARE_UNARCHIVER(add)
ex color_T(const ex &a, unsigned char rl)
Create an su(3) generator.
ex color_trace(const ex &e, const std::set< unsigned char > &rls)
Calculate color traces over the specified set of representation labels.
ex color_f(const ex &a, const ex &b, const ex &c)
Create an su(3) antisymmetric structure constant.
ex color_h(const ex &a, const ex &b, const ex &c)
This returns the linear combination d.a.b.c+I*f.a.b.c.
ex color_d(const ex &a, const ex &b, const ex &c)
Create an su(3) symmetric structure constant.
std::vector< ex > exvector
#define GINAC_DECLARE_REGISTERED_CLASS(classname, supername)
Macro for inclusion in the declaration of each registered class.
To distinguish between different kinds of non-commutative objects.
Interface to GiNaC's special tensors.