Actual source code: matcoloringregi.c

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

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

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

     15:   Not Collective

     17:   Level: developer

     19: .seealso: `MatColoring`, `MatColoringRegister()`, `MatColoringRegisterDestroy()`
     20:  @*/
     21: PetscErrorCode MatColoringRegisterAll(void)
     22: {
     23:   PetscFunctionBegin;
     24:   if (MatColoringRegisterAllCalled) PetscFunctionReturn(PETSC_SUCCESS);
     25:   MatColoringRegisterAllCalled = PETSC_TRUE;
     26:   PetscCall(MatColoringRegister(MATCOLORINGJP, MatColoringCreate_JP));
     27:   PetscCall(MatColoringRegister(MATCOLORINGGREEDY, MatColoringCreate_Greedy));
     28:   PetscCall(MatColoringRegister(MATCOLORINGPOWER, MatColoringCreate_Power));
     29:   PetscCall(MatColoringRegister(MATCOLORINGNATURAL, MatColoringCreate_Natural));
     30:   PetscCall(MatColoringRegister(MATCOLORINGSL, MatColoringCreate_SL));
     31:   PetscCall(MatColoringRegister(MATCOLORINGID, MatColoringCreate_ID));
     32:   PetscCall(MatColoringRegister(MATCOLORINGLF, MatColoringCreate_LF));
     33:   PetscFunctionReturn(PETSC_SUCCESS);
     34: }