Example 3.6: For kappa defined by 3x3 matrices

   A = -diag (1,2,3),      B = Id,    C =D = 0
   
we compute the dimension of Vxi (see beginnin of Section 3) at the singular point 
and on the coordinate planes.

SetDirectory["~/writing/WIP/KappaLib/"];
<<KappaLib.m

Fresnel surface

Ax =- DiagonalMatrix[{1,2,3}];
Bx = DiagonalMatrix[{1,1,1}];
Cx = 0 IdentityMatrix[3];
Dx = 0 IdentityMatrix[3];

kappa = emABCDToKappa[Ax,Bx,Cx,Dx];

xi={xi0,xi1,xi2,xi3};
fresnel = Simplify[emKappaToFresnel[kappa, xi]];

Compute matrix representation of  ast o L_xi where ast is Hodge operator for Euclidean metric.

Mat[xx_] := Table[

Sum[
1/2  xx[[r]] xx[[l]]  emReadNormal[kappa,l,m,c,d] Signature[{r,c,d,p}],{r,1,4},{l,1,4},{c,1,4},{d,1,4},{f,1,4}
]

,{m,1,4},{p,1,4}
];

Define singular point

xi={1,(Sqrt[(3/2)]),0,(1/(Sqrt[2]))};

QQ=Mat[xi];
QQ//MatrixForm

Case 1: Check that Dim V_xi = 1 when xi1= 0

Case1=Mat[{1,0,xi2,xi3}];
Case1//MatrixForm
Union[Flatten[Case1-Transpose[Case1]]]

Eigen1 = Simplify[Eigenvalues[Case1]/.{xi0->1, xi1->0}]

FullSimplify[fresnel/.{xi0->1,xi1->0}]

Subcase A:  (-1+(xi2^2)+(xi3^2)) = 0

tmp=Simplify[Eigen1/.{xi3^2->1-xi2^2,xi3^4->(1-xi2^2)^2}]

Plot[%,{xi2,0,1}]

Subcase B:  (-6+2 (xi2^2)+3 (xi3^2))==0

xi2 = 0..sqrt(3)
xi3 = 0..sqrt(2)

tmp=Simplify[Eigen1/.{xi3^2->(6-2xi2^2)/3, xi3^4->((6-2xi2^2)/3)^2}]

Plot[tmp,{xi2,0,Sqrt[3]}]

Case 2: Check that Dim V_xi = 1 when xi2 = 0 except at the singular point where dim V_xi = 2

Case2=Mat[{1,xi1,0,xi3}];
Case2//MatrixForm
Union[Flatten[Case2-Transpose[Case2]]]

Eigen2 = Simplify[Eigenvalues[Case2]/.{xi0->1, xi2->0}]

FullSimplify[fresnel/.{xi0->1,xi2->0}]

Subcase A: (-2+(xi1^2)+(xi3^2))=0

xi1=0..Sqrt(2)
xi3=0..Sqrt(2)

tmp=Simplify[Eigen2/.{xi3^2->2-xi1^2,xi3^4->(2-xi1^2)^2}]

Plot[tmp,{xi1,0,Sqrt[2]}]

Simplify[Eigen2/.{xi1->Sqrt[3/2],xi3->Sqrt[1/2]}]

Sqrt[3/2]//N

Subcase A:  (-3+(xi1^2)+3 (xi3^2))=0

xi1 = 0..sqrt(3)
xi3 = 0..1

tmp=Simplify[Eigen2/.{xi3^2->(3-xi1^2)/3, xi3^4->((3-xi1^2)/3)^2}]

Plot[tmp,{xi1,0,Sqrt[3]}]

Case 3: Check that Dim V_xi = 1 when xi3 = 0

Case=Mat[{1,xi1,xi2,0}];
Case//MatrixForm
Union[Flatten[Case-Transpose[Case]]]

Eigen = Simplify[Eigenvalues[Case]]

FullSimplify[fresnel/.{xi0->1,xi3->0}]

Subcase A:(-3+(xi1^2)+(xi2^2))=0

xi1=0..Sqrt(3)
xi2=0..Sqrt(3)

tmp=Simplify[Eigen/.{xi2^2->3-xi1^2,xi2^4->(3-xi1^2)^2}]

Plot[tmp,{xi1,0,Sqrt[2]}]

Subcase A:  (-2+(xi1^2)+2 (xi2^2))==0

xi1 = 0..sqrt(2)
xi2 = 0..1

tmp=Simplify[Eigen/.{xi2^2->(2-xi1^2)/2, xi2^4->((2-xi1^2)/2)^2}]

Plot[tmp,{xi1,0,Sqrt[2]}]