Lines Matching refs:n_local

33   if (jac->n_local > 0 && jac->n < 0) {  in PCSetUp_BJacobi()
34 …PetscCallMPI(MPIU_Allreduce(&jac->n_local, &jac->n, 1, MPIU_INT, MPI_SUM, PetscObjectComm((PetscOb… in PCSetUp_BJacobi()
37 for (i = 0; i < jac->n_local; i++) { in PCSetUp_BJacobi()
43 PetscCall(PetscMalloc1(jac->n_local, &jac->l_lens)); in PCSetUp_BJacobi()
44 …for (i = 0; i < jac->n_local; i++) jac->l_lens[i] = bs * ((M / bs) / jac->n_local + (((M / bs) % j… in PCSetUp_BJacobi()
46 } else if (jac->n > 0 && jac->n_local < 0) { /* global block count given */ in PCSetUp_BJacobi()
55 jac->n_local = jac->n; in PCSetUp_BJacobi()
56 PetscCall(PetscMalloc1(jac->n_local, &jac->l_lens)); in PCSetUp_BJacobi()
57 PetscCall(PetscArraycpy(jac->l_lens, jac->g_lens, jac->n_local)); in PCSetUp_BJacobi()
60 for (i = 0; i < jac->n_local; i++) sum += jac->l_lens[i]; in PCSetUp_BJacobi()
84 jac->n_local = i_end - i_start; in PCSetUp_BJacobi()
85 PetscCall(PetscMalloc1(jac->n_local, &jac->l_lens)); in PCSetUp_BJacobi()
86 PetscCall(PetscArraycpy(jac->l_lens, jac->g_lens + i_start, jac->n_local)); in PCSetUp_BJacobi()
89 jac->n_local = jac->n / size + ((jac->n % size) > rank); in PCSetUp_BJacobi()
90 PetscCall(PetscMalloc1(jac->n_local, &jac->l_lens)); in PCSetUp_BJacobi()
91 for (i = 0; i < jac->n_local; i++) { in PCSetUp_BJacobi()
92 jac->l_lens[i] = ((M / bs) / jac->n_local + (((M / bs) % jac->n_local) > i)) * bs; in PCSetUp_BJacobi()
96 } else if (jac->n < 0 && jac->n_local < 0) { /* no blocks given */ in PCSetUp_BJacobi()
98 jac->n_local = 1; in PCSetUp_BJacobi()
103 PetscCall(PetscMalloc1(jac->n_local, &jac->l_lens)); in PCSetUp_BJacobi()
104 …for (i = 0; i < jac->n_local; i++) jac->l_lens[i] = bs * ((M / bs) / jac->n_local + (((M / bs) % j… in PCSetUp_BJacobi()
107 …PetscCheck(jac->n_local >= 1, PETSC_COMM_SELF, PETSC_ERR_ARG_OUTOFRANGE, "Number of blocks is less… in PCSetUp_BJacobi()
126 if (jac->n_local == 1) { in PCSetUp_BJacobi()
161 …_local_blocks", "Local number of blocks", "PCBJacobiSetLocalBlocks", jac->n_local, &blocks, &flg)); in PCSetFromOptions_BJacobi()
166 for (i = 0; i < jac->n_local; i++) PetscCall(KSPSetFromOptions(jac->ksp[i])); in PCSetFromOptions_BJacobi()
220 …PetscCallMPI(MPIU_Allreduce(&jac->n_local, &n_global, 1, MPIU_INT, MPI_MAX, PetscObjectComm((Petsc… in PCView_BJacobi()
225 …scInt_FMT ", first local block number = %" PetscInt_FMT "\n", rank, jac->n_local, jac->first_local… in PCView_BJacobi()
226 for (i = 0; i < jac->n_local; i++) { in PCView_BJacobi()
258 static PetscErrorCode PCBJacobiGetSubKSP_BJacobi(PC pc, PetscInt *n_local, PetscInt *first_local, K… in PCBJacobiGetSubKSP_BJacobi() argument
265 if (n_local) *n_local = jac->n_local; in PCBJacobiGetSubKSP_BJacobi()
303 jac->n_local = blocks; in PCBJacobiSetLocalBlocks_BJacobi()
317 *blocks = jac->n_local; in PCBJacobiGetLocalBlocks_BJacobi()
351 PetscErrorCode PCBJacobiGetSubKSP(PC pc, PetscInt *n_local, PetscInt *first_local, KSP *ksp[]) in PCBJacobiGetSubKSP() argument
355 …PetscUseMethod(pc, "PCBJacobiGetSubKSP_C", (PC, PetscInt *, PetscInt *, KSP **), (pc, n_local, fir… in PCBJacobiGetSubKSP()
527 jac->n_local = -1; in PCCreate_BJacobi()
822 PetscCall(MatDestroyMatrices(jac->n_local, &bjac->pmat)); in PCReset_BJacobi_Multiblock()
823 if (pc->useAmat) PetscCall(MatDestroyMatrices(jac->n_local, &bjac->mat)); in PCReset_BJacobi_Multiblock()
826 for (i = 0; i < jac->n_local; i++) { in PCReset_BJacobi_Multiblock()
853 for (i = 0; i < jac->n_local; i++) PetscCall(KSPDestroy(&jac->ksp[i])); in PCDestroy_BJacobi_Multiblock()
862 PetscInt i, n_local = jac->n_local; in PCSetUpOnBlocks_BJacobi_Multiblock() local
866 for (i = 0; i < n_local; i++) { in PCSetUpOnBlocks_BJacobi_Multiblock()
877 PetscInt i, n_local = jac->n_local; in PCApply_BJacobi_Multiblock() local
885 for (i = 0; i < n_local; i++) { in PCApply_BJacobi_Multiblock()
910 PetscInt i, n_local = jac->n_local; in PCApplySymmetricLeft_BJacobi_Multiblock() local
919 for (i = 0; i < n_local; i++) { in PCApplySymmetricLeft_BJacobi_Multiblock()
946 PetscInt i, n_local = jac->n_local; in PCApplySymmetricRight_BJacobi_Multiblock() local
955 for (i = 0; i < n_local; i++) { in PCApplySymmetricRight_BJacobi_Multiblock()
982 PetscInt i, n_local = jac->n_local; in PCApplyTranspose_BJacobi_Multiblock() local
990 for (i = 0; i < n_local; i++) { in PCApplyTranspose_BJacobi_Multiblock()
1015 PetscInt m, n_local, N, M, start, i; in PCSetUp_BJacobi_Multiblock() local
1029 n_local = jac->n_local; in PCSetUp_BJacobi_Multiblock()
1054 PetscCall(PetscMalloc1(n_local, &jac->ksp)); in PCSetUp_BJacobi_Multiblock()
1055 PetscCall(PetscMalloc2(n_local, &bjac->x, n_local, &bjac->y)); in PCSetUp_BJacobi_Multiblock()
1056 PetscCall(PetscMalloc1(n_local, &bjac->starts)); in PCSetUp_BJacobi_Multiblock()
1059 PetscCall(PetscMalloc1(n_local, &bjac->is)); in PCSetUp_BJacobi_Multiblock()
1061 for (i = 0; i < n_local; i++) { in PCSetUp_BJacobi_Multiblock()
1081 for (i = 0; i < n_local; i++) { in PCSetUp_BJacobi_Multiblock()
1111 PetscCall(MatGetNullSpaces(n_local, bjac->pmat, &nullsp_pmat)); in PCSetUp_BJacobi_Multiblock()
1112 PetscCall(MatDestroyMatrices(n_local, &bjac->pmat)); in PCSetUp_BJacobi_Multiblock()
1114 PetscCall(MatGetNullSpaces(n_local, bjac->mat, &nullsp_mat)); in PCSetUp_BJacobi_Multiblock()
1115 PetscCall(MatDestroyMatrices(n_local, &bjac->mat)); in PCSetUp_BJacobi_Multiblock()
1121 PetscCall(MatCreateSubMatrices(pmat, n_local, bjac->is, bjac->is, scall, &bjac->pmat)); in PCSetUp_BJacobi_Multiblock()
1122 if (nullsp_pmat) PetscCall(MatRestoreNullSpaces(n_local, bjac->pmat, &nullsp_pmat)); in PCSetUp_BJacobi_Multiblock()
1124 PetscCall(MatCreateSubMatrices(mat, n_local, bjac->is, bjac->is, scall, &bjac->mat)); in PCSetUp_BJacobi_Multiblock()
1125 if (nullsp_mat) PetscCall(MatRestoreNullSpaces(n_local, bjac->mat, &nullsp_mat)); in PCSetUp_BJacobi_Multiblock()
1129 …PetscCall(PCModifySubMatrices(pc, n_local, bjac->is, bjac->is, bjac->pmat, pc->modifysubmatricesP)… in PCSetUp_BJacobi_Multiblock()
1131 for (i = 0; i < n_local; i++) { in PCSetUp_BJacobi_Multiblock()
1266 …PetscCheck(jac->n_local <= 1, PETSC_COMM_SELF, PETSC_ERR_ARG_OUTOFRANGE, "Only a single block in a… in PCSetUp_BJacobi_Multiproc()
1267 jac->n_local = 1; /* currently only a single block is supported for a subcommunicator */ in PCSetUp_BJacobi_Multiproc()