3 - D Rotations

m0=DiagonalMatrix[{1,1,1}];
m1={{0,0,0},{0,0,-1},{0,1,0}};
m2={{0,0,1},{0,0,0},{-1,0,0}};
m3={{0,-1,0},{1,0,0},{0,0,0}};
MatrixForm /@ {m0,m1,m2,m3}

comm[a_,b_]=(a.b-b.a)

comm[m1,m1] //MatrixForm

comm[m1,m2] ==m3

comm[m1,m3] ==-m2

Series[ Exp[-θ xm1]  ,{θ,0,1}]

rx=m0- θ m1;
ry=m0- θ m2;
rz=m0- θ m3;
MatrixForm /@ {rx,ry,rz}

vec={x,y,z};
rx.vec
ry.vec
rz.vec

x rotation

rotx={{1,0,0},{0,Cos[θ],+Sin[θ]},{0,-Sin[θ],Cos[θ]}};
rotx //MatrixForm

tmp=rotx.vec //MatrixForm

Series[#,{θ,0,1}]& /@ tmp

Series[#,{θ,0,1}]& /@ tmp //Normal

rx.vec //MatrixForm

3 - D Rotations: 2x2

s0={{1,0},{0,1}};
s1={{0,1},{1,0}};
s2={{0,-I},{I,0}};
s3={{1,0},{0,-1}};
MatrixForm /@ {s0,s1,s2,s3}

comm[s1,s1]

comm[s1,s2]/2 ==I s3

vec2={{z,x-I y},{x+I y,-z}};
vec2 //MatrixForm

rrx=s0 + I s1 θ/2;
rry=s0 + I s2 θ/2;
rrz=s0 + I s3 θ/2;
MatrixForm /@ {rrx,rry,rrz}

ConjugateTranspose[s2]

{{rrx,ConjugateTranspose[rrx]//ComplexExpand } }//MatrixForm

{{rry,ConjugateTranspose[rry]//ComplexExpand } }//MatrixForm

{{rrz,ConjugateTranspose[rrz]//ComplexExpand } }//MatrixForm

x rotation

(rrx.vec2.ConjugateTranspose[rrx]//ComplexExpand )/.{θ^2->0}  //MatrixForm

vec2 //MatrixForm

rx.vec

y rotation

(rry.vec2.ConjugateTranspose[rry]//ComplexExpand )/.{θ^2->0}  //MatrixForm

vec2 //MatrixForm

ry.vec

z rotation

(rrz.vec2.ConjugateTranspose[rrz]//ComplexExpand )/.{θ^2->0}  //MatrixForm

vec2 //MatrixForm

rz.vec