#### Previous topic

z-Pares version 0.9.5 Users Guide

#### Next topic

2. Getting started

# 1. Introduction¶

z-Pares is a package for solving generalized eigenvalue problems

$A \boldsymbol{x} = \lambda B \boldsymbol{x},$

where $$A$$ and $$B$$ are real or complex square matrices , and $$\lambda$$ and $$\boldsymbol{x}$$ are an eigenvalue and an eigenvector, respectively. z-Pares is designed to compute a few eigenvalues and eigenvectors of sparse matrices. The symmetries and definitenesses of the matrices can be exploited suitably. z-Pares implements a complex moment based contour integral eigensolver. z-Pares computes eigenvalues inside a user-specified contour path and corresponding eigenvectors. The most important feature of z-Pares is two-level Message Passing Interface (MPI) distributed parallelism.

## 1.1. Features¶

The main features of z-Pares are described below.

• Implemented in Fortran 90/95
• Solves standard eigenvalue problems $$A \boldsymbol{x} = \lambda \boldsymbol{x}$$ and generalized eigenvalue problems $$A \boldsymbol{x} = \lambda B \boldsymbol{x}$$
• Computes eigenvalues located in an interval or a circle and corresponding (right) eigenvectors
• Both real and complex type are supported
• Single precision and double precision are supported
• Both sequatial and distributed parellel MPI builds are available
• Two-level distributed parallelism can be utilized using a pair of MPI communicators
• Reverse communication mechanism is used so that the package accept any matrix data structures
• Interfaces for dense and sparse CSR format are available (only with 1-level distributed parallelism)

## 1.2. Dependences¶

z-Pares depends on follwing packages:

• BLAS/LAPACK
• Message Passing Interface (MPI-2 standard)
• MUMPS 4.10.0 (optional)

BLAS/LAPACK should be installed and MPI is needed for the parallel version of z-Pares. MUMPS is required to use the sparse CSR interface.