Home
last modified time | relevance | path

Searched refs:nnz (Results 1 – 25 of 120) sorted by relevance

12345

/petsc/src/ksp/ksp/tutorials/
H A Dbench_kspsolve.c34 PetscInt nnz; /* local nonzeros */ member
47 PetscInt nnz[] = {8, 12, 18, 27}; /* nnz for corner, edge, face, and center. */ in PreallocateCOO() local
58 user->nnz = 0; in PreallocateCOO()
63 user->nnz += 4 * nnz[idx] + 4 * nm2 * nnz[idx + 1] + nm2 * nm2 * nnz[idx + 2]; in PreallocateCOO()
65 user->nnz += 3 * nnz[idx] + (3 * nm2 + n1 - xstart) * nnz[idx + 1] + nm2 * nm2 * nnz[idx + 2]; in PreallocateCOO()
67 user->nnz += 3 * nnz[idx] + (3 * nm2) * nnz[idx + 1] + nm2 * nm2 * nnz[idx + 2]; in PreallocateCOO()
69 …user->nnz += 2 * nnz[idx] + (nm2 + 2 * (n1 - ystart)) * nnz[idx + 1] + nm2 * (n1 - ystart) * nnz[i… in PreallocateCOO()
71 …user->nnz += 2 * nnz[idx] + (nm2 + (n1 - ystart) + (nm2 - ystart)) * nnz[idx + 1] + (nm2 * (nm2 - … in PreallocateCOO()
73 …user->nnz += 2 * nnz[idx] + (nm2 + n1 - ystart + nm2 - ystart) * nnz[idx + 1] + nm2 * (nm2 - ystar… in PreallocateCOO()
75 user->nnz += 2 * nnz[idx] + nm2 * nnz[idx + 1]; in PreallocateCOO()
[all …]
/petsc/src/mat/impls/aij/seq/lusol/
H A Dlusol.c38 PETSC_EXTERN void LU1FAC(int *m, int *n, int *nnz, int *size, int *luparm, double *parmlu, double *…
66 int nnz; /* Number of nonzeros allocated for factors */ member
195 int i, m, n, nnz, status; in MatSolve_LUSOL() local
202 nnz = lusol->nnz; in MatSolve_LUSOL()
206 …LU6SOL(&mode, &m, &n, lusol->mnsv, xx, &nnz, lusol->luparm, lusol->parmlu, lusol->data, lusol->ind… in MatSolve_LUSOL()
219 int m, n, nz, nnz, status; in MatLUFactorNumeric_LUSOL() local
236 nnz = PetscMax(lusol->nnz, (int)(lusol->elbowroom * nz)); in MatLUFactorNumeric_LUSOL()
237 nnz = PetscMax(nnz, 5 * n); in MatLUFactorNumeric_LUSOL()
239 if (nnz < lusol->luparm[12]) { in MatLUFactorNumeric_LUSOL()
240 nnz = (int)(lusol->luroom * lusol->luparm[12]); in MatLUFactorNumeric_LUSOL()
[all …]
/petsc/src/dm/impls/moab/
H A Ddmmbmat.cxx14 PetscInt *nnz = 0, *onz = 0; in DMCreateMatrix_Moab() local
29 PetscCall(PetscCalloc2(nlsiz, &nnz, nlsiz, &onz)); in DMCreateMatrix_Moab()
32 …PetscCall(DMMoab_Compute_NNZ_From_Connectivity(dm, &innz, nnz, &ionz, onz, tmp ? PETSC_TRUE : PETS… in DMCreateMatrix_Moab()
46 PetscCall(MatSeqAIJSetPreallocation(A, innz, nnz)); in DMCreateMatrix_Moab()
47 PetscCall(MatMPIAIJSetPreallocation(A, innz, nnz, ionz, onz)); in DMCreateMatrix_Moab()
48 PetscCall(MatSeqBAIJSetPreallocation(A, dmmoab->bs, innz, nnz)); in DMCreateMatrix_Moab()
49 PetscCall(MatMPIBAIJSetPreallocation(A, dmmoab->bs, innz, nnz, ionz, onz)); in DMCreateMatrix_Moab()
52 PetscCall(PetscFree2(nnz, onz)); in DMCreateMatrix_Moab()
63 …Code DMMoab_Compute_NNZ_From_Connectivity(DM dm, PetscInt *innz, PetscInt *nnz, PetscInt *ionz, Pe… in DMMoab_Compute_NNZ_From_Connectivity() argument
120nnz[ivtx] = n_nnz; /* leave out self to avoid repeats -> node shared by multiple elements… in DMMoab_Compute_NNZ_From_Connectivity()
[all …]
H A Ddmmbmg.cxx169 PetscInt innz, *nnz, ionz, *onz; in DMCreateInterpolation_Moab() local
192 PetscCall(PetscCalloc2(nlsizc, &nnz, nlsizc, &onz)); in DMCreateInterpolation_Moab()
229 … else nnz[ldof]++; /* else local vertex */ in DMCreateInterpolation_Moab()
235 for (int i = 0; i < nlsizc; i++) nnz[i] += 1; /* self count the node */ in DMCreateInterpolation_Moab()
238 innz = nnz[0]; in DMCreateInterpolation_Moab()
241 nnz[tc] = std::min(nlsizp, nnz[tc]); in DMCreateInterpolation_Moab()
244 PetscCall(PetscInfo(NULL, " %d: NNZ = %d, ONZ = %d\n", tc, nnz[tc], onz[tc])); in DMCreateInterpolation_Moab()
246 innz = (innz < nnz[tc] ? nnz[tc] : innz); in DMCreateInterpolation_Moab()
256 PetscCall(MatSeqAIJSetPreallocation(*interpl, innz, nnz)); in DMCreateInterpolation_Moab()
257 PetscCall(MatMPIAIJSetPreallocation(*interpl, innz, nnz, ionz, onz)); in DMCreateInterpolation_Moab()
[all …]
/petsc/src/mat/impls/aij/seq/bas/
H A Dspbas.c45 else memreq += matrix.nnz * sizeof(PetscInt); in spbas_memory_requirement()
51 else memreq += matrix.nnz * sizeof(PetscScalar); in spbas_memory_requirement()
97 PetscInt nnz = result->nnz; in spbas_allocate_data() local
106 result->n_alloc_icol = nnz; in spbas_allocate_data()
108 PetscCall(PetscMalloc1(nnz, &result->alloc_icol)); in spbas_allocate_data()
115 result->n_alloc_val = nnz; in spbas_allocate_data()
117 PetscCall(PetscMalloc1(nnz, &result->alloc_val)); in spbas_allocate_data()
252 PetscInt nnz = irow_in[nrows]; in spbas_compress_pattern() local
253 size_t mem_orig = (nrows + nnz) * sizeof(PetscInt); in spbas_compress_pattern()
268 B->nnz = nnz; in spbas_compress_pattern()
[all …]
/petsc/src/mat/utils/
H A Dfreespace.c63 PetscInt row, nnz, *bj, *array, total, bi_temp; in PetscFreeSpaceContiguous_LU() local
78 nnz = bi[row + 1] - bi[row]; in PetscFreeSpaceContiguous_LU()
96 nnzU = nnz - nnzL; in PetscFreeSpaceContiguous_LU()
101 array += nnz; in PetscFreeSpaceContiguous_LU()
139 PetscInt row, nnz, *uj, *array, total; in PetscFreeSpaceContiguous_Cholesky() local
151 nnz = ui[row + 1] - ui[row] - 1; /* exclude diagonal */ in PetscFreeSpaceContiguous_Cholesky()
153 PetscCall(PetscArraycpy(uj, array + 1, nnz)); in PetscFreeSpaceContiguous_Cholesky()
154 uj[nnz] = array[0]; /* diagonal */ in PetscFreeSpaceContiguous_Cholesky()
155 array += nnz + 1; in PetscFreeSpaceContiguous_Cholesky()
H A Dzerodiag.c72 PetscInt prow, k, nz, n, repl, *j, *col, *row, m, *icol, nnz, *jj, kk; in MatReorderForNonzeroDiagonal_SeqAIJ() local
114 PetscCall(MatGetRow_SeqAIJ(mat, row[repl], &nnz, &jj, &vv)); in MatReorderForNonzeroDiagonal_SeqAIJ()
115 for (kk = 0; kk < nnz; kk++) { in MatReorderForNonzeroDiagonal_SeqAIJ()
117 PetscCall(MatRestoreRow_SeqAIJ(mat, row[repl], &nnz, &jj, &vv)); in MatReorderForNonzeroDiagonal_SeqAIJ()
123 PetscCall(MatRestoreRow_SeqAIJ(mat, row[repl], &nnz, &jj, &vv)); in MatReorderForNonzeroDiagonal_SeqAIJ()
131 PetscCall(MatGetRow_SeqAIJ(mat, row[k], &nnz, &jj, &vv)); in MatReorderForNonzeroDiagonal_SeqAIJ()
132 for (kk = 0; kk < nnz; kk++) { in MatReorderForNonzeroDiagonal_SeqAIJ()
139 PetscCall(MatRestoreRow_SeqAIJ(mat, row[k], &nnz, &jj, &vv)); in MatReorderForNonzeroDiagonal_SeqAIJ()
/petsc/src/mat/graphops/order/
H A Dwbm.c37 PetscInt *perm, nrow, ncol, nnz, liw, *iw, ldw; in MatGetOrdering_WBM() local
46 nnz = ia[nrow]; in MatGetOrdering_WBM()
59 liw = 8 * nrow + 2 * ncol + nnz; in MatGetOrdering_WBM()
60 ldw = nnz; in MatGetOrdering_WBM()
64 ldw = 2 * ncol + nnz; in MatGetOrdering_WBM()
68 ldw = nrow + 2 * ncol + nnz; in MatGetOrdering_WBM()
79 …PetscCallExternal(mc64ad_dist, &job, &nrow, &nnz, ia, ja, a, &num, perm, &liw, iw, &ldw, dw, icntl… in MatGetOrdering_WBM()
/petsc/src/ksp/ksp/tests/
H A Dex13.c26 PetscInt testcase = 0, m, nnz, pnnz; in main() local
39 nnz = 3; in main()
46 nnz = 9; in main()
54 nnz = 1; in main()
61 nnz = 3; in main()
70 PetscCall(MatMPIAIJSetPreallocation(A, nnz, NULL, nnz, NULL)); in main()
71 PetscCall(MatSeqAIJSetPreallocation(A, nnz, NULL)); in main()
88 PetscCall(PetscMalloc2(nnz, &cols, nnz, &vals)); in main()
/petsc/src/mat/tests/
H A Dex123.c179 PetscInt i, j, nA, nB, nnz; in main() local
189 nnz = iA[nA] + iB[nB]; in main()
190 PetscCall(PetscMalloc3(nnz, &coo_i, nnz, &coo_j, nnz, &coo_v)); in main()
191 nnz = 0; in main()
193 for (j = iA[i]; j < iA[i + 1]; j++, nnz++) { in main()
194 coo_i[nnz] = i + rstart; in main()
195 coo_j[nnz] = jA[j] + cstart; in main()
196 coo_v[nnz] = vA[j]; in main()
200 for (j = iB[i]; j < iB[i + 1]; j++, nnz++) { in main()
201 coo_i[nnz] = i + rstart; in main()
[all …]
H A Dex117.c13 PetscInt nnz[3]; in main() local
23 nnz[0] = 2; in main()
24 nnz[1] = 1; in main()
25 nnz[2] = 1; in main()
26 PetscCall(MatCreateSeqSBAIJ(PETSC_COMM_SELF, 2, 6, 6, 0, nnz, &mat)); in main()
/petsc/src/mat/impls/aij/seq/
H A Daij.h505 #define PetscSparseDenseMinusDot(sum, r, xv, xi, nnz) \ argument
507 if (nnz > 0) { \
508 PetscInt nnz2 = nnz, rem = nnz & 0x3; \
524 xv -= nnz; \
525 xi -= nnz; \
530 #define PetscSparseDenseMinusDot(sum, r, xv, xi, nnz) \ argument
533 for (__i = 0; __i < nnz - 1; __i += 2) { \
538 if (nnz & 0x1) sum -= xv[__i] * r[xi[__i]]; \
542 #define PetscSparseDenseMinusDot(sum, r, xv, xi, nnz) \ argument
545 for (__i = 0; __i < nnz; __i++) sum -= xv[__i] * r[xi[__i]]; \
[all …]
H A Dfdaij.c178 …rows, mbs = c->m, j, k, m, ncols, col, nis = iscoloring->n, *rowhit, bs, bs2, *spidx, nz, tmp, nnz; in MatFDColoringSetUp_SeqXAIJ() local
232 nnz = 0; in MatFDColoringSetUp_SeqXAIJ()
262 Jentry[nnz].row = j; /* local row index */ in MatFDColoringSetUp_SeqXAIJ()
263 Jentry[nnz].col = rowhit[j] - 1; /* local column index */ in MatFDColoringSetUp_SeqXAIJ()
264 Jentry[nnz].valaddr = valaddrhit[j]; /* address of mat value for this entry */ in MatFDColoringSetUp_SeqXAIJ()
265 nnz++; in MatFDColoringSetUp_SeqXAIJ()
272 Jentry2[nnz].row = j; /* local row index */ in MatFDColoringSetUp_SeqXAIJ()
273 Jentry2[nnz].valaddr = valaddrhit[j]; /* address of mat value for this entry */ in MatFDColoringSetUp_SeqXAIJ()
274 nnz++; in MatFDColoringSetUp_SeqXAIJ()
280 PetscCheck(nnz == nz, PETSC_COMM_SELF, PETSC_ERR_PLIB, "Incorrect coloring of matrix"); in MatFDColoringSetUp_SeqXAIJ()
/petsc/src/mat/impls/sbaij/seq/
H A Drelax.h9 #define PetscSparseDensePlusDot_no_function(sum, r, xv, xi, nnz) \ argument
11 if (nnz > 0) { \
12 PetscInt nnz2 = nnz, rem = nnz & 0x3; \
28 xv -= nnz; \
29 xi -= nnz; \
34 #define PetscSparseDensePlusDot_no_function(sum, r, xv, xi, nnz) \ argument
37 for (__i = 0; __i < nnz - 1; __i += 2) { \
42 if (nnz & 0x1) sum += xv[__i] * r[xi[__i]]; \
46 #define PetscSparseDensePlusDot_no_function(sum, r, xv, xi, nnz) \ argument
49 for (__i = 0; __i < nnz; __i++) sum += xv[__i] * r[xi[__i]]; \
H A Daijsbaij.c122 PETSC_INTERN PetscErrorCode MatConvert_SeqAIJ_SeqSBAIJ_Preallocate(Mat A, PetscInt **nnz) in MatConvert_SeqAIJ_SeqSBAIJ_Preallocate() argument
135 PetscCall(PetscMalloc1(m, nnz)); in MatConvert_SeqAIJ_SeqSBAIJ_Preallocate()
138 (*nnz)[i] = 0; in MatConvert_SeqAIJ_SeqSBAIJ_Preallocate()
139 for (PetscInt j = ai[i]; j < ai[i + 1]; j++) (*nnz)[i] += (aj[j] > i); in MatConvert_SeqAIJ_SeqSBAIJ_Preallocate()
140 } else (*nnz)[i] = ai[i + 1] - adiag[i]; in MatConvert_SeqAIJ_SeqSBAIJ_Preallocate()
148 PetscCall(PetscCalloc1(m / bs, nnz)); in MatConvert_SeqAIJ_SeqSBAIJ_Preallocate()
155 if (missing) (*nnz)[key.i]++; in MatConvert_SeqAIJ_SeqSBAIJ_Preallocate()
/petsc/src/mat/impls/aij/mpi/
H A Dmpb_aij.c9 PetscInt *garrayCMap, col, i, j, *nnz, newRow, newCol; in MatGetMultiProcBlock_MPIAIJ() local
49 PetscCall(PetscCalloc1(aij->B->rmap->n, &nnz)); in MatGetMultiProcBlock_MPIAIJ()
52 if (garrayCMap[aijB->j[j]]) nnz[i]++; in MatGetMultiProcBlock_MPIAIJ()
55 PetscCall(MatMPIAIJSetPreallocation(*(subMat), 0, NULL, 0, nnz)); in MatGetMultiProcBlock_MPIAIJ()
89 if (scall == MAT_INITIAL_MATRIX) PetscCall(PetscFree(nnz)); in MatGetMultiProcBlock_MPIAIJ()
/petsc/src/mat/impls/baij/mpi/
H A Dmpb_baij.c9 PetscInt *garrayCMap, col, i, j, *nnz, newRow, newCol, *newbRow, *newbCol, k, k1; in MatGetMultiProcBlock_MPIBAIJ() local
54 PetscCall(PetscCalloc1(aij->B->rmap->n / bs, &nnz)); in MatGetMultiProcBlock_MPIBAIJ()
57 if (garrayCMap[aijB->j[j]]) nnz[i]++; in MatGetMultiProcBlock_MPIBAIJ()
60 PetscCall(MatMPIBAIJSetPreallocation(*(subMat), bs, 0, NULL, 0, nnz)); in MatGetMultiProcBlock_MPIBAIJ()
108 if (scall == MAT_INITIAL_MATRIX) PetscCall(PetscFree(nnz)); in MatGetMultiProcBlock_MPIBAIJ()
/petsc/src/mat/impls/baij/seq/
H A Dbaijfact3.c159 PetscInt *bdiag, row, nnz, nzi, reallocs = 0, nzbd, *im; in MatLUFactorSymbolic_SeqBAIJ() local
199 nnz = ai[r[i] + 1] - ai[r[i]]; in MatLUFactorSymbolic_SeqBAIJ()
201 PetscCall(PetscLLAddPerm(nnz, ajtmp, ic, n, &nlnk, lnk, lnkbt)); in MatLUFactorSymbolic_SeqBAIJ()
218 nnz = nzi; in MatLUFactorSymbolic_SeqBAIJ()
220 while (nnz-- && k < i) { in MatLUFactorSymbolic_SeqBAIJ()
228nnz = PetscIntMultTruncate(2, PetscIntMultTruncate(n - i, nzi)); /* estimated and max additional s… in MatLUFactorSymbolic_SeqBAIJ()
229 PetscCall(PetscFreeSpaceGet(nnz, &current_space)); in MatLUFactorSymbolic_SeqBAIJ()
H A Daijbaij.c59 PETSC_INTERN PetscErrorCode MatConvert_SeqAIJ_SeqBAIJ_Preallocate(Mat A, PetscInt **nnz) in MatConvert_SeqAIJ_SeqBAIJ_Preallocate() argument
69 PetscCall(PetscMalloc1(m, nnz)); in MatConvert_SeqAIJ_SeqBAIJ_Preallocate()
70 for (PetscInt i = 0; i < m; i++) (*nnz)[i] = ai[i + 1] - ai[i]; in MatConvert_SeqAIJ_SeqBAIJ_Preallocate()
78 PetscCall(PetscCalloc1(m / bs, nnz)); in MatConvert_SeqAIJ_SeqBAIJ_Preallocate()
84 if (missing) (*nnz)[key.i]++; in MatConvert_SeqAIJ_SeqBAIJ_Preallocate()
H A Dbaijfact2.c317 PetscInt *bi, *cols, nnz, *cols_lvl; in MatILUFactorSymbolic_SeqBAIJ() local
396 nnz = ai[r[i] + 1] - ai[r[i]]; in MatILUFactorSymbolic_SeqBAIJ()
397 …PetscCheck(nnz, PETSC_COMM_SELF, PETSC_ERR_MAT_LU_ZRPVT, "Empty row in matrix: row in original ord… in MatILUFactorSymbolic_SeqBAIJ()
400 PetscCall(PetscIncompleteLLInit(nnz, cols, n, ic, &nlnk, lnk, lnk_lvl, lnkbt)); in MatILUFactorSymbolic_SeqBAIJ()
418 nnz = bdiag[prow]; in MatILUFactorSymbolic_SeqBAIJ()
419 cols = bj_ptr[prow] + nnz + 1; in MatILUFactorSymbolic_SeqBAIJ()
420 cols_lvl = bjlvl_ptr[prow] + nnz + 1; in MatILUFactorSymbolic_SeqBAIJ()
421 nnz = bi[prow + 1] - bi[prow] - nnz - 1; in MatILUFactorSymbolic_SeqBAIJ()
423 …PetscCall(PetscILULLAddSorted(nnz, cols, levels, cols_lvl, prow, &nlnk, lnk, lnk_lvl, lnkbt, prow)… in MatILUFactorSymbolic_SeqBAIJ()
433nnz = PetscIntMultTruncate(2, PetscIntMultTruncate(nzi, n - i)); /* estimated and max additional s… in MatILUFactorSymbolic_SeqBAIJ()
[all …]
/petsc/src/mat/impls/aij/seq/seqviennacl/
H A Daijviennacl.cxx110 a->nz = Agpu->nnz(); in MatViennaCLCopyFromGPU()
142 col_buffer.raw_resize(Agpu->handle2(), Agpu->nnz()); in MatViennaCLCopyFromGPU()
144 for (PetscInt i = 0; i < (PetscInt)Agpu->nnz(); ++i) (a->j)[i] = col_buffer[i]; in MatViennaCLCopyFromGPU()
147 viennacl::backend::memory_read(Agpu->handle(), 0, sizeof(PetscScalar) * Agpu->nnz(), a->a); in MatViennaCLCopyFromGPU()
149 …PetscCall(PetscLogGpuToCpu(row_buffer.raw_size() + col_buffer.raw_size() + (Agpu->nnz() * sizeof(P… in MatViennaCLCopyFromGPU()
161 …ory_read(viennaclstruct->mat->handle(), 0, sizeof(PetscScalar) * viennaclstruct->mat->nnz(), a->a); in MatViennaCLCopyFromGPU()
163 viennacl::backend::memory_read(Agpu->handle(), 0, sizeof(PetscScalar) * Agpu->nnz(), a->a); in MatViennaCLCopyFromGPU()
287 …ateSeqAIJViennaCL(MPI_Comm comm, PetscInt m, PetscInt n, PetscInt nz, const PetscInt nnz[], Mat *A) in MatCreateSeqAIJViennaCL() argument
293 PetscCall(MatSeqAIJSetPreallocation_SeqAIJ(*A, nz, (PetscInt *)nnz)); in MatCreateSeqAIJViennaCL()
/petsc/src/ksp/pc/impls/ml/
H A Dml.c250 PetscInt m = mlmat->outvec_leng, n = mlmat->invec_leng, *nnz = NULL, nz_max; in MatWrapML_SeqAIJ() local
264 PetscCall(PetscMalloc1(m + 1, &nnz)); in MatWrapML_SeqAIJ()
265 for (i = 0; i < m; i++) nnz[i] = ml_rowptr[i + 1] - ml_rowptr[i]; in MatWrapML_SeqAIJ()
269 PetscCall(PetscSortIntWithScalarArray(nnz[i], aj, aa)); in MatWrapML_SeqAIJ()
270 aj += nnz[i]; in MatWrapML_SeqAIJ()
271 aa += nnz[i]; in MatWrapML_SeqAIJ()
274 PetscCall(PetscFree(nnz)); in MatWrapML_SeqAIJ()
290 PetscCall(PetscMalloc1(m, &nnz)); in MatWrapML_SeqAIJ()
291 …kCallExternalVoid("ML_Operator_Getrow", ML_Operator_Getrow(mlmat, 1, &i, nz_max, aj, aa, &nnz[i])); in MatWrapML_SeqAIJ()
292 PetscCall(MatSeqAIJSetPreallocation(*newmat, 0, nnz)); in MatWrapML_SeqAIJ()
[all …]
/petsc/src/mat/impls/aij/seq/kokkos/
H A Daijkok.hpp169nnz, const MatRowMapKokkosView &i_d, const MatColIdxKokkosView &j_d, const MatScalarKokkosView &a_… in Mat_SeqAIJKokkos()
181 MatRowMapType nnz() { return csrmat.nnz(); } in nnz() function
/petsc/src/mat/tests/output/
H A Dex72_4.out2 M: 6, N: 6, nnz: 12
H A Dex72_2.out2 M: 14, N: 14, nnz: 30

12345