public abstract class BinaryAlgebra extends BinaryProductStructure
ARG_NUM, CIRCULAR, COMP_NUM, components, HYPERBOLIC, ZERO_PRECISSION
Modifier and Type | Method and Description |
---|---|
BinaryAlgebra |
add(BinaryProductStructure a) |
BinaryAlgebra |
add(BinaryProductStructure a,
boolean collect_terms)
Add an element from the algebra.
|
static BinaryAlgebra |
applyLeibnizRule(BinaryAlgebra h)
TODO:
meanwhile see 'getLeftCovariantDerivative ()'
|
BinaryAlgebra |
calculateBCHWith(BinaryAlgebra a,
int from_order,
int to_order)
The Baker Campbell Hausdorff formula (BCH) is calculated for a specified
range of orders.
|
BinaryAlgebra |
getAntiCommutatorWith(BinaryAlgebra a)
Calculates the anti-commutator of the element a1 of the algebra with another one a2
which is defined as:
{a1, a2} = a1*a2 + a2*a1
|
abstract BinaryAlgebra |
getClone() |
BinaryAlgebra |
getCommutatorWith(BinaryAlgebra a) |
BinaryAlgebra |
getCommutatorWith(BinaryAlgebra a,
boolean collect_terms)
Calculates the commutator of an element a1 of the algebra with another one a2.
|
java.lang.String[] |
getComponentsOfGrade(int grade,
java.util.TreeMap<java.lang.Integer,java.lang.Integer> grades) |
static BinaryAlgebra |
getDifference(BinaryAlgebra a1,
BinaryAlgebra a2) |
abstract BinaryAlgebra |
getGrade(int grade) |
static BinaryAlgebra |
getGradedInnerProduct(BinaryAlgebra a1,
BinaryAlgebra a2,
boolean with_grade_0) |
static java.util.HashSet<BinaryProductStructure> |
getIntersection(BinaryProductStructure[] h1,
BinaryProductStructure[] h2)
Two sets of hypernumbers are compared.
|
BinaryAlgebra |
getLeftCovariantDerivative(BinaryAlgebra covariant_deriv_op,
BinaryAlgebra h)
The covariant derivative of the hypernumber is calculated.
|
int |
getNumberOfComponents(int grade,
java.util.TreeMap<java.lang.Integer,java.lang.Integer> grades) |
abstract int |
getNumberOfGrades() |
static BinaryAlgebra |
getOuterProduct(BinaryAlgebra a1,
BinaryAlgebra a2) |
static BinaryAlgebra |
getProduct(BinaryAlgebra a,
BinaryAlgebra b) |
static BinaryAlgebra |
getScalarProduct(BinaryAlgebra a1,
BinaryAlgebra a2)
The scalar product (= real inner product) <.|.> of two algebra a1 and a2 is defined as
|
static BinaryAlgebra |
getSum(BinaryAlgebra a1,
BinaryAlgebra a2) |
static BinaryAlgebra |
getTernaryInnerProduct(BinaryAlgebra a1,
BinaryAlgebra a2,
BinaryAlgebra a3)
The scalar product (= real inner product) <.|.|.> of three algebras a1 and a2 and a3 is defined as
|
abstract boolean |
isCayleyDicksonAlgebra() |
static boolean |
isCommutative(BinaryAlgebra a1,
BinaryAlgebra a2) |
boolean |
isEqual(BinaryProductStructure h)
Compares the components of the hypernumber with those of another one.
|
static boolean |
isOrthogonal(BinaryAlgebra a1,
BinaryAlgebra a2) |
boolean |
isOrthogonalTo(BinaryAlgebra a) |
boolean |
isProjectionOperator() |
BinaryAlgebra |
rightMultiplyWith(BinaryAlgebra a) |
BinaryAlgebra |
subtract(BinaryAlgebra a)
Subtracts an element from an algebra.
|
asString, asString, collectTerms, compressComponents, conjugate, dual, getBasis, getBasisElementAsString, getBasisElementsAsString, getClosedPairsAsString, getComponent, getComponents, getComponentsAsString, getComponentsAsString, getConjugate, getDiagonalProducts, getDual, getExpressionAsList, getFormattedMultTable, getHermitianConjugate, getImaginaryPart, getInstance, getMTab, getMultiplicationTableAsArray, getMultiplicativeOrder, getMultiplicativeOrder, getMultTableDiagonal, getNegated, getNewInstance, getNextBitmap, getNonzeroComponentsNumbered, getNonzeroComponentsNumbered, getNormedMultiplicationTable, getNormSquared, getNormSquaredAsValue, getNumberOfClosedElements, getNumberOfClosedPairs, getNumberOfComponents, getNumberOfNonzeroComponents, getNumericalInverse, getProduct, getProductWithScalar, getPseudoScalarComponent, getRandomClosedPair, getRandomNonClosedPair, getScalarComponent, getSubalgebras, getSubalgebrasAsString, getSubalgebrasSignatures, getTrace, getTraceRespDeterminant, getVectorDerivative, getVectorProduct, isAutomorphism, isCayleyDicksonLoop, isComponentZero, isLinearlyDependent, isNumerical, isNumericalityDetected, isProductClosed, isZero, multiplyWithScalar, negate, resetComponents, rightMultiplyWith, rightMultiplyWith, setBasis, setComponent, setComponentAsBasisNames, setComponentExclusively, setComponents, setComponents, setIndexedComponents, setMultiplicationTable, setMultiplicationTable, setNumerical, setNumerical, setPseudoScalarComponent, setRandomComponents, setRandomComponents, setRandomComponents, setRandomComponentsAll, setRepresentation, setScalarComponent, setSignTable, simplifyNumericalFactors, simplifyNumericalSummands, simplifyPlusMinus, square
public abstract BinaryAlgebra getClone()
getClone
in class BinaryProductStructure
public abstract int getNumberOfGrades() throws java.lang.Exception
java.lang.Exception
public abstract BinaryAlgebra getGrade(int grade) throws java.lang.Exception
java.lang.Exception
public abstract boolean isCayleyDicksonAlgebra() throws java.lang.Exception
java.lang.Exception
public boolean isEqual(BinaryProductStructure h) throws java.lang.Exception
java.lang.Exception
public static java.util.HashSet<BinaryProductStructure> getIntersection(BinaryProductStructure[] h1, BinaryProductStructure[] h2) throws java.lang.Exception
h1
- First set with hypernumbers.h2
- Second set with hypernumbers.java.lang.Exception
public int getNumberOfComponents(int grade, java.util.TreeMap<java.lang.Integer,java.lang.Integer> grades)
grade
- Grade.public java.lang.String[] getComponentsOfGrade(int grade, java.util.TreeMap<java.lang.Integer,java.lang.Integer> grades)
public BinaryAlgebra add(BinaryProductStructure a)
public BinaryAlgebra add(BinaryProductStructure a, boolean collect_terms)
a
- Algebraic element to be added.collect_terms
- true: Terms are added or subtracted if possible.
false: Terms are not added or subtracted. (This is interesting
if they contain functions and differential operators
for which the order is relevant. The simplification procedure
ignores the order).public BinaryAlgebra subtract(BinaryAlgebra a) throws java.lang.Exception
a
- Algebraic element to be subtracted.java.lang.Exception
public static BinaryAlgebra getTernaryInnerProduct(BinaryAlgebra a1, BinaryAlgebra a2, BinaryAlgebra a3) throws java.lang.Exception
a1
- Element 1 of the algebra.a2
- Element 2 of the algebra.a3
- Element 3 of the algebra.java.lang.Exception
public static BinaryAlgebra getScalarProduct(BinaryAlgebra a1, BinaryAlgebra a2) throws java.lang.Exception
a1
- Element 1 of the algebra.a2
- Element 2 of the algebra.java.lang.Exception
public BinaryAlgebra getCommutatorWith(BinaryAlgebra a, boolean collect_terms) throws java.lang.Exception
a2
- Second algebra.collect_terms
- true: Terms are added or subtracted if possible.
false: Terms are not added or subtracted. (This is interesting
if they contain functions and differential operators
for which the order is relevant. The simplification procedure
ignores the order).java.lang.Exception
public BinaryAlgebra getAntiCommutatorWith(BinaryAlgebra a) throws java.lang.Exception
a
- Second element of the algebra.java.lang.Exception
public BinaryAlgebra getLeftCovariantDerivative(BinaryAlgebra covariant_deriv_op, BinaryAlgebra h) throws java.lang.Exception
covariant_deriv_op
- Covariant derivative operator.h
- Hypernumber upon which the covariant derivative is to act upon.java.lang.Exception
public BinaryAlgebra rightMultiplyWith(BinaryAlgebra a) throws java.lang.Exception
java.lang.Exception
public static BinaryAlgebra getProduct(BinaryAlgebra a, BinaryAlgebra b) throws java.lang.Exception
java.lang.Exception
public static BinaryAlgebra getSum(BinaryAlgebra a1, BinaryAlgebra a2) throws java.lang.Exception
java.lang.Exception
public static BinaryAlgebra getDifference(BinaryAlgebra a1, BinaryAlgebra a2) throws java.lang.Exception
java.lang.Exception
public boolean isProjectionOperator() throws java.lang.Exception
java.lang.Exception
public BinaryAlgebra getCommutatorWith(BinaryAlgebra a) throws java.lang.Exception
java.lang.Exception
public static boolean isCommutative(BinaryAlgebra a1, BinaryAlgebra a2) throws java.lang.Exception
java.lang.Exception
public boolean isOrthogonalTo(BinaryAlgebra a) throws java.lang.Exception
java.lang.Exception
public static boolean isOrthogonal(BinaryAlgebra a1, BinaryAlgebra a2) throws java.lang.Exception
java.lang.Exception
public static BinaryAlgebra getOuterProduct(BinaryAlgebra a1, BinaryAlgebra a2) throws java.lang.Exception
java.lang.Exception
public static BinaryAlgebra getGradedInnerProduct(BinaryAlgebra a1, BinaryAlgebra a2, boolean with_grade_0) throws java.lang.Exception
java.lang.Exception
public BinaryAlgebra calculateBCHWith(BinaryAlgebra a, int from_order, int to_order) throws java.lang.Exception
a
- Algebra.from_order
- lowest order of order range. Possible values: 1,2,3,4.to_order
- largest order of order range. Possible values: 1,2,3,4.java.lang.Exception
public static BinaryAlgebra applyLeibnizRule(BinaryAlgebra h)
h
- Hypernumber