Actual source code: nepregis.c

slepc-3.15.0 2021-03-31
Report Typos and Errors
  1: /*
  2:    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  3:    SLEPc - Scalable Library for Eigenvalue Problem Computations
  4:    Copyright (c) 2002-2021, 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: {

 36:   if (NEPRegisterAllCalled) return(0);
 37:   NEPRegisterAllCalled = PETSC_TRUE;
 38:   NEPRegister(NEPRII,NEPCreate_RII);
 39:   NEPRegister(NEPSLP,NEPCreate_SLP);
 40:   NEPRegister(NEPNARNOLDI,NEPCreate_NArnoldi);
 41:   NEPRegister(NEPINTERPOL,NEPCreate_Interpol);
 42: #if defined(PETSC_USE_COMPLEX)
 43:   NEPRegister(NEPCISS,NEPCreate_CISS);
 44: #endif
 45:   NEPRegister(NEPNLEIGS,NEPCreate_NLEIGS);
 46:   return(0);
 47: }

 49: /*@C
 50:   NEPMonitorRegisterAll - Registers all the monitors in the NEP package.

 52:   Not Collective

 54:   Level: advanced
 55: @*/
 56: PetscErrorCode NEPMonitorRegisterAll(void)
 57: {

 61:   if (NEPMonitorRegisterAllCalled) return(0);
 62:   NEPMonitorRegisterAllCalled = PETSC_TRUE;

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