Newbie mathematica user (and amateur math type) here...
I am a plant demographer and I often use matrix models to explore
population level processes. Currently, I am working on a problem
which requires calculation of both sets of eigenvectors (left and
right) for a numerical transition matrix. The functions Eigenvalues[]
and Eigenvectors[] return values that I expect. I am having trouble
finding the left eigenvectors however. Because the first left
eigenvector should satisfy the relationship: vA = lv (where v is the
eigenvector, A is the matrix of interest, and l is the first
eignevalue), I thought I could use Solve[v.A==l v,v] to find the
result. Apparently I was wrong based on the complaints I get from
Mathematica. How might I better specify this problem? Do I need to
specify the dimensions of v somehow before invoking Solve??
TIA
Allan Strand
Dept Biology
New Mexico State U.
Las Cruces, NM
Use Eigenvectors[Transpose[A]].
Solve complained because you had inexact NumberQ input and the system is
overdetermined.
Daniel Lichtblau, WRI
> I am a plant demographer and I often use matrix models to explore
> population level processes. Currently, I am working on a problem
> which requires calculation of both sets of eigenvectors (left and
> right) for a numerical transition matrix. The functions Eigenvalues[]
> and Eigenvectors[] return values that I expect. I am having trouble
> finding the left eigenvectors however. Because the first left
> eigenvector should satisfy the relationship: vA = lv (where v is the
> eigenvector, A is the matrix of interest, and l is the first
> eignevalue), I thought I could use Solve[v.A==l v,v] to find the
> result. Apparently I was wrong based on the complaints I get from
> Mathematica. How might I better specify this problem? Do I need to
> specify the dimensions of v somehow before invoking Solve??
If m is your matrix, then you can get the left eigenvectors by
computing the right eigenvectors of the transpose of m:
v = Eigenvectors[Transpose[m]]
Sincerely,
Arnd Roth
Abteilung Zellphysiologie
Max-Planck-Institut fuer Medizinische Forschung
Postfach 10 38 20, D-69028 Heidelberg, Germany
http://sunny.mpimf-heidelberg.mpg.de/people/roth/ArndRoth.html