Options
All
  • Public
  • Public/Protected
  • All
Menu

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.

Type parameters

Hierarchy

Index

Constructors

constructor

Properties

abstractGroup

abstractGroup: Group<T>

dimension

dimension: number

generators

generators: ConcreteGroupElement<T>[]

Methods

compare

enumerateElements

equal

identity

invert

multiply

Static A

  • Generates the A(n) symmetry group, which is the symmetry group of an n-simplex.

    Example

    // 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));

    Parameters

    • n: number

      The number of dimensions of the symmetry group.

    Returns ConcreteGroup<number[]>

    The A(n) symmetry group.

Static BC

  • Generates the BC(n) symmetry group, which is the symmetry group of an n-hypercube.

    Example

    // 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));
    todo

    Currently, this is hardcoded to work only up to n = 4! We ought to fix that.

    Parameters

    • n: number

      The number of dimensions of the symmetry group.

    Returns ConcreteGroup<number[]>

    The BC(n) symmetry group.

Generated using TypeDoc, the 1/31/2021 at 6:18:55 AM