slepc-3.22.2 2024-12-02
Report Typos and Errors

# PEPSetDimensions

Sets the number of eigenvalues to compute and the dimension of the subspace.

### Synopsis

    #include "slepcpep.h"
    PetscErrorCode PEPSetDimensions(PEP pep,PetscInt nev,PetscInt ncv,PetscInt mpd)

Logically Collective

### Input Parameters

| pep | - the polynomial eigensolver context
| nev | - number of eigenvalues to compute
| ncv | - the maximum dimension of the subspace to be used by the solver
| mpd | - the maximum dimension allowed for the projected problem

### Options Database Keys

| -pep_nev <nev> | - Sets the number of eigenvalues
| -pep_ncv <ncv> | - Sets the dimension of the subspace
| -pep_mpd <mpd> | - Sets the maximum projected dimension

### Notes

Use PETSC_DETERMINE for ncv and mpd to assign a reasonably good value, which is dependent on the solution method. For any of the arguments, use PETSC_CURRENT to preserve the current value.

The parameters ncv and mpd are intimately related, so that the user is advised to set one of them at most. Normal usage is that (a) in cases where nev is small, the user sets ncv (a reasonable default is 2*nev); and (b) in cases where nev is large, the user sets mpd.

The value of ncv should always be between nev and (nev+mpd), typically ncv=nev+mpd. If nev is not too large, mpd=nev is a reasonable choice, otherwise a smaller value should be used.

When computing all eigenvalues in an interval, see PEPSetInterval(), these parameters lose relevance, and tuning must be done with PEPSTOARSetDimensions().

### See Also

PEPGetDimensions(), PEPSetInterval(), PEPSTOARSetDimensions()

### Level

intermediate

### Location

src/pep/interface/pepopts.c

### Examples

src/pep/tutorials/nlevp/pdde_stability.c
Index of all PEP routines
Table of Contents for all manual pages
Index of all manual pages