ones

Create quaternion array with real parts set to one and imaginary parts set to zero

Since R2021a

Description

example

quatOnes = ones("quaternion") returns a scalar quaternion with the real part set to 1 and the imaginary parts set to 0.

Given a quaternion of the form $Q=a+b\text{i}+c\text{j}+d\text{k}$, a quaternion one is defined as $Q=1+0\text{i}+0\text{j}+0\text{k}$.

example

quatOnes = ones(n,"quaternion") returns an n-by-n quaternion matrix with the real parts set to 1 and the imaginary parts set to 0.

example

quatOnes = ones(sz,"quaternion") returns an array of quaternion ones where the size vector, sz, defines size(qOnes).

Example: ones([1,4,2],"quaternion") returns a 1-by-4-by-2 array of quaternions with the real parts set to 1 and the imaginary parts set to 0.

example

quatOnes = ones(sz1,...,szN,"quaternion") returns a sz1-by-...-by-szN array of ones where sz1,…,szN indicates the size of each dimension.

example

quatOnes = ones(___,"like",prototype,"quaternion") specifies the underlying class of the returned quaternion array to be the same as the underlying class of the quaternion prototype.

Examples

collapse all

Create a quaternion scalar one.

quatOnes = ones("quaternion")
quatOnes = quaternion
1 + 0i + 0j + 0k

Create an n-by-n matrix of quaternion ones.

n = 3;
quatOnes = ones(n,"quaternion")
quatOnes = 3x3 quaternion array
1 + 0i + 0j + 0k     1 + 0i + 0j + 0k     1 + 0i + 0j + 0k
1 + 0i + 0j + 0k     1 + 0i + 0j + 0k     1 + 0i + 0j + 0k
1 + 0i + 0j + 0k     1 + 0i + 0j + 0k     1 + 0i + 0j + 0k

Create a multidimensional array of quaternion ones by defining array dimensions in order. In this example, you create a 3-by-1-by-2 array. You can specify dimensions using a row vector or comma-separated integers. Specify the dimensions using a row vector and display the results:

dims = [3,1,2];
quatOnesSyntax1 = ones(dims,"quaternion")
quatOnesSyntax1 = 3x1x2 quaternion array
quatOnesSyntax1(:,:,1) =

1 + 0i + 0j + 0k
1 + 0i + 0j + 0k
1 + 0i + 0j + 0k

quatOnesSyntax1(:,:,2) =

1 + 0i + 0j + 0k
1 + 0i + 0j + 0k
1 + 0i + 0j + 0k

Specify the dimensions using comma-separated integers, and then verify the equivalency of the two syntaxes:

quatOnesSyntax2 = ones(3,1,2,"quaternion");
isequal(quatOnesSyntax1,quatOnesSyntax2)
ans = logical
1

A quaternion is a four-part hyper-complex number used in three-dimensional rotations and orientations. You can specify the underlying data type of the parts as single or double. The default is double.

Create a quaternion array of ones with the underlying data type set to single.

quatOnes = ones(2,"like",single(1),"quaternion")
quatOnes = 2x2 quaternion array
1 + 0i + 0j + 0k     1 + 0i + 0j + 0k
1 + 0i + 0j + 0k     1 + 0i + 0j + 0k

Verify the underlying class using the classUnderlying function.

classUnderlying(quatOnes)
ans =
'single'

Input Arguments

collapse all

Size of square quaternion matrix, specified as an integer value.

If n is zero or negative, then quatOnes is returned as an empty matrix.

Example: ones(4,"quaternion") returns a 4-by-4 matrix of quaternions with the real parts set to 1 and the imaginary parts set to 0.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Output size, specified as a row vector of integer values. Each element of sz indicates the size of the corresponding dimension in quatOnes. If the size of any dimension is 0 or negative, then quatOnes is returned as an empty array.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Quaternion prototype, specified as a quaternion object.

Example: ones(2,"like",quat,"quaternion") returns a 2-by-2 matrix of quaternions with the same underlying class as the prototype quaternion, quat.

Size of each dimension, specified as two or more comma-separated integers. If the size of any dimension is 0 or negative, then quatOnes is returned as an empty array.

Example: ones(2,3,"quaternion") returns a 2-by-3 matrix of quaternions with the real parts set to 1 and the imaginary parts set to 0.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Output Arguments

collapse all

Quaternion ones, returned as a quaternion object or an array of quaternion objects.

Given a quaternion of the form $Q=a+b\text{i}+c\text{j}+d\text{k}$, a quaternion one is defined as $Q=1+0\text{i}+0\text{j}+0\text{k}$.

Version History

Introduced in R2021a