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\ldots e_{i-1}e_{i+1}\ldots e_n\).
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.