1# -------------------------------------------------------------------- 2 3cdef extern from * nogil: 4 5 ctypedef const char* PetscDMPlexTransformType "DMPlexTransformType" 6 PetscDMPlexTransformType DMPLEXREFINEREGULAR 7 PetscDMPlexTransformType DMPLEXREFINEALFELD 8 PetscDMPlexTransformType DMPLEXREFINEPOWELLSABIN 9 PetscDMPlexTransformType DMPLEXREFINEBOUNDARYLAYER 10 PetscDMPlexTransformType DMPLEXREFINESBR 11 PetscDMPlexTransformType DMPLEXREFINETOBOX 12 PetscDMPlexTransformType DMPLEXREFINETOSIMPLEX 13 PetscDMPlexTransformType DMPLEXREFINE1D 14 PetscDMPlexTransformType DMPLEXEXTRUDETYPE 15 PetscDMPlexTransformType DMPLEXTRANSFORMFILTER 16 17 PetscErrorCode DMPlexCreate(MPI_Comm, PetscDM*) 18 PetscErrorCode DMPlexCreateCohesiveSubmesh(PetscDM, PetscBool, const char[], PetscInt, PetscDM*) 19 PetscErrorCode DMPlexCreateFromCellListPetsc(MPI_Comm, PetscInt, PetscInt, PetscInt, PetscInt, PetscBool, PetscInt[], PetscInt, PetscReal[], PetscDM*) 20 21 PetscErrorCode DMPlexGetChart(PetscDM, PetscInt*, PetscInt*) 22 PetscErrorCode DMPlexSetChart(PetscDM, PetscInt, PetscInt) 23 PetscErrorCode DMPlexGetConeSize(PetscDM, PetscInt, PetscInt*) 24 PetscErrorCode DMPlexSetConeSize(PetscDM, PetscInt, PetscInt) 25 PetscErrorCode DMPlexGetCone(PetscDM, PetscInt, const PetscInt*[]) 26 PetscErrorCode DMPlexSetCone(PetscDM, PetscInt, const PetscInt[]) 27 PetscErrorCode DMPlexInsertCone(PetscDM, PetscInt, PetscInt, PetscInt) 28 PetscErrorCode DMPlexInsertConeOrientation(PetscDM, PetscInt, PetscInt, PetscInt) 29 PetscErrorCode DMPlexGetConeOrientation(PetscDM, PetscInt, const PetscInt*[]) 30 PetscErrorCode DMPlexSetConeOrientation(PetscDM, PetscInt, const PetscInt[]) 31 PetscErrorCode DMPlexSetCellType(PetscDM, PetscInt, PetscDMPolytopeType) 32 PetscErrorCode DMPlexGetCellType(PetscDM, PetscInt, PetscDMPolytopeType*) 33 PetscErrorCode DMPlexGetCellTypeLabel(PetscDM, PetscDMLabel*) 34 PetscErrorCode DMPlexGetSupportSize(PetscDM, PetscInt, PetscInt*) 35 PetscErrorCode DMPlexSetSupportSize(PetscDM, PetscInt, PetscInt) 36 PetscErrorCode DMPlexGetSupport(PetscDM, PetscInt, const PetscInt*[]) 37 PetscErrorCode DMPlexSetSupport(PetscDM, PetscInt, const PetscInt[]) 38 PetscErrorCode DMPlexGetMaxSizes(PetscDM, PetscInt*, PetscInt*) 39 PetscErrorCode DMPlexSymmetrize(PetscDM) 40 PetscErrorCode DMPlexStratify(PetscDM) 41 PetscErrorCode DMPlexOrient(PetscDM) 42 PetscErrorCode DMPlexInterpolate(PetscDM, PetscDM*) 43 PetscErrorCode DMPlexUninterpolate(PetscDM, PetscDM*) 44 PetscErrorCode DMPlexGetPointLocal(PetscDM, PetscInt, PetscInt*, PetscInt*) 45 PetscErrorCode DMPlexGetPointGlobal(PetscDM, PetscInt, PetscInt*, PetscInt*) 46 PetscErrorCode DMPlexGetPointLocalField(PetscDM, PetscInt, PetscInt, PetscInt*, PetscInt*) 47 PetscErrorCode DMPlexGetPointGlobalField(PetscDM, PetscInt, PetscInt, PetscInt*, PetscInt*) 48 PetscErrorCode DMPlexCreateClosureIndex(PetscDM, PetscSection) 49 50 PetscErrorCode DMPlexGetCellNumbering(PetscDM, PetscIS*) 51 PetscErrorCode DMPlexGetVertexNumbering(PetscDM, PetscIS*) 52 PetscErrorCode DMPlexCreatePointNumbering(PetscDM, PetscIS*) 53 54 PetscErrorCode DMPlexGetDepth(PetscDM, PetscInt*) 55 PetscErrorCode DMPlexGetDepthStratum(PetscDM, PetscInt, PetscInt*, PetscInt*) 56 PetscErrorCode DMPlexGetHeightStratum(PetscDM, PetscInt, PetscInt*, PetscInt*) 57 PetscErrorCode DMPlexGetPointDepth(PetscDM, PetscInt, PetscInt*) 58 PetscErrorCode DMPlexGetPointHeight(PetscDM, PetscInt, PetscInt*) 59 60 PetscErrorCode DMPlexGetMeet(PetscDM, PetscInt, const PetscInt[], PetscInt*, const PetscInt**) 61 PetscErrorCode DMPlexRestoreMeet(PetscDM, PetscInt, const PetscInt[], PetscInt*, const PetscInt**) 62 PetscErrorCode DMPlexGetJoin(PetscDM, PetscInt, const PetscInt[], PetscInt*, const PetscInt**) 63 PetscErrorCode DMPlexGetFullJoin(PetscDM, PetscInt, const PetscInt[], PetscInt*, const PetscInt**) 64 PetscErrorCode DMPlexRestoreJoin(PetscDM, PetscInt, const PetscInt[], PetscInt*, const PetscInt**) 65 PetscErrorCode DMPlexGetTransitiveClosure(PetscDM, PetscInt, PetscBool, PetscInt*, PetscInt*[]) 66 PetscErrorCode DMPlexRestoreTransitiveClosure(PetscDM, PetscInt, PetscBool, PetscInt*, PetscInt*[]) 67 PetscErrorCode DMPlexVecGetClosure(PetscDM, PetscSection, PetscVec, PetscInt, PetscInt*, PetscScalar*[]) 68 PetscErrorCode DMPlexVecRestoreClosure(PetscDM, PetscSection, PetscVec, PetscInt, PetscInt*, PetscScalar*[]) 69 PetscErrorCode DMPlexVecSetClosure(PetscDM, PetscSection, PetscVec, PetscInt, PetscScalar[], PetscInsertMode) 70 PetscErrorCode DMPlexMatSetClosure(PetscDM, PetscSection, PetscSection, PetscMat, PetscInt, PetscScalar[], PetscInsertMode) 71 72 PetscErrorCode DMPlexGenerate(PetscDM, const char[], PetscBool , PetscDM*) 73 PetscErrorCode DMPlexTriangleSetOptions(PetscDM, const char*) 74 PetscErrorCode DMPlexTetgenSetOptions(PetscDM, const char*) 75 PetscErrorCode DMPlexCreateBoxMesh(MPI_Comm, PetscInt, PetscBool, PetscInt[], PetscReal[], PetscReal[], PetscDMBoundaryType[], PetscBool, PetscInt, PetscBool, PetscDM*) 76 PetscErrorCode DMPlexCreateBoxSurfaceMesh(MPI_Comm, PetscInt, PetscInt[], PetscReal[], PetscReal[], PetscBool, PetscDM*) 77 PetscErrorCode DMPlexCreateFromFile(MPI_Comm, const char[], const char[], PetscBool, PetscDM*) 78 PetscErrorCode DMPlexCreateCGNS(MPI_Comm, PetscInt, PetscBool, PetscDM*) 79 PetscErrorCode DMPlexCreateCGNSFromFile(MPI_Comm, const char[], PetscBool, PetscDM*) 80 PetscErrorCode DMPlexCreateExodus(MPI_Comm, int, PetscBool, PetscDM*) 81 PetscErrorCode DMPlexCreateExodusFromFile(MPI_Comm, const char[], PetscBool, PetscDM*) 82 PetscErrorCode DMPlexCreateGmsh(MPI_Comm, PetscViewer, PetscBool, PetscDM*) 83 PetscErrorCode DMPlexCreateCoordinateSpace(PetscDM, PetscInt, PetscBool, PetscBool) 84 85 PetscErrorCode DMPlexFilter(PetscDM, PetscDMLabel, PetscInt, PetscBool, PetscBool, MPI_Comm, PetscSF *, PetscDM *) 86 87 PetscErrorCode DMPlexSetAdjacencyUseAnchors(PetscDM, PetscBool) 88 PetscErrorCode DMPlexGetAdjacencyUseAnchors(PetscDM, PetscBool*) 89 PetscErrorCode DMPlexGetAdjacency(PetscDM, PetscInt, PetscInt*, PetscInt*[]) 90 PetscErrorCode DMPlexRebalanceSharedPoints(PetscDM, PetscInt, PetscBool, PetscBool, PetscBool*) 91 PetscErrorCode DMPlexDistribute(PetscDM, PetscInt, PetscSF*, PetscDM*) 92 PetscErrorCode DMPlexDistributeOverlap(PetscDM, PetscInt, PetscSF*, PetscDM*) 93 PetscErrorCode DMPlexDistributeGetDefault(PetscDM, PetscBool*) 94 PetscErrorCode DMPlexDistributeSetDefault(PetscDM, PetscBool) 95 PetscErrorCode DMPlexSetPartitioner(PetscDM, PetscPartitioner) 96 PetscErrorCode DMPlexGetPartitioner(PetscDM, PetscPartitioner*) 97 PetscErrorCode DMPlexDistributeField(PetscDM, PetscSF, PetscSection, PetscVec, PetscSection, PetscVec) 98 PetscErrorCode DMPlexIsDistributed(PetscDM, PetscBool*) 99 PetscErrorCode DMPlexIsSimplex(PetscDM, PetscBool*) 100 PetscErrorCode DMPlexDistributionSetName(PetscDM, const char[]) 101 PetscErrorCode DMPlexDistributionGetName(PetscDM, const char*[]) 102 103 PetscErrorCode DMPlexGetOrdering(PetscDM, PetscMatOrderingType, PetscDMLabel, PetscIS*) 104 PetscErrorCode DMPlexPermute(PetscDM, PetscIS, PetscDM*) 105 PetscErrorCode DMPlexReorderGetDefault(PetscDM, PetscDMReorderDefaultFlag*) 106 PetscErrorCode DMPlexReorderSetDefault(PetscDM, PetscDMReorderDefaultFlag) 107 108 PetscErrorCode DMPlexGetSubpointMap(PetscDM, PetscDMLabel*) 109 PetscErrorCode DMPlexGetSubpointIS(PetscDM, PetscIS*) 110 111 PetscErrorCode DMPlexCreateCoarsePointIS(PetscDM, PetscIS*) 112 PetscErrorCode DMPlexMarkBoundaryFaces(PetscDM, PetscInt, PetscDMLabel) 113 PetscErrorCode DMPlexLabelComplete(PetscDM, PetscDMLabel) 114 PetscErrorCode DMPlexLabelCohesiveComplete(PetscDM, PetscDMLabel, PetscDMLabel, PetscInt, PetscBool, PetscBool, PetscDM) 115 116 PetscErrorCode DMPlexGetRefinementLimit(PetscDM, PetscReal*) 117 PetscErrorCode DMPlexSetRefinementLimit(PetscDM, PetscReal) 118 PetscErrorCode DMPlexGetRefinementUniform(PetscDM, PetscBool*) 119 PetscErrorCode DMPlexSetRefinementUniform(PetscDM, PetscBool) 120 121 PetscErrorCode DMPlexGetMinRadius(PetscDM, PetscReal*) 122 123 PetscErrorCode DMPlexCreateSection(PetscDM, PetscDMLabel[], const PetscInt[], const PetscInt[], PetscInt, const PetscInt[], const PetscIS[], const PetscIS[], PetscIS, PetscSection*) 124 125 PetscErrorCode DMPlexComputeCellGeometryFVM(PetscDM, PetscInt, PetscReal*, PetscReal[], PetscReal[]) 126 PetscErrorCode DMPlexConstructGhostCells(PetscDM, const char[], PetscInt*, PetscDM*) 127 128 PetscErrorCode DMPlexMetricSetFromOptions(PetscDM) 129 PetscErrorCode DMPlexMetricSetUniform(PetscDM, PetscBool) 130 PetscErrorCode DMPlexMetricIsUniform(PetscDM, PetscBool*) 131 PetscErrorCode DMPlexMetricSetIsotropic(PetscDM, PetscBool) 132 PetscErrorCode DMPlexMetricIsIsotropic(PetscDM, PetscBool*) 133 PetscErrorCode DMPlexMetricSetRestrictAnisotropyFirst(PetscDM, PetscBool) 134 PetscErrorCode DMPlexMetricRestrictAnisotropyFirst(PetscDM, PetscBool*) 135 PetscErrorCode DMPlexMetricSetNoInsertion(PetscDM, PetscBool) 136 PetscErrorCode DMPlexMetricNoInsertion(PetscDM, PetscBool*) 137 PetscErrorCode DMPlexMetricSetNoSwapping(PetscDM, PetscBool) 138 PetscErrorCode DMPlexMetricNoSwapping(PetscDM, PetscBool*) 139 PetscErrorCode DMPlexMetricSetNoMovement(PetscDM, PetscBool) 140 PetscErrorCode DMPlexMetricNoMovement(PetscDM, PetscBool*) 141 PetscErrorCode DMPlexMetricSetNoSurf(PetscDM, PetscBool) 142 PetscErrorCode DMPlexMetricNoSurf(PetscDM, PetscBool*) 143 PetscErrorCode DMPlexMetricSetVerbosity(PetscDM, PetscInt) 144 PetscErrorCode DMPlexMetricGetVerbosity(PetscDM, PetscInt*) 145 PetscErrorCode DMPlexMetricSetNumIterations(PetscDM, PetscInt) 146 PetscErrorCode DMPlexMetricGetNumIterations(PetscDM, PetscInt*) 147 PetscErrorCode DMPlexMetricSetMinimumMagnitude(PetscDM, PetscReal) 148 PetscErrorCode DMPlexMetricGetMinimumMagnitude(PetscDM, PetscReal*) 149 PetscErrorCode DMPlexMetricSetMaximumMagnitude(PetscDM, PetscReal) 150 PetscErrorCode DMPlexMetricGetMaximumMagnitude(PetscDM, PetscReal*) 151 PetscErrorCode DMPlexMetricSetMaximumAnisotropy(PetscDM, PetscReal) 152 PetscErrorCode DMPlexMetricGetMaximumAnisotropy(PetscDM, PetscReal*) 153 PetscErrorCode DMPlexMetricSetTargetComplexity(PetscDM, PetscReal) 154 PetscErrorCode DMPlexMetricGetTargetComplexity(PetscDM, PetscReal*) 155 PetscErrorCode DMPlexMetricSetNormalizationOrder(PetscDM, PetscReal) 156 PetscErrorCode DMPlexMetricGetNormalizationOrder(PetscDM, PetscReal*) 157 PetscErrorCode DMPlexMetricSetGradationFactor(PetscDM, PetscReal) 158 PetscErrorCode DMPlexMetricGetGradationFactor(PetscDM, PetscReal*) 159 PetscErrorCode DMPlexMetricSetHausdorffNumber(PetscDM, PetscReal) 160 PetscErrorCode DMPlexMetricGetHausdorffNumber(PetscDM, PetscReal*) 161 PetscErrorCode DMPlexMetricCreate(PetscDM, PetscInt, PetscVec*) 162 PetscErrorCode DMPlexMetricCreateUniform(PetscDM, PetscInt, PetscReal, PetscVec*) 163 PetscErrorCode DMPlexMetricCreateIsotropic(PetscDM, PetscInt, PetscVec, PetscVec*) 164 PetscErrorCode DMPlexMetricDeterminantCreate(PetscDM, PetscInt, PetscVec*, PetscDM*) 165 PetscErrorCode DMPlexMetricEnforceSPD(PetscDM, PetscVec, PetscBool, PetscBool, PetscVec, PetscVec) 166 PetscErrorCode DMPlexMetricNormalize(PetscDM, PetscVec, PetscBool, PetscBool, PetscVec, PetscVec) 167 PetscErrorCode DMPlexMetricAverage2(PetscDM, PetscVec, PetscVec, PetscVec) 168 PetscErrorCode DMPlexMetricAverage3(PetscDM, PetscVec, PetscVec, PetscVec, PetscVec) 169 PetscErrorCode DMPlexMetricIntersection2(PetscDM, PetscVec, PetscVec, PetscVec) 170 PetscErrorCode DMPlexMetricIntersection3(PetscDM, PetscVec, PetscVec, PetscVec, PetscVec) 171 172 PetscErrorCode DMPlexComputeGradientClementInterpolant(PetscDM, PetscVec, PetscVec) 173 174 PetscErrorCode DMPlexTopologyView(PetscDM, PetscViewer) 175 PetscErrorCode DMPlexCoordinatesView(PetscDM, PetscViewer) 176 PetscErrorCode DMPlexLabelsView(PetscDM, PetscViewer) 177 PetscErrorCode DMPlexSectionView(PetscDM, PetscViewer, PetscDM) 178 PetscErrorCode DMPlexGlobalVectorView(PetscDM, PetscViewer, PetscDM, PetscVec) 179 PetscErrorCode DMPlexLocalVectorView(PetscDM, PetscViewer, PetscDM, PetscVec) 180 181 PetscErrorCode DMPlexTopologyLoad(PetscDM, PetscViewer, PetscSF*) 182 PetscErrorCode DMPlexCoordinatesLoad(PetscDM, PetscViewer, PetscSF) 183 PetscErrorCode DMPlexLabelsLoad(PetscDM, PetscViewer, PetscSF) 184 PetscErrorCode DMPlexSectionLoad(PetscDM, PetscViewer, PetscDM, PetscSF, PetscSF*, PetscSF*) 185 PetscErrorCode DMPlexGlobalVectorLoad(PetscDM, PetscViewer, PetscDM, PetscSF, PetscVec) 186 PetscErrorCode DMPlexLocalVectorLoad(PetscDM, PetscViewer, PetscDM, PetscSF, PetscVec) 187 188 PetscErrorCode DMPlexTransformApply(PetscDMPlexTransform, PetscDM, PetscDM *) 189 PetscErrorCode DMPlexTransformCreate(MPI_Comm, PetscDMPlexTransform *) 190 PetscErrorCode DMPlexTransformDestroy(PetscDMPlexTransform*) 191 PetscErrorCode DMPlexTransformGetType(PetscDMPlexTransform, PetscDMPlexTransformType *) 192 PetscErrorCode DMPlexTransformSetType(PetscDMPlexTransform tr, PetscDMPlexTransformType method) 193 PetscErrorCode DMPlexTransformSetFromOptions(PetscDMPlexTransform) 194 PetscErrorCode DMPlexTransformSetDM(PetscDMPlexTransform, PetscDM) 195 PetscErrorCode DMPlexTransformSetUp(PetscDMPlexTransform) 196 PetscErrorCode DMPlexTransformView(PetscDMPlexTransform tr, PetscViewer v) 197 198 PetscErrorCode DMPlexCreateNaturalVector(PetscDM, PetscVec *) 199 PetscErrorCode DMPlexNaturalToGlobalBegin(PetscDM, PetscVec, PetscVec) 200 PetscErrorCode DMPlexNaturalToGlobalEnd(PetscDM, PetscVec, PetscVec) 201 PetscErrorCode DMPlexGlobalToNaturalBegin(PetscDM, PetscVec, PetscVec) 202 PetscErrorCode DMPlexGlobalToNaturalEnd(PetscDM, PetscVec, PetscVec) 203 PetscErrorCode DMPlexGetMigrationSF(PetscDM, PetscSF *) 204 PetscErrorCode DMPlexSetMigrationSF(PetscDM, PetscSF) 205 PetscErrorCode DMPlexCreateGlobalToNaturalSF(PetscDM, PetscSection, PetscSF, PetscSF *) 206 PetscErrorCode DMPlexMigrateGlobalToNaturalSF(PetscDM, PetscDM, PetscSF, PetscSF, PetscSF *) 207