functionplanarRotationAngle
Return angle of a planar rotation, given the rotation axis and the representations of a vector in frame 1 and frame 2
Extends from Modelica.Icons.Function (Icon for functions).
Information
Syntax
angle = Frames.planarRotationAngle(e, v1, v2);
Description
A call to this function of the form
Real[3] e, v1, v2; SI.Angle angle; equation angle = planarRotationAngle(e, v1, v2);
computes the rotation angle "angle" of a planar rotation along unit vector e, rotating frame 1 into frame 2, given the coordinate representations of a vector "v" in frame 1 (v1) and in frame 2 (v2). Therefore, the result of this function fulfills the following equation:
v2 = resolve2(planarRotation(e,angle), v1)
The rotation angle is returned in the range
-π <= angle <= π
This function makes the following assumptions on the input arguments
- Vector e has length 1, i.e., length(e) = 1
- Vector "v" is not parallel to e, i.e., length(cross(e,v1)) ≠ 0
The function does not check the above assumptions. If these assumptions are violated, a wrong result will be returned and/or a division by zero will occur.
See also
Inputs
| Type | Name | Default | Description |
|---|---|---|---|
| Real[3] | e | Normalized axis of rotation to rotate frame 1 around e into frame 2 (must have length=1) | |
| Real[3] | v1 | A vector v resolved in frame 1 (shall not be parallel to e) | |
| Real[3] | v2 | Vector v resolved in frame 2, i.e., v2 = resolve2(planarRotation(e,angle),v1) |
Outputs
| Type | Name | Default | Description |
|---|---|---|---|
| SI.Angle | angle | Rotation angle to rotate frame 1 into frame 2 along axis e in the range: -pi <= angle <= pi |