5

For a symmetric 3x3 matrix, one Householder transformation will bring your matrix in tridiagonal form. The required algorithm is given (for general $n\times n$ matrices) on page 459 of Matrix Computations, 4th edition, Algorithm 8.3.1. For a $3\times 3$ matrix, it's just one Householder reduction instead of a loop. For the subsequent tridiagonal matrix, ...


3

I realize this question is old, but I just saw it and find it interesting. In the past, I have followed the suggestions found in this question's comments, coupled with some slightly more complicated cases that I'm familiar with in the literature (Orr--Sommerfeld is always handy). However, I'm also aware of some literature on the inhomogeneous eigenvalue ...


2

As I mentioned in my comment, due to that you are searching for a method based on Python and ideally available in NumPy or SciPy, my suggestion is to use scipy.linalg.expm. It's really easy to use basically you have the $X$ matrix and you just pass it to the scipy.linalg.expm class and it would give you the exponential of $X$ (i.e. $e^{X}$). Due to that you ...


2

Assume the equations are discretized on the $\tau$ grid, and introduce several column-vectors, using the notation where the superscript stands for the grid point index i $\in$ [1,...,n]. $\vec{\tau}=\left[ \tau^1,\tau^2,...,\tau^{n} \right] $ $\vec{\phi_1}=\left[ \phi_1^1,\phi_1^2,...,\phi_1^{n} \right] $ $\vec{\phi_2}=\left[ \phi_2^1,\phi_2^2,...,\phi_2^{...


2

If $u$ is described spectrally, then there are other methods as I mentioned in that old answer. If not, I am unsure of additional options for you. This is a well-known problem that often results in spurious eigenvalues, with plenty of literature to back it up (e.g. see here). Most of it lies in the area of hydrodynamic stability, which might help guide your ...


1

As a first comment, I would mention that you are indeed discretizing, although not spatially, your differential equation. That happens when you choose your base, you could pick more or less elements and different kind of basis. Regarding, your question I doubled checked Matlab's documentation and it seems to be using Lanczos algorithm. So, I would first ...


Only top voted, non community-wiki answers of a minimum length are eligible