In the following code, I define a set of matrices. Then, I define a function that calculates the commutation relation relation between these matrices
Subscript[T, 1] = 1/2 ({
{0, 1, 0},
{1, 0, 0},
{0, 0, 0}
});
Subscript[T, 2] = 1/2 ({
{0, -I, 0},
{I, 0, 0},
{0, 0, 0}
});
Subscript[T, z
] = 1/2 ({
{1, 0, 0},
{0, -1, 0},
{0, 0, 0}
});
Subscript[V, 1
] = 1/2 ({
{0, 0, 1},
{0, 0, 0},
{1, 0, 0}
});
Subscript[V, 2
] = 1/2 ({
{0, 0, -I},
{0, 0, 0},
{I, 0, 0}
});
Subscript[U, 1 ] = 1/2 ({
{0, 0, 0},
{0, 0, 1},
{0, 1, 0}
});
Subscript[U, 2 ] = 1/2 ({
{0, 0, 0},
{0, 0, -I},
{0, I, 0}
});
Y = 1/3 ({
{1, 0, 0},
{0, 1, 0},
{0, 0, -2}
});
Subscript[T, a] = Subscript[T, 1] + I Subscript[T, 2];
Subscript[T, b] = Subscript[T, 1] - I Subscript[T, 2];
Subscript[V, a] = Subscript[V, 1] + I Subscript[V, 2];
Subscript[V, b] = Subscript[V, 1] - I Subscript[V, 2];
Subscript[U, a] = Subscript[U, 1] + I Subscript[U, 2];
Subscript[U, b] = Subscript[U, 1] - I Subscript[U, 2];
generators = {Subscript[T, a], Subscript[T, b], Subscript[T, z],
Subscript[U, a], Subscript[U, b], Subscript[V, a], Subscript[V, b],
Y};
commutator[x_, y_] = x.y - y.x;
commutator[Subscript[T, a],Subscript[T, b]]
Now, the commutator between the matrix $T_a$ and $T_b$ turns out to be 2$T_z$. It explicitly calculates the result as expected but I want it to write in terms of my variables.
I wish to write 16 such commutation relations in a table column. I'm using the additional code below to generate the table of matrices. I wish to replace them with my variables.
generators = {Subscript[T, a], Subscript[T, b], Subscript[T, z],
Subscript[U, a], Subscript[U, b], Subscript[V, a], Subscript[V, b],
Y};
relationsTable =
Table[MatrixForm[commutator[i, j]], {i, generators}, {j,
generators}];
header1 =
Prepend[relationsTable, {"\!\(\*SubscriptBox[\(T\), \(a\)]\)",
"\!\(\*SubscriptBox[\(T\), \(b\)]\)",
"\!\(\*SubscriptBox[\(T\), \(z\)]\)",
"\!\(\*SubscriptBox[\(U\), \(a\)]\)",
"\!\(\*SubscriptBox[\(U\), \(b\)]\)",
"\!\(\*SubscriptBox[\(V\), \(a\)]\)",
"\!\(\*SubscriptBox[\(V\), \(b\)]\)", "Y"}];
column1 =
MapThread[
Prepend, {header1, {"", "\!\(\*SubscriptBox[\(T\), \(a\)]\)",
"\!\(\*SubscriptBox[\(T\), \(b\)]\)",
"\!\(\*SubscriptBox[\(T\), \(z\)]\)",
"\!\(\*SubscriptBox[\(U\), \(a\)]\)",
"\!\(\*SubscriptBox[\(U\), \(b\)]\)",
"\!\(\*SubscriptBox[\(V\), \(a\)]\)",
"\!\(\*SubscriptBox[\(V\), \(b\)]\)", "Y"}}];
Grid[column1, Frame -> All]
How do i go about replacing the elemts of this table with the variables that I've defined above?
Any help is appreciated!
generators
? - is it the list of matrices that you've written? Is the commutator defined asA.B - B.A
? What is"Y"
? What areheader1
andcolumn
supposed to be? Why do you say there are 16 such commutation relations when you have 7 matrices defined, and therefore there are 28 different possible pairs of matrices with which to form commutators? $\endgroup$Tr[ConjugateTranspose[a].b]
, and use that fact to select from the symbols. I will work on this. $\endgroup$