MultiParEig

version 2.6.0.0 (212 KB) by Bor Plestenjak
Toolbox for multiparameter and singular eigenvalue problems

896 Downloads

Updated 3 Aug 2022

View License

This is a joined work with Andrej Muhič, who wrote part of the code, in particular the staircase algorithm for a singular multiparameter eigenvalue problem. If you use the toolbox to solve a singular MEP, please cite: A. Muhič, B. Plestenjak: On the quadratic two-parameter eigenvalue problem and its linearization, Linear Algebra Appl. 432 (2010) 2529-2542.
Toolbox contains numerical methods for multiparameter eigenvalue problems (MEPs) and singular generalized eigenvalue problems
A matrix two-parameter eigenvalue problem (2EP) has the form
A1*x = lambda*B1*x + mu*C1*x,
A2*y = lambda*B2*y + mu*C2*y,
and we are looking for an eigenvalue (lambda,mu) and nonzero eigenvectors x,y. A 2EP is related to a pair of generalized eigenvalue problems
Delta1*z = lambda*Delta0*z,
Delta2*z = mu*Delta0*z,
where Delta0, Delta1 and Delta2 are operator determinants
Delta0 = kron(C2, B1) - kron(B2, C1)
Delta1 = kron(C2, A1) - kron(A2, C1)
Delta2 = kron(A2, B1) - kron(B2, A1)
and z = kron(x,y). The 2EP is nonsingular when Delta0 is nonsingular. This can be generalized to 3EP and MEP.
In many applications a PDE has to be solved on a domain that allows the use of the method of separation of variables. In several coordinate systems separation of variables applied to the Helmholtz, Laplace, or Schrödinger equation leads to a MEP, some cases are Mathieu’s system, Lamé’s system, and a system of spheroidal wave functions. A generic two-parameter boundary value eigenvalue problem has the form
p1(x1) y1''(x1) + q1(x1) y1'(x1) + r1(x2) y1(x1) = lambda s1(x1) y1(x1) + mu s2(x2) y1(x1),
p2(x2) y2''(x2) + q2(x2) y2'(x2) + r2(x2) y2(x2) = lambda s2(x2) y2(x2) + mu s2(x2) y2(x2),
where x1 in [a1,b1] and x2 in [a2,b2] together with the boundary conditions. Such system can be discretized into a matrix 2EP, where a good method of choice is the Chebyshev collocation.
Functions in the toolbox can:
- compute Delta matrices for a MEP
- solve a nonsingular or singular MEP with arbitrary number of parameters (the limitation is the size of the corresponding Delta matrices),
- compute few eigenpairs of a 2EP using implicitly restarted Arnoldi or Krylov-Schur method,
- compute few eigenpairs of a 2EP or 3EP using the Jacobi-Davidson or the subspace iteration method
- refine an eigenpair using the tensor Rayleigh quotient iteration
- discretize a two- or three-parameter boundary value eigenvalue problem with the Chebyshev collocation into a 2EP or 3EP,
- solve a quadratic 2EP,
- find finite regular eigenvalues of a singular pencil using rank-completin perturbations,
- most of the methods support multiprecision using Advanpix Multiprecision Computing Toolbox.
Main functions in the toolbox
2EP:
- twopareig: solve a 2EP (set options to solve a singular 2EP)
- twopareigs: few eigenpairs using implicitly restarted Arnoldi or Krylov-Schur method
- twopareigs_si: subspace iteration with Arnoldi expansion
- twopareigs_jd: Jacobi-Davidson method
- trqi: tensor Rayleigh quotient iteration
- twopar_delta: Delta matrices
Singular eigenvalue problem:
- double_eig: lambda such that A+lambda*B has a multiple eigenvalue
- singgep: finite regular eigenvalues of a singular GEP
3EP:
- threepareig: solve a 3EP (set options to solve a singular 3EP)
- threepareigs: few eigenpairs using implicitly restarted Arnoldi method
- threepareigs_si: subspace iteration with Arnoldi expansion
- threepareigs_jd: Jacobi-Davidson method
- trqi_3p: tensor Rayleigh quotient iteration
- threepar_delta: Delta matrices
MEP:
- multipareig: solve a MEP (set options to solve a singular MEP)
- trqi_np: tensor Rayleigh quotient iteration
- multipar_delta: Delta matrices
Two and three-parameter boundary differential equations:
- bde2mep: discretizes two-parameter BDE as a two-parameter matrix pencil using the Chebyshev collocation
- bde3mep: discretizes three-parameter BDE as a three-parameter matrix pencil using the Chebyshev collocation
Quadratic two-parameter eigenvalue problem:
- quad_twopareig: eigenpairs of a Q2EP
- linearize_quadtwopar: linearize Q2EP as a linear two-parameter matrix pencil
See folder Examples with many demos. In particular:
- folder BdeMep contains numerical examples from: B. Plestenjak, C.I. Gheorghiu, M.E. Hochstenbach: Spectral collocation for multiparameter eigenvalue problems arising from separable boundary value problems, J. Comp. Phys. 298 (2015) 585-601.
- folder SingGep contains numerical examples from: M.E. Hochstenbach, C. Mehl, B. Plestenjak: Solving singular generalized eigenvalue problems by a rank-completing perturbation, SIAM J. Matrix Anal. Appl. 40 (2019) 1022-1046 and M.E. Hochstenbach, C. Mehl, B. Plestenjak: Solving singular generalized eigenvalue problems part II: projection and augmentation, arXiv 2208.01359
- folder Subspace3 contains numerical examples from: M.E. Hochstenbach, K. Meerbergen, E. Mengi, B. Plestenjak: Subspace methods for 3-parameter eigenvalue problems, Numer. Linear Algebra Appl. 26 (2019) e2240
See Contents.m for references for the methods and please cite an appropriate reference if you use the toolbox in your paper.

Cite As

Bor Plestenjak (2022). MultiParEig (https://www.mathworks.com/matlabcentral/fileexchange/47844-multipareig), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2021b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired by: DMSUITE, lapack

Inspired: BiRoots

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Examples/BdeMep

Examples/JD

Examples/Mep

Examples/Multiprecision

Examples/SingGep

Examples/SingularMep

Examples/Subspace3