Main Content

rod2dcm

Convert Euler-Rodrigues vector to direction cosine matrix

Description

dcm=rod2dcm(R) function calculates the direction cosine matrix, for a given Euler-Rodrigues (also known as Rodrigues) vector, R. The Euler-Rodrigues vector input and resulting direction cosine matrix represent a right-hand passive transformation from frame A to frame B.

example

Examples

collapse all

This example shows how to determine the direction cosine matrix from the Euler-Rodrigues vector.

r = [.1 .2 -.1];
DCM = rod2dcm(r)
DCM = 3×3

    0.9057   -0.1509   -0.3962
    0.2264    0.9623    0.1509
    0.3585   -0.2264    0.9057

Input Arguments

collapse all

M-by-3 matrix containing M Rodrigues vectors.

Data Types: double

Output Arguments

collapse all

3-by-3-by-M containing M direction cosine matrices.

Algorithms

An Euler-Rodrigues vector b represents a rotation by integrating a direction cosine of a rotation axis with the tangent of half the rotation angle as follows:

b=[bxbybz]

where:

bx=tan(12θ)sx,by=tan(12θ)sy,bz=tan(12θ)sz

are the Rodrigues parameters. Vector s represents a unit vector around which the rotation is performed. Due to the tangent, the rotation vector is indeterminate when the rotation angle equals ±pi radians or ±180 deg. Values can be negative or positive.

References

[1] Dai, J.S. "Euler-Rodrigues formula variations, quaternion conjugation and intrinsic connections." Mechanism and Machine Theory, 92, 144-152. Elsevier, 2015.

Version History

Introduced in R2017a