0

I'm trying to calculate the eigenvalues of the following system which originates from here (Appendix B): \begin{align} i{\xi}_{0}\hat{\tilde{\gamma}}_{ij} &= 2i\tilde{\gamma}_{k(i}\xi_{j)}\hat{\beta}^{k} - 2\alpha \hat{\tilde{A}}_{ij} - \frac{2i}{3}\tilde{\gamma}_{ij}\xi_{k}\hat{\beta}^{k}\,, \\ i{\xi}_{0}\hat{\chi}&=\frac{2}{3}\chi\left(\alpha\hat{K}-i\xi_{k}\hat{\beta}^{k}\right) \, , \\ i{\xi}_{0}\hat{\phi} &= -\alpha \hat{K}_{\phi} \,, \\ i{\xi}_{0}\hat{K} &= \hat{\alpha} + \frac{3b(x)\alpha}{4(1+b(x))}\left(\frac{\xi^{l}\xi^{k}\hat{\tilde{\gamma}}_{kl}}{\chi} - \frac{\tilde{\gamma}^{jk}\hat{\tilde{\gamma}}_{jk}}{2}\right) + i\alpha\chi\xi_{i}\hat{\hat{\Gamma}}^{i} - \left(\frac{2}{\chi}\hat{\chi}-\frac{\tilde{\gamma}^{ij}\hat{\tilde{\gamma}}_{ij}}{2}\right)\frac{\alpha(4+b(x))}{4(1+b(x))}\,, \\ i{\xi}_{0}\hat{K}_{\phi} &= - \alpha\hat{\phi}\,, \\ i{\xi}_{0}\hat{\Theta} &= - \frac{\alpha}{2(1+b(x))}\left(\frac{2}{\chi}\hat{\chi}-\frac{\tilde{\gamma}^{ij}\hat{\tilde{\gamma}}_{ij}}{2}\right) + \frac{i\alpha\chi\xi_{i}\hat{\hat{\Gamma}}^{i}}{2} + \frac{b(x)\alpha}{2(1+b(x))}\left(\frac{\xi^{l}\xi^{k}\hat{\tilde{\gamma}}_{kl}}{\chi} - \frac{\tilde{\gamma}^{jk}\hat{\tilde{\gamma}}_{jk}}{2}\right) \,,\\ i{\xi}_{0}\hat{\tilde{A}}_{ij} &= \left(\xi_{i}\xi_{j}-\frac{1}{3}\frac{\tilde{\gamma}_{ij}}{\chi}\right)\left(\chi\hat{\alpha}-\frac{\alpha}{2}\hat{\chi}\right) + i\alpha\chi\left(\tilde{\gamma}_{k(i}\xi_{j)}\hat{\hat{\Gamma}}^{k} - \frac{\tilde{\gamma}_{ij}\xi_{k}\hat{\hat{\Gamma}}^{k}}{3}\right) + \frac{1}{2}\alpha\left(\hat{\tilde{\gamma}}_{ij}-\frac{\tilde{\gamma}_{ij}\tilde{\gamma}^{kl}\hat{\tilde{\gamma}}_{kl}}{3}\right) \,,\\ i{\xi}_{0}\hat{\hat{\Gamma}}^{i} &= \frac{i\alpha}{\chi(1+b(x))}\left(-\frac{4}{3}\xi^{i}\hat{K}-2\chi b(x)\xi_{j}\hat{\tilde{A}}^{ij}+2\xi^{i}\hat{\Theta}\right) - \frac{1}{\chi}\left(\hat{\beta}^{i}+\frac{1}{3}\xi^{i}\xi_{l}\hat{\beta}^{l}\right) \,,\\ i{\xi}_{0}\hat{\alpha} &= -\frac{2\alpha}{1+a(x)}\left(\hat{K}-2\hat{\Theta}\right) \,,\\ i{\xi}_{0}\hat{\beta}^{i} &= \frac{3}{4(1+a(x))}\hat{\hat{\Gamma}}^{i} - \frac{ia(x)}{1+a(x)}\alpha\xi^{i}\hat{\alpha} \,. \end{align} The right hand side gives in matrix notation: \begin{equation} \begin{pmatrix} 0&\hat{\tilde{\gamma}}_{ef} & \hat{\chi} & \hat{\tilde{A}}_{cd} & \hat{K} & \hat{\Theta} & \hat{\hat{\Gamma}}^{g} & \hat{\alpha} & \hat{\beta}^{h} & \hat{\phi} & \hat{K}_{\phi} \\ \hat{\tilde{\gamma}}_{ij} & 0 & 0 & -2\alpha\delta_{i}^{c}\delta_{j}^{d} & 0 & 0 & 0 & 0 & 2i\tilde{\gamma}_{h(i}\xi_{j)}-\frac{2i}{3}\tilde{\gamma}_{ij}\xi_{h} & 0 & 0 \\ \hat{\chi} & 0 & 0 & 0 & \frac{2}{3}\chi\alpha & 0 & 0 & 0 & -\frac{2i}{3}\chi\xi_{h} & 0 & 0 \\ \hat{\tilde{A}}_{ab} & \frac{1}{2}\alpha\left(\delta_{a}^{e}\delta_{b}^{f}-\frac{\tilde{\gamma}_{ab}\tilde{\gamma}^{ef}}{3}\right) & -\frac{\alpha}{2}(\xi_{a}\xi_{b}-\frac{1}{3}\frac{\tilde{\gamma}_{ab}}{\chi}) & 0 & 0 & 0 & i\alpha\chi\left(\tilde{\gamma}_{g(a}\xi_{b)}-\frac{\tilde{\gamma}_{ab}\xi_{g}}{3}\right) & \chi(\xi_{a}\xi_{b}-\frac{1}{3}\frac{\tilde{\gamma}_{ab}}{\chi}) & 0 & 0 & 0 \\ \hat{K} & \frac{3b(x)\alpha}{4(1+b(x))}\left(\frac{\xi^{e}\xi^{f}}{\chi}-\frac{\tilde{\gamma}^{ef}}{2}\right) + \frac{\tilde{\gamma}^{ef}}{2}\frac{\alpha(4+b(x))}{4(1+b(x))} & -\frac{2}{\chi}\frac{\alpha(4+b(x))}{4(1+b(x))} & 0 & 0 & 0 & i\alpha\chi\xi_{g} & 1 & 0 & 0 & 0 \\ \hat{\Theta} & \frac{\alpha}{2(1+b(x))}\frac{\tilde{\gamma}^{ef}}{2} + \frac{b(x)\alpha}{2(1+b(x))}\left(\frac{\xi^{e}\xi^{f}}{\chi}-\frac{\tilde{\gamma}^{ef}}{2}\right) & -\frac{\alpha}{2(1+b(x))}\frac{2}{\chi} & 0 & 0 & 0 & \frac{i\alpha\chi\xi_{g}}{2} & 0 & 0 & 0 & 0 \\ \hat{\hat{\Gamma}}^{k} & 0 & 0 & \frac{i\alpha}{\chi(1+b(x))}(-2\chi b(x)\xi_{d}\delta_{c}^{k}) & \frac{i\alpha}{\chi(1+b(x))}\frac{-4\xi^{k}}{3} & \frac{i\alpha}{\chi(1+b(x))}2\xi^{k} & 0 & 0 & -\frac{1}{\chi}\left(\delta^{k}_{h} + \frac{\xi^{k}\xi_{h}}{3}\right) & 0 & 0 \\ \hat{\alpha} & 0 & 0 & 0 & -\frac{2\alpha}{1+a(x)} & \frac{4\alpha}{1+a(x)} & 0 & 0 & 0 & 0 & 0 \\ \hat{\beta}^{l} & 0 & 0 & 0 & 0 & 0 & \frac{3}{4(1+a(x))}\delta^{l}_{g} & -\frac{ia(x)}{1+a(x)}\alpha\xi^{l} & 0 & 0 & 0 \\ \hat{\phi} & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & -\alpha \\ \hat{K}_{\phi} & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & -\alpha & 0 \end{pmatrix} \end{equation} I typed the variables such that it is easier to read. $\tilde{\gamma}_{ij}$ is the conformal metric with $\chi$ the conformal factor, $\xi_{i}$ is a arbitrary vector with unit vector with respect to the induced three metric $\gamma_{ij}$.

However, if I feed this matrix to Mathematica using the xAct package, I get an error saying that it found inhomogeneous indices which I don't know from where they originate.

How I implemented this in Mathematica is by doing the following.

packageList["xAct"] = {"xAct`xPerm`","xAct`xTensor`","xAct`xPert`","xAct`Invar`","xAct`xCoba`","xAct`SymManipulator`","xAct`xTras`","xAct`TexAct`","xAct`xPand`"};
System`$PrePrint = xAct`xTensor` ScreenDollarIndices;
xAct`xTensor`$DefInfoQ = False;
xAct`xTensor`$CovDFormat = "Prefix";

Next, we define a three-dimensional manifold $M$ and a metric $\gamma_{ij}$:

DefManifold[M, 3, IndexRange[a, m]];

DefMetric[+1, gamma[-a, -b], cd, SymbolOfCovD -> {"|", "D"}, PrintAs -> "[Gamma]"];

On top of that, we define a conformal metric $\tilde{\gamma}_{ij} =\chi\gamma_{ij}$ which I define with a bar (instead of a tilde).

DefTensor[chi[], M, PrintAs -> "\[Chi]"]
DefMetric[+1, 
 gammabar[-a, -b], cdbar, {",", 
  "\!\(\*OverscriptBox[\(D\), \(_\)]\)"}, 
 ConformalTo -> {gamma[-a, -b], chi[]}, 
 PrintAs -> "\!\(\*OverscriptBox[\(\[Gamma]\), \(_\)]\)"]

DefTensor[[Alpha][], M] DefTensor[[Beta][a], M]

DefScalarFunction[p, PrintAs -> "a"];

DefScalarFunction[q, PrintAs -> "b"]; DefTensor[x[], M];

As an illustration, we define the unit vector $\xi_{i}$ as follows, together with a rule stating that its length is $1$.

DefTensor[xi[a], M, PrintAs -> "\[Xi]"]
xi /: xi[-a_] xi[a_] := 1

We are now ready to define the matrix

mat1 = Table[Table[0, {10}], {10}];
mat1[[1, 
   3]] = -2 \[Alpha][] gammabar[-i, c] gammabar[-j, 
    d](*delta[-i,c]delta[-j,d]*);
mat1[[1, 8]] = 
  2 I Symmetrize[gammabar[-h, -i] xi[-j], {-i, -j}] - 
   2 I/3 gammabar[-i, -j] xi[-h];
mat1[[2, 4]] = 2/3 chi[] \[Alpha][];
mat1[[2, 8]] = -2 I/3 chi[] xi[-h];
mat1[[3, 1]] = 
  1/2 \[Alpha][] (delta[-a, e] delta[-b, f] - 
     1/3 gammabar[-a, -b] gammabar[e, f]);
mat1[[3, 
   2]] = -\[Alpha][]/
    2 (xi[-a] xi[-b] - 1/(3 chi[]) gammabar[-a, -b]);
mat1[[3, 6]] = 
  I \[Alpha][] chi[] (Symmetrize[gammabar[-g, -a] xi[-b], {-a, -b}] - 
     1/3 gammabar[-a, -b] xi[-g]);
mat1[[3, 7]] = chi[] (xi[-a] xi[-b] - 1/(3 chi[]) gammabar[-a, -b]);
mat1[[4, 1]] = 
  3 q[x[]] \[Alpha][]/(4 (1 + q[x[]])) (1/chi[] xi[e] xi[f] - 
      1/2 gammabar[e, f]) + 
   1/2 gammabar[e, f] \[Alpha][] (4 + q[x[]])/(4 (1 + q[x[]]));
mat1[[4, 2]] = -2/chi[] \[Alpha][] (4 + q[x[]])/(4 (1 + q[x[]]));
mat1[[4, 6]] = I \[Alpha][] chi[] xi[-g];
mat1[[4, 7]] = 1;
mat1[[5, 1]] = \[Alpha][]/(2 (1 + q[x[]])) gammabar[e, f]/2 + 
   q[x[]] \[Alpha][]/(2 (1 + q[x[]])) (xi[e] xi[f]/chi[] - 
      gammabar[e, f]/2);
mat1[[5, 2]] = -\[Alpha][]/(2 (1 + q[x[]])) 2/chi[];
mat1[[5, 6]] = I \[Alpha][] chi[] xi[-g]/2;
mat1[[6, 3]] = 
  I \[Alpha][]/(chi[] (1 + q[x[]])) (-2 chi[] q[x[]] xi[-d] delta[
      k, -c]);
mat1[[6, 4]] = I \[Alpha][]/(chi[] (1 + q[x[]])) (-4/3 xi[k]);
mat1[[6, 5]] = I \[Alpha][]/(chi[] (1 + q[x[]])) 2 xi[k];
mat1[[6, 8]] = -1/chi[] (delta[-h, k] + xi[k] xi[-h]/3);
mat1[[7, 4]] = -2 \[Alpha][]/(1 + p[x[]]);
mat1[[7, 5]] = 4 \[Alpha][]/(1 + p[x[]]);
mat1[[8, 6]] = 3/(4 (1 + p[x[]])) delta[l, -g];
mat1[[8, 7]] = -I p[x[]]/(1 + p[x[]]) \[Alpha][] xi[l];
mat1[[9, 10]] = -\[Alpha][];
mat1[[9, 10]] = -\[Alpha][];

I get an error when I apply

Eigenvalues[mat1] 

Hence my question: is it possible to write down this matrix (and if its correct) and is this the correct way to do this?

Kabouter9
  • 163
  • 6
  • The actual code that generated the error is likely easier to work with than the latex equations. Consider either giving the code for the matrix and dropping the xact part (which diminishes your chances of getting an answer since probably few people here work specifically with tensor algebra) or directing your question to be specific about xact output/notation and providing the code you used so far. – userrandrand Dec 28 '22 at 15:19
  • I have edited my question with some code, if it is not sufficient, let me know and I will add more. :-) – Kabouter9 Dec 28 '22 at 18:32
  • I get a "IsIndexOf::nouse: Attempting to apply IsIndexOf on q[x[]]" and a "Throw::nocatch: Uncaught Throw[ERROR[q[x[]]]] returned to top level error" when evaluating your code – userrandrand Dec 28 '22 at 18:49
  • Consider copy pasting the matrix – userrandrand Dec 28 '22 at 18:50
  • Why not copy paste the output of the matrix ? It's a 10 by 10 matrix. Consider using InputForm and the option "copy as plain text" – userrandrand Dec 28 '22 at 19:24
  • That gives me some weird output. For convience, I have put all my code into the question. – Kabouter9 Dec 28 '22 at 19:35
  • So the issue is in the output of the matrix ? Why mention Eigenvalues in the question ? – userrandrand Dec 28 '22 at 19:50
  • The error occurs when I try to calculate the eigenvalues of this matrix which I don't know why; this is maybe not the way to calculate eigenvalues using xact or maybe my matrix is incorrect formatted or maybe another reason. – Kabouter9 Dec 28 '22 at 20:02
  • I removed the Overscript printing and now I can get the the matrix – userrandrand Dec 28 '22 at 20:05
  • But there was an error when I used Eigenvalues. I took the InputForm of the matrix and copy pasted into a speraret notebook and chose a different kernel without xact loaded and it computed the eigenvalues – userrandrand Dec 28 '22 at 20:06
  • So as I see it you have the following options: Make replacement rules to change variables in such a way that xAct formatting will affect the code in Eigenvalues – userrandrand Dec 28 '22 at 20:08
  • option 2: copy paste the output of the matrix in a separate notebook with a different kernel that does not have xact and maybe avoid Overscript – userrandrand Dec 28 '22 at 20:09
  • option 3 : I can not think of a solution and do not know the origin of the problem but If you rather a solution than a work around, consider asking at the xact google groups: https://groups.google.com/g/xAct . The members there might be more familiar with the internal implementation of xAct. – userrandrand Dec 28 '22 at 20:12
  • 1
    sorry in option 1 I meant will not affect the code in EigenValues – userrandrand Dec 28 '22 at 20:14
  • Why the components of the matrix have indices? Do you mean mat1 is a block matrix and what you want is to find the eigenvalues of a symbolic block matrix? – Lacia Jan 01 '23 at 00:22
  • Yes, that's exactly what I want. – Kabouter9 Jan 01 '23 at 11:01
  • Then Eigenvalues is not designed for this, and it will recognize your mat1 as a 10x10 matrix literally. Maybe you need something like How to symbolically do matrix "Block Inversion"? . Or more directly expand all the blocks into componnents. – Lacia Jan 02 '23 at 09:15

0 Answers0