Learn R Programming

rotations (version 1.6.5)

mis.axis: Misorientation axis

Description

Determine the misorientation axis of a rotation.

Usage

mis.axis(x, ...)

# S3 method for SO3 mis.axis(x, ...)

# S3 method for Q4 mis.axis(x, ...)

Value

Axis in form of three dimensional vector of length one.

Arguments

x

\(n\times p\) matrix where each row corresponds to a random rotation in matrix (\(p=9\)) or quaternion (\(p=4\)) form.

...

additional arguments.

Details

Every rotation can be interpreted as some reference coordinate system rotated about an axis through an angle. These quantities are referred to as the misorientation axis and misorientation angle, respectively, in the material sciences literature. This function returns the misorentation axis associated with a rotation assuming the reference coordinate system is the identity. The data must be centered before calling mis.axis if a different coordinate system is required.

See Also

mis.angle

Examples

Run this code
rs <- rcayley(20, kappa = 20)

#If the reference frame is set to id.SO3 then no centering is required
Rs <- genR(rs, S = id.SO3)
mis.axis(Rs)
all.equal(Rs, as.SO3(mis.axis(Rs), mis.angle(Rs)))

#For other reference frames, the data must be centered first
S <- genR(pi/2)
RsS <- genR(rs, S = S)
mis.axis(RsS-S)
all.equal(mis.angle(RsS-S),abs(rs)) #TRUE

Qs <- genR(rs, S = id.Q4, space = "Q4")
mis.axis(Qs)
all.equal(Qs, as.Q4(mis.axis(Qs), mis.angle(Qs)))

Run the code above in your browser using DataLab