Date: 2023-01-26T12:19:26+00:00

Actual source code: nepregis.c
slepc-3.18.2 2023-01-26
Report Typos and Errors

      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/nepimpl.h>

     13: SLEPC_EXTERN PetscErrorCode NEPCreate_RII(NEP);
     14: SLEPC_EXTERN PetscErrorCode NEPCreate_SLP(NEP);
     15: SLEPC_EXTERN PetscErrorCode NEPCreate_NArnoldi(NEP);
     16: SLEPC_EXTERN PetscErrorCode NEPCreate_Interpol(NEP);
     17: #if defined(PETSC_USE_COMPLEX)
     18: SLEPC_EXTERN PetscErrorCode NEPCreate_CISS(NEP);
     19: #endif
     20: SLEPC_EXTERN PetscErrorCode NEPCreate_NLEIGS(NEP);

     22: /*@C
     23:    NEPRegisterAll - Registers all the solvers in the NEP package.

     25:    Not Collective

     27:    Level: advanced

     29: .seealso: NEPRegister()
     30: @*/
     31: PetscErrorCode NEPRegisterAll(void)
     32: {
     33:   if (NEPRegisterAllCalled) return 0;
     34:   NEPRegisterAllCalled = PETSC_TRUE;
     35:   NEPRegister(NEPRII,NEPCreate_RII);
     36:   NEPRegister(NEPSLP,NEPCreate_SLP);
     37:   NEPRegister(NEPNARNOLDI,NEPCreate_NArnoldi);
     38:   NEPRegister(NEPINTERPOL,NEPCreate_Interpol);
     39: #if defined(PETSC_USE_COMPLEX)
     40:   NEPRegister(NEPCISS,NEPCreate_CISS);
     41: #endif
     42:   NEPRegister(NEPNLEIGS,NEPCreate_NLEIGS);
     43:   return 0;
     44: }

     46: /*@C
     47:   NEPMonitorRegisterAll - Registers all the monitors in the NEP package.

     49:   Not Collective

     51:   Level: advanced

     53: .seealso: NEPMonitorRegister()
     54: @*/
     55: PetscErrorCode NEPMonitorRegisterAll(void)
     56: {
     57:   if (NEPMonitorRegisterAllCalled) return 0;
     58:   NEPMonitorRegisterAllCalled = PETSC_TRUE;

     60:   NEPMonitorRegister("first_approximation",PETSCVIEWERASCII,PETSC_VIEWER_DEFAULT,NEPMonitorFirst,NULL,NULL);
     61:   NEPMonitorRegister("first_approximation",PETSCVIEWERDRAW,PETSC_VIEWER_DRAW_LG,NEPMonitorFirstDrawLG,NEPMonitorFirstDrawLGCreate,NULL);
     62:   NEPMonitorRegister("all_approximations",PETSCVIEWERASCII,PETSC_VIEWER_DEFAULT,NEPMonitorAll,NULL,NULL);
     63:   NEPMonitorRegister("all_approximations",PETSCVIEWERDRAW,PETSC_VIEWER_DRAW_LG,NEPMonitorAllDrawLG,NEPMonitorAllDrawLGCreate,NULL);
     64:   NEPMonitorRegister("convergence_history",PETSCVIEWERASCII,PETSC_VIEWER_DEFAULT,NEPMonitorConverged,NEPMonitorConvergedCreate,NEPMonitorConvergedDestroy);
     65:   NEPMonitorRegister("convergence_history",PETSCVIEWERDRAW,PETSC_VIEWER_DRAW_LG,NEPMonitorConvergedDrawLG,NEPMonitorConvergedDrawLGCreate,NEPMonitorConvergedDestroy);
     66:   return 0;
     67: }