| /petsc/src/mat/utils/ |
| H A D | zerorows.c | 10 PetscInt *lrows; in MatZeroRowsMapLocal_Private() local 18 PetscCall(PetscMalloc1(n, &lrows)); in MatZeroRowsMapLocal_Private() 19 for (r = 0; r < n; ++r) lrows[r] = -1; in MatZeroRowsMapLocal_Private() 29 lrows[len++] = idx - owners[p]; in MatZeroRowsMapLocal_Private() 39 PetscCall(PetscSFReduceBegin(sf, MPIU_INT, (PetscInt *)rows, lrows, MPI_LOR)); in MatZeroRowsMapLocal_Private() 40 PetscCall(PetscSFReduceEnd(sf, MPIU_INT, (PetscInt *)rows, lrows, MPI_LOR)); in MatZeroRowsMapLocal_Private() 44 if (lrows[r] >= 0) lrows[len++] = r; in MatZeroRowsMapLocal_Private() 47 if (olrows) *olrows = lrows; in MatZeroRowsMapLocal_Private()
|
| /petsc/src/mat/impls/baij/mpi/ |
| H A D | mpibaij.c | 1600 PetscInt *lrows; in MatZeroRows_MPIBAIJ() local 1606 PetscCall(MatZeroRowsMapLocal_Private(A, N, rows, &len, &lrows)); in MatZeroRows_MPIBAIJ() 1614 for (r = 0; r < len; ++r) bb[lrows[r]] = diag * xx[lrows[r]]; in MatZeroRows_MPIBAIJ() 1628 PetscCall(MatZeroRows_SeqBAIJ(l->B, len, lrows, 0.0, NULL, NULL)); in MatZeroRows_MPIBAIJ() 1631 PetscCall(MatZeroRows_SeqBAIJ(l->A, len, lrows, diag, NULL, NULL)); in MatZeroRows_MPIBAIJ() 1633 PetscCall(MatZeroRows_SeqBAIJ(l->A, len, lrows, 0.0, NULL, NULL)); in MatZeroRows_MPIBAIJ() 1636 const PetscInt row = lrows[r] + A->rmap->rstart; in MatZeroRows_MPIBAIJ() 1642 PetscCall(MatZeroRows_SeqBAIJ(l->A, len, lrows, 0.0, NULL, NULL)); in MatZeroRows_MPIBAIJ() 1644 PetscCall(PetscFree(lrows)); in MatZeroRows_MPIBAIJ() 1659 PetscInt *lrows, *owners = A->rmap->range; in MatZeroRowsColumns_MPIBAIJ() local [all …]
|
| /petsc/src/mat/impls/shell/ |
| H A D | shell.c | 319 PetscInt nr, *lrows; in MatZeroRows_Shell() local 355 PetscCall(PetscLayoutMapLocal(mat->rmap, n, rows, &nr, &lrows, NULL)); in MatZeroRows_Shell() 356 PetscCall(MatZeroRowsColumns_Local_Shell(mat, nr, lrows, 0, NULL, diag, PETSC_FALSE)); in MatZeroRows_Shell() 358 PetscCall(PetscFree(lrows)); in MatZeroRows_Shell() 365 PetscInt *lrows, *lcols; in MatZeroRowsColumns_Shell() local 414 PetscCall(PetscLayoutMapLocal(mat->rmap, n, rowscols, &nr, &lrows, NULL)); in MatZeroRowsColumns_Shell() 418 lcols = lrows; in MatZeroRowsColumns_Shell() 428 PetscCall(MatZeroRowsColumns_Local_Shell(mat, nr, lrows, nc, lcols, diag, PETSC_TRUE)); in MatZeroRowsColumns_Shell() 430 PetscCall(PetscFree(lrows)); in MatZeroRowsColumns_Shell()
|
| /petsc/src/mat/impls/hypre/ |
| H A D | mhypre.c | 1936 HYPRE_Int *lrows; local 1942 PetscCall(PetscMalloc1(numRows, &lrows)); 1946 lrows[i] = (HYPRE_Int)(rows[i] - rst); 1948 PetscCallHYPRE(hypre_ParCSRMatrixEliminateRowsCols(parcsr, (HYPRE_Int)numRows, lrows)); 1949 PetscCall(PetscFree(lrows)); 2029 PetscInt *lrows, len, *lrows2; local 2038 PetscCall(MatZeroRowsMapLocal_Private(A, N, rows, &len, &lrows)); 2050 …PetscStackCallExternalVoid("hypre_Memcpy", hypre_Memcpy(hA->rows_d, lrows, sizeof(PetscInt) * len,… 2055 lrows2 = lrows; 2063 PetscCall(PetscFree(lrows));
|
| /petsc/src/mat/impls/is/ |
| H A D | matis.c | 1840 PetscInt rbs, cbs, rows, cols, lrows, lcols; in MatConvert_IS_XAIJ() local 1927 PetscCall(MatGetLocalSize(mat, &lrows, &lcols)); in MatConvert_IS_XAIJ() 1950 PetscCall(MatSetSizes(MT, lrows, lcols, rows, cols)); in MatConvert_IS_XAIJ() 2000 …lrows, PetscObjectComm((PetscObject)mat), PETSC_ERR_SUP, "Cannot reuse matrix. Wrong number of loc… in MatConvert_IS_XAIJ() 2886 PetscInt *lrows = NULL; in MatZeroRowsColumns_Private_IS() local 2900 PetscCall(PetscLayoutMapLocal(A->rmap, n, rows, &len, &lrows, NULL)); in MatZeroRowsColumns_Private_IS() 2908 for (PetscInt i = 0; i < len; ++i) bb[lrows[i]] = diag * xx[lrows[i]]; in MatZeroRowsColumns_Private_IS() 2915 for (PetscInt i = 0; i < len; i++) matis->sf_rootdata[lrows[i]] = 1; in MatZeroRowsColumns_Private_IS() 2916 PetscCall(PetscFree(lrows)); in MatZeroRowsColumns_Private_IS() 2919 PetscCall(PetscMalloc1(nl, &lrows)); in MatZeroRowsColumns_Private_IS() [all …]
|
| /petsc/src/mat/impls/aij/mpi/ |
| H A D | mpiaij.c | 865 PetscInt *lrows; in MatZeroRows_MPIAIJ() local 871 PetscCall(MatZeroRowsMapLocal_Private(A, N, rows, &len, &lrows)); in MatZeroRows_MPIAIJ() 881 for (r = 0; r < len; ++r) bb[lrows[r]] = diag * xx[lrows[r]]; in MatZeroRows_MPIAIJ() 887 PetscCall(MatZeroRows(mat->A, len, lrows, diag, NULL, NULL)); in MatZeroRows_MPIAIJ() 888 PetscCall(MatZeroRows(mat->B, len, lrows, 0.0, NULL, NULL)); in MatZeroRows_MPIAIJ() 908 PetscCall(MatZeroRows(mat->A, len, lrows, 0.0, NULL, NULL)); in MatZeroRows_MPIAIJ() 909 PetscCall(MatZeroRows(mat->B, len, lrows, 0.0, NULL, NULL)); in MatZeroRows_MPIAIJ() 911 const PetscInt row = lrows[r] + A->rmap->rstart; in MatZeroRows_MPIAIJ() 918 PetscCall(MatZeroRows(mat->A, len, lrows, 0.0, NULL, NULL)); in MatZeroRows_MPIAIJ() 919 PetscCall(MatZeroRows(mat->B, len, lrows, 0.0, NULL, NULL)); in MatZeroRows_MPIAIJ() [all …]
|
| /petsc/src/mat/impls/dense/mpi/ |
| H A D | mpidense.c | 439 PetscInt i, len, *lrows; in MatZeroRows_MPIDense() local 443 PetscCall(PetscLayoutMapLocal(A->rmap, n, rows, &len, &lrows, NULL)); in MatZeroRows_MPIDense() 451 for (i = 0; i < len; ++i) bb[lrows[i]] = diag * xx[lrows[i]]; in MatZeroRows_MPIDense() 455 PetscCall(MatZeroRows(l->A, len, lrows, 0.0, NULL, NULL)); in MatZeroRows_MPIDense() 464 PetscCall(PetscFree(lrows)); in MatZeroRows_MPIDense()
|
| /petsc/src/ksp/pc/impls/bddc/ |
| H A D | bddcprivate.c | 7862 PetscInt lrows, row, ncols, *cols; in PCBDDCMatISGetSubassemblingPattern() local 7867 lrows = 0; in PCBDDCMatISGetSubassemblingPattern() 7869 lrows = size / redprocs; in PCBDDCMatISGetSubassemblingPattern() 7870 if (nrank < size % redprocs) lrows++; in PCBDDCMatISGetSubassemblingPattern() 7872 … PetscCall(MatCreateAIJ(subcomm, lrows, lrows, size, size, 50, NULL, 50, NULL, &subdomain_adj)); in PCBDDCMatISGetSubassemblingPattern() 8824 PetscInt lrows; in PCBDDCSetUpCoarseSolver() local 8827 PetscCall(MatGetLocalSize(coarse_mat, &lrows, NULL)); in PCBDDCSetUpCoarseSolver() 8829 lrows = 0; in PCBDDCSetUpCoarseSolver() 8832 PetscCall(VecSetSizes(pcbddc->coarse_vec, lrows, PETSC_DECIDE)); in PCBDDCSetUpCoarseSolver()
|