22 #ifndef GROUP_H_INCLUDED 23 #define GROUP_H_INCLUDED 33 class QuantumFieldParent;
119 Irrep highestWeightRep(
const std::vector<int>& highestWeight)
const;
126 Irrep getTrivialRep()
const = 0;
133 Irrep getAdjointRep()
const;
153 std::string getName()
const;
180 std::vector<const csl::Space*> getAllVectorSpace()
const = 0;
187 csl::Index getCorrespondingIndex(
const std::string& index_name,
236 const std::string& t_name);
271 Irrep highestWeightRep(
272 const std::vector<int>& highestWeight)
const override;
290 Irrep getTrivialRep()
const override;
302 const Irrep& rep2)
const;
319 SumIrrep tensorProduct(
const std::initializer_list<int>& rep1,
320 const std::initializer_list<int>& rep2)
const;
356 std::vector<const csl::Space*> getAllVectorSpace()
const override;
380 const std::string& index_name,
431 U1(std::string
const& t_name =
"");
467 SU(std::string
const& t_name,
511 SO(std::string
const& t_name,
554 Sp(std::string
const& t_name,
595 E6(std::string
const& t_name =
"");
628 E7(std::string
const& t_name =
"");
661 E8(std::string
const& t_name =
"");
694 F4(std::string
const& t_name =
"");
727 G2(std::string
const& t_name =
"");
786 std::string
const& name,
Special orthogonal group. The algebra of is if is odd, else. See mty::algebra::B and mty::algebra...
Definition: group.h:501
Definition: gaugedGroup.h:194
Base class for all Semi simple groups, i.e. groups that has a SemiSimpleAlgebra.
Definition: group.h:219
std::unique_ptr< mty::SemiSimpleGroup > createGroup(group::Type type, std::string const &name, int dim=-1)
Dynamically allocates a new group of type type and returns a pointer to it (in a std::unique_ptr).
Definition: group.cpp:552
Exceptional group of algebra . See mty::algebra::E6.
Definition: group.h:586
std::map< AlgebraState, csl::Expr > quadraticCasimir
Association of AlgebraState (highest weights of irreps) and quadratic Casimirs. To each irrep (i...
Definition: group.h:406
Exceptional group of algebra . See mty::algebra::F4.
Definition: group.h:685
Namespace of MARTY.
Definition: 2HDM.h:31
Class inherited from std::vector<int>, dynkin labels for a state of a semi-simple algebra (see docume...
Definition: algebraState.h:35
Contains a sum of Irrep (irreducible representation) of a given SemiSimpleAlgebra.
Definition: representation.h:363
class mty::AbstractGroup Group
Abstract base class for groups.
Classes handling irreducible representations of semi simple Lie algebras, using the Cartan formalism:...
group::Type stringToGroupType(std::string const &name)
Converts a string to a group type. Allows to read a group::Type in a file.
Lorentz group. Algebra of Lorentz: .
Definition: group.h:751
virtual ~AbstractGroup()
Destructor.
Definition: group.h:105
std::ostream & operator<<(std::ostream &fout, mty::group::Type type)
Overload of operator<< for group::Type::Type. Allows to display a string corresponding to the type of...
Special unitary group. The algebra of is , see mty::algebra::A.
Definition: group.h:457
Exceptional group of algebra . See mty::algebra::G2.
Definition: group.h:718
std::vector< std::pair< AlgebraState, const csl::Space * > > vectorSpaces
Association of AlgebraState (highest weights of irreps) and vector spaces. To each irrep (i...
Definition: group.h:397
Abelian unitary group. mty::algebra::R is the associated SemiSimpleAlgebra.
Definition: group.h:422
Abstract base class for all semi-simple Lie algebras.
Definition: semiSimpleAlgebra.h:96
Exceptional group of algebra . See mty::algebra::E8.
Definition: group.h:652
std::unique_ptr< SemiSimpleAlgebra > algebra
Owner std::unique_ptr to the SemiSimpleAlgebra associated with the group.
Definition: group.h:389
Handles the irreducible representation of a given semi-simple algebra.
Definition: representation.h:42
Namespace to avoid name conflicts for groups that can have very simple names. See algebra::Type for t...
Definition: group.h:39
Base class for parents of QuantumField objects.
Definition: quantumField.h:152
Exceptional group of algebra . See mty::algebra::E7.
Definition: group.h:619
Semi simple Lie algebras: calculations of highest weight representations, products and sums of repres...
~Lorentz()
Destructor.
Definition: group.h:763
Abstract base class for groups.
Definition: group.h:82
int dim
Dimension of the group.
Definition: group.h:195
std::string name
Name of the group.
Definition: group.h:200
Type
Enumeration of types of semi simple Lie groups. The names being very small, we use a namespace to avo...
Definition: group.h:44
Simplectic group. The algebra of is . See mty::algebra::C.
Definition: group.h:544