jhypercomplex.numbers.cayley_dickson_algebras
Class OctonionLattice

java.lang.Object
  extended by jhypercomplex.numbers.cayley_dickson_algebras.HypercomplexLattice
      extended by jhypercomplex.numbers.cayley_dickson_algebras.OctonionLattice

public class OctonionLattice
extends HypercomplexLattice

Author:
Markus Maute (http://www.JHyperComplex.com)

Field Summary
 
Fields inherited from class jhypercomplex.numbers.cayley_dickson_algebras.HypercomplexLattice
CANONICAL
 
Constructor Summary
OctonionLattice()
          Constructor
 
Method Summary
 Octonion[] getAllUnitElements()
           
 Octonion getBrandtTransformer(int nr)
          // TODO explain //
 Octonion[] getE7Roots()
           
 java.util.TreeMap<java.lang.String,java.lang.String> getMutliplicativeOrderDistribution()
           
 Octonion[] getOctavianUnits(int from, int to)
           
 Octonion[] getSO16Roots()
           
 SevenPointsSTS getSTS7()
           
 Octonion getUnitElement(int nr)
           
 boolean isUnitElement(Octonion o)
           
 void set128And112BasisHardCoded()
           
 void setCanoniclalBasis()
           
 void setOctavianUnits_Canonical()
          This construction of the unit integral octonions servers as a reference.
 void setOctavianUnits_D8Representation()
          Set 128 elements +/-l0+/-l1+/-l2+/-l3+/-l4+/-l5+/-l6+/-l7 with an odd number of "-"-signs
 void setOctavianUnits_FanoPlaneRepresentation(int class_nr, int nr)
          Representation based on one of the 30 different Fano planes (= STS(7)). 112 basis vectors are constructed from the seven lines of the Fano plane considering all 16 sign combinations. 112 basis vectors are constructed from the dual vectors. 16 basis vectors are +/- one element base vectors.
 void setOctavianUnits_SubalgebrasRepresentation()
          The basis is constructed from a STS(7) defined by the 7 (quaternionic) subalgebras of order 4.
 
Methods inherited from class jhypercomplex.numbers.cayley_dickson_algebras.HypercomplexLattice
getAllUnitsAsString, getBasis, getElements, getNumberOfUnitElement, isIntegralUnitElement, isUnitElement
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OctonionLattice

public OctonionLattice()
                throws java.lang.Exception
Constructor

Throws:
java.lang.Exception
Method Detail

setOctavianUnits_Canonical

public void setOctavianUnits_Canonical()
                                throws java.lang.Exception
This construction of the unit integral octonions servers as a reference. It can be found in the excellent paper "Integral Cayley Numbers" by H. S. M. Coxeter.

Throws:
java.lang.Exception

setOctavianUnits_SubalgebrasRepresentation

public void setOctavianUnits_SubalgebrasRepresentation()
                                                throws java.lang.Exception
The basis is constructed from a STS(7) defined by the 7 (quaternionic) subalgebras of order 4.

Throws:
java.lang.Exception

setOctavianUnits_FanoPlaneRepresentation

public void setOctavianUnits_FanoPlaneRepresentation(int class_nr,
                                                     int nr)
                                              throws java.lang.Exception
Representation based on one of the 30 different Fano planes (= STS(7)). 112 basis vectors are constructed from the seven lines of the Fano plane considering all 16 sign combinations. 112 basis vectors are constructed from the dual vectors. 16 basis vectors are +/- one element base vectors.

Parameters:
class_nr - Class number of the Fano planee (1 or 2).
nr - Number of Fano plane within a class (1,...15).
Throws:
java.lang.Exception

setOctavianUnits_D8Representation

public void setOctavianUnits_D8Representation()
                                       throws java.lang.Exception
Set 128 elements +/-l0+/-l1+/-l2+/-l3+/-l4+/-l5+/-l6+/-l7 with an odd number of "-"-signs

Throws:
java.lang.Exception

setCanoniclalBasis

public void setCanoniclalBasis()
                        throws java.lang.Exception
Throws:
java.lang.Exception

set128And112BasisHardCoded

public void set128And112BasisHardCoded()
                                throws java.lang.Exception
Throws:
java.lang.Exception

getOctavianUnits

public Octonion[] getOctavianUnits(int from,
                                   int to)
                            throws java.lang.Exception
Throws:
java.lang.Exception

getMutliplicativeOrderDistribution

public java.util.TreeMap<java.lang.String,java.lang.String> getMutliplicativeOrderDistribution()
                                                                                        throws java.lang.Exception
Returns:
A map: Multiplicative order --> Number of occurences among the 240 integral octonions.
Throws:
java.lang.Exception

getSO16Roots

public Octonion[] getSO16Roots()
                        throws java.lang.Exception
Returns:
The 112 roots of SO(16), the maximal subgroup of E8.
Throws:
java.lang.Exception

getE7Roots

public Octonion[] getE7Roots()
                      throws java.lang.Exception
Throws:
java.lang.Exception

getSTS7

public SevenPointsSTS getSTS7()

getBrandtTransformer

public Octonion getBrandtTransformer(int nr)
                              throws java.lang.Exception
// TODO explain //

Parameters:
nr - Number of Brand transformer
Returns:
Throws:
java.lang.Exception

getAllUnitElements

public Octonion[] getAllUnitElements()
Specified by:
getAllUnitElements in class HypercomplexLattice

getUnitElement

public Octonion getUnitElement(int nr)
                        throws java.lang.Exception
Overrides:
getUnitElement in class HypercomplexLattice
Parameters:
nr - Number of the unit integral elements, counting starts with "1".
Returns:
Integral unit hypernumber.
Throws:
java.lang.Exception

isUnitElement

public boolean isUnitElement(Octonion o)
                      throws java.lang.Exception
Parameters:
o - Octonion.
Returns:
'true' if the octonion is an integral octonion 'false' else.
Throws:
java.lang.Exception