Lines Matching refs:drows
19 PetscInt dcnt, *drows; /* these are the local rows that have only diagonal entry */ member
74 PetscInt rstart, rend, nrstart, nrend, nz, cnt, *rows, ncnt, dcnt, *drows; in PCSetUp_Redistribute() local
121 PetscCall(PetscMalloc1(rend - rstart - cnt, &drows)); in PCSetUp_Redistribute()
136 else drows[dcnt++] = i - rstart; in PCSetUp_Redistribute()
206 red->drows = drows; in PCSetUp_Redistribute()
243 red->drows = drows; in PCSetUp_Redistribute()
320 if (d[red->drows[i]] != 0) red->diag[i] = 1.0 / d[red->drows[i]]; in PCSetUp_Redistribute()
336 const PetscInt *drows = red->drows; in PCApply_Redistribute() local
355 if (diag[i] == 0.0 && bwork[drows[i]] != 0.0) { in PCApply_Redistribute()
363 for (i = 0; i < dcnt; i++) xwork[drows[i]] = diag[i] * bwork[drows[i]]; in PCApply_Redistribute()
384 const PetscInt *drows = red->drows; in PCApplyTranspose_Redistribute() local
405 if (diag[i] == 0.0 && bwork[drows[i]] != 0.0) { in PCApplyTranspose_Redistribute()
413 for (i = 0; i < dcnt; i++) xwork[drows[i]] = diag[i] * bwork[drows[i]]; in PCApplyTranspose_Redistribute()
452 PetscCall(PetscFree(red->drows)); in PCDestroy_Redistribute()