Skip to main content
`Ctrl`+`K`

# Spectral Transformation - ST

The Spectral Transformation (ST) class encapsulates the functionality required for acceleration techniques based on the transformation of the spectrum. The eigensolvers implemented in `EPS` work by applying an operator to a set of vectors and this operator can adopt different forms. The `ST` object handles all the different possibilities in a uniform way, so that the solver can proceed without knowing which transformation has been selected. Polynomial eigensolvers in `PEP` also support spectral transformation.

The type of spectral transformation can be specified at run time (e.g., `-st_type sinvert`) as well as several parameters such as the value of the shift (e.g., `-st_matmode inplace`).

`ST` objects are always related to a solver object (either `EPS` or `PEP`). Users should not create a standalone `ST` object. `ST` options can also be set directly in application codes by first extracting the `ST` context from the `EPS` context via `EPSGetST()` and then directly calling the `ST` routines (e.g., `STSetType()` or `STSetMatMode()`).

Related Users Manual part: ST: Spectral Transformation.

## Beginner - Basic usage

- ST

- STCAYLEY

- STCreate

- STDestroy

- STFILTER

- STPRECOND

- STSHELL

- STSHIFT

- STSINVERT

- STSetFromOptions

- STSetType

- STType

- STView

## Intermediate - Setting options for algorithms and data structures

- STCayleyGetAntishift

- STCayleySetAntishift

- STFilterGetDegree

- STFilterGetInterval

- STFilterGetRange

- STFilterGetType

- STFilterSetDegree

- STFilterSetInterval

- STFilterSetRange

- STFilterSetType

- STFilterType

- STGetKSP

- STGetMatMode

- STGetMatrix

- STGetNumMatrices

- STGetShift

- STGetType

- STMatMode

- STSetMatMode

- STSetMatrices

- STSetShift

- STViewFromOptions

- ST_FILTER_CHEBYSHEV

- ST_FILTER_FILTLAN

- ST_MATMODE_COPY

- ST_MATMODE_INPLACE

- ST_MATMODE_SHELL

## Advanced - Setting more advanced options and customization

- STAppendOptionsPrefix

- STFilterDamping

- STFilterGetDamping

- STFilterSetDamping

- STGetMatStructure

- STGetOperator

- STGetOptionsPrefix

- STGetPreconditionerMat

- STGetSplitPreconditionerInfo

- STGetSplitPreconditionerTerm

- STRegister

- STRegisterAll

- STReset

- STRestoreOperator

- STSetKSP

- STSetMatStructure

- STSetOptionsPrefix

- STSetPreconditionerMat

- STSetSplitPreconditioner

- STSetUp

- STShellApplyFn

- STShellApplyHermitianTransposeFn

- STShellApplyTransposeFn

- STShellBackTransformFn

- STShellDestroyFn

- STShellGetContext

- STShellSetApply

- STShellSetApplyHermitianTranspose

- STShellSetApplyTranspose

- STShellSetBackTransform

- STShellSetContext

- STShellSetDestroy

## Developer - Interfaces rarely needed by applications programmers

- STApply

- STApplyHermitianTranspose

- STApplyMat

- STApplyTranspose

- STBackTransform

- STCheckNullSpace

- STFilterGetThreshold

- STFinalizePackage

- STGetBalanceMatrix

- STGetBilinearForm

- STGetMatrixTransformed

- STGetStructured

- STGetTransform

- STInitializePackage

- STIsInjective

- STMatCreateVecs

- STMatCreateVecsEmpty

- STMatGetLocalSize

- STMatGetSize

- STMatMatSolve

- STMatMult

- STMatMultHermitianTranspose

- STMatMultTranspose

- STMatSetUp

- STMatSolve

- STMatSolveHermitianTranspose

- STMatSolveTranspose

- STPostSolve

- STPrecondGetKSPHasMat

- STPrecondSetKSPHasMat

- STResetMatrixState

- STScaleShift

- STSetBalanceMatrix

- STSetDefaultShift

- STSetStructured

- STSetTransform

- STSetWorkVecs

## Single list of manual pages

- ST

- STAppendOptionsPrefix

- STApply

- STApplyHermitianTranspose

- STApplyMat

- STApplyTranspose

- STBackTransform

- STCAYLEY

- STCayleyGetAntishift

- STCayleySetAntishift

- STCheckNullSpace

- STCreate

- STDestroy

- STFILTER

- STFilterDamping

- STFilterGetDamping

- STFilterGetDegree

- STFilterGetInterval

- STFilterGetRange

- STFilterGetThreshold

- STFilterGetType

- STFilterSetDamping

- STFilterSetDegree

- STFilterSetInterval

- STFilterSetRange

- STFilterSetType

- STFilterType

- STFinalizePackage

- STGetBalanceMatrix

- STGetBilinearForm

- STGetKSP

- STGetMatMode

- STGetMatStructure

- STGetMatrix

- STGetMatrixTransformed

- STGetNumMatrices

- STGetOperator

- STGetOptionsPrefix

- STGetPreconditionerMat

- STGetShift

- STGetSplitPreconditionerInfo

- STGetSplitPreconditionerTerm

- STGetStructured

- STGetTransform

- STGetType

- STInitializePackage

- STIsInjective

- STMatCreateVecs

- STMatCreateVecsEmpty

- STMatGetLocalSize

- STMatGetSize

- STMatMatSolve

- STMatMode

- STMatMult

- STMatMultHermitianTranspose

- STMatMultTranspose

- STMatSetUp

- STMatSolve

- STMatSolveHermitianTranspose

- STMatSolveTranspose

- STPRECOND

- STPostSolve

- STPrecondGetKSPHasMat

- STPrecondSetKSPHasMat

- STRegister

- STRegisterAll

- STReset

- STResetMatrixState

- STRestoreOperator

- STSHELL

- STSHIFT

- STSINVERT

- STScaleShift

- STSetBalanceMatrix

- STSetDefaultShift

- STSetFromOptions

- STSetKSP

- STSetMatMode

- STSetMatStructure

- STSetMatrices

- STSetOptionsPrefix

- STSetPreconditionerMat

- STSetShift

- STSetSplitPreconditioner

- STSetStructured

- STSetTransform

- STSetType

- STSetUp

- STSetWorkVecs

- STShellApplyFn

- STShellApplyHermitianTransposeFn

- STShellApplyTransposeFn

- STShellBackTransformFn

- STShellDestroyFn

- STShellGetContext

- STShellSetApply

- STShellSetApplyHermitianTranspose

- STShellSetApplyTranspose

- STShellSetBackTransform

- STShellSetContext

- STShellSetDestroy

- STType

- STView

- STViewFromOptions

- ST_FILTER_CHEBYSHEV

- ST_FILTER_FILTLAN

- ST_MATMODE_COPY

- ST_MATMODE_INPLACE

- ST_MATMODE_SHELL