Lines Matching refs:svtx
307 SVtx *svtx = network->cloneshared->svtx; in DMNetworkSharedVertexGetInfo() local
317 if (n) *n = svtx[i].n; in DMNetworkSharedVertexGetInfo()
318 if (sv) *sv = svtx[i].sv; in DMNetworkSharedVertexGetInfo()
335 static inline PetscErrorCode VtxGetInfo(PetscInt Nsvtx, SVtx *svtx, PetscInt net, PetscInt idx, Pet… in VtxGetInfo() argument
347 if (net == svtx[i].sv[0] && idx == svtx[i].sv[1]) { in VtxGetInfo()
348 g_idx = svtx[i].gidx; in VtxGetInfo()
351 for (j = 1; j < svtx[i].n; j++) { in VtxGetInfo()
352 svto = svtx[i].sv + 2 * j; in VtxGetInfo()
355 g_idx = svtx[i].gidx; /* output gidx for to_vertex */ in VtxGetInfo()
404 SVtx *svtx = NULL; in SharedVtxCreate() local
470 PetscCall(PetscMalloc1(nta, &svtx)); in SharedVtxCreate()
476 svtx[nsv].sv = sv; in SharedVtxCreate()
477 svtx[nsv].n = n; in SharedVtxCreate()
478 svtx[nsv].gidx = network->cloneshared->NVertices; /* initialization */ in SharedVtxCreate()
495 svtx[nsv].gidx = gidx_tmp[0]; /* = min(gidx) */ in SharedVtxCreate()
503 PetscCall(PetscHMapISet(network->cloneshared->svtable, svtx[nsv].gidx + 1, nsv + 1)); in SharedVtxCreate()
513 network->cloneshared->svtx = svtx; in SharedVtxCreate()
537 SVtx *svtx; in GetEdgelist_Coupling() local
547 svtx = network->cloneshared->svtx; in GetEdgelist_Coupling()
563 PetscCall(VtxGetInfo(Nsv, svtx, net, idx, &gidx_from, &svtype, &sv_idx)); in GetEdgelist_Coupling()
566 net_from = svtx[sv_idx].sv[0]; /* subnet number of its shared vertex */ in GetEdgelist_Coupling()
890 PetscErrorCode DMNetworkGetSharedVertices(DM dm, PeOp PetscInt *nsv, PeOp const PetscInt *svtx[]) in DMNetworkGetSharedVertices() argument
897 if (svtx) *svtx = net->cloneshared->svertices; in DMNetworkGetSharedVertices()
1828 newDMnetwork->cloneshared->svtx = oldDMnetwork->cloneshared->svtx; /* global vertices! */ in DMNetworkDistribute()
1829 oldDMnetwork->cloneshared->svtx = NULL; in DMNetworkDistribute()
1882 for (j = 0; j < newDMnetwork->cloneshared->svtx[svtx_idx].n; j++) { in DMNetworkDistribute()
1883 sv = newDMnetwork->cloneshared->svtx[svtx_idx].sv + 2 * j; in DMNetworkDistribute()
1934 for (j = 0; j < newDMnetwork->cloneshared->svtx[svtx_idx].n; j++) { in DMNetworkDistribute()
1935 sv = newDMnetwork->cloneshared->svtx[svtx_idx].sv + 2 * j; in DMNetworkDistribute()
2791 … = 0; j < network->cloneshared->Nsvtx; j++) PetscCall(PetscFree(network->cloneshared->svtx[j].sv)); in DMDestroy_Network()
2792 PetscCall(PetscFree(network->cloneshared->svtx)); in DMDestroy_Network()