# eul2quat

Convert Euler angles to quaternion

## Syntax

``quat = eul2quat(eul)``
``quat = eul2quat(eul,sequence)``

## Description

example

````quat = eul2quat(eul)` converts a given set of Euler angles, `eul`, to the corresponding quaternion, `quat`. The default order for Euler angle rotations is `"ZYX"`.```

example

````quat = eul2quat(eul,sequence)` converts a set of Euler angles into a quaternion. The Euler angles are specified in the axis rotation sequence, `sequence`. The default order for Euler angle rotations is `"ZYX"`.```

## Examples

collapse all

```eul = [0 pi/2 0]; qZYX = eul2quat(eul)```
```qZYX = 1×4 0.7071 0 0.7071 0 ```
```eul = [pi/2 0 0]; qZYZ = eul2quat(eul,'ZYZ')```
```qZYZ = 1×4 0.7071 0 0 0.7071 ```

## Input Arguments

collapse all

Euler rotation angles in radians, specified as an n-by-3 array of Euler rotation angles. Each row represents one Euler angle set.

Example: `[0 0 1.5708]`

Axis rotation sequence for the Euler angles, specified as one of these string scalars:

• `"ZYX"` (default) – The order of rotation angles is z-axis, y-axis, x-axis.

• `"ZYZ"` – The order of rotation angles is z-axis, y-axis, z-axis.

• `"XYZ"` – The order of rotation angles is x-axis, y-axis, z-axis.

Data Types: `string` | `char`

## Output Arguments

collapse all

Unit quaternion, returned as an n-by-4 matrix containing n quaternions. Each quaternion, one per row, is of the form q = [w x y z], with w as the scalar number.

Example: `[0.7071 0.7071 0 0]`