6
$\begingroup$

Hi, I am interested in how to numerically track spectrum curves of a parameter dependent linear operator.

Given a linear operator in square matrix form $M(t)$, where the matrix is smooth dependent of parameter $t\in[0,\infty]$. We also could know any order derivatives $M^{(k)}(t)$, whether analytic or not.

Based on some perturbation theory, we may compute the derivatives of eigenvalues and eigenvectors of $M$ in theory. The main challenge is the treatment of repeated eigenvalues(or its derivatives). The general idea in literature, is to find a canonical form of eigenvectors $\{X_i\}$, such that $X_i$ is corresponding to the repeated eigenvalues of $M^{(0)},...,M^{(k-1)}$ and distinct eigenvalue of $M^{(k)}$. Thus the derivative of eigenvalue is given as

$\lambda'_i = X^T_i M' X_i$

However, in numerical setting, non pair of eigenvalues are exactly the same, and the situation turn to be difficult when I would like to compute and observe the evolving of eigenvalues w.r.t parameter $t$ in its domain.

For example, at $t=0$, suppose all eigenvalues are distinct. But during the $t$ evolves, the curves corresponding to distinct eigenvalue could intersect. I found it is still hard to handle the problem of numerical tracking, namely to find $n$ distinct smooth curves in $t$ domain which represent the spectrum of $M(t)$.

Here are some basic ideas:

In numerically sense if I have the eigenvalues $\lambda_{i}(t_j)$ and $\lambda_{i_q}(t_{j+1})$, $i=1,...,n$(the matrix dimension) for $t_{j+1} = t_j + \Delta t$(where $\Delta t$ should be reasonably small), computed by some standard numerical routines(such as the ones implemented in SLEPc), How could I figure out the permutation $i_p$ which indicates the correspondence between two consecutive group of eigenvalues.

Since the standard routines for eigenvalue problem only solve a static matrix $M$, the eigenvectors computed does not have the canonical form described previously. By providing all eigenpairs of $M(t_j)$, $M(t_{j+1})$ and any derivatives of $M(t)$, is it possible to establish the eigenpair correspondence(maybe a probability sense in term of $\Delta t$).

Or alternatively, by providing the eigenpairs of $M(t_j)$, is there a way to compute eigenpairs of $M(t_{j+1})$ in a sense to establish those correspondence implicitly.

The problem is only challenged when two curves intersect(enough close at some $t$ comparing to $\Delta t$), otherwise I would simply assign the correspondence by comparing eigenvalues or inner product of eigenvectors of two consecutive eigen group.

Due to my limited knowledge, I hope there are other people encountering the same problem, whether from theoretical interest or application background. All comments which may provide related informations are welcome.

$\endgroup$

1 Answer 1

4
$\begingroup$

I faced this problem a few years ago. In that case, I obtained a satisfactory approach along the lines of one of your suggestions. Specifically, I found that the eigenvectors changed relatively slowly with $t$. So I could associate the corresponding eigenvalue curves after an intersection with the right ones before an intersection by considering the similarity of the corresponding eigenvectors. I found that the inner-product $X^T_i Y_j$, where $X_i$ is one of the eigenvectors after the intersection and $Y_j$ is one of the eigenvectors after the intersection was a good measure of their similarity.

By the way, you might get more answers by posting this on https://scicomp.stackexchange.com/

$\endgroup$
1
  • $\begingroup$ Yes, I adopted those strategies earlier. But in my cases, it is not satisfied when two spectrum curves intersect. Because, the eigenvectors computed are not numerical stable when their eigenvalues are close. $\endgroup$
    – bobye
    Commented Feb 9, 2012 at 7:02

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .