An antivector is an n-dimensional Clifford object, all of
whose terms are of grade n-1. An antivector has n
degrees of freedom. Function antivector(v,n) interprets
v[i] as the coefficient of e_1e_2...
e_i-1e_i+1... e_nomitted.
Function as.antivector() is a convenience wrapper, coercing its
argument to an antivector of minimal dimension (zero entries are
interpreted consistently).
The pseudoscalar is a peculiar edge case. Consider:
A <- clifford(list(c(1,2,3)))
B <- A + clifford(list(c(1,2,4)))> is.antivector(A)
[1] FALSE
> is.antivector(B)
[1] TRUE
> is.antivector(A,include.pseudoscalar=TRUE)
[1] TRUE
> is.antivector(B,include.pseudoscalar=TRUE)
[1] TRUE
One could argue that A should be an antivector as it is a term in
B, which is definitely an antivector. Use
include.pseudoscalar=TRUE to ensure consistency in this case.
Compare as.1vector(), which returns a clifford object of grade 1.