| /petsc/src/dm/impls/plex/tutorials/ |
| H A D | ex6.c | 40 PetscScalar *closure; in LoadData2D() local 43 PetscCall(PetscMalloc1(clSize, &closure)); in LoadData2D() 47 PetscCall(PetscArrayzero(closure, clSize)); in LoadData2D() 54 …for (c = 0; c < user->Nc[f]; ++c) closure[o++] = ((kj + joff) * (Ni * user->k[f] + 1) + ki + ioff)… in LoadData2D() 58 PetscCall(DMPlexVecSetClosure(dm, NULL, u, j * Ni + i, closure, INSERT_VALUES)); in LoadData2D() 61 PetscCall(PetscFree(closure)); in LoadData2D() 68 PetscScalar *closure; in LoadData3D() local 71 PetscCall(PetscMalloc1(clSize, &closure)); in LoadData3D() 76 PetscCall(PetscArrayzero(closure, clSize)); in LoadData3D() 84 …for (c = 0; c < user->Nc[f]; ++c) closure[o++] = (((kk + koff) * (Nj * user->k[f] + 1) + kj + joff… in LoadData3D() [all …]
|
| H A D | ex11.c | 71 PetscInt *closure = NULL; in CheckCellVertices() local 79 PetscCall(DMPlexGetTransitiveClosure(dm, cell, PETSC_TRUE, &Ncl, &closure)); in CheckCellVertices() 81 const PetscInt vertex = closure[cl]; in CheckCellVertices() 84 closure[Nv++] = vertex; in CheckCellVertices() 89 …closure[v] == arrVerts[v] + vStart, comm, PETSC_ERR_ARG_WRONG, "Cell %" PetscInt_FMT " vertex[%" P… in CheckCellVertices() 91 PetscCall(DMPlexRestoreTransitiveClosure(dm, cell, PETSC_TRUE, &Ncl, &closure)); in CheckCellVertices() 101 PetscInt *closure = NULL; in ReorientCell() local 116 PetscCall(DMPlexGetTransitiveClosure(dm, cell, PETSC_TRUE, &Ncl, &closure)); in ReorientCell() 118 const PetscInt vertex = closure[cl]; in ReorientCell() 126 PetscCall(DMPlexRestoreTransitiveClosure(dm, cell, PETSC_TRUE, &Ncl, &closure)); in ReorientCell()
|
| /petsc/src/dm/impls/plex/adaptors/pragmatic/ |
| H A D | pragmaticadapt.c | 109 PetscInt *closure = NULL; in DMAdaptMetric_Pragmatic_Plex() local 112 PetscCall(DMPlexGetTransitiveClosure(dm, bdFacesFull[f], PETSC_TRUE, &closureSize, &closure)); in DMAdaptMetric_Pragmatic_Plex() 114 if ((closure[cl] >= vStart) && (closure[cl] < vEnd)) ++bdSize; in DMAdaptMetric_Pragmatic_Plex() 116 … PetscCall(DMPlexRestoreTransitiveClosure(dm, bdFacesFull[f], PETSC_TRUE, &closureSize, &closure)); in DMAdaptMetric_Pragmatic_Plex() 120 PetscInt *closure = NULL; in DMAdaptMetric_Pragmatic_Plex() local 123 PetscCall(DMPlexGetTransitiveClosure(dm, bdFacesFull[f], PETSC_TRUE, &closureSize, &closure)); in DMAdaptMetric_Pragmatic_Plex() 125 if ((closure[cl] >= vStart) && (closure[cl] < vEnd)) bdFaces[bdSize++] = closure[cl] - vStart; in DMAdaptMetric_Pragmatic_Plex() 127 … PetscCall(DMPlexRestoreTransitiveClosure(dm, bdFacesFull[f], PETSC_TRUE, &closureSize, &closure)); in DMAdaptMetric_Pragmatic_Plex()
|
| /petsc/src/dm/impls/plex/ |
| H A D | plexvtu.c | 84 PetscInt *closure = NULL; in DMPlexGetVTKConnectivity() local 87 PetscCall(DMPlexGetTransitiveClosure(dm, c, PETSC_TRUE, &closureSize, &closure)); in DMPlexGetVTKConnectivity() 89 if ((closure[v] >= vStart) && (closure[v] < vEnd)) { in DMPlexGetVTKConnectivity() 90 if (!localized) PetscCall(PetscVTKIntCast(closure[v] - vStart, &conn[countconn++])); in DMPlexGetVTKConnectivity() 95 PetscCall(DMPlexRestoreTransitiveClosure(dm, c, PETSC_TRUE, &closureSize, &closure)); in DMPlexGetVTKConnectivity() 218 PetscInt *closure = NULL; in DMPlexVTKWriteAll_VTU() local 221 PetscCall(DMPlexGetTransitiveClosure(dm, c, PETSC_TRUE, &closureSize, &closure)); in DMPlexVTKWriteAll_VTU() 223 if ((closure[v] >= vStart) && (closure[v] < vEnd)) { in DMPlexVTKWriteAll_VTU() 228 PetscCall(DMPlexRestoreTransitiveClosure(dm, c, PETSC_TRUE, &closureSize, &closure)); in DMPlexVTKWriteAll_VTU() 465 PetscInt *closure = NULL; in DMPlexVTKWriteAll_VTU() local [all …]
|
| H A D | plexsubmesh.c | 136 PetscInt *closure = NULL; in DMPlexMarkBoundaryFaces_Internal() local 140 PetscCall(DMPlexGetTransitiveClosure(dm, f, PETSC_TRUE, &clSize, &closure)); in DMPlexMarkBoundaryFaces_Internal() 142 PetscCall(DMLabelGetValue(label, closure[cl], &cval)); in DMPlexMarkBoundaryFaces_Internal() 148 PetscCall(DMPlexRestoreTransitiveClosure(dm, f, PETSC_TRUE, &clSize, &closure)); in DMPlexMarkBoundaryFaces_Internal() 227 PetscInt *closure = NULL; in DMPlexLabelComplete_Internal() local 233 PetscCall(DMPlexGetTransitiveClosure(dm, q, PETSC_TRUE, &closureSize, &closure)); in DMPlexLabelComplete_Internal() 234 … for (c = 0; c < closureSize * 2; c += 2) PetscCall(DMLabelSetValue(label, closure[c], values[v])); in DMPlexLabelComplete_Internal() 235 PetscCall(DMPlexRestoreTransitiveClosure(dm, q, PETSC_TRUE, &closureSize, &closure)); in DMPlexLabelComplete_Internal() 344 PetscInt *closure = NULL; in DMPlexLabelAddCells() local 359 PetscCall(DMPlexGetTransitiveClosure(dm, points[p], PETSC_FALSE, &closureSize, &closure)); in DMPlexLabelAddCells() [all …]
|
| H A D | plexsfc.c | 609 PetscInt cl_size, *closure = NULL, num_vertices = 0; in DMPlexCorrectOrientationForIsoperiodic() local 610 PetscCall(DMPlexGetTransitiveClosure(dm, f, PETSC_TRUE, &cl_size, &closure)); in DMPlexCorrectOrientationForIsoperiodic() 612 PetscInt cl_point = closure[2 * p]; in DMPlexCorrectOrientationForIsoperiodic() 622 PetscCall(DMPlexRestoreTransitiveClosure(dm, f, PETSC_TRUE, &cl_size, &closure)); in DMPlexCorrectOrientationForIsoperiodic() 642 PetscInt cl_size, *closure = NULL; in DMPlexCorrectOrientationForIsoperiodic() local 644 PetscCall(DMPlexGetTransitiveClosure(dm, donor_face, PETSC_TRUE, &cl_size, &closure)); in DMPlexCorrectOrientationForIsoperiodic() 647 PetscInt cl_point = closure[2 * p], dof, offset; in DMPlexCorrectOrientationForIsoperiodic() 659 PetscInt cl_point = closure[2 * p], cone_size, depth; in DMPlexCorrectOrientationForIsoperiodic() 671 PetscCall(DMPlexRestoreTransitiveClosure(dm, donor_face, PETSC_TRUE, &cl_size, &closure)); in DMPlexCorrectOrientationForIsoperiodic() 706 PetscInt *closure = NULL; in DMPlexCorrectOrientationForIsoperiodic() local [all …]
|
| H A D | plextree.c | 700 PetscInt closureSize, *closure = NULL; in DMPlexCreateAnchors_Tree() local 702 PetscCall(DMPlexGetTransitiveClosure(dm, ancestor, PETSC_TRUE, &closureSize, &closure)); in DMPlexCreateAnchors_Tree() 704 PetscCall(DMPlexRestoreTransitiveClosure(dm, ancestor, PETSC_TRUE, &closureSize, &closure)); in DMPlexCreateAnchors_Tree() 725 PetscInt j, closureSize, *closure = NULL, aOff; in DMPlexCreateAnchors_Tree() local 729 PetscCall(DMPlexGetTransitiveClosure(dm, ancestor, PETSC_TRUE, &closureSize, &closure)); in DMPlexCreateAnchors_Tree() 730 for (j = 0; j < closureSize; j++) anchors[aOff + j] = closure[2 * j]; in DMPlexCreateAnchors_Tree() 731 PetscCall(DMPlexRestoreTransitiveClosure(dm, ancestor, PETSC_TRUE, &closureSize, &closure)); in DMPlexCreateAnchors_Tree() 1238 PetscInt closureSize, closureSizeP, *closure = NULL, *closureP = NULL; in DMPlexComputeAnchorMatrix_Tree_Direct() local 1243 PetscCall(DMPlexGetTransitiveClosure(dm, c, PETSC_TRUE, &closureSize, &closure)); in DMPlexComputeAnchorMatrix_Tree_Direct() 1245 PetscInt p = closure[2 * i]; in DMPlexComputeAnchorMatrix_Tree_Direct() [all …]
|
| /petsc/src/dm/impls/plex/transform/impls/filter/ |
| H A D | plextrfilter.c | 42 PetscInt *closure = NULL; in DMPlexTransformSetUp_Filter() local 46 PetscCall(DMPlexGetTransitiveClosure(dm, cell, PETSC_TRUE, &Ncl, &closure)); in DMPlexTransformSetUp_Filter() 48 PetscCall(DMPlexGetCellType(dm, closure[cl], &ct)); in DMPlexTransformSetUp_Filter() 49 PetscCall(DMLabelSetValue(tr->trType, closure[cl], ct)); in DMPlexTransformSetUp_Filter() 51 PetscCall(DMPlexRestoreTransitiveClosure(dm, cell, PETSC_TRUE, &Ncl, &closure)); in DMPlexTransformSetUp_Filter()
|
| /petsc/src/dm/impls/plex/adaptors/mmg/ |
| H A D | mmgadapt.c | 94 PetscInt *closure = NULL, closureSize, cl; in DMAdaptMetric_Mmg_Plex() local 100 PetscCall(DMPlexGetTransitiveClosure(dm, f, PETSC_TRUE, &closureSize, &closure)); in DMAdaptMetric_Mmg_Plex() 102 if ((closure[cl] >= vStart) && (closure[cl] < vEnd)) ++bdSize; in DMAdaptMetric_Mmg_Plex() 104 PetscCall(DMPlexRestoreTransitiveClosure(dm, f, PETSC_TRUE, &closureSize, &closure)); in DMAdaptMetric_Mmg_Plex() 109 PetscInt *closure = NULL, closureSize, cl; in DMAdaptMetric_Mmg_Plex() local 114 PetscCall(DMPlexGetTransitiveClosure(dm, f, PETSC_TRUE, &closureSize, &closure)); in DMAdaptMetric_Mmg_Plex() 116 … if ((closure[cl] >= vStart) && (closure[cl] < vEnd)) bdFaces[bdSize++] = closure[cl] - vStart + 1; in DMAdaptMetric_Mmg_Plex() 118 PetscCall(DMPlexRestoreTransitiveClosure(dm, f, PETSC_TRUE, &closureSize, &closure)); in DMAdaptMetric_Mmg_Plex()
|
| /petsc/src/dm/impls/plex/tests/output/ |
| H A D | ex9_correctness_1.out | 3 [0] VecClosures: 64 Total time: 4.506e-05s Average time per vector closure: 7.041e-07s 4 [0] VecClosures with Index: 64 Total time: 4.292e-06s Average time per vector closure: 6.706e-08s
|
| H A D | ex9_correctness_2.out | 3 [0] VecClosures: 4096 Total time: 1.391e-03s Average time per vector closure: 3.396e-07s 4 [0] VecClosures with Index: 4096 Total time: 2.031e-04s Average time per vector closure: 4.959e-08s
|
| H A D | ex9_correctness_0.out | 3 [0] VecClosures: 4 Total time: 3.338e-06s Average time per vector closure: 8.345e-07s 4 [0] VecClosures with Index: 4 Total time: 7.153e-07s Average time per vector closure: 1.788e-07s
|
| /petsc/systems/Apple/iOS/examples/SwiftExample/SwiftExample/ |
| H A D | AppDelegate.swift | 25 var closure: (UnsafePointer<Int8>) -> CInt = PetscVFPrintfiPhone variable 35 PetscVFPrintfSetClosure(closure) in application()
|
| /petsc/src/dm/impls/plex/tests/ |
| H A D | ex26f90.F90 | 62 PetscInt, dimension(:), pointer :: closureA, closure 280 nullify (closure) 281 …cCallA(DMPlexGetTransitiveClosure(dm, cellID(cell), PETSC_TRUE, PETSC_NULL_INTEGER, closure, ierr)) 282 do p = 1, size(closure), 2 285 if ((closure(p) >= pStartDepth(d)) .and. (closure(p) < pEndDepth(d))) then 286 PetscCallA(PetscSectionSetDof(section, closure(p), dofU(d) + dofA(d) + dofS(d), ierr)) 287 PetscCallA(PetscSectionSetFieldDof(section, closure(p), fieldU, dofU(d), ierr)) 288 PetscCallA(PetscSectionSetFieldDof(section, closure(p), fieldA, dofA(d), ierr)) 289 PetscCallA(PetscSectionSetFieldDof(section, closure(p), fieldS, dofS(d), ierr)) 293 …lA(DMPlexRestoreTransitiveClosure(dm, cellID(cell), PETSC_TRUE, PETSC_NULL_INTEGER, closure, ierr))
|
| H A D | ex62f90.F90 | 45 PetscInt, dimension(:), pointer :: closureA, closure 263 nullify (closure) 264 …CallA(DMPlexGetTransitiveClosure(pdm, cellID(cell), PETSC_TRUE, PETSC_NULL_INTEGER, closure, ierr)) 265 do p = 1, size(closure), 2 268 if ((closure(p) >= pStartDepth(d)) .and. (closure(p) < pEndDepth(d))) then 269 PetscCallA(PetscSectionSetDof(section, closure(p), dofU(d) + dofA(d) + dofS(d), ierr)) 270 PetscCallA(PetscSectionSetFieldDof(section, closure(p), fieldU, dofU(d), ierr)) 271 PetscCallA(PetscSectionSetFieldDof(section, closure(p), fieldA, dofA(d), ierr)) 272 PetscCallA(PetscSectionSetFieldDof(section, closure(p), fieldS, dofS(d), ierr)) 276 …A(DMPlexRestoreTransitiveClosure(pdm, cellID(cell), PETSC_TRUE, PETSC_NULL_INTEGER, closure, ierr))
|
| H A D | ex26.c | 236 PetscInt *closure = NULL; in main() local 238 PetscCall(DMPlexGetTransitiveClosure(dm, cellID[cell], PETSC_TRUE, &closureSize, &closure)); in main() 242 if ((closure[2 * p] >= pStartDepth[d]) && (closure[2 * p] < pEndDepth[d])) { in main() 243 PetscCall(PetscSectionSetDof(section, closure[2 * p], dofU[d] + dofA[d] + dofS[d])); in main() 244 PetscCall(PetscSectionSetFieldDof(section, closure[2 * p], fieldU, dofU[d])); in main() 245 PetscCall(PetscSectionSetFieldDof(section, closure[2 * p], fieldA, dofA[d])); in main() 246 PetscCall(PetscSectionSetFieldDof(section, closure[2 * p], fieldS, dofS[d])); in main() 250 … PetscCall(DMPlexRestoreTransitiveClosure(dm, cellID[cell], PETSC_TRUE, &closureSize, &closure)); in main()
|
| H A D | ex64.c | 156 PetscInt *closure = NULL; in main() local 158 PetscCall(DMPlexGetTransitiveClosure(dm, cellID[cell], PETSC_TRUE, &closureSize, &closure)); in main() 162 if ((closure[2 * p] >= pStartDepth[d]) && (closure[2 * p] < pEndDepth[d])) { in main() 163 PetscCall(PetscSectionSetDof(section, closure[2 * p], dofU[d] + dofA[d] + dofS[d])); in main() 164 PetscCall(PetscSectionSetFieldDof(section, closure[2 * p], fieldU, dofU[d])); in main() 165 PetscCall(PetscSectionSetFieldDof(section, closure[2 * p], fieldA, dofA[d])); in main() 166 PetscCall(PetscSectionSetFieldDof(section, closure[2 * p], fieldS, dofS[d])); in main() 170 … PetscCall(DMPlexRestoreTransitiveClosure(dm, cellID[cell], PETSC_TRUE, &closureSize, &closure)); in main()
|
| H A D | ex9.c | 282 PetscInt *closure = NULL; in TestTransitiveClosure() local 285 PetscCall(DMPlexGetTransitiveClosure(dm, c, PETSC_TRUE, &closureSize, &closure)); in TestTransitiveClosure() 286 PetscCall(DMPlexRestoreTransitiveClosure(dm, c, PETSC_TRUE, &closureSize, &closure)); in TestTransitiveClosure() 353 PetscScalar *closure = userArray; in TestVecClosure() local 356 PetscCall(DMPlexVecGetClosure(dm, s, v, c, &closureSize, &closure)); in TestVecClosure() 357 … if (!user->reuseArray) PetscCall(DMPlexVecRestoreClosure(dm, s, v, c, &closureSize, &closure)); in TestVecClosure()
|
| H A D | ex60.c | 91 PetscInt *closure = NULL, closureSize, cl; in main() local 94 PetscCall(DMPlexGetTransitiveClosure(dm, f, PETSC_TRUE, &closureSize, &closure)); in main() 96 PetscInt off = closure[cl]; in main() 104 PetscCall(DMPlexRestoreTransitiveClosure(dm, f, PETSC_TRUE, &closureSize, &closure)); in main()
|
| /petsc/src/dm/impls/plex/generators/ctetgen/ |
| H A D | ctetgenerate.c | 254 PetscInt *closure = NULL, Ncl, cl; in DMPlexGenerate_CTetgen() local 257 PetscCall(DMPlexGetTransitiveClosure(*dm, c, PETSC_TRUE, &Ncl, &closure)); in DMPlexGenerate_CTetgen() 259 const PetscInt p = closure[cl * 2]; in DMPlexGenerate_CTetgen() 270 PetscCall(DMPlexRestoreTransitiveClosure(*dm, c, PETSC_TRUE, &Ncl, &closure)); in DMPlexGenerate_CTetgen() 390 PetscInt *closure = NULL; in DMPlexRefine_CTetgen() local 393 PetscCall(DMPlexGetTransitiveClosure(dm, c, PETSC_TRUE, &closureSize, &closure)); in DMPlexRefine_CTetgen() 395 …for (v = 0; v < 4; ++v) in->tetrahedronlist[idx * in->numberofcorners + v] = closure[(v + closureS… in DMPlexRefine_CTetgen() 396 PetscCall(DMPlexRestoreTransitiveClosure(dm, c, PETSC_TRUE, &closureSize, &closure)); in DMPlexRefine_CTetgen() 529 PetscInt *closure = NULL, Ncl, cl; in DMPlexRefine_CTetgen() local 532 PetscCall(DMPlexGetTransitiveClosure(*dmRefined, c, PETSC_TRUE, &Ncl, &closure)); in DMPlexRefine_CTetgen() [all …]
|
| /petsc/src/dm/impls/plex/adaptors/parmmg/ |
| H A D | parmmgadapt.c | 142 PetscInt *closure = NULL, closureSize, cl; in DMAdaptMetric_ParMmg_Plex() local 157 PetscCall(DMPlexGetTransitiveClosure(dm, f, PETSC_TRUE, &closureSize, &closure)); in DMAdaptMetric_ParMmg_Plex() 159 if ((closure[cl] >= vStart) && (closure[cl] < vEnd)) ++bdSize; in DMAdaptMetric_ParMmg_Plex() 161 PetscCall(DMPlexRestoreTransitiveClosure(dm, f, PETSC_TRUE, &closureSize, &closure)); in DMAdaptMetric_ParMmg_Plex() 165 PetscInt *closure = NULL, closureSize, cl; in DMAdaptMetric_ParMmg_Plex() local 169 PetscCall(DMPlexGetTransitiveClosure(dm, f, PETSC_TRUE, &closureSize, &closure)); in DMAdaptMetric_ParMmg_Plex() 171 …if ((closure[cl] >= vStart) && (closure[cl] < vEnd)) bdFaces[bdSize++] = vertexNumber[closure[cl] … in DMAdaptMetric_ParMmg_Plex() 173 PetscCall(DMPlexRestoreTransitiveClosure(dm, f, PETSC_TRUE, &closureSize, &closure)); in DMAdaptMetric_ParMmg_Plex()
|
| /petsc/src/dm/impls/plex/generators/tetgen/ |
| H A D | tetgenerate.cxx | 283 PetscInt *closure = nullptr, Ncl, cl; in DMPlexGenerate_Tetgen() local 286 PetscCall(DMPlexGetTransitiveClosure(*dm, c, PETSC_TRUE, &Ncl, &closure)); in DMPlexGenerate_Tetgen() 288 const PetscInt p = closure[cl]; in DMPlexGenerate_Tetgen() 299 PetscCall(DMPlexRestoreTransitiveClosure(*dm, c, PETSC_TRUE, &Ncl, &closure)); in DMPlexGenerate_Tetgen() 419 PetscInt *closure = nullptr; in DMPlexRefine_Tetgen() local 422 PetscCall(DMPlexGetTransitiveClosure(dm, c, PETSC_TRUE, &closureSize, &closure)); in DMPlexRefine_Tetgen() 424 …for (v = 0; v < 4; ++v) in.tetrahedronlist[idx * in.numberofcorners + v] = closure[(v + closureSiz… in DMPlexRefine_Tetgen() 425 PetscCall(DMPlexRestoreTransitiveClosure(dm, c, PETSC_TRUE, &closureSize, &closure)); in DMPlexRefine_Tetgen() 562 PetscInt *closure = nullptr, Ncl, cl; in DMPlexRefine_Tetgen() local 565 PetscCall(DMPlexGetTransitiveClosure(*dmRefined, c, PETSC_TRUE, &Ncl, &closure)); in DMPlexRefine_Tetgen() [all …]
|
| /petsc/src/dm/dt/tests/ |
| H A D | ex4.c | 10 …PetscInt nFunc, *ids, *idsCopy, *idsCopy2, i, closureSize, *closure = NULL, offset, de… in CheckSymmetry() local 50 PetscCall(DMPlexGetTransitiveClosure(dm, 0, PETSC_TRUE, &closureSize, &closure)); in CheckSymmetry() 53 PetscInt point = closure[2 * i], numFaces, j; in CheckSymmetry() 108 PetscCall(DMPlexRestoreTransitiveClosure(dm, 0, PETSC_TRUE, &closureSize, &closure)); in CheckSymmetry()
|
| /petsc/src/binding/petsc4py/src/petsc4py/lib/_pytypes/viewer/ |
| H A D | petscpyvista.py | 76 closure, ornt = plex.getTransitiveClosure(c) 77 for cl in closure: 83 closure, ornt = plex.getTransitiveClosure(c) 86 for cl in closure:
|
| /petsc/src/dm/dt/fe/impls/composite/ |
| H A D | fecomposite.c | 47 PetscInt *closure = NULL; in PetscFESetUp_Composite() local 49 PetscCall(DMPlexGetTransitiveClosure(K, s, PETSC_TRUE, &closureSize, &closure)); in PetscFESetUp_Composite() 51 PetscInt point = closure[2 * j]; in PetscFESetUp_Composite() 58 PetscCall(DMPlexRestoreTransitiveClosure(K, s, PETSC_TRUE, &closureSize, &closure)); in PetscFESetUp_Composite()
|