1 2 #include <petscdm.h> /*I "petscdm.h" I*/ 3 #include <petscdmplex.h> /*I "petscdmplex.h" I*/ 4 #include <petsc-private/dmimpl.h> 5 #include <petsc-private/dmpleximpl.h> 6 #include <petsc-private/petscfeimpl.h> 7 #include <petsc-private/petscfvimpl.h> 8 #include <petsc-private/petscdsimpl.h> 9 PETSC_EXTERN PetscErrorCode DMCreate_DA(DM); 10 PETSC_EXTERN PetscErrorCode DMCreate_Composite(DM); 11 PETSC_EXTERN PetscErrorCode DMCreate_Sliced(DM); 12 PETSC_EXTERN PetscErrorCode DMCreate_Shell(DM); 13 PETSC_EXTERN PetscErrorCode DMCreate_Redundant(DM); 14 PETSC_EXTERN PetscErrorCode DMCreate_Plex(DM); 15 PETSC_EXTERN PetscErrorCode DMCreate_Patch(DM); 16 #if defined(PETSC_HAVE_MOAB) 17 PETSC_EXTERN PetscErrorCode DMCreate_Moab(DM); 18 #endif 19 PETSC_EXTERN PetscErrorCode DMCreate_Network(DM); 20 21 #undef __FUNCT__ 22 #define __FUNCT__ "DMRegisterAll" 23 /*@C 24 DMRegisterAll - Registers all of the DM components in the DM package. 25 26 Not Collective 27 28 Input parameter: 29 . path - The dynamic library path 30 31 Level: advanced 32 33 .keywords: DM, register, all 34 .seealso: DMRegister(), DMRegisterDestroy() 35 @*/ 36 PetscErrorCode DMRegisterAll() 37 { 38 PetscErrorCode ierr; 39 40 PetscFunctionBegin; 41 if (DMRegisterAllCalled) PetscFunctionReturn(0); 42 DMRegisterAllCalled = PETSC_TRUE; 43 44 ierr = DMRegister(DMDA, DMCreate_DA);CHKERRQ(ierr); 45 ierr = DMRegister(DMCOMPOSITE, DMCreate_Composite);CHKERRQ(ierr); 46 ierr = DMRegister(DMSLICED, DMCreate_Sliced);CHKERRQ(ierr); 47 ierr = DMRegister(DMSHELL, DMCreate_Shell);CHKERRQ(ierr); 48 ierr = DMRegister(DMREDUNDANT, DMCreate_Redundant);CHKERRQ(ierr); 49 ierr = DMRegister(DMPLEX, DMCreate_Plex);CHKERRQ(ierr); 50 ierr = DMRegister(DMPATCH, DMCreate_Patch);CHKERRQ(ierr); 51 #if defined(PETSC_HAVE_MOAB) 52 ierr = DMRegister(DMMOAB, DMCreate_Moab);CHKERRQ(ierr); 53 #endif 54 ierr = DMRegister(DMNETWORK, DMCreate_Network);CHKERRQ(ierr); 55 PetscFunctionReturn(0); 56 } 57 58 PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Chaco(PetscPartitioner); 59 PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_ParMetis(PetscPartitioner); 60 PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Shell(PetscPartitioner); 61 62 #undef __FUNCT__ 63 #define __FUNCT__ "PetscPartitionerRegisterAll" 64 /*@C 65 PetscPartitionerRegisterAll - Registers all of the PetscPartitioner components in the DM package. 66 67 Not Collective 68 69 Input parameter: 70 . path - The dynamic library path 71 72 Level: advanced 73 74 .keywords: PetscPartitioner, register, all 75 .seealso: PetscPartitionerRegister(), PetscPartitionerRegisterDestroy() 76 @*/ 77 PetscErrorCode PetscPartitionerRegisterAll() 78 { 79 PetscErrorCode ierr; 80 81 PetscFunctionBegin; 82 if (PetscPartitionerRegisterAllCalled) PetscFunctionReturn(0); 83 PetscPartitionerRegisterAllCalled = PETSC_TRUE; 84 85 ierr = PetscPartitionerRegister(PETSCPARTITIONERCHACO, PetscPartitionerCreate_Chaco);CHKERRQ(ierr); 86 ierr = PetscPartitionerRegister(PETSCPARTITIONERPARMETIS, PetscPartitionerCreate_ParMetis);CHKERRQ(ierr); 87 ierr = PetscPartitionerRegister(PETSCPARTITIONERSHELL, PetscPartitionerCreate_Shell);CHKERRQ(ierr); 88 PetscFunctionReturn(0); 89 } 90 #include <petscfe.h> /*I "petscfe.h" I*/ 91 92 PETSC_EXTERN PetscErrorCode PetscSpaceCreate_Polynomial(PetscSpace); 93 PETSC_EXTERN PetscErrorCode PetscSpaceCreate_DG(PetscSpace); 94 95 #undef __FUNCT__ 96 #define __FUNCT__ "PetscSpaceRegisterAll" 97 /*@C 98 PetscSpaceRegisterAll - Registers all of the PetscSpace components in the PetscFE package. 99 100 Not Collective 101 102 Input parameter: 103 . path - The dynamic library path 104 105 Level: advanced 106 107 .keywords: PetscSpace, register, all 108 .seealso: PetscSpaceRegister(), PetscSpaceRegisterDestroy() 109 @*/ 110 PetscErrorCode PetscSpaceRegisterAll() 111 { 112 PetscErrorCode ierr; 113 114 PetscFunctionBegin; 115 if (PetscSpaceRegisterAllCalled) PetscFunctionReturn(0); 116 PetscSpaceRegisterAllCalled = PETSC_TRUE; 117 118 ierr = PetscSpaceRegister(PETSCSPACEPOLYNOMIAL, PetscSpaceCreate_Polynomial);CHKERRQ(ierr); 119 ierr = PetscSpaceRegister(PETSCSPACEDG, PetscSpaceCreate_DG);CHKERRQ(ierr); 120 PetscFunctionReturn(0); 121 } 122 123 PETSC_EXTERN PetscErrorCode PetscDualSpaceCreate_Lagrange(PetscDualSpace); 124 PETSC_EXTERN PetscErrorCode PetscDualSpaceCreate_Simple(PetscDualSpace); 125 126 #undef __FUNCT__ 127 #define __FUNCT__ "PetscDualSpaceRegisterAll" 128 /*@C 129 PetscDualSpaceRegisterAll - Registers all of the PetscDualSpace components in the PetscFE package. 130 131 Not Collective 132 133 Input parameter: 134 . path - The dynamic library path 135 136 Level: advanced 137 138 .keywords: PetscDualSpace, register, all 139 .seealso: PetscDualSpaceRegister(), PetscDualSpaceRegisterDestroy() 140 @*/ 141 PetscErrorCode PetscDualSpaceRegisterAll() 142 { 143 PetscErrorCode ierr; 144 145 PetscFunctionBegin; 146 if (PetscDualSpaceRegisterAllCalled) PetscFunctionReturn(0); 147 PetscDualSpaceRegisterAllCalled = PETSC_TRUE; 148 149 ierr = PetscDualSpaceRegister(PETSCDUALSPACELAGRANGE, PetscDualSpaceCreate_Lagrange);CHKERRQ(ierr); 150 ierr = PetscDualSpaceRegister(PETSCDUALSPACESIMPLE, PetscDualSpaceCreate_Simple);CHKERRQ(ierr); 151 PetscFunctionReturn(0); 152 } 153 154 PETSC_EXTERN PetscErrorCode PetscFECreate_Basic(PetscFE); 155 PETSC_EXTERN PetscErrorCode PetscFECreate_Nonaffine(PetscFE); 156 PETSC_EXTERN PetscErrorCode PetscFECreate_Composite(PetscFE); 157 #ifdef PETSC_HAVE_OPENCL 158 PETSC_EXTERN PetscErrorCode PetscFECreate_OpenCL(PetscFE); 159 #endif 160 161 #undef __FUNCT__ 162 #define __FUNCT__ "PetscFERegisterAll" 163 /*@C 164 PetscFERegisterAll - Registers all of the PetscFE components in the PetscFE package. 165 166 Not Collective 167 168 Input parameter: 169 . path - The dynamic library path 170 171 Level: advanced 172 173 .keywords: PetscFE, register, all 174 .seealso: PetscFERegister(), PetscFERegisterDestroy() 175 @*/ 176 PetscErrorCode PetscFERegisterAll() 177 { 178 PetscErrorCode ierr; 179 180 PetscFunctionBegin; 181 if (PetscFERegisterAllCalled) PetscFunctionReturn(0); 182 PetscFERegisterAllCalled = PETSC_TRUE; 183 184 ierr = PetscFERegister(PETSCFEBASIC, PetscFECreate_Basic);CHKERRQ(ierr); 185 ierr = PetscFERegister(PETSCFENONAFFINE, PetscFECreate_Nonaffine);CHKERRQ(ierr); 186 ierr = PetscFERegister(PETSCFECOMPOSITE, PetscFECreate_Composite);CHKERRQ(ierr); 187 #ifdef PETSC_HAVE_OPENCL 188 ierr = PetscFERegister(PETSCFEOPENCL, PetscFECreate_OpenCL);CHKERRQ(ierr); 189 #endif 190 PetscFunctionReturn(0); 191 } 192 #include <petscfv.h> /*I "petscfv.h" I*/ 193 194 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Sin(PetscLimiter); 195 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Zero(PetscLimiter); 196 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_None(PetscLimiter); 197 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Minmod(PetscLimiter); 198 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_VanLeer(PetscLimiter); 199 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_VanAlbada(PetscLimiter); 200 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Superbee(PetscLimiter); 201 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_MC(PetscLimiter); 202 203 #undef __FUNCT__ 204 #define __FUNCT__ "PetscLimiterRegisterAll" 205 /*@C 206 PetscLimiterRegisterAll - Registers all of the PetscLimiter components in the PetscFV package. 207 208 Not Collective 209 210 Input parameter: 211 . path - The dynamic library path 212 213 Level: advanced 214 215 .keywords: PetscLimiter, register, all 216 .seealso: PetscLimiterRegister(), PetscLimiterRegisterDestroy() 217 @*/ 218 PetscErrorCode PetscLimiterRegisterAll() 219 { 220 PetscErrorCode ierr; 221 222 PetscFunctionBegin; 223 if (PetscLimiterRegisterAllCalled) PetscFunctionReturn(0); 224 PetscLimiterRegisterAllCalled = PETSC_TRUE; 225 226 ierr = PetscLimiterRegister(PETSCLIMITERSIN, PetscLimiterCreate_Sin);CHKERRQ(ierr); 227 ierr = PetscLimiterRegister(PETSCLIMITERZERO, PetscLimiterCreate_Zero);CHKERRQ(ierr); 228 ierr = PetscLimiterRegister(PETSCLIMITERNONE, PetscLimiterCreate_None);CHKERRQ(ierr); 229 ierr = PetscLimiterRegister(PETSCLIMITERMINMOD, PetscLimiterCreate_Minmod);CHKERRQ(ierr); 230 ierr = PetscLimiterRegister(PETSCLIMITERVANLEER, PetscLimiterCreate_VanLeer);CHKERRQ(ierr); 231 ierr = PetscLimiterRegister(PETSCLIMITERVANALBADA, PetscLimiterCreate_VanAlbada);CHKERRQ(ierr); 232 ierr = PetscLimiterRegister(PETSCLIMITERSUPERBEE, PetscLimiterCreate_Superbee);CHKERRQ(ierr); 233 ierr = PetscLimiterRegister(PETSCLIMITERMC, PetscLimiterCreate_MC);CHKERRQ(ierr); 234 PetscFunctionReturn(0); 235 } 236 237 PETSC_EXTERN PetscErrorCode PetscFVCreate_Upwind(PetscFV); 238 PETSC_EXTERN PetscErrorCode PetscFVCreate_LeastSquares(PetscFV); 239 240 #undef __FUNCT__ 241 #define __FUNCT__ "PetscFVRegisterAll" 242 /*@C 243 PetscFVRegisterAll - Registers all of the PetscFV components in the PetscFV package. 244 245 Not Collective 246 247 Input parameter: 248 . path - The dynamic library path 249 250 Level: advanced 251 252 .keywords: PetscFV, register, all 253 .seealso: PetscFVRegister(), PetscFVRegisterDestroy() 254 @*/ 255 PetscErrorCode PetscFVRegisterAll() 256 { 257 PetscErrorCode ierr; 258 259 PetscFunctionBegin; 260 if (PetscFVRegisterAllCalled) PetscFunctionReturn(0); 261 PetscFVRegisterAllCalled = PETSC_TRUE; 262 263 ierr = PetscFVRegister(PETSCFVUPWIND, PetscFVCreate_Upwind);CHKERRQ(ierr); 264 ierr = PetscFVRegister(PETSCFVLEASTSQUARES, PetscFVCreate_LeastSquares);CHKERRQ(ierr); 265 PetscFunctionReturn(0); 266 } 267 #include <petscds.h> /*I "petscds.h" I*/ 268 269 PETSC_EXTERN PetscErrorCode PetscDSCreate_Basic(PetscDS); 270 271 #undef __FUNCT__ 272 #define __FUNCT__ "PetscDSRegisterAll" 273 /*@C 274 PetscDSRegisterAll - Registers all of the PetscDS components in the PetscDS package. 275 276 Not Collective 277 278 Input parameter: 279 . path - The dynamic library path 280 281 Level: advanced 282 283 .keywords: PetscDS, register, all 284 .seealso: PetscDSRegister(), PetscDSRegisterDestroy() 285 @*/ 286 PetscErrorCode PetscDSRegisterAll() 287 { 288 PetscErrorCode ierr; 289 290 PetscFunctionBegin; 291 if (PetscDSRegisterAllCalled) PetscFunctionReturn(0); 292 PetscDSRegisterAllCalled = PETSC_TRUE; 293 294 ierr = PetscDSRegister(PETSCDSBASIC, PetscDSCreate_Basic);CHKERRQ(ierr); 295 PetscFunctionReturn(0); 296 } 297