public Group(GroupID id, SizeOfConjugacyClasses scg, CharacterTable ct, IrreducibleRepresentations irrep, IEnumerable <FreeGroupElement> elements = null) { Id = id; Sizes = scg; Characters = ct; Irreps = irrep; Representatives = Irreps.Representatives; Generators = Representatives.AllGenerators; NumberOfConjugacyClasses = Sizes.Count; NumberOfGenerators = Generators.Count; Elements = elements == null ? null : new List <FreeGroupElement>(elements); }
public IrreducibleRepresentations(RepresentativesOfConjugacyClasses rep, IEnumerable <List <List <List <AlgebraicExpression> > > > irreps) { Representatives = rep; Irreps = new List <List <AlgebraicExpression[, ]> >(); foreach (var ir in irreps) { var tmp = new List <AlgebraicExpression[, ]>(); foreach (var r in ir) { var size = r.Count; var mat = new AlgebraicExpression[size, size]; for (var i = 0; i < size; i++) { for (var j = 0; j < size; j++) { mat[i, j] = r[i][j]; } } tmp.Add(mat); } Irreps.Add(tmp); } }