Lines Matching refs:ois

24 …IS        *ois;           /* index sets that define the outer (conceptually, overlapping) subdomai…  member
101 PetscCall(ISGetLocalSize(osm->ois[i], &nidx)); in PCGASMSubdomainView_Private()
104 PetscCall(ISGetIndices(osm->ois[i], &idx)); in PCGASMSubdomainView_Private()
107 PetscCall(ISRestoreIndices(osm->ois[i], &idx)); in PCGASMSubdomainView_Private()
209 PetscCallMPI(MPI_Comm_size(((PetscObject)osm->ois[d])->comm, &ssize)); in PCView_GASM()
210 PetscCallMPI(MPI_Comm_rank(((PetscObject)osm->ois[d])->comm, &srank)); in PCView_GASM()
211 PetscCall(PetscViewerGetSubViewer(viewer, ((PetscObject)osm->ois[d])->comm, &sviewer)); in PCView_GASM()
212 PetscCall(ISGetLocalSize(osm->ois[d], &bsz)); in PCView_GASM()
225 … PetscCall(PetscViewerRestoreSubViewer(viewer, ((PetscObject)osm->ois[d])->comm, &sviewer)); in PCView_GASM()
360 if (!osm->ois) { in PCSetUp_GASM()
365 PetscCall(PetscMalloc1(osm->n, &osm->ois)); in PCSetUp_GASM()
368 PetscCall(ISDuplicate(osm->iis[i], (osm->ois) + i)); in PCSetUp_GASM()
369 PetscCall(ISCopy(osm->iis[i], osm->ois[i])); in PCSetUp_GASM()
372 osm->ois[i] = osm->iis[i]; in PCSetUp_GASM()
377 PetscCall(MatIncreaseOverlapSplit(pc->pmat, osm->n, osm->ois, osm->overlap)); in PCSetUp_GASM()
391 …GlobalNumbering(PetscObjectComm((PetscObject)pc), osm->n, (PetscObject *)osm->ois, &osm->N, NULL)); in PCSetUp_GASM()
396 PetscCall(ISSort(osm->ois[i])); in PCSetUp_GASM()
409 PetscCall(ISGetLocalSize(osm->ois[i], &oni)); in PCSetUp_GASM()
416 PetscCall(ISGetLocalSize(osm->ois[i], &oni)); in PCSetUp_GASM()
417 PetscCall(ISGetIndices(osm->ois[i], &oidxi)); in PCSetUp_GASM()
419 PetscCall(ISRestoreIndices(osm->ois[i], &oidxi)); in PCSetUp_GASM()
438 …obalNumbering(PetscObjectComm((PetscObject)pc), osm->n, (PetscObject *)osm->ois, NULL, numbering)); in PCSetUp_GASM()
455 PetscCall(ISGetLocalSize(osm->ois[i], &oni)); in PCSetUp_GASM()
476 PetscCall(ISGetLocalSize(osm->ois[i], &oni)); in PCSetUp_GASM()
477 PetscCall(ISGetIndices(osm->ois[i], &indices)); in PCSetUp_GASM()
484 PetscCall(ISRestoreIndices(osm->ois[i], &indices)); in PCSetUp_GASM()
505 PetscCall(ISGetLocalSize(osm->ois[i], &oni)); in PCSetUp_GASM()
507 PetscCall(ISGetSize(osm->ois[i], &oNi)); in PCSetUp_GASM()
508 …PetscCall(VecCreateMPIWithArray(((PetscObject)osm->ois[i])->comm, 1, oni, oNi, gxarray + on, &osm-… in PCSetUp_GASM()
509 …PetscCall(VecCreateMPIWithArray(((PetscObject)osm->ois[i])->comm, 1, oni, oNi, gyarray + on, &osm-… in PCSetUp_GASM()
517 PetscCall(KSPCreate(((PetscObject)osm->ois[i])->comm, &ksp)); in PCSetUp_GASM()
560 PetscCall(MatCreateSubMatricesMPI(pc->pmat, osm->n, osm->ois, osm->ois, scall, &osm->pmat)); in PCSetUp_GASM()
562 PetscCall(MatCreateSubMatrices(pc->pmat, osm->n, osm->ois, osm->ois, scall, &osm->pmat)); in PCSetUp_GASM()
571 PetscCall(PCModifySubMatrices(pc, osm->n, osm->ois, osm->ois, osm->pmat, pc->modifysubmatricesP)); in PCSetUp_GASM()
669 …PetscCall(MatCreateDense(PetscObjectComm((PetscObject)osm->ois[0]), m, PETSC_DECIDE, M, N, NULL, &… in PCMatApply_GASM()
689 …PetscCall(MatCreateDense(PetscObjectComm((PetscObject)osm->ois[0]), m, PETSC_DECIDE, M, N, NULL, &… in PCMatApply_GASM()
705 …PetscCall(MatCreateDense(PetscObjectComm((PetscObject)osm->ois[0]), m, PETSC_DECIDE, M, N, NULL, &… in PCMatApply_GASM()
829 PetscCall(PCGASMDestroySubdomains(osm->n, &osm->ois, &osm->iis)); in PCReset_GASM()
850 PetscCall(PCGASMDestroySubdomains(osm->n, &osm->ois, &osm->iis)); in PCDestroy_GASM()
914 PetscCall(PCGASMDestroySubdomains(osm->n, &osm->iis, &osm->ois)); in PCGASMSetTotalSubdomains()
915 osm->ois = osm->iis = NULL; in PCGASMSetTotalSubdomains()
926 static PetscErrorCode PCGASMSetSubdomains_GASM(PC pc, PetscInt n, IS iis[], IS ois[]) in PCGASMSetSubdomains_GASM() argument
935 PetscCall(PCGASMDestroySubdomains(osm->n, &osm->iis, &osm->ois)); in PCGASMSetSubdomains_GASM()
936 osm->iis = osm->ois = NULL; in PCGASMSetSubdomains_GASM()
940 if (ois) { in PCGASMSetSubdomains_GASM()
941 PetscCall(PetscMalloc1(n, &osm->ois)); in PCGASMSetSubdomains_GASM()
943 PetscCall(PetscObjectReference((PetscObject)ois[i])); in PCGASMSetSubdomains_GASM()
944 osm->ois[i] = ois[i]; in PCGASMSetSubdomains_GASM()
960 if (!ois) { in PCGASMSetSubdomains_GASM()
961 osm->ois = NULL; in PCGASMSetSubdomains_GASM()
1087 PetscErrorCode PCGASMSetSubdomains(PC pc, PetscInt n, IS iis[], IS ois[]) in PCGASMSetSubdomains() argument
1093 PetscTryMethod(pc, "PCGASMSetSubdomains_C", (PC, PetscInt, IS[], IS[]), (pc, n, iis, ois)); in PCGASMSetSubdomains()
1290 osm->ois = NULL; in PCCreate_GASM()
1534 PetscErrorCode PCGASMDestroySubdomains(PetscInt n, IS *iis[], IS *ois[]) in PCGASMDestroySubdomains() argument
1540 if (ois) { in PCGASMDestroySubdomains()
1541 PetscAssertPointer(ois, 3); in PCGASMDestroySubdomains()
1542 if (*ois) { in PCGASMDestroySubdomains()
1543 PetscAssertPointer(*ois, 3); in PCGASMDestroySubdomains()
1544 for (i = 0; i < n; i++) PetscCall(ISDestroy(&(*ois)[i])); in PCGASMDestroySubdomains()
1545 PetscCall(PetscFree(*ois)); in PCGASMDestroySubdomains()
1615 … Mdomains, PetscInt Ndomains, PetscInt dof, PetscInt overlap, PetscInt *nsub, IS *iis[], IS *ois[]) in PCGASMCreateSubdomains2D() argument
1629 IS **xis = NULL, **is = ois, **is_local = iis; in PCGASMCreateSubdomains2D()
1792 PetscErrorCode PCGASMGetSubdomains(PC pc, PetscInt *n, IS *iis[], IS *ois[]) in PCGASMGetSubdomains() argument
1805 if (ois) PetscCall(PetscMalloc1(osm->n, ois)); in PCGASMGetSubdomains()
1806 if (iis || ois) { in PCGASMGetSubdomains()
1809 if (ois) (*ois)[i] = osm->ois[i]; in PCGASMGetSubdomains()