Releases: Jollywatt/GeometricAlgebra.jl
v0.2.2
Changes since v0.2.2
-
Add ability to customise the order in which basis blades are displayed with
BasisDisplayStyle
on a per-algebra basis. (E.g., so that3v12 - 2v13 + 1v23
displays as1𝒆23 + 2𝒆31 + 3𝒆12
or1𝒊 + 2𝒋 + 3𝒌
). -
Add
@symbolicga
convenience macro for compiling symbolically evaluated expressions, inspired by serenity4/SymbolicGA.jl.
Full Changelog: v0.2.1...v0.2.2
v0.2.1
Changes since v0.2.1
-
Support
Multivector
s with immutable component arrays (in particular,SVector
s).
Various improvements to type stability throughout. -
Change
BasisBlade
constructor argument order toBasisBlade{Sig}(coeff, bits)
. Matches the convention used throughout where the coefficient is followed by the unit basis blade, agreeing with mathematical notation. -
Prefer
0:dim:dim
over(0, dim)
as the grade parameter of scalar-pseudoscalars. This is more consistent with0:dim
and0:2:dim
. -
Add
basis(Multivector{Sig,K})
to generate a multivector basis, andbasis(sig, k)
for a basis of blades (k
is no longer a keyword argument for consistency).
Full Changelog: v0.2.0...v0.2.1
v0.2.0
First stable version with simplified type system.
Changes since v0.1.2
-
Remove
KVector{Sig,K}
andMultivector{Sig}
types in favour ofMultivector{Sig,K}
, where the gradeK
may now be a collection (e.g., range, tuple) in order to represent inhomogeneous multivectors.
This simplifies and generalises the types: only one parametric type is needed, and arbitrary grade combinations (e.g.,0:2:dim
for even multivectors) may be represented efficiently. -
Grade promotion between different grades returns the next smallest subalgebra out of
0
for scalars,(0, dim)
for scalar-pseudoscalars,0:2:dim
for even multivectors,0:dim
for general multivectors,
for more efficient representations.
-
Remove
vector_repr
and makematrix_repr
allow subspace representations. -
Rename
poincaredual
tordual
and addldual
. These are also known as the right and left complements. -
Add sandwich product and ‘antiwedge’ product
∨
.
Full Changelog: v0.1.2...v0.2.0