The type of the groupElement
.
Constructor for the ConcreteGroup class.
An array of matrices that generate the symmetry group.
An underlying concrete group.
Enumerates all of the elements of the group. The base implementation is probably not a good idea for anything with more than a few hundred elements. However, the RewriteGroup
has a much faster algorithm.
An array of all of the group elements.
Generates the A(n) symmetry group, which is the symmetry group of an n-simplex.
// A(4) is generated by the following matrices:
// | 0 0 0 1| | 0 1 0 0| | 1 0 0 0| | 1 0 0 0|
// | 0 1 0 0| | 1 0 0 0| | 0 0 1 0| | 0 1 0 0|
// | 0 0 1 0| | 0 0 1 0| | 0 1 0 0| | 0 0 0 1|
// | 1 0 0 0| | 0 0 0 1| | 0 0 0 1| | 0 0 1 0|
console.log(ConcreteGroup.A(4));
The number of dimensions of the symmetry group.
The A(n) symmetry group.
Generates the BC(n) symmetry group, which is the symmetry group of an n-hypercube.
// BC(4) is generated by the following matrices:
// |-1 0 0 0| | 0 1 0 0| | 1 0 0 0| | 1 0 0 0|
// | 0 1 0 0| | 1 0 0 0| | 0 0 1 0| | 0 1 0 0|
// | 0 0 1 0| | 0 0 1 0| | 0 1 0 0| | 0 0 0 1|
// | 0 0 0 1| | 0 0 0 1| | 0 0 0 1| | 0 0 1 0|
console.log(ConcreteGroup.BC(4));
The number of dimensions of the symmetry group.
The BC(n) symmetry group.
Generated using TypeDoc, the 1/31/2021 at 6:18:55 AM
A class for groups with a matrix representation and an underlying "concrete" abstract group. In practice, the concrete group used is always a
RewriteGroup
. This way, we can both mitigate the floating point errors and the comparatively slow algorithms for pure matrix groups.