clifford: Create, coerce, and test for 'clifford' objects

cliffordR Documentation

Create, coerce, and test for clifford objects

Description

An object of class clifford is a member of a Clifford algebra. These objects may be added and multiplied, and have various applications in physics and mathematics.

Usage

clifford(terms, coeffs=1)
is_ok_clifford(terms, coeffs)
as.clifford(x)
is.clifford(x)
nbits(x)
nterms(x)
## S3 method for class 'clifford'
dim(x)

Arguments

terms

A list of integer vectors with strictly increasing entries corresponding to the basis vectors of the underlying vector space

coeffs

Numeric vector of coefficients

x

Object of class clifford

Details

  • Function clifford() is the formal creation mechanism for clifford objects

  • Function as.clifford() is much more user-friendly and attempts to coerce a range of input arguments to clifford form

  • Function nbits() returns the number of bits required in the low-level C routines to store the terms (this is the largest entry in the list of terms). For a scalar, this is zero and for the zero clifford object it (currently) returns zero as well although a case could be made for NULL

  • Function nterms() returns the number of terms in the expression

  • Function is_ok_clifford() is a helper function that checks for consistency of its arguments

  • Function is.term() returns TRUE if all terms of its argument have the same grade

Author(s)

Robin K. S. Hankin

References

Snygg 2012. “A new approach to differential geometry using Clifford's geometric algebra”. Birkhauser; Springer Science+Business.

See Also

Ops.clifford

Examples


(x <- clifford(list(1,2,1:4),1:3))   # Formal creation method
(y <- as.1vector(4:2))
(z <- rcliff(include.fewer=TRUE))

terms(x+100)
coeffs(z)

## Clifford objects may be added and multiplied:

x + y
x*y


clifford documentation built on Aug. 14, 2022, 1:05 a.m.