# Irreducible representations for the symmetry group $T_d$

I am trying to get the explicit two dimensional irreducible representation matrices for the symmetry group $T_d$. I need the matrix representation for each element in the group. Are there any Mathematica packages or functions which will do this job? I know that for three dimensional representation I can use the function "SpaceRepresentation".

• FiniteGroupData["Tetrahedral", "MatrixRepresentation"]? Jun 6 '16 at 15:38
• The package and articles at "Noncommutative Algebra Package and Systems" might be of interest. Jun 6 '16 at 17:18
• @J.M. FiniteGroupData will provide 4 dimensional representation. I am interested in getting two dimensional irreducible representation. I figured out that a similar problem has been resolved in the following link. But I am having issues in extending the same for the basis with of 2 dimension but with 3 variables. mathematica.stackexchange.com/questions/10671/…
– Dsb
Jun 6 '16 at 19:52
• Does the tetrahedral group actually have a 2D representation? I can see 3D, but not 2D. (Admittedly, it has been a while since I did group theory.) Jun 7 '16 at 8:30
• It has two 1D, two 3D and one 1D representation. Here is a quick reference: symmetry.jacobs-university.de/cgi-bin/…
– Dsb
Jun 7 '16 at 13:10

Here is the solution:
(*Elements of the group Td**)
(*Four corners of the tetrhedra**)
{
{1, 1, 1},
{1, -1, -1},
{-1, -1, 1},
{-1, 1, -1},
(*Four faces of the tetrahedra**)
(-1/3) {1, 1, 1},
(-1/3) {-1, 1, -1},
(-1/3) {-1, -1, 1},
(-1/3) {1, -1, -1}
};
E0 = IdentityMatrix;
C31 = RotationMatrix[120 Degree, (-1/3) {1, 1, 1}];
C32 = RotationMatrix[120 Degree, (-1/3) {-1, 1, -1}];
C33 = RotationMatrix[120 Degree, (-1/3) {-1, -1, 1}];
C34 = RotationMatrix[120 Degree, (-1/3) {1, -1, -1}];
C61 = RotationMatrix[240 Degree, (-1/3) {1, 1, 1}];
C62 = C32.C32;
C63 = C33.C33;
C64 = C34.C34;
C21 = RotationMatrix[180 Degree, {0, 0, 1}];
C22 = RotationMatrix[180 Degree, {0, 1, 0}];
C23 = RotationMatrix[180 Degree, {1, 0, 0}];
r1 = ReflectionMatrix[Cross[{1, 1, 1}, {1, -1, -1}]];
r2 = ReflectionMatrix[Cross[{1, 1, 1}, {-1, 1, -1}]];
r3 = ReflectionMatrix[Cross[{1, 1, 1}, {-1, -1, 1}]];
r4 = ReflectionMatrix[Cross[{-1, -1, 1}, {1, -1, -1}]];
r5 = ReflectionMatrix[Cross[{-1, -1, 1}, {-1, 1, -1}]];
r6 = ReflectionMatrix[Cross[{-1, 1, -1}, {1, -1, -1}]];
s1 = C23.r1;
s2 = C22.r2;
s3 = C21.r3;
s4 = C22.r4;
s5 = C23.r5;
s6 = C21.r6;
Td = {E0, r1, r2, r3, r4, r5, r6, C31, C61, C32, C62, C33, C63, C34, C64, C21, C22, C23, s1, s2, s3, s4, s5, s6};
f1[{x_, y_, z_}] := 2 z^2 - x^2 - y^2
f2[{x_, y_, z_}] := Sqrt(x^2 - y^2)
basis = {f1, f2};
invTd = Inverse /@ Td;
erep = SolveAlways[Flatten@Table[basis[[i]][invTd[[k]].{x, y, z}] == Sum[basis[[j]][{x, y, z}] a[k, j, i], {j, 2}], {i, 2}, {k, 24}], {x, y, z}];

MatrixForm /@ Table[a[k, i, j], {k, 24}, {i, 2}, {j, 2}] /. erep

• You can use Transpose[] instead of Inverse[], since the matrices involved are orthogonal. But, your multiplication should be using . (Dot[]) instead of * (Times[]). Jun 7 '16 at 14:36
• @J.M. Thanks for catching the error. Updated code will fetch the desired representation matrices.
– Dsb
Jun 7 '16 at 18:24