In[]:=
deploy
Fri 13 Nov 2020 14:19:53
In[]:=
d=20;​​(*Partitionsmatrixintoblocks{{axa,axb},{bxa,bxb}}*)​​partitionMatrix[mat_,{a_,b_}]:=Module[{},​​Assert[a+bLength@mat];​​Assert;[a+bLength@mat];​​Internal`PartitionRagged[mat,{{a,b},{a,b}}]​​];​​​​sym2[x_]:=x.Transpose[x];​​{{A,C0},{C1,B}}=partitionMatrix[sym2[RandomReal[{-1,1},{d,d}]],{d/2,d/2}];​​D1=Inverse[C0].B.Inverse[Inverse[C0].B+Inverse[A.C0]];​​D2=Inverse[B.Inverse[C0]+(C0.Inverse[A])].C0.Inverse[A];​​Eigenvalues[D1]​​Eigenvalues[D2]
Out[]=
{0.99562,0.987513,0.987338,0.984558,0.969035,0.957924,0.926906,0.919532,0.876098,0.777917}
Out[]=
{0.925708,0.861962,0.703144,0.503797,0.261065,0.228301,0.185483,0.0297438,0.0147165,0.00115317}