Date: 2026-03-09T09:12:16+00:00

Actual source code: stregis.c

      1: /*
      2:    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      3:    SLEPc - Scalable Library for Eigenvalue Problem Computations
      4:    Copyright (c) 2002-, Universitat Politecnica de Valencia, Spain

      6:    This file is part of SLEPc.
      7:    SLEPc is distributed under a 2-clause BSD license (see LICENSE).
      8:    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      9: */

     11: #include <slepc/private/stimpl.h>

     13: SLEPC_EXTERN PetscErrorCode STCreate_Shell(ST);
     14: SLEPC_EXTERN PetscErrorCode STCreate_Shift(ST);
     15: SLEPC_EXTERN PetscErrorCode STCreate_Sinvert(ST);
     16: SLEPC_EXTERN PetscErrorCode STCreate_Cayley(ST);
     17: SLEPC_EXTERN PetscErrorCode STCreate_Precond(ST);
     18: SLEPC_EXTERN PetscErrorCode STCreate_Filter(ST);

     20: /*@C
     21:    STRegisterAll - Registers all of the spectral transformations in the `ST` package.

     23:    Not Collective

     25:    Level: advanced

     27: .seealso: [](ch:st), `STRegister()`
     28: @*/
     29: PetscErrorCode STRegisterAll(void)
     30: {
     31:   PetscFunctionBegin;
     32:   if (STRegisterAllCalled) PetscFunctionReturn(PETSC_SUCCESS);
     33:   STRegisterAllCalled = PETSC_TRUE;
     34:   PetscCall(STRegister(STSHELL,STCreate_Shell));
     35:   PetscCall(STRegister(STSHIFT,STCreate_Shift));
     36:   PetscCall(STRegister(STSINVERT,STCreate_Sinvert));
     37:   PetscCall(STRegister(STCAYLEY,STCreate_Cayley));
     38:   PetscCall(STRegister(STPRECOND,STCreate_Precond));
     39:   PetscCall(STRegister(STFILTER,STCreate_Filter));
     40:   PetscFunctionReturn(PETSC_SUCCESS);
     41: }