Actual source code: matcoloringregi.c

petsc-3.8.4 2018-03-24
Report Typos and Errors

  2:  #include <petscmat.h>
  3:  #include <petsc/private/matimpl.h>

  5: PETSC_EXTERN PetscErrorCode MatColoringCreate_JP(MatColoring);
  6: PETSC_EXTERN PetscErrorCode MatColoringCreate_Greedy(MatColoring);
  7: PETSC_EXTERN PetscErrorCode MatColoringCreate_Power(MatColoring);
  8: PETSC_EXTERN PetscErrorCode MatColoringCreate_Natural(MatColoring);
  9: PETSC_EXTERN PetscErrorCode MatColoringCreate_SL(MatColoring);
 10: PETSC_EXTERN PetscErrorCode MatColoringCreate_ID(MatColoring);
 11: PETSC_EXTERN PetscErrorCode MatColoringCreate_LF(MatColoring);

 13: /*@C
 14:   MatColoringRegisterAll - Registers all of the matrix Coloring routines in PETSc.

 16:   Not Collective

 18:   Level: developer

 20:   Adding new methods:
 21:   To add a new method to the registry. Copy this routine and
 22:   modify it to incorporate a call to MatColoringRegister() for
 23:   the new method, after the current list.

 25:  .keywords: matrix, coloring, register, all

 27:  .seealso: MatColoringRegister(), MatColoringRegisterDestroy()
 28:  @*/
 29: PetscErrorCode  MatColoringRegisterAll(void)
 30: {

 34:   if (MatColoringRegisterAllCalled) return(0);
 35:   MatColoringRegisterAllCalled = PETSC_TRUE;
 36:   MatColoringRegister(MATCOLORINGJP,MatColoringCreate_JP);
 37:   MatColoringRegister(MATCOLORINGGREEDY,MatColoringCreate_Greedy);
 38:   MatColoringRegister(MATCOLORINGPOWER,MatColoringCreate_Power);
 39:   MatColoringRegister(MATCOLORINGNATURAL,MatColoringCreate_Natural);
 40:   MatColoringRegister(MATCOLORINGSL,MatColoringCreate_SL);
 41:   MatColoringRegister(MATCOLORINGID,MatColoringCreate_ID);
 42:   MatColoringRegister(MATCOLORINGLF,MatColoringCreate_LF);
 43:   return(0);
 44: }