# cross: Cross products of k-tensors In stokes: The Exterior Calculus

## Description

Cross products of k-tensors

## Usage

 1 2 cross(U, ...) cross2(U1,U2) 

## Arguments

 U,U1,U2 Object of class ktensor ... Further arguments, currently ignored

## Details

Given a k-tensor S and an l-tensor T, we can form the cross product S %X% T, defined as

\mjdeqn

S\otimes T\left(v_1,...,v_k,v_k+1,..., v_k+l\right)= S\left(v_1,... v_k\right)\cdot T\left(v_k+1,... v_k+l\right).omitted; see latex

Package idiom for this includes cross(S,T) and S %X% T; note that the cross product is not commutative. Function cross() can take any number of arguments (the result is well-defined because the cross product is associative); it uses cross2() as a low-level helper function.

## Value

The functions documented here all return a spray object.

## Note

The binary form %X% uses uppercase X to avoid clashing with %x% which is the Kronecker product in base R.

## Author(s)

Robin K. S. Hankin

## References

Spivak 1961

ktensor
 1 2 3 4 5 6 7 8 M <- cbind(1:4,2:5) U1 <- as.ktensor(M,rnorm(4)) U2 <- as.ktensor(t(M),1:2) cross(U1, U2) cross(U2, U1) # not the same! U1 %X% U2 - U2 %X% U1