slepc current achievements and plans for the future
play

SLEPc Current Achievements and Plans for the Future Jose E. Roman - PowerPoint PPT Presentation

Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features SLEPc Current Achievements and Plans for the Future Jose E. Roman D. Sistemes Inform` atics i Computaci o Universitat Polit` ecnica de Val` encia, Spain


  1. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features SLEPc Current Achievements and Plans for the Future Jose E. Roman D. Sistemes Inform` atics i Computaci´ o Universitat Polit` ecnica de Val` encia, Spain Celebrating 20 years of PETSc , Argonne – June, 2015 1/36

  2. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features SLEPc : Scalable Library for Eigenvalue Problem Computations A general library for solving large-scale sparse eigenproblems on parallel computers ◮ Linear eigenproblems (standard or generalized, real or complex, Hermitian or non-Hermitian) ◮ Also support for SVD, PEP, NEP and more Ax = λx Ax = λBx Av i = σ i u i T ( λ ) x = 0 Authors: J. E. Roman, C. Campos, E. Romero, A. Tomas http://slepc.upv.es Current version: 3.6 (released June 2015) 2/36

  3. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features Timeline slepc-3.0 First release Jose Andres Krylov-Schur Eloy Jacobi-Davidson Carmen Polynomial solvers Alejandro 2000 2005 2010 2015 Alejandro Carmen Jose Roman Andres Tomas Eloy Romero Lamas Campos 3/36

  4. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features Applications Google Scholar: 320 citations of main paper (ACM TOMS 2005) Nuclear Engineering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 % Computational Electromagnetics, Electronics, Photonics . . . . . . . . . . . . 9 % Plasma Physics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 % Astrophysics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 % Computational Physics, Materials Science, Electronic Structure . . . . . 20 % Acoustics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 % Computational Fluid Dynamics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13 % Earth Sciences, Oceanology, Hydrology, Geophysics . . . . . . . . . . . . . . . . . 4 % Bioengineering, Computational Neuroscience . . . . . . . . . . . . . . . . . . . . . . . 2 % Structural Analysis, Mechanical Engineering . . . . . . . . . . . . . . . . . . . . . . . 6 % Information Retrieval, Machine Learning, Graph Algorithms . . . . . . . . . 7 % Visualization, Computer Graphics, Image Processing . . . . . . . . . . . . . . . . 3 % PDE’s, Numerical Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 % Dynamical Systems, Model Reduction, Inverse Problems . . . . . . . . . . . . 4 % 4/36

  5. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features Problem Classes The user must choose the most appropriate solver for each problem class Problem class Model equation Module Linear eigenproblem Ax = λx, Ax = λBx EPS ( K + λC + λ 2 M ) x = 0 Quadratic eigenproblem † ( A 0 + λA 1 + · · · + λ d A d ) x = 0 Polynomial eigenproblem PEP Nonlinear eigenproblem T ( λ ) x = 0 NEP Singular value decomp. Av = σu SVD Matrix function y = f ( A ) v MFN † QEP removed in version 3.5 Auxiliary classes: ST , BV DS , RG , FN 5/36

  6. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features PETSc SLEPc Nonlinear Systems Time Steppers Polynomial Eigensolver Nonlinear Eigensolver Trust Pseudo Line Backward Q- Linear- N- Arnoldi Interp. Other Euler Other TOAR SLP RII Search Region Euler Time Step Arnoldi ization Krylov Subspace Methods SVD Solver M. Function Cross Matrix Lanczos Thick R. Cyclic GMRES CG CGS Bi-CGStab TFQMR Richardson Chebychev Other Krylov Product Lanczos Linear Eigensolver Preconditioners Additive Block Krylov-Schur Jacobi ILU ICC LU Other GD JD LOBPCG CISS Other Schwarz Jacobi Matrices Spectral Transformation Compressed Block Symmetric Dense CUSP Other Shift Shift-and-invert Cayley Preconditioner Sparse Row CSR Block CSR Vectors Index Sets BV DS RG FN Standard CUSP Indices Block Stride Other 6/36

  7. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features Outline Linear Eigenvalue Problems 1 EPS: Eigenvalue Problem Solver Selection of wanted eigenvalues Preconditioned eigensolvers Non-Linear Eigenvalue Problems 2 PEP: Polynomial Eigensolvers NEP: General Nonlinear Eigensolvers Additional Features 3 MFN: Matrix Function Auxiliary Classes 7/36

  8. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features EPS: Eigenvalue Problem Solver Compute a few eigenpairs ( x, λ ) of Standard Eigenproblem Generalized Eigenproblem Ax = λx Ax = λBx where A, B can be real or complex, symmetric (Hermitian) or not User can specify: ◮ Number of eigenpairs ( nev ), subspace dimension ( ncv ) ◮ Tolerance, maximum number of iterations ◮ The solver ◮ Selected part of spectrum ◮ Advanced: extraction type, initial guess, constraints, balancing 9/36

  9. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features Available Eigensolvers User code is independent of the selected solver 1. Basic methods ◮ Single vector iteration: power iteration, inverse iteration, RQI ◮ Subspace iteration with Rayleigh-Ritz projection and locking ◮ Explicitly restarted Arnoldi and Lanczos 2. Krylov-Schur , including thick-restart Lanczos 3. Generalized Davidson, Jacobi-Davidson 4. Conjugate gradient methods: LOBPCG, RQCG 5. CISS, a contour-integral solver 6. External packages, and LAPACK for testing . . . but some solvers are specific for a particular case: ◮ LOBPCG computes smallest λ i of symmetric problems ◮ CISS allows computation of all λ i within a region 10/36

  10. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features Selection of Eigenvalues (1): Basic Largest/smallest magnitude, or real (or imaginary) part Example: QC2534 -eps nev 6 -eps ncv 128 -eps largest imaginary Computed eigenvalues 11/36

  11. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features Selection of Eigenvalues (2): Region Filtering RG : Region ◮ A region of the complex plane (interval, polygon, ellipse, ring) ◮ Used as an inclusion (or exclusion) region Example: sign1 (NLEVP) n = 225 , all λ lie at unit circle, accumulate at ± 1 -eps nev 6 -rg type interval -rg interval endpoints -0.7,0.7,-1,1 12/36

  12. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features Selection of Eigenvalues (3): Closest to Target Shift-and-invert is used to compute interior eigenvalues ( A − σB ) − 1 Bx = θx = ⇒ Ax = λBx ◮ Trivial mapping of eigenvalues: θ = ( λ − σ ) − 1 ◮ Eigenvectors are not modified ◮ Very fast convergence close to σ Things to consider: ◮ Implicit inverse ( A − σB ) − 1 via linear solves ◮ Direct linear solver for robustness ◮ Less effective for eigenvalues far away from σ 13/36

  13. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features Selection of Eigenvalues (4): Interval (in GHEP) Indefinite (block-)triangular factorization: A − σB = LDL T A byproduct is the number of eigenvalues on the left of σ (inertia) ν ( A − σB ) = ν ( D ) Spectrum Slicing strategy: ◮ Multi-shift scheme that sweeps all the interval ◮ Compute eigenvalues by chunks ◮ Use inertia to validate sub-intervals a b σ 1 σ 2 σ 3 C. Campos and J. E. Roman, “Strategies for spectrum slicing based on restarted Lanczos methods”, Numer. Algorithms , 60(2):279–295, 2012. Multi-communicator version, one subinterval per partition new 14/36

  14. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features Selection of Eigenvalues (5): All inside a Region CISS solver 1 : compute all eigenvalues inside a given region Example: QC2534 -eps type ciss -rg type ellipse -rg ellipse center -.8-.1i -rg ellipse radius 0.2 -rg ellipse vscale 0.1 1 Contributed by Y. Maeda, T. Sakurai 15/36

  15. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features Selection of Eigenvalues (5): All inside a Region RG =ellipse, center=0, radius=1 1 Example: MHD1280 with CISS ◮ Alfv´ en spectra: eigenvalues in intersection of the branches 0 -1 -1 0 1 500 RG =ring, center=0, radius=0.5, width=0.2, angle=0.25..0.5 0 1 -500 0.5 -200 -100 0 0 -1 -0.5 0 16/36

  16. Linear Eigenvalue Problems Non-Linear Eigenvalue Problems Additional Features Selection of Eigenvalues (6): User-Defined 1 Selection with user-defined function for sorting eigenvalues 0 pdde stability n = 225 , wanted eigenvalues: � λ � = 1 -1 -50 0 PetscErrorCode MyEigenSort(PetscScalar ar,PetscScalar ai, PetscScalar br,PetscScalar bi,PetscInt *r,void *ctx) { PetscReal aa,ab; PetscFunctionBeginUser; aa = PetscAbsReal(SlepcAbsEigenvalue(ar,ai)-1.0); ab = PetscAbsReal(SlepcAbsEigenvalue(br,bi)-1.0); *r = aa > ab ? 1 : (aa < ab ? -1 : 0); PetscFunctionReturn(0); } Arbitrary selection: apply criterion to an arbitrary user-defined function φ ( λ, x ) instead of just λ 17/36

Recommend


More recommend