The function rotation_abc calculates the matrix R_abc that rotates abc variables around the {1,1,1}-axis in abc-space with arbitrary angle theta.
Using the definition
g_k = 1/3 + (2/3)*cos(theta - k*2*pi/3), k=0,1,2 (phases a, b, c)it takes the form
[g_0, g_2, g_1] R_abc(theta) = [g_1, g_0, g_2] [g_2, g_1, g_0]and has the real eigenvector
{1, 1, 1}/sqrt(3)in the abc reference-frame.
Coefficient matrices of the form (symmetrical systems)
[x, xm, xm] X = [xm, x, xm] [xm, xm, x ]are invariant under transformations R_abc
The connection between R_abc and R_dqo is the following
R_abc = P0'*R_dqo*P0.with P0 the orthogonal transform 'Transforms.P0'.
function rotation_abc extends Icons.Function; input SI.Angle theta "rotation angle"; output Real[3, 3] R_abc "rotation matrix"; end rotation_abc;