Euler angles: Difference between revisions

From Citizendium
Jump to navigation Jump to search
imported>Paul Wormer
No edit summary
imported>Paul Wormer
Line 10: Line 10:
Euler angles are used in many different branches of physics and engineering. The present article is written from the point of view of molecular physics, where the objects to be rotated are [[molecules]].  
Euler angles are used in many different branches of physics and engineering. The present article is written from the point of view of molecular physics, where the objects to be rotated are [[molecules]].  
==Geometric discussion==
==Geometric discussion==
In the figure the space-fixed (laboratory) axes are labeled by capital X, Y, and Z and are shown in black. The body to be rotated is not shown, but a system of axes fixed to it is shown in red.  One may use any convenient orthonormal frame as a body-fixed frame. Often the body-fixed axes are [[principal axes]], that is, they are [[eigenvectors]] of the [[inertia tensor]] of the body. Also symmetry axes, when present, may be used. When the body has symmetry axes, the principal axes often coincide with these.
In Figure 1 the space-fixed (laboratory) axes are labeled by capital X, Y, and Z and are shown in black. The body to be rotated is not shown, but a system of axes fixed to it is shown in red.  One may use any convenient orthonormal frame as a body-fixed frame. Often the body-fixed axes are [[principal axes]], that means that they are [[eigenvectors]] of the [[inertia tensor]] of the body. Also symmetry axes, when present, may be used. When the body has symmetry axes, the principal axes often coincide with these.
 
The ''z-y′-z′'' convention will be followed. Initially, the two frames coincide, and the path to a final arbitrary orientation of the body—and its frame—is depicted. The first rotation is around the ''z''-axis, which coincides with the Z-axis. The ''x''- and ''y''-axis move in the circle perpendicular to the ''z''-axis over an angle α. The second rotation is around a circle perpendicular to the ''y′''-axis. The angle is β. It is a great practical advantage of the present convention that the ''z′''-axis has the usual [[spherical polar coordinates]] α ≡ φ and β ≡ θ with respect to the space-fixed frame.
(Due to this the [[Wigner D-matrix]] elements are equal to [[spherical harmonics]] for γ = 0).


The ''z-y′-z′'' convention will be followed. Initially, the two frames coincide, and the path to a final arbitrary orientation of the body—and its frame—is depicted on Figure 1. The first rotation is around the ''z''-axis, which coincides with the Z-axis. The ''x''- and ''y''-axis move in the circle perpendicular to the ''z''-axis over an angle α. The second rotation is around a circle perpendicular to the ''y′''-axis. The angle is β. It is a great practical advantage of the present convention that the ''z′''-axis has the usual [[spherical polar coordinates]] α ≡ φ (longitude angle) and β ≡ θ (colatitude angle) with respect to the space-fixed frame.
(Due to this fact the complex conjugate of the ''m = 0'' column of the [[Wigner D-matrix]] consists of [[spherical harmonics]]).
The final rotation is in a circle perpendicular to the ''z′''-axis over an angle γ. From geometric considerations follows that any orientation in space of the body-fixed frame may be obtained.
The final rotation is in a circle perpendicular to the ''z′''-axis over an angle γ. From geometric considerations follows that any orientation in space of the body-fixed frame may be obtained.


Let us write <math>\mathbf{R}(\varphi, \hat{n})</math> for the [[rotation matrix]] that describes a rotation around the unit vector <math>\hat{n}</math> over an angle <math>\varphi</math>.  
We write <math>\mathbf{R}(\varphi, \hat{n})</math> for the [[rotation matrix]] that describes a rotation around the unit vector <math>\hat{n}</math> over an angle <math>\varphi</math>.  
In [[this article]] it is shown that if '''A''' is a rotation matrix, that
Clearly  the three consecutive  Euler rotations correspond to  rotations around
the unit vectors along the body-fixed axes ''z'', ''y&prime;'', and ''z&prime;'' over angles &alpha; &beta;, and &gamma;, respectively. Because a matrix acts on a column vector to its right, the order in the matrix product is as in the rightmost term in the following equation.
It will be shown that the corresponding matrix product can be written in reverse order (but around fixed, unprimed,  axes ''z'', ''y'', ''z''), that is,
:<math>
:<math>
\mathbf{R}(\varphi, \mathbf{A}\hat{n}) = \mathbf{A}\mathbf{R}(\varphi, \hat{n})\mathbf{A}^{\mathrm{T}}
\begin{align}
\mathbf{R}(\gamma, \hat{e}_{z'}) \mathbf{R}(\beta, \hat{e}_{y'}) \mathbf{R}(\alpha, \hat{e}_{z})&=
\mathbf{R}(\alpha, \hat{e}_{z }) \mathbf{R}(\beta, \hat{e}_{y }) \mathbf{R}(\gamma, \hat{e}_{z}) \\
&=
\begin{pmatrix}
\cos\alpha & -\sin \alpha & 0 \\
\sin\alpha &  \cos \alpha & 0 \\
        0 &  0          & 1 \\
\end{pmatrix}
\begin{pmatrix}
\cos\beta  & 0 &  \sin\beta \\
    0      & 1 &      0    \\
-\sin\beta & 0 &  \cos\beta  \\
\end{pmatrix}
\begin{pmatrix}
\cos\gamma & -\sin\gamma & 0 \\
\sin\gamma &  \cos\gamma & 0 \\
        0 &  0        & 1 \\
\end{pmatrix} \\
&=
\begin{pmatrix}
\cos\alpha\cos\beta\cos\gamma-\sin\alpha\cos\gamma \;&\; -\cos\alpha\cos\beta\sin\gamma-\sin\alpha\cos\gamma \;&\;\cos\alpha\sin\beta \\
\sin\alpha\cos\beta\cos\gamma+\cos\alpha\sin\gamma \;&\; -\sin\alpha\cos\beta\sin\gamma+\cos\alpha\cos\gamma \;&\; \sin\alpha\sin\beta \\
-\sin\beta\cos\gamma \;&\; \sin\beta\sin\gamma \;&\; \cos\beta
\end{pmatrix}
\end{align}
</math>
</math>
where the superscript T indicates the transpose of the matrix. For rotation matrices it holds that the transposed matrix is equal to the inverse of the matrix.


Clearly then the three consecutive rotations correspond to the matrix product
<!--
:<math>
\mathbf{R}(\gamma, \hat{e}_{z'}) \mathbf{R}(\beta, \hat{e}_{y'}) \mathbf{R}(\alpha, \hat{e}_{z})
</math>
where unit vectors along the body-fixed axes ''z'', ''y&prime;'', and ''z&prime;'' are introduced.
Further  
Further  
:<math>
:<math>
Line 40: Line 61:
\mathbf{R}(\beta, \hat{e}_{y'})^{\mathrm{T}}
\mathbf{R}(\beta, \hat{e}_{y'})^{\mathrm{T}}
</math>
</math>
In [[this article]] it is shown that if '''A''' is a rotation matrix, that
:<math>
\mathbf{R}(\varphi, \mathbf{A}\hat{n}) = \mathbf{A}\mathbf{R}(\varphi, \hat{n})\mathbf{A}^{\mathrm{T}}
</math>
where the superscript T indicates the transpose of the matrix. For rotation matrices it holds that the transposed matrix is equal to the inverse of the matrix.
-->





Revision as of 06:17, 11 July 2009

PD Image
Euler angles. From left to right: initial configuration, after rotation over α, after rotation over β, and after rotation over γ.

In physics, mathematics, and engineering, Euler angles are three rotation angles, commonly denoted by 0 ≤ α ≤ 2π, 0 ≤ β ≤ π, and 0 ≤ γ ≤ 2π. Any rotation of a 3-dimensional object can be performed by three consecutive rotations over the three Euler angles.

Different conventions are in use: a rotation can be active (the object is rotated, the system of axes is fixed in space), or passive (the object is fixed in space, the axes are rotated).

The order of Euler angles may vary; a very common active convention is the z-y′-z′ convention. Attach a system of Cartesian coordinate axes to the body that is to be rotated (the coordinate frame is fixed to the body and is rotated simultaneously with it); in the figure the body-fixed frame is shown in red and labeled by lowercase letters. First rotate around z, then around the new body-fixed y-axis, y′, and finally around z′. Another convention often used is the z-x′-z′ convention, where instead of over the new y-axis the second rotation is over the new x-axis. Also the x-y′-z′′ convention is used.

The right-hand screw rule is practically always followed: the rotation axis is a directed line and a positive rotation is as a cork screw driven into the positive direction of the axis.

Euler angles are used in many different branches of physics and engineering. The present article is written from the point of view of molecular physics, where the objects to be rotated are molecules.

Geometric discussion

In Figure 1 the space-fixed (laboratory) axes are labeled by capital X, Y, and Z and are shown in black. The body to be rotated is not shown, but a system of axes fixed to it is shown in red. One may use any convenient orthonormal frame as a body-fixed frame. Often the body-fixed axes are principal axes, that means that they are eigenvectors of the inertia tensor of the body. Also symmetry axes, when present, may be used. When the body has symmetry axes, the principal axes often coincide with these.

The z-y′-z′ convention will be followed. Initially, the two frames coincide, and the path to a final arbitrary orientation of the body—and its frame—is depicted on Figure 1. The first rotation is around the z-axis, which coincides with the Z-axis. The x- and y-axis move in the circle perpendicular to the z-axis over an angle α. The second rotation is around a circle perpendicular to the y′-axis. The angle is β. It is a great practical advantage of the present convention that the z′-axis has the usual spherical polar coordinates α ≡ φ (longitude angle) and β ≡ θ (colatitude angle) with respect to the space-fixed frame. (Due to this fact the complex conjugate of the m = 0 column of the Wigner D-matrix consists of spherical harmonics). The final rotation is in a circle perpendicular to the z′-axis over an angle γ. From geometric considerations follows that any orientation in space of the body-fixed frame may be obtained.

We write Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{R}(\varphi, \hat{n})} for the rotation matrix that describes a rotation around the unit vector Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \hat{n}} over an angle Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \varphi} . Clearly the three consecutive Euler rotations correspond to rotations around the unit vectors along the body-fixed axes z, y′, and z′ over angles α β, and γ, respectively. Because a matrix acts on a column vector to its right, the order in the matrix product is as in the rightmost term in the following equation. It will be shown that the corresponding matrix product can be written in reverse order (but around fixed, unprimed, axes z, y, z), that is,

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \begin{align} \mathbf{R}(\gamma, \hat{e}_{z'}) \mathbf{R}(\beta, \hat{e}_{y'}) \mathbf{R}(\alpha, \hat{e}_{z})&= \mathbf{R}(\alpha, \hat{e}_{z }) \mathbf{R}(\beta, \hat{e}_{y }) \mathbf{R}(\gamma, \hat{e}_{z}) \\ &= \begin{pmatrix} \cos\alpha & -\sin \alpha & 0 \\ \sin\alpha & \cos \alpha & 0 \\ 0 & 0 & 1 \\ \end{pmatrix} \begin{pmatrix} \cos\beta & 0 & \sin\beta \\ 0 & 1 & 0 \\ -\sin\beta & 0 & \cos\beta \\ \end{pmatrix} \begin{pmatrix} \cos\gamma & -\sin\gamma & 0 \\ \sin\gamma & \cos\gamma & 0 \\ 0 & 0 & 1 \\ \end{pmatrix} \\ &= \begin{pmatrix} \cos\alpha\cos\beta\cos\gamma-\sin\alpha\cos\gamma \;&\; -\cos\alpha\cos\beta\sin\gamma-\sin\alpha\cos\gamma \;&\;\cos\alpha\sin\beta \\ \sin\alpha\cos\beta\cos\gamma+\cos\alpha\sin\gamma \;&\; -\sin\alpha\cos\beta\sin\gamma+\cos\alpha\cos\gamma \;&\; \sin\alpha\sin\beta \\ -\sin\beta\cos\gamma \;&\; \sin\beta\sin\gamma \;&\; \cos\beta \end{pmatrix} \end{align} }


(To be continued)

Algebraic treatment

A proper rotation matrix R can be factorized thus

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{R} = \mathbf{R}_z (\omega_3 ) \; \mathbf{R}_y (\omega_2 ) \; \mathbf{R}_x (\omega_1 ) }

which is referred to as the Euler z-y-x parametrization, or also as

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{R} = \mathbf{R}_z (\alpha) \; \mathbf{R}_y (\beta ) \; \mathbf{R}_z (\gamma ) \quad }

the Euler z-y-z parametrization.

Here the matrices representing rotations around the z, y, and x axis, respectively, over arbitrary angle φ, are

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{R}_z (\varphi ) \equiv \begin{pmatrix} \cos \varphi & -\sin \varphi & 0 \\ \sin \varphi & \cos \varphi & 0 \\ 0 & 0 & 1 \\ \end{pmatrix}, \quad \mathbf{R}_y (\varphi ) \equiv \begin{pmatrix} \cos \varphi & 0 & \sin \varphi \\ 0 & 1 & 0 \\ -\sin \varphi& 0 & \cos \varphi \\ \end{pmatrix}, \quad \mathbf{R}_x (\varphi ) \equiv \begin{pmatrix} 1 & 0 & 0 \\ 0 & \cos \varphi & -\sin \varphi \\ 0 & \sin \varphi & \cos \varphi \\ \end{pmatrix} . }

Proof

First the Euler z-y-x-parametrization will be proved by describing an algorithm for the factorization of R. Consider to that end the matrix product

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{R}_z (\omega_3 ) \, \mathbf{R}_y (\omega_2 ) = \begin{pmatrix} \cos \omega_3 \cos \omega_2 & -\sin \omega_3 & \cos \omega_3 \sin \omega_2 \\ \sin \omega_3 \cos \omega_2 & \cos \omega_3 & \sin \omega_3 \sin \omega_2 \\ -\sin \omega_2 & 0 & \cos \omega_2 \\ \end{pmatrix} \equiv (\mathbf{a}_1 , \mathbf{a}_2 , \mathbf{a}_3 ) . }

The columns of the matrix product are for ease of reference designated by a1, a2, and a3. Note that the multiplication by Rx1) on the right does not affect the first column, so that a1 = r1 (the first column of the matrix to be factorized). Solve Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \omega_2\;} and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \omega_3\;} from the first column of R,

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{a}_1 = \begin{pmatrix} \cos \omega_3 \; \cos \omega_2 \\ \sin \omega_3 \; \cos \omega_2 \\ -\sin \omega_2 \\ \end{pmatrix} = \begin{pmatrix} R_{11} \\ R_{21} \\ R_{31} \\ \end{pmatrix} \equiv \mathbf{r}_1 . }

This is possible. First solve Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \omega_2\;} for Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle -\pi/2 \leq \omega_2 \leq \pi/2} from

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \sin \omega_2 = - R_{31}. \, }

Then solve Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \omega_3\;} for Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle 0 \leq \omega_3 \leq 2 \pi} from the two equations:

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \begin{align} \cos \omega_3 =& {R_{11} \over \cos \omega_2} \\ \sin \omega_3 =& {R_{21} \over \cos \omega_2} . \end{align} }

Knowledge of Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \omega_2\;} and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \omega_3\;} determines the vectors a2 and a3.

Since a1, a2 and a3 are the columns of a proper rotation matrix they form an orthonormal right-handed system. The plane spanned by a2 and a3 is orthogonal to Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{a}_1 \equiv \mathbf{r}_1} and hence the plane contains Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{r}_2} and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{r}_3} . Thus the latter two vectors are a linear combination of the first two,

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle ( \mathbf{r}_2 , \mathbf{r}_3 ) = (\mathbf{a}_2 , \mathbf{a}_3 ) \begin{pmatrix} \cos \omega_1 & -\sin \omega_1 \\ \sin \omega_1 & \cos \omega_1 \\ \end{pmatrix} . }

Since Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{r}_2,\; \mathbf{a}_2,\; \mathbf{a}_3} are known unit vectors we can compute

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \begin{align} \mathbf{a}_2 \cdot \mathbf{r}_2 =& \cos \omega_1 \\ \mathbf{a}_3 \cdot \mathbf{r}_2 =& \sin \omega_1. \end{align} }

These equations give Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \omega_1\;} with Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle 0 \leq \omega_1 \leq 2 \pi} .

Augment the 2×2 matrix to the 3×3 matrix Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{R}_x(\omega_1)} , then

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \begin{align} \mathbf{R} \equiv ( \mathbf{r}_1 , \mathbf{r}_2 , \mathbf{r}_3 ) = ( \mathbf{r}_1 , \mathbf{a}_2 , \mathbf{a}_3 ) \mathbf{R}_x (\omega_1 ) = (\mathbf{a}_1, \mathbf{a}_2, \mathbf{a}_3)\mathbf{R}_x (\omega_1 ) = \mathbf{R}_z (\omega_3 ) \, \mathbf{R}_y (\omega_2 ) \, \mathbf{R}_x (\omega_1 ) . \end{align} }

This concludes the proof of the z-y-x parametrization.

The Euler z-y-z parametrization is obtained by a small modification of the previous proof. Solve Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \omega_2\;} and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \omega_3\;} from Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{r}_3 = \mathbf{a}_3 } (the rightmost multiplication by Rz1) does not affect r3) and then consider

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle ( \mathbf{r}_1, \; \mathbf{r}_2 ) = (\mathbf{a}_1, \; \mathbf{a}_2 ) \begin{pmatrix} \cos \omega_1 & -\sin \omega_1 \\ \sin \omega_1 & \cos \omega_1 \\ \end{pmatrix} }

or, Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{a}_1 \cdot \mathbf{r}_1 = \cos \omega_1 \; , \quad \mathbf{a}_2 \cdot \mathbf{r}_1 = \sin \omega_1 . } The equation for R can be written as

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle ( \mathbf{r}_1 , \mathbf{r}_2 , \mathbf{r}_3 ) = ( \mathbf{a}_1 , \mathbf{a}_2 , \mathbf{r}_3 ) \, \mathbf{R}_z (\omega_1 ) = \mathbf{R}_z (\omega_3 ) \, \mathbf{R}_y (\omega_2 ) \, \mathbf{R}_z (\omega_1 ) \; , }

which proves the Euler z-y-z parametrization. It is common in this parametrization to write

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \omega_3 = \alpha,\quad \omega_2 = \beta, \quad \omega_1 = \gamma. }


(To be continued)