NMSIS-DSP  Version 1.5.0
NMSIS DSP Software Library

Functions

RISCV_DSP_ATTRIBUTE void riscv_quaternion2rotation_f32 (const float32_t *pInputQuaternions, float32_t *pOutputRotations, uint32_t nbQuaternions)
 Conversion of quaternion to equivalent rotation matrix. More...
 

Detailed Description

Conversions from quaternion to rotation.

Function Documentation

◆ riscv_quaternion2rotation_f32()

RISCV_DSP_ATTRIBUTE void riscv_quaternion2rotation_f32 ( const float32_t pInputQuaternions,
float32_t pOutputRotations,
uint32_t  nbQuaternions 
)

Conversion of quaternion to equivalent rotation matrix.

Parameters
[in]pInputQuaternionspoints to an array of normalized quaternions
[out]pOutputRotationspoints to an array of 3x3 rotations (in row order)
[in]nbQuaternionsnumber of quaternions in the array
Format of rotation matrix

The quaternion a + ib + jc + kd is converted into rotation matrix:

a^2 + b^2 - c^2 - d^2 2bc - 2ad 2bd + 2ac
2bc + 2ad a^2 - b^2 + c^2 - d^2 2cd - 2ab
2bd - 2ac 2cd + 2ab a^2 - b^2 - c^2 + d^2

Rotation matrix is saved in row order : R00 R01 R02 R10 R11 R12 R20 R21 R22