brainrake/elm-ganja/1.0.0

Formerly brainrape/elm-ganja. Search finds this package by either name.

Ganja.R2

Clifford Algebra: R2

Generated with ganja.js written by enki.

Basis

type R2Basis
= Scalar
| E1
| E2
| E12

Basis type

Basis list

Number of coefficients

basisName : R2Basis -> String

Basis name

Multivector

type R2
= R2 Float Float Float Float

Multivector

Zero value

get : R2Basis -> R2 -> Float

Get coefficient

set : R2Basis -> Float -> R2 -> R2

Update coefficient

new : Float -> R2Basis -> R2

Multivector with one coefficient

Basis multivectors

Basis multivector

e1 : R2

Basis multivector

e2 : R2

Basis multivector

Basis multivector

Conversion

toString : R2 -> String

Convert multivector to string

fromList : List Float -> Maybe R2

Convert list of coefficients to multivector

toList : R2 -> List Float

Convert multivector to list of coefficients

Unary Operators

Reverse the order of the basis blades.

dual : R2 -> R2

Poincare duality operator.

Clifford Conjugation

Main involution

Binary Operators

mul : R2 -> R2 -> R2

The geometric product.

wedge : R2 -> R2 -> R2

The outer product. (MEET)

vee : R2 -> R2 -> R2

The regressive product. (JOIN)

dot : R2 -> R2 -> R2

The inner product.

add : R2 -> R2 -> R2

Multivector addition

sub : R2 -> R2 -> R2

Multivector subtraction

smul : Float -> R2 -> R2

scalar/multivector multiplication

muls : R2 -> Float -> R2

multivector/scalar multiplication

sadd : Float -> R2 -> R2

scalar/multivector addition

adds : R2 -> Float -> R2

multivector/scalar addition

ssub : Float -> R2 -> R2

scalar/multivector subtraction

subs : R2 -> Float -> R2

multivector/scalar subtraction

Norm

norm : R2 -> Float

Norm

inorm : R2 -> Float

Norm of dual

Normalized multivector