Home
last modified time | relevance | path

Searched refs:nRanks (Results 1 – 9 of 9) sorted by relevance

/petsc/src/dm/impls/stag/
H A Dstagda.c20 PetscCall(PetscMalloc1(stag->nRanks[i], &l[i])); in DMStagCreateCompatibleDMDA()
21 for (j = 0; j < stag->nRanks[i]; ++j) l[i][j] = stag->l[i][j]; in DMStagCreateCompatibleDMDA()
35 l[0][stag->nRanks[0] - 1] += 1; /* extra vertex in direction 0 on last rank in dimension 0 */ in DMStagCreateCompatibleDMDA()
41 l[1][stag->nRanks[1] - 1] += 1; /* extra vertex in direction 1 on last rank in dimension 1 */ in DMStagCreateCompatibleDMDA()
47 l[2][stag->nRanks[2] - 1] += 1; /* extra vertex in direction 2 on last rank in dimension 2 */ in DMStagCreateCompatibleDMDA()
56 l[i][stag->nRanks[i] - 1] += 1; in DMStagCreateCompatibleDMDA()
66 l[i][stag->nRanks[i] - 1] += 1; in DMStagCreateCompatibleDMDA()
76 l[i][stag->nRanks[i] - 1] += 1; in DMStagCreateCompatibleDMDA()
90 l[i][stag->nRanks[i] - 1] += 1; in DMStagCreateCompatibleDMDA()
118 …ryType[0], stag->boundaryType[1], stencilType, N[0], N[1], stag->nRanks[0], stag->nRanks[1], dof, … in DMStagCreateCompatibleDMDA()
[all …]
H A Dstagintern.c46 …ndaryType[2], stag->N[0], stag->N[1], stag->N[2], stag->nRanks[0], stag->nRanks[1], stag->nRanks[2… in DMStagDuplicateWithoutSetup()
H A Dstag.c273 PetscCall(PetscMalloc1(stag->nRanks[d], &l[d])); in DMCoarsen_Stag()
274 for (i = 0; i < stag->nRanks[d]; ++i) { in DMCoarsen_Stag()
323 PetscCall(PetscMalloc1(stag->nRanks[d], &l[d])); in DMRefine_Stag()
324 …for (i = 0; i < stag->nRanks[d]; ++i) l[d][i] = stag->l[d][i] * stag->refineFactor[d]; /* Just mul… in DMRefine_Stag()
782 static PetscErrorCode DMGetNeighbors_Stag(DM dm, PetscInt *nRanks, const PetscMPIInt *ranks[]) in DMGetNeighbors_Stag() argument
791 *nRanks = 3; in DMGetNeighbors_Stag()
794 *nRanks = 9; in DMGetNeighbors_Stag()
797 *nRanks = 27; in DMGetNeighbors_Stag()
826 …rASCIIPrintf(viewer, "Parallel decomposition: %d x %d ranks\n", stag->nRanks[0], stag->nRanks[1])); in DMView_Stag()
830 …, "Parallel decomposition: %d x %d x %d ranks\n", stag->nRanks[0], stag->nRanks[1], stag->nRanks[2… in DMView_Stag()
[all …]
H A Dstag2d.c212 stag->rank[0] = rank % stag->nRanks[0]; in DMSetUp_Stag_2d()
213 stag->rank[1] = rank / stag->nRanks[0]; in DMSetUp_Stag_2d()
216 stag->lastRank[i] = (PetscBool)(stag->rank[i] == stag->nRanks[i] - 1); in DMSetUp_Stag_2d()
227 const PetscInt Ni = stag->N[i], nRanksi = stag->nRanks[i]; in DMSetUp_Stag_2d()
228 PetscCall(PetscMalloc1(stag->nRanks[i], &stag->l[i])); in DMSetUp_Stag_2d()
229 for (j = 0; j < stag->nRanks[i]; ++j) stag->l[i][j] = Ni / nRanksi + ((Ni % nRanksi) > j); in DMSetUp_Stag_2d()
239 for (j = 0; j < stag->nRanks[i]; ++j) Ncheck += stag->l[i][j]; in DMSetUp_Stag_2d()
397 nNeighbors[i][0] = stag->l[0][neighborRank % stag->nRanks[0]]; in DMSetUp_Stag_2d()
398 nNeighbors[i][1] = stag->l[1][neighborRank / stag->nRanks[0]]; in DMSetUp_Stag_2d()
413 …(PetscBool)(stag->boundaryType[d] != DM_BOUNDARY_PERIODIC && stag->rank[d] == stag->nRanks[d] - 2); in DMSetUp_Stag_2d()
[all …]
H A Dstagutils.c499 if (nRanks0) *nRanks0 = stag->nRanks[0]; in DMStagGetNumRanks()
500 if (nRanks1) *nRanks1 = stag->nRanks[1]; in DMStagGetNumRanks()
501 if (nRanks2) *nRanks2 = stag->nRanks[2]; in DMStagGetNumRanks()
1195 if (nRanks0) PetscCall(PetscMPIIntCast(nRanks0, &stag->nRanks[0])); in DMStagSetNumRanks()
1196 if (dim > 1 && nRanks1) PetscCall(PetscMPIIntCast(nRanks1, &stag->nRanks[1])); in DMStagSetNumRanks()
1197 if (dim > 2 && nRanks2) PetscCall(PetscMPIIntCast(nRanks2, &stag->nRanks[2])); in DMStagSetNumRanks()
1324 …PetscCheck(stag->nRanks[d] >= 0, PetscObjectComm((PetscObject)dm), PETSC_ERR_ARG_WRONGSTATE, "Cann… in DMStagSetOwnershipRanges()
1325 if (!stag->l[d]) PetscCall(PetscMalloc1(stag->nRanks[d], &stag->l[d])); in DMStagSetOwnershipRanges()
1326 PetscCall(PetscArraycpy(stag->l[d], lin[d], stag->nRanks[d])); in DMStagSetOwnershipRanges()
1528 color = (dim > 1 ? stag->rank[1] : 0) + (dim > 2 ? stag->nRanks[1] * stag->rank[2] : 0); in DMStagSetUniformCoordinatesProduct()
[all …]
H A Dstag1d.c153 PetscCall(PetscMalloc1(stag->nRanks[0], &stag->l[0])); in DMSetUp_Stag_1d()
154 …for (j = 0; j < stag->nRanks[0]; ++j) stag->l[0][j] = stag->N[0] / stag->nRanks[0] + (stag->N[0] %… in DMSetUp_Stag_1d()
251 stag->neighbors[0] = stag->nRanks[0] - 1; in DMSetUp_Stag_1d()
430 …if (stag->boundaryType[0] == DM_BOUNDARY_PERIODIC && stag->nRanks[0] == 1) PetscCall(DMStagPopulat… in DMSetUp_Stag_1d()
H A Dstag3d.c305 stag->rank[0] = rank % stag->nRanks[0]; in DMSetUp_Stag_3d()
306 stag->rank[1] = rank % (stag->nRanks[0] * stag->nRanks[1]) / stag->nRanks[0]; in DMSetUp_Stag_3d()
307 stag->rank[2] = rank / (stag->nRanks[0] * stag->nRanks[1]); in DMSetUp_Stag_3d()
310 stag->lastRank[d] = (PetscBool)(stag->rank[d] == stag->nRanks[d] - 1); in DMSetUp_Stag_3d()
319 const PetscInt Ni = stag->N[i], nRanksi = stag->nRanks[i]; in DMSetUp_Stag_3d()
320 PetscCall(PetscMalloc1(stag->nRanks[i], &stag->l[i])); in DMSetUp_Stag_3d()
321 for (j = 0; j < stag->nRanks[i]; ++j) stag->l[i][j] = Ni / nRanksi + ((Ni % nRanksi) > j); in DMSetUp_Stag_3d()
331 for (j = 0; j < stag->nRanks[i]; ++j) Ncheck += stag->l[i][j]; in DMSetUp_Stag_3d()
445nRanks[0] == 1) || (stag->boundaryType[1] == DM_BOUNDARY_PERIODIC && stag->nRanks[1] == 1) || (sta… in DMSetUp_Stag_3d()
474 m = stag->nRanks[0]; in DMStagSetUpBuildRankGrid_3d()
[all …]
/petsc/src/dm/impls/stag/tests/
H A Dex2.c42 PetscInt nRanks[3], n[3], dim; in Test_3d_4x4x4_3x3x3() local
45 PetscCall(DMStagGetNumRanks(dmstag, &nRanks[0], &nRanks[1], &nRanks[2])); in Test_3d_4x4x4_3x3x3()
46 …for (i = 0; i < 3; ++i) PetscCheck(nRanks[i] == 3, PetscObjectComm((PetscObject)dmstag), PETSC_ERR… in Test_3d_4x4x4_3x3x3()
/petsc/include/petsc/private/
H A Ddmstagimpl.h22 PetscMPIInt nRanks[DMSTAG_MAX_DIM]; /* Ranks in each direction */ member