1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160
|
<html>
<head> <link rel="canonical" href="https://slepc.upv.es/documentation/current/docs/manualpages/ST/index.html" />
<link rel="stylesheet" href="/slepc.css" type="text/css">
<title>Spectral Transformation - ST</title>
</head>
<body class="manpageindex">
<div id="version" align=right><b>slepc-3.22.2 2024-12-02</b></div>
<div id="bugreport" align=right><a href="mailto:slepc-maint@upv.es?subject=Typo or Error in Documentation &body=Please describe the typo or error in the documentation: slepc-3.22.2 v3.22.2 docs/manualpages/ST/index.html "><small>Report Typos and Errors</small></a></div>
<h2>Spectral Transformation - ST</h2>
<p>
The Spectral Transformation (ST) class encapsulates the functionality required for acceleration techniques based on the transformation of the spectrum. As explained in the SLEPc Users Manual, 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.
</p>
<p>
The type of spectral transformation can be specified at run time (e.g., <code>-st_type sinvert</code>) as well as several parameters such as the value of the shift (e.g., <code>-st_shift 1.5</code>).
</p>
<p>
Polynomial eigensolvers in PEP also support spectral transformation, see the users guide for details.
</p>
<p>
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 <a href="../EPS/EPSGetST.html">EPSGetST</a>() and then directly calling the ST routines (e.g., <a href="STSetType.html">STSetType</a>() / <a href="STSetShift.html">STSetShift</a>()).
</p>
<P>
<TABLE>
<TR><TD WIDTH=250 COLSPAN="3"><B>Beginner - Basic usage</B></TD></TR>
<TD WIDTH=250><A HREF="./ST.html">ST</A></TD>
<TD WIDTH=250><A HREF="./STSetFromOptions.html">STSetFromOptions</A></TD>
<TD WIDTH=250><A HREF="./STView.html">STView</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STCreate.html">STCreate</A></TD>
<TD WIDTH=250><A HREF="./STSetType.html">STSetType</A></TD>
<TD WIDTH=250><A HREF="./"></A></TD>
<TR>
<TD WIDTH=250><A HREF="./STDestroy.html">STDestroy</A></TD>
<TD WIDTH=250><A HREF="./STType.html">STType</A></TD>
<TD WIDTH=250><A HREF="./"></A></TD>
<TR>
<TR><TD WIDTH=250 COLSPAN="3"><B>Intermediate - Setting options for algorithms and data structures</B></TD></TR>
<TD WIDTH=250><A HREF="./STCayleyGetAntishift.html">STCayleyGetAntishift</A></TD>
<TD WIDTH=250><A HREF="./STFilterSetRange.html">STFilterSetRange</A></TD>
<TD WIDTH=250><A HREF="./STMatMode.html">STMatMode</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STCayleySetAntishift.html">STCayleySetAntishift</A></TD>
<TD WIDTH=250><A HREF="./STGetKSP.html">STGetKSP</A></TD>
<TD WIDTH=250><A HREF="./STSetMatMode.html">STSetMatMode</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STFilterGetDegree.html">STFilterGetDegree</A></TD>
<TD WIDTH=250><A HREF="./STGetMatMode.html">STGetMatMode</A></TD>
<TD WIDTH=250><A HREF="./STSetMatrices.html">STSetMatrices</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STFilterGetInterval.html">STFilterGetInterval</A></TD>
<TD WIDTH=250><A HREF="./STGetMatrix.html">STGetMatrix</A></TD>
<TD WIDTH=250><A HREF="./STSetShift.html">STSetShift</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STFilterGetRange.html">STFilterGetRange</A></TD>
<TD WIDTH=250><A HREF="./STGetNumMatrices.html">STGetNumMatrices</A></TD>
<TD WIDTH=250><A HREF="./STViewFromOptions.html">STViewFromOptions</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STFilterSetDegree.html">STFilterSetDegree</A></TD>
<TD WIDTH=250><A HREF="./STGetShift.html">STGetShift</A></TD>
<TD WIDTH=250><A HREF="./"></A></TD>
<TR>
<TD WIDTH=250><A HREF="./STFilterSetInterval.html">STFilterSetInterval</A></TD>
<TD WIDTH=250><A HREF="./STGetType.html">STGetType</A></TD>
<TD WIDTH=250><A HREF="./"></A></TD>
<TR>
<TR><TD WIDTH=250 COLSPAN="3"><B>Advanced - Setting more advanced options and customization</B></TD></TR>
<TD WIDTH=250><A HREF="./STAppendOptionsPrefix.html">STAppendOptionsPrefix</A></TD>
<TD WIDTH=250><A HREF="./STRegisterAll.html">STRegisterAll</A></TD>
<TD WIDTH=250><A HREF="./STSetSplitPreconditioner.html">STSetSplitPreconditioner</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STGetMatStructure.html">STGetMatStructure</A></TD>
<TD WIDTH=250><A HREF="./STReset.html">STReset</A></TD>
<TD WIDTH=250><A HREF="./STSetUp.html">STSetUp</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STGetOperator.html">STGetOperator</A></TD>
<TD WIDTH=250><A HREF="./STRestoreOperator.html">STRestoreOperator</A></TD>
<TD WIDTH=250><A HREF="./STShellGetContext.html">STShellGetContext</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STGetOptionsPrefix.html">STGetOptionsPrefix</A></TD>
<TD WIDTH=250><A HREF="./STSHELL.html">STSHELL</A></TD>
<TD WIDTH=250><A HREF="./STShellSetApply.html">STShellSetApply</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STGetPreconditionerMat.html">STGetPreconditionerMat</A></TD>
<TD WIDTH=250><A HREF="./STSetKSP.html">STSetKSP</A></TD>
<TD WIDTH=250><A HREF="./STShellSetApplyHermitianTranspose.html">STShellSetApplyHermitianTranspose</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STGetSplitPreconditionerInfo.html">STGetSplitPreconditionerInfo</A></TD>
<TD WIDTH=250><A HREF="./STSetMatStructure.html">STSetMatStructure</A></TD>
<TD WIDTH=250><A HREF="./STShellSetApplyTranspose.html">STShellSetApplyTranspose</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STGetSplitPreconditionerTerm.html">STGetSplitPreconditionerTerm</A></TD>
<TD WIDTH=250><A HREF="./STSetOptionsPrefix.html">STSetOptionsPrefix</A></TD>
<TD WIDTH=250><A HREF="./STShellSetBackTransform.html">STShellSetBackTransform</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STRegister.html">STRegister</A></TD>
<TD WIDTH=250><A HREF="./STSetPreconditionerMat.html">STSetPreconditionerMat</A></TD>
<TD WIDTH=250><A HREF="./STShellSetContext.html">STShellSetContext</A></TD>
<TR>
<TR><TD WIDTH=250 COLSPAN="3"><B>Developer - Interfaces intended primarily for library developers, not for typical applications programmers</B></TD></TR>
<TD WIDTH=250><A HREF="./STApply.html">STApply</A></TD>
<TD WIDTH=250><A HREF="./STInitializePackage.html">STInitializePackage</A></TD>
<TD WIDTH=250><A HREF="./STMatSolveTranspose.html">STMatSolveTranspose</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STApplyHermitianTranspose.html">STApplyHermitianTranspose</A></TD>
<TD WIDTH=250><A HREF="./STIsInjective.html">STIsInjective</A></TD>
<TD WIDTH=250><A HREF="./STPostSolve.html">STPostSolve</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STApplyMat.html">STApplyMat</A></TD>
<TD WIDTH=250><A HREF="./STMatCreateVecs.html">STMatCreateVecs</A></TD>
<TD WIDTH=250><A HREF="./STPrecondGetKSPHasMat.html">STPrecondGetKSPHasMat</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STApplyTranspose.html">STApplyTranspose</A></TD>
<TD WIDTH=250><A HREF="./STMatCreateVecsEmpty.html">STMatCreateVecsEmpty</A></TD>
<TD WIDTH=250><A HREF="./STPrecondSetKSPHasMat.html">STPrecondSetKSPHasMat</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STBackTransform.html">STBackTransform</A></TD>
<TD WIDTH=250><A HREF="./STMatGetLocalSize.html">STMatGetLocalSize</A></TD>
<TD WIDTH=250><A HREF="./STResetMatrixState.html">STResetMatrixState</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STCheckNullSpace.html">STCheckNullSpace</A></TD>
<TD WIDTH=250><A HREF="./STMatGetSize.html">STMatGetSize</A></TD>
<TD WIDTH=250><A HREF="./STScaleShift.html">STScaleShift</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STFilterGetThreshold.html">STFilterGetThreshold</A></TD>
<TD WIDTH=250><A HREF="./STMatMatSolve.html">STMatMatSolve</A></TD>
<TD WIDTH=250><A HREF="./STSetBalanceMatrix.html">STSetBalanceMatrix</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STFinalizePackage.html">STFinalizePackage</A></TD>
<TD WIDTH=250><A HREF="./STMatMult.html">STMatMult</A></TD>
<TD WIDTH=250><A HREF="./STSetDefaultShift.html">STSetDefaultShift</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STGetBalanceMatrix.html">STGetBalanceMatrix</A></TD>
<TD WIDTH=250><A HREF="./STMatMultHermitianTranspose.html">STMatMultHermitianTranspose</A></TD>
<TD WIDTH=250><A HREF="./STSetStructured.html">STSetStructured</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STGetBilinearForm.html">STGetBilinearForm</A></TD>
<TD WIDTH=250><A HREF="./STMatMultTranspose.html">STMatMultTranspose</A></TD>
<TD WIDTH=250><A HREF="./STSetTransform.html">STSetTransform</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STGetMatrixTransformed.html">STGetMatrixTransformed</A></TD>
<TD WIDTH=250><A HREF="./STMatSetUp.html">STMatSetUp</A></TD>
<TD WIDTH=250><A HREF="./STSetWorkVecs.html">STSetWorkVecs</A></TD>
<TR>
<TD WIDTH=250><A HREF="./STGetStructured.html">STGetStructured</A></TD>
<TD WIDTH=250><A HREF="./STMatSolve.html">STMatSolve</A></TD>
<TD WIDTH=250><A HREF="./"></A></TD>
<TR>
<TD WIDTH=250><A HREF="./STGetTransform.html">STGetTransform</A></TD>
<TD WIDTH=250><A HREF="./STMatSolveHermitianTranspose.html">STMatSolveHermitianTranspose</A></TD>
<TD WIDTH=250><A HREF="./"></A></TD>
<TR>
<TR><TD WIDTH=250 COLSPAN="3"><B>No deprecated routines</B></TD></TR>
</TABLE>
<BR><A HREF="../../../docs/manual.html">Table of Contents</A>
|