<< CL_rot_axAng2quat Coordinates and frames CL_rot_contQuat >>

CelestLab >> Coordinates and frames > CL_rot_compose

CL_rot_compose

Matrix and angular velocity vector resulting from frame composition

Calling Sequence

[M,omega] = CL_rot_compose(M1,omega1,dir1, M2,omega2,dir2, ... Mn,omegan,dirn)

Description

Parameters

M1,M2,...Mn:

Frame transformation matrices (3x3xN or 3x3)

omega1,omega2,...omegan:

Angular velocity vectors [rad/s] (3xN or 3x1)

dir1,dir2,...dirn:

Directions of the transformations (1x1)

M:

Resulting transformation matrix (3x3xN)

omega:

Resulting angular velocity vector [rad/s] (3xN)

Authors

See also

Examples

// Composition of two transformations:
// We know: frameA -> frameB
// M1 is such that: X_relative_to_frameB = M1*(X_relative_to_frameA)
// om1 = omega(frameB/frameA) with coordinates in frameA
M1 = CL_rot_angles2matrix(3, %pi/2)
om1 = [0;0;0.01];

// We know: frameC -> frameB
// M2 is such that: X_relative_to_frameB = M2*(X_relative_to_frameC)
// om2 = omega(frameB/frameC) with coordinates in frameC
M2 = CL_rot_angles2matrix(2, %pi/2)
om2 = [0;0.01;0];

// We compute: frameA -> frameC <=> frameA -> frameB -> frameC
// M is such that: X_relative_to_frameC = M*(X_relative_to_frameA)
// omega = omega(frameC/frameA) with coordinates in frameA
[M,omega] = CL_rot_compose(M1,om1,1, M2,om2,-1);

Report an issue
<< CL_rot_axAng2quat Coordinates and frames CL_rot_contQuat >>