log.SO3: Rotation logarithm

View source: R/preliminary.R

log.SO3R Documentation

Rotation logarithm

Description

Compute the logarithm of a rotation matrix, which results in a 3-by-3 skew-symmetric matrix. This function maps the lie group SO(3) into its tangent space, which is the space of all 3-by-3 skew symmetric matrices, the lie algebra so(3). For details see e.g. moakher02.

Usage

## S3 method for class 'SO3'
log(x, ...)

Arguments

x

n-by-9 matrix where each row corresponds to a random rotation matrix.

...

additional arguments.

Details

moakher02

Value

Skew symmetric matrix log(R).

Examples

Rs <- ruars(20, rcayley)

#Here we demonstrate how the logarithm can be used to determine the angle and
#axis corresponding to the provided sample

lRs <- log(Rs)               #Take the logarithm of the sample
Ws <- lRs[,c(6, 7, 2)]       #The appropriate diagonal entries are the axis*angle
lens <- sqrt(rowSums(Ws^2))
axes <- mis.axis(Rs)
angs <- mis.angle(Rs)
all.equal(axes, Ws/lens)
all.equal(angs, lens)

rotations documentation built on June 25, 2022, 1:06 a.m.