Actual source code: lmeregis.c

slepc-3.21.0 2024-03-30
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/lmeimpl.h>

 13: SLEPC_EXTERN PetscErrorCode LMECreate_Krylov(LME);

 15: /*@C
 16:   LMERegisterAll - Registers all the matrix functions in the LME package.

 18:   Not Collective

 20:   Level: advanced

 22: .seealso: LMERegister()
 23: @*/
 24: PetscErrorCode LMERegisterAll(void)
 25: {
 26:   PetscFunctionBegin;
 27:   if (LMERegisterAllCalled) PetscFunctionReturn(PETSC_SUCCESS);
 28:   LMERegisterAllCalled = PETSC_TRUE;
 29:   PetscCall(LMERegister(LMEKRYLOV,LMECreate_Krylov));
 30:   PetscFunctionReturn(PETSC_SUCCESS);
 31: }

 33: /*@C
 34:   LMEMonitorRegisterAll - Registers all the monitors in the LME package.

 36:   Not Collective

 38:   Level: advanced

 40: .seealso: LMEMonitorRegister()
 41: @*/
 42: PetscErrorCode LMEMonitorRegisterAll(void)
 43: {
 44:   PetscFunctionBegin;
 45:   if (LMEMonitorRegisterAllCalled) PetscFunctionReturn(PETSC_SUCCESS);
 46:   LMEMonitorRegisterAllCalled = PETSC_TRUE;

 48:   PetscCall(LMEMonitorRegister("error_estimate",PETSCVIEWERASCII,PETSC_VIEWER_DEFAULT,LMEMonitorDefault,NULL,NULL));
 49:   PetscCall(LMEMonitorRegister("error_estimate",PETSCVIEWERDRAW,PETSC_VIEWER_DRAW_LG,LMEMonitorDefaultDrawLG,LMEMonitorDefaultDrawLGCreate,NULL));
 50:   PetscFunctionReturn(PETSC_SUCCESS);
 51: }