[Math] Eigenvalues problem in Mathematica

eigenvalues-eigenvectorsmathematicamatrices

  1. The simple problem eigenvalues problem defined as: $A-(x^2)*B = 0$, where $A$ and $B$ are matrices. How to use command Eigenvalues[] in Mathematica to find $x$, but not this way Det[A-(x^2)*B]=0 because in help I saw 4 examples but just when $B$ is identity matrix or something like this? http://reference.wolfram.com/mathematica/ref/Eigenvalues.html

  2. If the matrices $A$ and $B$ are large example $100 \times 100$, and I don't need all solutions $x$, how to use command FindRoot[] to get just first few positive solutions, example first two positive roots, and combine with eigenvalues?

  3. Can command SchurDecomposition[] can help me for this problem and how?

Thank you in advance.

Best Answer

To settle this:

  1. Mathematica is quite capable of computing the eigenvalues of matrix pencils (i.e., the generalized eigenproblem). Eigenvalues[]/Eigenvectors[]/Eigensystem[], as well as CharacteristicPolynomial[] and SchurDecomposition[], are all able to handle matrix pencils, as long as the matrix contains inexact elements. For instance:

    Eigenvalues[{{{4, 2}, {2, 4}}, {{1, 3}, {3, 1}}} // N]
    {1.5, -1.}
    
  2. Eigenvalues[] and its cognate functions are capable of returning the first few or last few eigencomponents by taking a second integer parameter. Eigenvalues[{matA, matB}, 3] for instance means "return the three largest (in magnitude) eigenvalues", and Eigenvalues[{matA, matB}, -1] means "return the tiniest eigenvalue".

  3. SchurDecomposition[] is an eigenvalue-revealing decomposition. For a pencil $(\mathbf A,\mathbf B)$, SchurDecomposition[] finds four matrices $\mathbf Q,\mathbf S,\mathbf P,\mathbf T$ such that $\mathbf A=\mathbf Q\mathbf S\mathbf P^{\dagger}$ and $\mathbf A=\mathbf Q\mathbf T\mathbf P^{\dagger}$, with $\mathbf Q,\mathbf P$ unitary/orthogonal and $\mathbf S,\mathbf T$ upper (quasi-)triangular (depending on the setting of the option RealBlockDiagonalForm), and $\dagger$ denoting a Hermitian (conjugate) transpose.

There are applications where it is better to have a Schur decomposition than an eigendecomposition (and a Schur decomposition certainly takes less effort to compute, as well as less susceptible to numerical instability). Which of the eigendecomposition or the Schur decomposition should you use depends on what you really want to do, which you haven't mentioned...