Lines Matching refs:nodeIdxDim

310   PetscInt   nodeIdxDim;  member
320 PetscErrorCode PetscLagNodeIndicesGetData_Internal(PetscLagNodeIndices ni, PetscInt *nodeIdxDim, Pe… in PetscLagNodeIndicesGetData_Internal() argument
323 *nodeIdxDim = ni->nodeIdxDim; in PetscLagNodeIndicesGetData_Internal()
343 (*niNew)->nodeIdxDim = ni->nodeIdxDim; in PetscLagNodeIndicesDuplicate()
346 PetscCall(PetscMalloc1(ni->nNodes * ni->nodeIdxDim, &((*niNew)->nodeIdx))); in PetscLagNodeIndicesDuplicate()
347 PetscCall(PetscArraycpy((*niNew)->nodeIdx, ni->nodeIdx, ni->nNodes * ni->nodeIdxDim)); in PetscLagNodeIndicesDuplicate()
402 PetscInt nodeIdxDim = ni->nodeIdxDim; in PetscLagNodeIndicesComputeVertexOrder() local
405 PetscCall(PetscMalloc1(nVerts * nodeIdxDim, &newNodeIdx)); in PetscLagNodeIndicesComputeVertexOrder()
410 const PetscInt *iv = &(ni->nodeIdx[idxOrder[v] * nodeIdxDim]); in PetscLagNodeIndicesComputeVertexOrder()
411 const PetscInt *iw = &(ni->nodeIdx[idxOrder[w] * nodeIdxDim]); in PetscLagNodeIndicesComputeVertexOrder()
414 for (d = nodeIdxDim - 1; d >= 0; d--) in PetscLagNodeIndicesComputeVertexOrder()
425 …for (d = 0; d < nodeIdxDim; d++) newNodeIdx[v * ni->nodeIdxDim + d] = ni->nodeIdx[idxOrder[v] * no… in PetscLagNodeIndicesComputeVertexOrder()
458 PetscCall(PetscMalloc1(ni->nodeIdxDim * nVerts, &newNodeIdx)); in PetscLagNodeIndicesComputeVertexOrder()
461 …for (d = 0; d < ni->nodeIdxDim; d++) newNodeIdx[revlexOrder[v] * ni->nodeIdxDim + d] = ni->nodeIdx… in PetscLagNodeIndicesComputeVertexOrder()
481 ni->nodeIdxDim = dim + 1; in PetscLagNodeIndicesCreateSimplexVertices()
500 PetscInt nodeIdxDim, subNodeIdxDim = facetni->nodeIdxDim; in PetscLagNodeIndicesCreateTensorVertices() local
507 ni->nodeIdxDim = nodeIdxDim = subNodeIdxDim + 2; in PetscLagNodeIndicesCreateTensorVertices()
511 PetscCall(PetscCalloc1(nodeIdxDim * nVerts, &ni->nodeIdx)); in PetscLagNodeIndicesCreateTensorVertices()
514 …for (g = 0; g < subNodeIdxDim; g++) ni->nodeIdx[f * nodeIdxDim + g] = facetni->nodeIdx[e * subNode… in PetscLagNodeIndicesCreateTensorVertices()
515 ni->nodeIdx[f * nodeIdxDim + subNodeIdxDim] = (1 - d); in PetscLagNodeIndicesCreateTensorVertices()
516 ni->nodeIdx[f * nodeIdxDim + subNodeIdxDim + 1] = d; in PetscLagNodeIndicesCreateTensorVertices()
549 PetscInt nodeIdxDim = vert->nodeIdxDim; in PetscLagNodeIndicesPushForward() local
550 PetscInt subNodeIdxDim = vertp->nodeIdxDim; in PetscLagNodeIndicesPushForward()
577 for (i = 0; i < nodeIdxDim; i++) { /* for every component of the target index space */ in PetscLagNodeIndicesPushForward()
580 … if (vertIdx[closureVerts[j] * nodeIdxDim + i] != vertIdx[closureVerts[0] * nodeIdxDim + i]) break; in PetscLagNodeIndicesPushForward()
583 PetscInt val = vertIdx[closureVerts[0] * nodeIdxDim + i]; in PetscLagNodeIndicesPushForward()
584 for (n = 0; n < nNodes; n++) pfNodeIdx[n * nodeIdxDim + i] = val; in PetscLagNodeIndicesPushForward()
590 if (vertIdx[closureVerts[j] * nodeIdxDim + i] != subVertIdx[j * subNodeIdxDim + k]) break; in PetscLagNodeIndicesPushForward()
599 … for (n = 0; n < nNodes; n++) pfNodeIdx[n * nodeIdxDim + i] = nodeIdx[n * subNodeIdxDim + subi]; in PetscLagNodeIndicesPushForward()
653 PetscInt nodeIdxDim, nNodes; in PetscLagNodeIndicesTensor() local
672 ni->nodeIdxDim = nodeIdxDim = tracei->nodeIdxDim + fiberi->nodeIdxDim; in PetscLagNodeIndicesTensor()
676 PetscCall(PetscMalloc1(nNodes * nodeIdxDim, &ni->nodeIdx)); in PetscLagNodeIndicesTensor()
682 …for (m = 0; m < tracei->nodeIdxDim; m++) ni->nodeIdx[l * nodeIdxDim + n++] = tracei->nodeIdx[i * t… in PetscLagNodeIndicesTensor()
683 …for (m = 0; m < fiberi->nodeIdxDim; m++) ni->nodeIdx[l * nodeIdxDim + n++] = fiberi->nodeIdx[j * f… in PetscLagNodeIndicesTensor()
753 PetscInt nodeIdxDim, nodeVecDim, nNodes; in PetscLagNodeIndicesMerge() local
757 ni->nodeIdxDim = nodeIdxDim = niA->nodeIdxDim; in PetscLagNodeIndicesMerge()
758 …PetscCheck(niB->nodeIdxDim == nodeIdxDim, PETSC_COMM_SELF, PETSC_ERR_ARG_INCOMP, "Cannot merge Pet… in PetscLagNodeIndicesMerge()
763 PetscCall(PetscMalloc1(nNodes * nodeIdxDim, &ni->nodeIdx)); in PetscLagNodeIndicesMerge()
765 PetscCall(PetscArraycpy(ni->nodeIdx, niA->nodeIdx, niA->nNodes * nodeIdxDim)); in PetscLagNodeIndicesMerge()
767 …PetscCall(PetscArraycpy(&ni->nodeIdx[niA->nNodes * nodeIdxDim], niB->nodeIdx, niB->nNodes * nodeId… in PetscLagNodeIndicesMerge()
815 PetscInt nodeIdxDim = ni->nodeIdxDim; in PetscLagNodeIndicesGetPermutation() local
820 PetscCall(PetscMalloc1((nodeIdxDim + 2) * m, &sorter)); in PetscLagNodeIndicesGetPermutation()
822 sorter[k++] = nodeIdxDim + 1; in PetscLagNodeIndicesGetPermutation()
824 for (j = 0; j < nodeIdxDim; j++) sorter[k++] = ni->nodeIdx[l++]; in PetscLagNodeIndicesGetPermutation()
826 switch (nodeIdxDim) { in PetscLagNodeIndicesGetPermutation()
846 qsort(sorter, m, (nodeIdxDim + 2) * sizeof(PetscInt), comp); in PetscLagNodeIndicesGetPermutation()
848 for (i = 0; i < m; i++) prm[i] = sorter[(nodeIdxDim + 2) * i + 1]; in PetscLagNodeIndicesGetPermutation()
1361 ni->nodeIdxDim = dim + 1; in PetscDualSpaceLagrangeCreateSimplexNodeMat()
1441 PetscInt nodeIdxDim, spintdim; in PetscDualSpaceLagrangeCreateAllNodeIdx() local
1455 ni->nodeIdxDim = nodeIdxDim = verti->nodeIdxDim; in PetscDualSpaceLagrangeCreateAllNodeIdx()
1459 PetscCall(PetscMalloc1(nodeIdxDim * nDofs, &ni->nodeIdx)); in PetscDualSpaceLagrangeCreateAllNodeIdx()
1464 PetscCall(PetscArraycpy(ni->nodeIdx, lag->intNodeIndices->nodeIdx, spintdim * nodeIdxDim)); in PetscDualSpaceLagrangeCreateAllNodeIdx()
1476 …->vertIndices, plag->intNodeIndices, 0, formDegree, &ni->nodeIdx[off * nodeIdxDim], &ni->nodeVec[o… in PetscDualSpaceLagrangeCreateAllNodeIdx()
1947 PetscInt nodeIdxDim = ni->nodeIdxDim; in MatPermuteByNodeIdx() local
1958 PetscCall(PetscMalloc1(nodeIdxDim * m, &nIdxPerm)); in MatPermuteByNodeIdx()
1961 …for (j = 0; j < nodeIdxDim; j++) nIdxPerm[i * nodeIdxDim + j] = ni->nodeIdx[perm[i] * nodeIdxDim +… in MatPermuteByNodeIdx()
2470 PetscInt nodeIdxDim, nodeVecDim, nNodes; in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange() local
2491 ni->nodeIdxDim = nodeIdxDim = intNodeIndices->nodeIdxDim; in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2494 PetscCall(PetscMalloc1(nNodes * nodeIdxDim, &ni->nodeIdx)); in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2503 PetscInt *nind = &(ni->nodeIdx[permOrnt[n] * nodeIdxDim]); in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2508 PetscInt *mind = &(ni->nodeIdx[permOrnt[nEnd] * nodeIdxDim]); in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2512 for (d = 0; d < nodeIdxDim; d++) in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2514 if (d < nodeIdxDim) break; in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2522 PetscInt *nind = &(intNodeIndices->nodeIdx[perm[n] * nodeIdxDim]); in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2525 PetscInt *mind = &(intNodeIndices->nodeIdx[perm[m] * nodeIdxDim]); in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2529 for (d = 0; d < nodeIdxDim; d++) in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2531 if (d < nodeIdxDim) break; in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2548 PetscInt *nind = &(ni->nodeIdx[permOrnt[n] * nodeIdxDim]); in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2553 PetscInt *mind = &(ni->nodeIdx[permOrnt[nEnd] * nodeIdxDim]); in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2557 for (d = 0; d < nodeIdxDim; d++) in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()
2559 if (d < nodeIdxDim) break; in PetscDualSpaceCreateInteriorSymmetryMatrix_Lagrange()