liens=Import["/Users/msoret/Desktop/data_pavage_octo/liensPBC2.dat"];
ppts=Import["/Users/msoret/Desktop/data_pavage_octo/PtsPBC2.dat"];
l=Length[liens];
ll=Length[ppts];

cut=0.51;


RawHamFlux=Reap[Do[{rat=Sqrt[2]*5.;
dx=ppts[[liens[[m,2]],1]]-ppts[[liens[[m,1]],1]];
dy=ppts[[liens[[m,2]],2]]-ppts[[liens[[m,1]],2]];

If[(liens[[m,1]]<liens[[m,2]])&&(Abs[dx]<cut)&&(Abs[dy]<cut),(*Print["Cond  "," ",dx," ",dy," ",liens[[m,1]]," ",liens[[m,2]]];*)
x1=ppts[[liens[[m,1]],1]];
x2=ppts[[liens[[m,2]],1]];
y1=ppts[[liens[[m,1]],2]];
y2=ppts[[liens[[m,2]],2]];
Sow[{{liens[[m,1]],liens[[m,2]]},-Exp[2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2]}];
Sow[{{liens[[m,2]],liens[[m,1]]},-Exp[-2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2]}];];

If[(liens[[m,1]]<liens[[m,2]])&&(dx>cut)&&(Abs[dy]<cut),(*1 proche du bord gauche, lien 1->2 croisant bord gauche*)
x1=ppts[[liens[[m,1]],1]];
x2=ppts[[liens[[m,2]],1]]-1;
y1=ppts[[liens[[m,1]],2]];
y2=ppts[[liens[[m,2]],2]];
Sow[{{liens[[m,1]],liens[[m,2]]},-Exp[2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2+2*I*pi*Phi*rat*rat*y2]}];
Sow[{{liens[[m,2]],liens[[m,1]]},-Exp[-2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2-2*I*pi*Phi*rat*rat*y2]}];];

If[(liens[[m,1]]<liens[[m,2]])&&(dx<-cut)&&(Abs[dy]<cut),(*1 proche du bord droit, lien 1->2 croisant bord droit*)
x1=ppts[[liens[[m,1]],1]]-1;
x2=ppts[[liens[[m,2]],1]];
y1=ppts[[liens[[m,1]],2]];
y2=ppts[[liens[[m,2]],2]];
Sow[{{liens[[m,1]],liens[[m,2]]},-Exp[2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2-2*pi*Phi*I*rat*rat*y1]}];
Sow[{{liens[[m,2]],liens[[m,1]]},-Exp[-2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2+2*pi*Phi*I*rat*rat*y1]}];];

If[(liens[[m,1]]<liens[[m,2]])&&(Abs[dx]<cut)&&(dy>cut),(*1 proche du bord bas, lien 1->2 croisant bord bas*)
x1=ppts[[liens[[m,1]],1]];
x2=ppts[[liens[[m,2]],1]];
y1=ppts[[liens[[m,1]],2]];
y2=ppts[[liens[[m,2]],2]]-1;
Sow[{{liens[[m,1]],liens[[m,2]]},-Exp[2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2]}];
Sow[{{liens[[m,2]],liens[[m,1]]},-Exp[-2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2]}];];

If[(liens[[m,1]]<liens[[m,2]])&&(Abs[dx]<cut)&&(dy<-cut),(*1 proche du bord haut, lien 1->2 croisant bord haut*)
x1=ppts[[liens[[m,1]],1]];
x2=ppts[[liens[[m,2]],1]];
y1=ppts[[liens[[m,1]],2]]-1;
y2=ppts[[liens[[m,2]],2]];
Sow[{{liens[[m,1]],liens[[m,2]]},-Exp[2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2]}];
Sow[{{liens[[m,2]],liens[[m,1]]},-Exp[-2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2]}];];

If[(liens[[m,1]]<liens[[m,2]])&&(dx>cut)&&(dy>cut),(*1 proche du coin bas gauche, lien 1->2 croisant bords gauche et bas*)
x1=ppts[[liens[[m,1]],1]];
x2=ppts[[liens[[m,2]],1]]-1;
y1=ppts[[liens[[m,1]],2]];
y2=ppts[[liens[[m,2]],2]]-1;
Sow[{{liens[[m,1]],liens[[m,2]]},-Exp[2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2+2*I*pi*Phi*rat*rat*(y2+1)]}];
Sow[{{liens[[m,2]],liens[[m,1]]},-Exp[-2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2-2*I*pi*Phi*rat*rat*(y2+1)]}];];

If[(liens[[m,1]]<liens[[m,2]])&&(dx<-cut)&&(dy<-cut),(*1 proche du coin haut droit, lien 1->2 croisant bords haut et droit*)
x1=ppts[[liens[[m,1]],1]]-1;
x2=ppts[[liens[[m,2]],1]];
y1=ppts[[liens[[m,1]],2]]-1;
y2=ppts[[liens[[m,2]],2]];
Sow[{{liens[[m,1]],liens[[m,2]]},-Exp[2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2-2*I*pi*Phi*rat*rat*(y1+1)]}];
Sow[{{liens[[m,2]],liens[[m,1]]},-Exp[-2*I*pi*Phi*rat*rat*(y2-y1)*(x2+x1)/2+2*I*pi*Phi*rat*rat*(y1+1)]}];];

},{m,1,l}]][[2,1]];

tmp=Split[Sort[RawHamFlux],#1[[1]]==#2[[1]]&];
RawHamFlux=Table[tmp[[i,1,1]]->Tr[Transpose[tmp[[i]]][[2]]],{i,1,Length[tmp]}];

hamf=SparseArray[RawHamFlux/.{pi->Pi}];

hamf1p4=hamf1.hamf1.hamf1.hamf1;

hn4=Normal[hamf4];

hn1p4=Normal[hamf1p4];

hn=Normal[hamf];

Tr[Complex[hamf].hamf]

Det[hamf]

ListDet=Reap[
Do[{hamfi=SparseArray[RawHamFlux/.{pi->Pi,Phi->(i-1)/288.}];
Sow[Flatten[{(i-1)/288,Det[hamfi]}]]},{i,1,289}]][[2,1]];

ListLinePlot[Chop[ListDet],PlotRange->{{0.,1.},{-20000,20000}}]

N[99/288]

hamf04=SparseArray[RawHamFlux/.{pi->Pi,Phi->0.4}];

Det[hamfc]

Det[hamf04]

Plot[

hnc=Conjugate[hn];

hn1=Normal[hamf1];

Simplify[Rationalize[Tr[hn.hnc]]]

Simplify[Rationalize[hn.hncc]][[1]]

Rationalize[Det[hn1]]

hn1p4simple=Simplify[Rationalize[hn1p4]];

MatrixForm[hn1p4simple]

Simplify[ExpandAll[Rationalize[Tr[hn1p4]]]]

hn4simple[[3]]

hn[[56,1]]

sp=Eigenvalues[hamf];

liens[[1]]

Simplify[ExpandAll[Rationalize[Tr[hn4]/4]]]

1837+189 (E^(-2 I Phi pi))+189 (E^(2 I Phi pi))+49 (E^(-4 I Phi pi))+49 (E^(4 I Phi pi))+(E^(-574 I Phi pi))+(E^(574 I Phi pi))

2*12*12

%-315/.Phi->0

liens

rat

rat*rat

r=Sqrt[2]*5

r*r

rn=Sqrt[2]*n

rn*rn