Skip to main content
`Ctrl`+`K`

# NEPCISSSetSizes

Sets the values of various size parameters in the CISS solver.

## Synopsis

    #include "slepcnep.h"
    PetscErrorCode NEPCISSSetSizes(NEP nep,PetscInt ip,PetscInt bs,PetscInt ms,PetscInt npart,PetscInt bsmax,PetscBool realmats)

Logically Collective

## Input Parameters

- nep - the nonlinear eigensolver context

- ip - number of integration points

- bs - block size

- ms - moment size

- npart - number of partitions when splitting the communicator

- bsmax - max block size

- realmats - \(T(z)\) is real for real \(z\)

## Options Database Keys

- -nep_ciss_integration_points <ip> - sets the number of integration points

- -nep_ciss_blocksize <bs> - sets the block size

- -nep_ciss_moments <ms> - sets the moment size

- -nep_ciss_partitions <npart> - sets the number of partitions

- -nep_ciss_maxblocksize <bsmax> - sets the maximum block size

- -nep_ciss_realmats - \(T(z)\) is real for real \(z\)

## Notes

For all integer arguments, you can use `PETSC_CURRENT` to keep the current value, and `PETSC_DETERMINE` to set them to a default value.

The default number of partitions is 1. This means the internal `KSP` object is shared among all processes of the `NEP` communicator. Otherwise, the communicator is split into `npart` communicators, so that `npart` `KSP` solves proceed simultaneously.

The `realmats` flag can be set to `PETSC_TRUE` when \(T(\cdot)\) is guaranteed to be real when the argument is a real value, for example, when all matrices in the split form are real. When set to `PETSC_TRUE`, the solver avoids some computations.

For a detailed description of the parameters see [Maeda et al., 2016].

## References

[Mae16]

Y. Maeda, T. Sakurai, and J. E. Roman. Contour integral spectrum slicing method in SLEPc. Technical Report STR-11, Universitat Politècnica de València, 2016. URL: https://slepc.upv.es/documentation.

## See Also

NEP: Nonlinear Eigenvalue Problems, `NEPCISS`, `NEPCISSGetSizes()`

## Level

advanced

## Location

src/nep/impls/ciss/nciss.c

## Implementations

NEPCISSSetSizes_CISS() in src/nep/impls/ciss/nciss.c

Index of all NEP routines Table of Contents for all manual pages Index of all manual pages