Gyroscopic QEP

This program is a structure-preserving solver for finding the eigenpairs with the eigenvalues closest to a given shift of the Gyroscopic quadratic eigenvalue problem

Q(lambda) x = (lambda^2 * mtx_M + lambda * mtx_G + mtx_K) x = 0

with mtx_M.' = mtx_M, mtx_G.' = - mtx_G, and mtx_K.' = mtx_K.

The program is applied Generalized T-skew-Hamiltonian Arnoldi algorithm to compute the target eigenpairs with the eigenvalues closest to a given shift.


Syntax:

[ ew_stable, ew_unstable, ev_stable, ev_unstable, outer_it ] = GyroscopicQEP_GTSHIRA( n, mtx_M, mtx_G, mtx_K, solve_LS_GQEP, shift, eigenwanted, opts)

Input:

  • n : the matrix dimension of the coefficient matrices mtx_M, mtx_G and mtx_K.
  • mtx_M : coefficient matrix or the function handle of matrix-vector multiplication mtx_M*u
  • mtx_G : coefficient matrix or the function handle of matrix-vector multiplication mtx_G*v.
  • mtx_K : coefficient matrix or the function handle of matrix-vector multiplication mtx_K*v.
  • solve_LS_GQEP : the function handle for solving the linear system

Syntax: x = solve_LS_GQEP( b, transp_flag)

if transp_flag = 'transp', then the function handle solves

(shift^2 * mtx_M + shift * mtx_G + mtx_K).' x = b

else (transp_flag = 'notransp') it solves

(shift^2 * mtx_M + shift * mtx_G + mtx_K) x = b

end

  • shift : shift value
  • eigswanted : the number of the wanted largest magnitude eigenvalues
  • opts : specify options
  • opts.tol : tolerance of the convergence (default is eps)
  • opts.p : number of Arnoldi vectors to restart, eigswanted+1<p<=N (default is 3*eigswanted)
  • opts.maxit : maximum number of iterations (default is 300)
  • opts.v0 : initial starting vector (default is random vector)


Output:

  • ew_stable : one dimensional array (convergence eigenvalues)

save the stable eigenvalues

  • ev_stable : two-dimensional array (convergence right eigenvectors)

save the eigenvectors corresponding to ew_stable

  • ew_unstable : one dimensional array (convergence eigenvalues)

save the unstable eigenvalues

  • ev_unstable : two-dimensional array (convergence right eigenvectors)

save the eigenvectors corresponding to ew_unstable

  • outer_it : number of the iterations of Arnoldi method


  • Download (GTSHIRA.zip)
  • License: Copyright (c) 2019 by Tsung-Ming Huang and Wen-Wei Lin
  • Reference:
  1. Tsung-Ming Huang, Wen-Wei Lin, Heng Tian and Guan-Hua Chen, Computing the Full Spectrum of Large Sparse Palindromic Quadratic Eigenvalue Problems arising from Surface Green's Function calculations, Journal of Computational Physics, Vol. 356, 340-355, 2018.