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

Actual source code: mfnregis.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/mfnimpl.h>

     13: SLEPC_EXTERN PetscErrorCode MFNCreate_Krylov(MFN);
     14: SLEPC_EXTERN PetscErrorCode MFNCreate_Expokit(MFN);

     16: /*@C
     17:   MFNRegisterAll - Registers all the matrix functions in the MFN package.

     19:   Not Collective

     21:   Level: advanced

     23: .seealso: MFNRegister()
     24: @*/
     25: PetscErrorCode MFNRegisterAll(void)
     26: {
     27:   if (MFNRegisterAllCalled) return 0;
     28:   MFNRegisterAllCalled = PETSC_TRUE;
     29:   MFNRegister(MFNKRYLOV,MFNCreate_Krylov);
     30:   MFNRegister(MFNEXPOKIT,MFNCreate_Expokit);
     31:   return 0;
     32: }

     34: /*@C
     35:   MFNMonitorRegisterAll - Registers all the monitors in the MFN package.

     37:   Not Collective

     39:   Level: advanced

     41: .seealso: MFNMonitorRegister()
     42: @*/
     43: PetscErrorCode MFNMonitorRegisterAll(void)
     44: {
     45:   if (MFNMonitorRegisterAllCalled) return 0;
     46:   MFNMonitorRegisterAllCalled = PETSC_TRUE;

     48:   MFNMonitorRegister("error_estimate",PETSCVIEWERASCII,PETSC_VIEWER_DEFAULT,MFNMonitorDefault,NULL,NULL);
     49:   MFNMonitorRegister("error_estimate",PETSCVIEWERDRAW,PETSC_VIEWER_DRAW_LG,MFNMonitorDefaultDrawLG,MFNMonitorDefaultDrawLGCreate,NULL);
     50:   return 0;
     51: }