operator(*) Interface

public interface operator(*)

Contents


Module Procedures

private pure elemental function quat_scalar_mult(x, y) result(rst)

Multiplies a quaternion with a scalar.

Arguments

Type IntentOptional Attributes Name
type(quaternion), intent(in) :: x

The quaternion.

real(kind=real64), intent(in) :: y

The scalar.

Return Value type(quaternion)

The resulting quaternion.

private pure elemental function scalar_quat_mult(x, y) result(rst)

Multiplies a quaternion with a scalar.

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(in) :: x

The scalar.

type(quaternion), intent(in) :: y

The quaternion.

Return Value type(quaternion)

The resulting quaternion.

private pure elemental function quat_multiply(x, y) result(rst)

Multiplies two quaternions.

Arguments

Type IntentOptional Attributes Name
type(quaternion), intent(in) :: x

The left-hand-side argument.

type(quaternion), intent(in) :: y

The right-hand-side argument.

Return Value type(quaternion)

The resulting quaternion.

private pure function quat_vec3_mult(x, y) result(rst)

Multiplies a quaternion with a 3-element vector.

Arguments

Type IntentOptional Attributes Name
type(quaternion), intent(in) :: x

The quaternion.

real(kind=real64), intent(in), dimension(3) :: y

The vector.

Return Value type(quaternion)

The resulting quaternion.