1264ace61SBarry Smith 23c48a1e8SJed Brown #include <petscdm.h> /*I "petscdm.h" I*/ 377623264SMatthew G. Knepley #include <petscdmplex.h> /*I "petscdmplex.h" I*/ 4af0996ceSBarry Smith #include <petsc/private/dmimpl.h> 5af0996ceSBarry Smith #include <petsc/private/dmpleximpl.h> 6af0996ceSBarry Smith #include <petsc/private/petscfeimpl.h> 7af0996ceSBarry Smith #include <petsc/private/petscfvimpl.h> 8af0996ceSBarry Smith #include <petsc/private/petscdsimpl.h> 98cc058d9SJed Brown PETSC_EXTERN PetscErrorCode DMCreate_DA(DM); 108cc058d9SJed Brown PETSC_EXTERN PetscErrorCode DMCreate_Composite(DM); 118cc058d9SJed Brown PETSC_EXTERN PetscErrorCode DMCreate_Sliced(DM); 128cc058d9SJed Brown PETSC_EXTERN PetscErrorCode DMCreate_Shell(DM); 138cc058d9SJed Brown PETSC_EXTERN PetscErrorCode DMCreate_Redundant(DM); 148cc058d9SJed Brown PETSC_EXTERN PetscErrorCode DMCreate_Plex(DM); 158cc058d9SJed Brown PETSC_EXTERN PetscErrorCode DMCreate_Patch(DM); 162fd35b1fSDave May PETSC_EXTERN PetscErrorCode DMCreate_Swarm(DM); 17edf5aa1bSVijay Mahadevan #if defined(PETSC_HAVE_MOAB) 181d72bce8STim Tautges PETSC_EXTERN PetscErrorCode DMCreate_Moab(DM); 19edf5aa1bSVijay Mahadevan #endif 20406e3badSSatish Balay PETSC_EXTERN PetscErrorCode DMCreate_Network(DM); 21ef51cf95SToby Isaac PETSC_EXTERN PetscErrorCode DMCreate_Forest(DM); 22b34044e4SToby Isaac #if defined(PETSC_HAVE_P4EST) 23b34044e4SToby Isaac PETSC_EXTERN PetscErrorCode DMCreate_p4est(DM); 24b34044e4SToby Isaac PETSC_EXTERN PetscErrorCode DMCreate_p8est(DM); 25b34044e4SToby Isaac #endif 26264ace61SBarry Smith 27264ace61SBarry Smith /*@C 28264ace61SBarry Smith DMRegisterAll - Registers all of the DM components in the DM package. 29264ace61SBarry Smith 30264ace61SBarry Smith Not Collective 31264ace61SBarry Smith 32264ace61SBarry Smith Input parameter: 33264ace61SBarry Smith . path - The dynamic library path 34264ace61SBarry Smith 35264ace61SBarry Smith Level: advanced 36264ace61SBarry Smith 37264ace61SBarry Smith .keywords: DM, register, all 38607a6623SBarry Smith .seealso: DMRegister(), DMRegisterDestroy() 39264ace61SBarry Smith @*/ 40dd63322aSSatish Balay PetscErrorCode DMRegisterAll(void) 41264ace61SBarry Smith { 42264ace61SBarry Smith PetscErrorCode ierr; 43264ace61SBarry Smith 44264ace61SBarry Smith PetscFunctionBegin; 450f51fdf8SToby Isaac if (DMRegisterAllCalled) PetscFunctionReturn(0); 46264ace61SBarry Smith DMRegisterAllCalled = PETSC_TRUE; 478865f1eaSKarl Rupp 48bdf89e91SBarry Smith ierr = DMRegister(DMDA, DMCreate_DA);CHKERRQ(ierr); 49bdf89e91SBarry Smith ierr = DMRegister(DMCOMPOSITE, DMCreate_Composite);CHKERRQ(ierr); 50bdf89e91SBarry Smith ierr = DMRegister(DMSLICED, DMCreate_Sliced);CHKERRQ(ierr); 51bdf89e91SBarry Smith ierr = DMRegister(DMSHELL, DMCreate_Shell);CHKERRQ(ierr); 52bdf89e91SBarry Smith ierr = DMRegister(DMREDUNDANT, DMCreate_Redundant);CHKERRQ(ierr); 53bdf89e91SBarry Smith ierr = DMRegister(DMPLEX, DMCreate_Plex);CHKERRQ(ierr); 54bdf89e91SBarry Smith ierr = DMRegister(DMPATCH, DMCreate_Patch);CHKERRQ(ierr); 552fd35b1fSDave May ierr = DMRegister(DMSWARM, DMCreate_Swarm);CHKERRQ(ierr); 561d72bce8STim Tautges #if defined(PETSC_HAVE_MOAB) 578a1af44dSJed Brown ierr = DMRegister(DMMOAB, DMCreate_Moab);CHKERRQ(ierr); 581d72bce8STim Tautges #endif 59b2930b41SShri Abhyankar ierr = DMRegister(DMNETWORK, DMCreate_Network);CHKERRQ(ierr); 60ef51cf95SToby Isaac ierr = DMRegister(DMFOREST, DMCreate_Forest);CHKERRQ(ierr); 61b34044e4SToby Isaac #if defined(PETSC_HAVE_P4EST) 62b34044e4SToby Isaac ierr = DMRegister(DMP4EST, DMCreate_p4est);CHKERRQ(ierr); 63b34044e4SToby Isaac ierr = DMRegister(DMP8EST, DMCreate_p8est);CHKERRQ(ierr); 64b34044e4SToby Isaac #endif 65264ace61SBarry Smith PetscFunctionReturn(0); 66264ace61SBarry Smith } 6777623264SMatthew G. Knepley 6877623264SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Chaco(PetscPartitioner); 6977623264SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_ParMetis(PetscPartitioner); 70*137cd93aSLisandro Dalcin PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_PTScotch(PetscPartitioner); 7177623264SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Shell(PetscPartitioner); 72555a9cf8SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Simple(PetscPartitioner); 73dae52e14SToby Isaac PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Gather(PetscPartitioner); 7477623264SMatthew G. Knepley 7577623264SMatthew G. Knepley /*@C 7677623264SMatthew G. Knepley PetscPartitionerRegisterAll - Registers all of the PetscPartitioner components in the DM package. 7777623264SMatthew G. Knepley 7877623264SMatthew G. Knepley Not Collective 7977623264SMatthew G. Knepley 8077623264SMatthew G. Knepley Input parameter: 8177623264SMatthew G. Knepley . path - The dynamic library path 8277623264SMatthew G. Knepley 8377623264SMatthew G. Knepley Level: advanced 8477623264SMatthew G. Knepley 8577623264SMatthew G. Knepley .keywords: PetscPartitioner, register, all 8677623264SMatthew G. Knepley .seealso: PetscPartitionerRegister(), PetscPartitionerRegisterDestroy() 8777623264SMatthew G. Knepley @*/ 88dd63322aSSatish Balay PetscErrorCode PetscPartitionerRegisterAll(void) 8977623264SMatthew G. Knepley { 9077623264SMatthew G. Knepley PetscErrorCode ierr; 9177623264SMatthew G. Knepley 9277623264SMatthew G. Knepley PetscFunctionBegin; 930f51fdf8SToby Isaac if (PetscPartitionerRegisterAllCalled) PetscFunctionReturn(0); 9477623264SMatthew G. Knepley PetscPartitionerRegisterAllCalled = PETSC_TRUE; 9577623264SMatthew G. Knepley 9677623264SMatthew G. Knepley ierr = PetscPartitionerRegister(PETSCPARTITIONERCHACO, PetscPartitionerCreate_Chaco);CHKERRQ(ierr); 9777623264SMatthew G. Knepley ierr = PetscPartitionerRegister(PETSCPARTITIONERPARMETIS, PetscPartitionerCreate_ParMetis);CHKERRQ(ierr); 98*137cd93aSLisandro Dalcin ierr = PetscPartitionerRegister(PETSCPARTITIONERPTSCOTCH, PetscPartitionerCreate_PTScotch);CHKERRQ(ierr); 9977623264SMatthew G. Knepley ierr = PetscPartitionerRegister(PETSCPARTITIONERSHELL, PetscPartitionerCreate_Shell);CHKERRQ(ierr); 100555a9cf8SMatthew G. Knepley ierr = PetscPartitionerRegister(PETSCPARTITIONERSIMPLE, PetscPartitionerCreate_Simple);CHKERRQ(ierr); 101dae52e14SToby Isaac ierr = PetscPartitionerRegister(PETSCPARTITIONERGATHER, PetscPartitionerCreate_Gather);CHKERRQ(ierr); 10277623264SMatthew G. Knepley PetscFunctionReturn(0); 10377623264SMatthew G. Knepley } 10406759e06SMatthew G. Knepley #include <petscfe.h> /*I "petscfe.h" I*/ 105264ace61SBarry Smith 10606759e06SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscSpaceCreate_Polynomial(PetscSpace); 1079c3cf19fSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscSpaceCreate_Point(PetscSpace); 10806759e06SMatthew G. Knepley 10906759e06SMatthew G. Knepley /*@C 11006759e06SMatthew G. Knepley PetscSpaceRegisterAll - Registers all of the PetscSpace components in the PetscFE package. 11106759e06SMatthew G. Knepley 11206759e06SMatthew G. Knepley Not Collective 11306759e06SMatthew G. Knepley 11406759e06SMatthew G. Knepley Input parameter: 11506759e06SMatthew G. Knepley . path - The dynamic library path 11606759e06SMatthew G. Knepley 11706759e06SMatthew G. Knepley Level: advanced 11806759e06SMatthew G. Knepley 11906759e06SMatthew G. Knepley .keywords: PetscSpace, register, all 12006759e06SMatthew G. Knepley .seealso: PetscSpaceRegister(), PetscSpaceRegisterDestroy() 12106759e06SMatthew G. Knepley @*/ 122dd63322aSSatish Balay PetscErrorCode PetscSpaceRegisterAll(void) 12306759e06SMatthew G. Knepley { 12406759e06SMatthew G. Knepley PetscErrorCode ierr; 12506759e06SMatthew G. Knepley 12606759e06SMatthew G. Knepley PetscFunctionBegin; 1270f51fdf8SToby Isaac if (PetscSpaceRegisterAllCalled) PetscFunctionReturn(0); 12806759e06SMatthew G. Knepley PetscSpaceRegisterAllCalled = PETSC_TRUE; 12906759e06SMatthew G. Knepley 13006759e06SMatthew G. Knepley ierr = PetscSpaceRegister(PETSCSPACEPOLYNOMIAL, PetscSpaceCreate_Polynomial);CHKERRQ(ierr); 1319c3cf19fSMatthew G. Knepley ierr = PetscSpaceRegister(PETSCSPACEPOINT, PetscSpaceCreate_Point);CHKERRQ(ierr); 13206759e06SMatthew G. Knepley PetscFunctionReturn(0); 13306759e06SMatthew G. Knepley } 13406759e06SMatthew G. Knepley 13506759e06SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDualSpaceCreate_Lagrange(PetscDualSpace); 136c2765ee2SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDualSpaceCreate_Simple(PetscDualSpace); 13706759e06SMatthew G. Knepley 13806759e06SMatthew G. Knepley /*@C 13906759e06SMatthew G. Knepley PetscDualSpaceRegisterAll - Registers all of the PetscDualSpace components in the PetscFE package. 14006759e06SMatthew G. Knepley 14106759e06SMatthew G. Knepley Not Collective 14206759e06SMatthew G. Knepley 14306759e06SMatthew G. Knepley Input parameter: 14406759e06SMatthew G. Knepley . path - The dynamic library path 14506759e06SMatthew G. Knepley 14606759e06SMatthew G. Knepley Level: advanced 14706759e06SMatthew G. Knepley 14806759e06SMatthew G. Knepley .keywords: PetscDualSpace, register, all 14906759e06SMatthew G. Knepley .seealso: PetscDualSpaceRegister(), PetscDualSpaceRegisterDestroy() 15006759e06SMatthew G. Knepley @*/ 151dd63322aSSatish Balay PetscErrorCode PetscDualSpaceRegisterAll(void) 15206759e06SMatthew G. Knepley { 15306759e06SMatthew G. Knepley PetscErrorCode ierr; 15406759e06SMatthew G. Knepley 15506759e06SMatthew G. Knepley PetscFunctionBegin; 1560f51fdf8SToby Isaac if (PetscDualSpaceRegisterAllCalled) PetscFunctionReturn(0); 15706759e06SMatthew G. Knepley PetscDualSpaceRegisterAllCalled = PETSC_TRUE; 15806759e06SMatthew G. Knepley 15906759e06SMatthew G. Knepley ierr = PetscDualSpaceRegister(PETSCDUALSPACELAGRANGE, PetscDualSpaceCreate_Lagrange);CHKERRQ(ierr); 160c2765ee2SMatthew G. Knepley ierr = PetscDualSpaceRegister(PETSCDUALSPACESIMPLE, PetscDualSpaceCreate_Simple);CHKERRQ(ierr); 16106759e06SMatthew G. Knepley PetscFunctionReturn(0); 16206759e06SMatthew G. Knepley } 1630483ade4SMatthew G. Knepley 1640483ade4SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscFECreate_Basic(PetscFE); 165aaf1837cSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscFECreate_Nonaffine(PetscFE); 166aaf1837cSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscFECreate_Composite(PetscFE); 167133ee763SMatthew G. Knepley #ifdef PETSC_HAVE_OPENCL 168133ee763SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscFECreate_OpenCL(PetscFE); 169133ee763SMatthew G. Knepley #endif 1700483ade4SMatthew G. Knepley 1710483ade4SMatthew G. Knepley /*@C 1720483ade4SMatthew G. Knepley PetscFERegisterAll - Registers all of the PetscFE components in the PetscFE package. 1730483ade4SMatthew G. Knepley 1740483ade4SMatthew G. Knepley Not Collective 1750483ade4SMatthew G. Knepley 1760483ade4SMatthew G. Knepley Input parameter: 1770483ade4SMatthew G. Knepley . path - The dynamic library path 1780483ade4SMatthew G. Knepley 1790483ade4SMatthew G. Knepley Level: advanced 1800483ade4SMatthew G. Knepley 1810483ade4SMatthew G. Knepley .keywords: PetscFE, register, all 1820483ade4SMatthew G. Knepley .seealso: PetscFERegister(), PetscFERegisterDestroy() 1830483ade4SMatthew G. Knepley @*/ 184dd63322aSSatish Balay PetscErrorCode PetscFERegisterAll(void) 1850483ade4SMatthew G. Knepley { 1860483ade4SMatthew G. Knepley PetscErrorCode ierr; 1870483ade4SMatthew G. Knepley 1880483ade4SMatthew G. Knepley PetscFunctionBegin; 1890f51fdf8SToby Isaac if (PetscFERegisterAllCalled) PetscFunctionReturn(0); 1900483ade4SMatthew G. Knepley PetscFERegisterAllCalled = PETSC_TRUE; 1910483ade4SMatthew G. Knepley 1920483ade4SMatthew G. Knepley ierr = PetscFERegister(PETSCFEBASIC, PetscFECreate_Basic);CHKERRQ(ierr); 193aaf1837cSMatthew G. Knepley ierr = PetscFERegister(PETSCFENONAFFINE, PetscFECreate_Nonaffine);CHKERRQ(ierr); 194aaf1837cSMatthew G. Knepley ierr = PetscFERegister(PETSCFECOMPOSITE, PetscFECreate_Composite);CHKERRQ(ierr); 195133ee763SMatthew G. Knepley #ifdef PETSC_HAVE_OPENCL 196133ee763SMatthew G. Knepley ierr = PetscFERegister(PETSCFEOPENCL, PetscFECreate_OpenCL);CHKERRQ(ierr); 197133ee763SMatthew G. Knepley #endif 1980483ade4SMatthew G. Knepley PetscFunctionReturn(0); 1990483ade4SMatthew G. Knepley } 200f62f30faSMatthew G. Knepley #include <petscfv.h> /*I "petscfv.h" I*/ 201f62f30faSMatthew G. Knepley 202ab2453f0SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Sin(PetscLimiter); 2039347ee04SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Zero(PetscLimiter); 2049347ee04SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscLimiterCreate_None(PetscLimiter); 2059347ee04SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Minmod(PetscLimiter); 2069347ee04SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscLimiterCreate_VanLeer(PetscLimiter); 2079347ee04SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscLimiterCreate_VanAlbada(PetscLimiter); 2089347ee04SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Superbee(PetscLimiter); 2099347ee04SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscLimiterCreate_MC(PetscLimiter); 210ab2453f0SMatthew G. Knepley 211ab2453f0SMatthew G. Knepley /*@C 212ab2453f0SMatthew G. Knepley PetscLimiterRegisterAll - Registers all of the PetscLimiter components in the PetscFV package. 213ab2453f0SMatthew G. Knepley 214ab2453f0SMatthew G. Knepley Not Collective 215ab2453f0SMatthew G. Knepley 216ab2453f0SMatthew G. Knepley Input parameter: 217ab2453f0SMatthew G. Knepley . path - The dynamic library path 218ab2453f0SMatthew G. Knepley 219ab2453f0SMatthew G. Knepley Level: advanced 220ab2453f0SMatthew G. Knepley 221ab2453f0SMatthew G. Knepley .keywords: PetscLimiter, register, all 222ab2453f0SMatthew G. Knepley .seealso: PetscLimiterRegister(), PetscLimiterRegisterDestroy() 223ab2453f0SMatthew G. Knepley @*/ 224dd63322aSSatish Balay PetscErrorCode PetscLimiterRegisterAll(void) 225ab2453f0SMatthew G. Knepley { 226ab2453f0SMatthew G. Knepley PetscErrorCode ierr; 227ab2453f0SMatthew G. Knepley 228ab2453f0SMatthew G. Knepley PetscFunctionBegin; 2290f51fdf8SToby Isaac if (PetscLimiterRegisterAllCalled) PetscFunctionReturn(0); 230ab2453f0SMatthew G. Knepley PetscLimiterRegisterAllCalled = PETSC_TRUE; 231ab2453f0SMatthew G. Knepley 232ab2453f0SMatthew G. Knepley ierr = PetscLimiterRegister(PETSCLIMITERSIN, PetscLimiterCreate_Sin);CHKERRQ(ierr); 2339347ee04SMatthew G. Knepley ierr = PetscLimiterRegister(PETSCLIMITERZERO, PetscLimiterCreate_Zero);CHKERRQ(ierr); 2349347ee04SMatthew G. Knepley ierr = PetscLimiterRegister(PETSCLIMITERNONE, PetscLimiterCreate_None);CHKERRQ(ierr); 2359347ee04SMatthew G. Knepley ierr = PetscLimiterRegister(PETSCLIMITERMINMOD, PetscLimiterCreate_Minmod);CHKERRQ(ierr); 2369347ee04SMatthew G. Knepley ierr = PetscLimiterRegister(PETSCLIMITERVANLEER, PetscLimiterCreate_VanLeer);CHKERRQ(ierr); 2379347ee04SMatthew G. Knepley ierr = PetscLimiterRegister(PETSCLIMITERVANALBADA, PetscLimiterCreate_VanAlbada);CHKERRQ(ierr); 2389347ee04SMatthew G. Knepley ierr = PetscLimiterRegister(PETSCLIMITERSUPERBEE, PetscLimiterCreate_Superbee);CHKERRQ(ierr); 2399347ee04SMatthew G. Knepley ierr = PetscLimiterRegister(PETSCLIMITERMC, PetscLimiterCreate_MC);CHKERRQ(ierr); 240ab2453f0SMatthew G. Knepley PetscFunctionReturn(0); 241ab2453f0SMatthew G. Knepley } 242ab2453f0SMatthew G. Knepley 243f62f30faSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscFVCreate_Upwind(PetscFV); 2440545663fSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscFVCreate_LeastSquares(PetscFV); 245f62f30faSMatthew G. Knepley 246f62f30faSMatthew G. Knepley /*@C 2470545663fSMatthew G. Knepley PetscFVRegisterAll - Registers all of the PetscFV components in the PetscFV package. 248f62f30faSMatthew G. Knepley 249f62f30faSMatthew G. Knepley Not Collective 250f62f30faSMatthew G. Knepley 251f62f30faSMatthew G. Knepley Input parameter: 252f62f30faSMatthew G. Knepley . path - The dynamic library path 253f62f30faSMatthew G. Knepley 254f62f30faSMatthew G. Knepley Level: advanced 255f62f30faSMatthew G. Knepley 256f62f30faSMatthew G. Knepley .keywords: PetscFV, register, all 257f62f30faSMatthew G. Knepley .seealso: PetscFVRegister(), PetscFVRegisterDestroy() 258f62f30faSMatthew G. Knepley @*/ 259dd63322aSSatish Balay PetscErrorCode PetscFVRegisterAll(void) 260f62f30faSMatthew G. Knepley { 261f62f30faSMatthew G. Knepley PetscErrorCode ierr; 262f62f30faSMatthew G. Knepley 263f62f30faSMatthew G. Knepley PetscFunctionBegin; 2640f51fdf8SToby Isaac if (PetscFVRegisterAllCalled) PetscFunctionReturn(0); 265f62f30faSMatthew G. Knepley PetscFVRegisterAllCalled = PETSC_TRUE; 266f62f30faSMatthew G. Knepley 267f62f30faSMatthew G. Knepley ierr = PetscFVRegister(PETSCFVUPWIND, PetscFVCreate_Upwind);CHKERRQ(ierr); 2680545663fSMatthew G. Knepley ierr = PetscFVRegister(PETSCFVLEASTSQUARES, PetscFVCreate_LeastSquares);CHKERRQ(ierr); 269f62f30faSMatthew G. Knepley PetscFunctionReturn(0); 270f62f30faSMatthew G. Knepley } 2712764a2aaSMatthew G. Knepley #include <petscds.h> /*I "petscds.h" I*/ 272022a7a5cSMatthew G. Knepley 2732764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSCreate_Basic(PetscDS); 274022a7a5cSMatthew G. Knepley 275022a7a5cSMatthew G. Knepley /*@C 2762764a2aaSMatthew G. Knepley PetscDSRegisterAll - Registers all of the PetscDS components in the PetscDS package. 277022a7a5cSMatthew G. Knepley 278022a7a5cSMatthew G. Knepley Not Collective 279022a7a5cSMatthew G. Knepley 280022a7a5cSMatthew G. Knepley Input parameter: 281022a7a5cSMatthew G. Knepley . path - The dynamic library path 282022a7a5cSMatthew G. Knepley 283022a7a5cSMatthew G. Knepley Level: advanced 284022a7a5cSMatthew G. Knepley 2852764a2aaSMatthew G. Knepley .keywords: PetscDS, register, all 2862764a2aaSMatthew G. Knepley .seealso: PetscDSRegister(), PetscDSRegisterDestroy() 287022a7a5cSMatthew G. Knepley @*/ 288dd63322aSSatish Balay PetscErrorCode PetscDSRegisterAll(void) 289022a7a5cSMatthew G. Knepley { 290022a7a5cSMatthew G. Knepley PetscErrorCode ierr; 291022a7a5cSMatthew G. Knepley 292022a7a5cSMatthew G. Knepley PetscFunctionBegin; 2930f51fdf8SToby Isaac if (PetscDSRegisterAllCalled) PetscFunctionReturn(0); 2942764a2aaSMatthew G. Knepley PetscDSRegisterAllCalled = PETSC_TRUE; 295022a7a5cSMatthew G. Knepley 2962764a2aaSMatthew G. Knepley ierr = PetscDSRegister(PETSCDSBASIC, PetscDSCreate_Basic);CHKERRQ(ierr); 297022a7a5cSMatthew G. Knepley PetscFunctionReturn(0); 298022a7a5cSMatthew G. Knepley } 299