# Numerically solving generalized eigenproblem with Neumann conditions

I am interested in finding the eigenvalues/eigenfunctions of problems such as

$$\partial_{xx} u = \lambda \partial_{yy} u,$$

which can be solved as the generalised eigenvalue problem

$$\mathbf{A} \vec{u} = \lambda \mathbf{B} \vec{u},$$

using the finite difference method. My question is about how to incorporate Neumann conditions into the $\mathbf{A}$ and $\mathbf{B}$ matrices. Examples I have found involved changing the right hand side of the equation in equations such as $\mathbf{A} \vec{u} = \vec{b}$, i.e. not eigenvalue problems, but this is not possible in this case. I am not necessarily specifically interested in solving the PDE above, I am just looking for a general method.

• You can still use the same method you mention, assuming the Neumann condition is homogeneous. Just let the corresponding row in $\mathbf{B}$ be a zero row. – Spencer Bryngelson Jun 20 '17 at 18:28
• Wouldn't that make $\mathbf{B}$ singular, meaning that I can't solve the equation? – islanss Jun 20 '17 at 18:52
• That's ok, in fact this situation is typical. When $\mathbf{B}$ is invertible, the GEVP can simply be written as a standard EVP through inversion. In any other scenario it's useful to have a solver that doesn't invert $\mathbf{B}$. Of course you cannot expect to have a full set of eigenvectors, then. Perhaps see: jstor.org/stable/2156353 – Spencer Bryngelson Jun 20 '17 at 18:59