Wolfram Language Paclet Repository

Community-contributed installable additions to the Wolfram Language

Primary Navigation

    • Cloud & Deployment
    • Core Language & Structure
    • Data Manipulation & Analysis
    • Engineering Data & Computation
    • External Interfaces & Connections
    • Financial Data & Computation
    • Geographic Data & Computation
    • Geometry
    • Graphs & Networks
    • Higher Mathematical Computation
    • Images
    • Knowledge Representation & Natural Language
    • Machine Learning
    • Notebook Documents & Presentation
    • Scientific and Medical Data & Computation
    • Social, Cultural & Linguistic Data
    • Strings & Text
    • Symbolic & Numeric Computation
    • System Operation & Setup
    • Time-Related Computation
    • User Interface Construction
    • Visualization & Graphics
    • Random Paclet
    • Alphabetical List
  • Using Paclets
    • Get Started
    • Download Definition Notebook
  • Learn More about Wolfram Language

GeometricAlgebra

Guides

  • Dual numbers
  • Geometric Algebra
  • Matrix Gateway

Tech Notes

  • Conformal Geometry
  • Dual numbers
  • Geometric Numbers
  • Matrix Gateway
  • Operator Duality
  • Projective Geometry
  • Spinors

Symbols

  • ConvertGeometricAlgebra
  • GeometricAlgebra
  • GeometricProduct
  • Grade
  • Multivector
Geometric Numbers
Representations of numbers as multivectors

Complex numbers  as

0,1

Complex numbers  as
+

2

Hyperbolic (split-complex) numbers  as

1

In[27]:=
=
GeometricAlgebra
[1,"Format""","FormatIndex"{{1}"η"}]
Out[27]=

In[28]:=
η=["Pseudoscalar"]
Out[28]=
η
In[29]:=
2
η
Out[29]=
1
In[30]:=
r=t+xη
Out[30]=
t+xη
In[31]:=
*
r
Out[31]=
t+(-x)η
In[32]:=
†
r
Out[32]=
x+tη
In[33]:=
r
Out[33]=
2
t
+
2
x
+
2
t
+
2
x
η
In[34]:=
-1
r
//Simplify
Out[34]=
t
2
t
-
2
x
+
x
-
2
t
+
2
x
η
In[1898]:=
Tr[r]
Out[1898]=
2t
In[1899]:=
2
r
Out[1899]=
2
t
+
2
x
+(2tx)η
In[1900]:=
Det[r]
Out[1900]=
2
t
-
2
x
Define boost (rotation by hyperbolic angle
ϕ
- rapidity):
In[68]:=
K=Cosh[ϕ]-Sinh[ϕ]η;
Define boosted vector:
In[36]:=
rʹ=tʹ+xʹη;
In[37]:=
K⟑r
Out[37]=
tCosh[ϕ]-xSinh[ϕ]+(xCosh[ϕ]-tSinh[ϕ])η
Derive classic Lorentz transformation formulas:
In[38]:=
Solve[K⟑rrʹ,{tʹ,xʹ}]/.ϕArcTanh[v]//Simplify
Out[38]=
tʹ
t-vx
1-
2
v
,xʹ
x-tv
1-
2
v


Dual numbers  as

0,0,1

Quaternions  as

0,2

In[1924]:=
=
GeometricAlgebra
[{0,2},"Format""","FormatIndex"{{-2}"i",{-1}"j",{-2,-1}"k"}]
Out[1924]=

In[1925]:=
{,i,j,k}=MultivectorBasis[]
Out[1925]=
In[1926]:=
i⟑jk
Out[1926]=
True
In[1927]:=
j⟑ki
Out[1927]=
True
In[1928]:=
k⟑ij
Out[1928]=
True
In[1929]:=
2
i

2
j

2
k
i⟑j⟑k-
Out[1929]=
True

Quaternions  as
+

3

In[80]:=
=
GeometricAlgebra
[3,"Format""","FormatIndex"{{1,2,3}""},"Ordering"{{},{1},{2},{3},{2,3},{3,1},{2,1},{1,2,3}}]
Out[80]=

In[83]:=
["OrderedBasis"]
Out[83]=
In[1931]:=
{,
e
12
,
e
13
,
e
23
}=MultivectorBasis[,{0,2}];​​i=
e
23
;​​j=-
e
13
;​​k=-
e
12
;
In[1935]:=
i⟑jk
Out[1935]=
True
In[1936]:=
j⟑ki
Out[1936]=
True
In[1937]:=
k⟑ij
Out[1937]=
True
In[1938]:=
2
i

2
j

2
k
i⟑j⟑k-
Out[1938]=
True

Split-quaternions

s
as
+

2,1

In[330]:=

=
GeometricAlgebra
[2,1]
Out[330]=

2,1
In[336]:=
{i,j,k}=["Basis",2]
Out[336]=
In[343]:=
2
i
-1
Out[343]=
True
In[342]:=
2
j

2
k
1
Out[342]=
True

Bi-quaternions () as

3

In[299]:=
=
GeometricAlgebra
[3,"Format""()","FormatIndex"{​​{1}"i",{2}"j",{3}"k",​​{2,3}"i",{3,1}"j",{1,2}"k",​​{1,2,3}""​​},"Ordering"{{},{1},{2},{3},{2,3},{3,1},{1,2},{1,2,3}}]
Out[299]=
()
In[300]:=
{,i,j,k,i,j,k,}=["OrderedBasis"]
Out[300]=
In[250]:=
2
i

2
j

2
k

2

-
Out[250]=
True
In[251]:=
2
i

2
j

2
k

Out[251]=
True
In[252]:=
**##**&/@["OrderedBasis"]
Out[252]=
{True,True,True,True,True,True,True,True}
References

© 2025 Wolfram. All rights reserved.

  • Legal & Privacy Policy
  • Contact Us
  • WolframAlpha.com
  • WolframCloud.com