1 2 #include <petscdm.h> /*I "petscdm.h" I*/ 3 PETSC_EXTERN PetscErrorCode DMCreate_DA(DM); 4 PETSC_EXTERN PetscErrorCode DMCreate_Composite(DM); 5 PETSC_EXTERN PetscErrorCode DMCreate_Sliced(DM); 6 PETSC_EXTERN PetscErrorCode DMCreate_Shell(DM); 7 PETSC_EXTERN PetscErrorCode DMCreate_ADDA(DM); 8 PETSC_EXTERN PetscErrorCode DMCreate_Redundant(DM); 9 PETSC_EXTERN PetscErrorCode DMCreate_Plex(DM); 10 PETSC_EXTERN PetscErrorCode DMCreate_Patch(DM); 11 #if defined(PETSC_HAVE_SIEVE) 12 PETSC_EXTERN PetscErrorCode DMCreate_Mesh(DM); 13 PETSC_EXTERN PetscErrorCode DMCreate_Cartesian(DM); 14 #endif 15 16 #undef __FUNCT__ 17 #define __FUNCT__ "DMRegisterAll" 18 /*@C 19 DMRegisterAll - Registers all of the DM components in the DM package. 20 21 Not Collective 22 23 Input parameter: 24 . path - The dynamic library path 25 26 Level: advanced 27 28 .keywords: DM, register, all 29 .seealso: DMRegister(), DMRegisterDestroy() 30 @*/ 31 PetscErrorCode DMRegisterAll() 32 { 33 PetscErrorCode ierr; 34 35 PetscFunctionBegin; 36 DMRegisterAllCalled = PETSC_TRUE; 37 38 ierr = DMRegister(DMDA, DMCreate_DA);CHKERRQ(ierr); 39 ierr = DMRegister(DMCOMPOSITE, DMCreate_Composite);CHKERRQ(ierr); 40 ierr = DMRegister(DMSLICED, DMCreate_Sliced);CHKERRQ(ierr); 41 ierr = DMRegister(DMSHELL, DMCreate_Shell);CHKERRQ(ierr); 42 ierr = DMRegister(DMADDA, DMCreate_ADDA);CHKERRQ(ierr); 43 ierr = DMRegister(DMREDUNDANT, DMCreate_Redundant);CHKERRQ(ierr); 44 ierr = DMRegister(DMPLEX, DMCreate_Plex);CHKERRQ(ierr); 45 ierr = DMRegister(DMPATCH, DMCreate_Patch);CHKERRQ(ierr); 46 #if defined(PETSC_HAVE_SIEVE) 47 ierr = DMRegister(DMMESH, DMCreate_Mesh);CHKERRQ(ierr); 48 ierr = DMRegister(DMCARTESIAN, DMCreate_Cartesian);CHKERRQ(ierr); 49 #endif 50 PetscFunctionReturn(0); 51 } 52 53