where the solver evaluates E,
D,
K,
N, and
NF for the solution vector
U0;
λ denotes the eigenvalue; and
λ0 is the linearization point. If
E = 0, it is a linear eigenvalue problem; if
E is nonzero, it is a quadratic eigenvalue problem. To solve the quadratic eigenvalue problem, COMSOL Multiphysics reformulates it as a linear eigenvalue problem. After constraint handling, it is possible to write the system in the form
Ax = λBx.
Finding the eigenvalues closest to the shift σ is equivalent to computing the largest eigenvalues of the matrix
C = (A − σB)−1B. To do this, the solver uses the ARPACK FORTRAN routines for large-scale eigenvalue problems (
Ref. 11). This code is based on a variant of the Arnoldi algorithm called the
implicitly restarted Arnoldi method (IRAM). The ARPACK routines must perform several matrix-vector multiplications
Cv, which they accomplish by solving the linear system
( A − σB) x = Bv using one of the linear system solvers.
If the converged eigenvalues do not cover the sought region, the number of eigenvalues searched for is doubled. The Log window then shows
Searching for more eigenvalues. If the number of eigenvalues searched for has already been doubled and no additional eigenvalues have been found within the region, a warning is issued. The warning shows, for example, that no (transformed) eigenvalue with a smaller real part is found. It is then advised to decrease the size of the region where you want to search for eigenvalues.