Unary Operations
Base.:- — Method-(M::AbstractMultivector)::AbstractMultivectorCompute the additive inverse of M.
Base.inv — Functioninv(B::AbstractBlade)::AbstractBladeCompute the multiplicative inverse of blade B.
Base.reverse — Functionreverse(M::AbstractMultivector)::AbstractMultivectorCompute the reverse of M.
GeometricAlgebra.dual — Functiondual(M::AbstractMultivector)::AbstractMultivectorCompute the dual of M (relative to the unit pseudoscalar of the geometric algebra that M is an element of).
GeometricAlgebra.dual — Methoddual(B::AbstractBlade, C::AbstractBlade)::AbstractBladeCompute the dual B relative to the subspace represented by C.
dual(B, C) is only defined if
BandCare extended from real vector spaces of the same dimension andthe subspace represented by
Bis contained in subspace represented byC.
If either of these conditions is not satisfied, an error is thrown.
The volume of C is ignored when computing dual(B, C).
Binary Operations
Base.:+ — Method+(M::AbstractMultivector, N::AbstractMultivector)::AbstractMultivectorCompute the sum of M and N.
Base.:- — Method-(M::AbstractMultivector, N::AbstractMultivector)::AbstractMultivectorCompute the difference between M and N.
Base.:* — Method*(M::AbstractMultivector, N::AbstractMultivector)::AbstractMultivectorCompute the geometric product of M and N.
Base.:/ — Method/(M::AbstractMultivector, N::AbstractMultivector)::AbstractMultivectorCompute the geometric product of M with the inverse of N.
GeometricAlgebra.wedge — Functionwedge(M::AbstractMultivector, N::AbstractMultivector)::AbstractMultivector
wedge(M::AbstractMultivector, N::Vector{<:Real})::AbstractMultivector
wedge(M::Vector{<:Real}, N::AbstractMultivector)::AbstractMultivector
wedge(M::Vector{<:Real}, N::Vector{<:Real})::AbstractMultivector
wedge(M::AbstractMultivector, N::Real)::AbstractMultivector
wedge(M::Real, N::AbstractMultivector)::AbstractMultivectorCompute the exterior product of M and N.
GeometricAlgebra.:∧ — Function∧(M, N)::AbstractMultivectorAlias for the wedge() function. Compute the exterior product of M and N.
GeometricAlgebra.contract_left — Functioncontract_left(M::AbstractMultivector, N::AbstractMultivector)::AbstractMultivectorCompute the left contraction of M with N.
Base.:< — Function<(M::AbstractMultivector, N::AbstractMultivector)::AbstractMultivectorAlias for the contract_left() function. Compute the left contraction of M with N.
LinearAlgebra.dot — Functiondot(M::AbstractMultivector, N::AbstractMultivector)::AbstractMultivectorCompute the inner product of M and N.
Geometric Operations
GeometricAlgebra.project — Functionproject(M::AbstractMultivector, B::AbstractBlade;
return_blade=true)::Union{AbstractBlade, AbstractFloat,
Vector, Matrix, LinearAlgebra.I}Compute the projection of M onto the subspace represented by B.
When return_blade is true, the return value is an AbstractBlade. Otherwise, the return value is an AbstractFloat if the result is a scalar, a Vector if the result is a vector, a Matrix if the result is a blade with 1 < grade < dim, and a multiple of LinearAlgebra.I if the result is a pseudoscalar.