Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 10/31/2024
Public
Document Table of Contents

Extended Eigensolver Naming Conventions

There are two different types of interfaces available in the Extended Eigensolver routines:

  1. The reverse communication interfaces (RCI):

    ?feast_<matrix type>_rci

    These interfaces are matrix free format (the interfaces are independent of the matrix data formats). You must provide matrix-vector multiply and direct/iterative linear system solvers for your own explicit or implicit data format.

  2. The predefined interfaces:

    ?feast_<matrix type><type of eigenvalue problem>

    are predefined drivers for ?feast reverse communication interface that act on commonly used matrix data storage (dense, banded and compressed sparse row representation), using internal matrix-vector routines and selected inner linear system solvers.

For these interfaces:

  • ? indicates the data type of matrix A (and matrix B if any) defined as follows:

    s

    real, single precision

    d

    real, double precision

    c

    complex, single precision

    z

    complex , double precision

  • <matrix type> defined as follows:

    Value of <matrix type>

    Matrix format

    Inner linear system solver used by Extended Eigensolver

    sy

    (symmetric real)

    Dense

    LAPACK dense solvers

    he

    (Hermitian complex)

    sb

    (symmetric banded real)

    Banded-LAPACK

    Internal banded solver

    hb

    (Hermitian banded complex)

    scsr

    (symmetric real)

    Compressed sparse row

    PARDISO solver

    hcsr

    (Hermitian complex)

    s

    (symmetric real)

    Reverse communications interfaces

    User defined

    h

    (Hermitian complex)

  • <type of eigenvalue problem> is:

    gv

    generalized eigenvalue problem

    ev

    standard eigenvalue problem

For example, sfeast_scsrev is a single-precision routine with a symmetric real matrix stored in sparse compressed-row format for a standard eigenvalue problem, and zfeast_hrci is a complex double-precision routine with a Hermitian matrix using the reverse communication interface.

Note that:

  • ? can be s or d if a matrix is real symmetric: <matrix type> is sy, sb, or scsr.

  • ? can be c or z if a matrix is complex Hermitian: <matrix type> is he, hb, or hcsr.

  • ? can be c or z if the Extended Eigensolver RCI interface is used for solving a complex Hermitian problem.

  • ? can be s or d if the Extended Eigensolver RCI interface is used for solving a real symmetric problem.