| /petsc/include/petsc/private/kernels/ |
| H A D | blockmatmult.h | 5 #define PetscKernel_v_gets_A_times_w_1_exp(v, A, w, exp) \ argument 7 v[0] exp A[0] * w[0]; \ 10 #define PetscKernel_v_gets_A_times_w_2_exp(v, A, w, exp) \ argument 12 v[0] exp A[0] * w[0] + A[2] * w[1]; \ 13 v[1] exp A[1] * w[0] + A[3] * w[1]; \ 16 #define PetscKernel_v_gets_A_times_w_3_exp(v, A, w, exp) \ argument 18 v[0] exp A[0] * w[0] + A[3] * w[1] + A[6] * w[2]; \ 19 v[1] exp A[1] * w[0] + A[4] * w[1] + A[7] * w[2]; \ 20 v[2] exp A[2] * w[0] + A[5] * w[1] + A[8] * w[2]; \ 23 #define PetscKernel_v_gets_A_times_w_4_exp(v, A, w, exp) \ argument [all …]
|
| /petsc/src/mat/impls/aij/mpi/ |
| H A D | mpihashmat.h | 9 static PetscErrorCode MatSetValues_MPI_Hash(Mat A, PetscInt m, const PetscInt *rows, PetscInt n, co… in MatSetValues_MPI_Hash() argument 11 PetscConcat(Mat_MPI, TYPE) *a = (PetscConcat(Mat_MPI, TYPE) *)A->data; in MatSetValues_MPI_Hash() 12 const PetscInt rStart = A->rmap->rstart; in MatSetValues_MPI_Hash() 13 const PetscInt rEnd = A->rmap->rend; in MatSetValues_MPI_Hash() 14 const PetscInt cStart = A->cmap->rstart; in MatSetValues_MPI_Hash() 15 const PetscInt cEnd = A->cmap->rend; in MatSetValues_MPI_Hash() 17 const PetscInt bs = A->rmap->bs; in MatSetValues_MPI_Hash() 19 const PetscBool ignorezeroentries = ((Mat_SeqAIJ *)a->A->data)->ignorezeroentries; in MatSetValues_MPI_Hash() 26 …PetscCheck(!A->nooffprocentries, PETSC_COMM_SELF, PETSC_ERR_ARG_WRONG, "Setting off process row %"… in MatSetValues_MPI_Hash() 28 A->assembled = PETSC_FALSE; in MatSetValues_MPI_Hash() [all …]
|
| /petsc/src/mat/utils/ |
| H A D | gcreate.c | 21 Mat A = NULL, B = NULL; in MatShift_Basic() local 29 if (isSeqAIJDerived) A = Y; in MatShift_Basic() 32 A = mpiaij->A; in MatShift_Basic() 36 if (A) { in MatShift_Basic() 37 oldValA = ((Mat_SeqAIJ *)A->data)->nonew; in MatShift_Basic() 38 ((Mat_SeqAIJ *)A->data)->nonew = 0; // so that new nonzero locations are allowed in MatShift_Basic() 52 if (A) ((Mat_SeqAIJ *)A->data)->nonew = oldValA; in MatShift_Basic() 95 PetscErrorCode MatCreate(MPI_Comm comm, Mat *A) in MatCreate() argument 100 PetscAssertPointer(A, 2); in MatCreate() 121 *A = B; in MatCreate() [all …]
|
| /petsc/src/mat/tests/ |
| H A D | ex16.c | 6 static PetscErrorCode CheckValues(Mat A, PetscBool one) in CheckValues() argument 12 PetscCall(MatDenseGetArrayRead(A, &array)); in CheckValues() 13 PetscCall(MatDenseGetLDA(A, &lda)); in CheckValues() 14 PetscCall(MatGetSize(A, &M, &N)); in CheckValues() 15 PetscCall(MatGetOwnershipRange(A, &rstart, &rend)); in CheckValues() 24 PetscCall(MatDenseRestoreArrayRead(A, &array)); in CheckValues() 28 #define CheckValuesIJ(A) CheckValues(A, PETSC_FALSE) argument 29 #define CheckValuesOne(A) CheckValues(A, PETSC_TRUE) argument 33 Mat A; in main() local 46 PetscCall(MatCreateDense(PETSC_COMM_WORLD, PETSC_DECIDE, PETSC_DECIDE, M, N, NULL, &A)); in main() [all …]
|
| H A D | ex93.c | 9 Mat A, B, C, D; in main() local 27 PetscCall(MatCreate(PETSC_COMM_WORLD, &A)); in main() 28 PetscCall(MatSetSizes(A, PETSC_DECIDE, PETSC_DECIDE, 3, 3)); in main() 29 PetscCall(MatSetType(A, MATAIJ)); in main() 30 PetscCall(MatSetFromOptions(A)); in main() 31 PetscCall(MatSetUp(A)); in main() 32 PetscCall(MatSetOption(A, MAT_IGNORE_ZERO_ENTRIES, PETSC_TRUE)); in main() 34 if (rank == 0) PetscCall(MatSetValues(A, 3, ij, 3, ij, a, ADD_VALUES)); in main() 35 PetscCall(MatAssemblyBegin(A, MAT_FINAL_ASSEMBLY)); in main() 36 PetscCall(MatAssemblyEnd(A, MAT_FINAL_ASSEMBLY)); in main() [all …]
|
| H A D | ex45.c | 13 static PetscErrorCode CheckValuesAIJ(Mat A) in CheckValuesAIJ() argument 20 PetscCall(MatGetSize(A, &M, &N)); in CheckValuesAIJ() 21 PetscCall(MatGetOwnershipRange(A, &rstart, &rend)); in CheckValuesAIJ() 24 PetscCall(MatGetValue(A, i, j, &val)); in CheckValuesAIJ() 35 Mat A; in main() local 45 …TSC_COMM_WORLD, bs, PETSC_DECIDE, PETSC_DECIDE, M, N, PETSC_DECIDE, NULL, PETSC_DECIDE, NULL, &A)); in main() 50 PetscCall(MatGetSize(A, &M, &N)); in main() 51 PetscCall(MatGetOwnershipRange(A, &rstart, &rend)); in main() 55 if (PetscAbsReal(v) > 0) PetscCall(MatSetValue(A, i, j, v, INSERT_VALUES)); in main() 58 PetscCall(MatAssemblyBegin(A, MAT_FINAL_ASSEMBLY)); in main() [all …]
|
| H A D | ex50.c | 13 static PetscErrorCode CheckValuesAIJ(Mat A) in CheckValuesAIJ() argument 21 PetscCall(MatGetSize(A, &M, &N)); in CheckValuesAIJ() 22 PetscCall(MatGetOwnershipRange(A, &rstart, &rend)); in CheckValuesAIJ() 23 PetscCall(PetscObjectTypeCompare((PetscObject)A, MATSEQSBAIJ, &seqsbaij)); in CheckValuesAIJ() 24 PetscCall(PetscObjectTypeCompare((PetscObject)A, MATMPISBAIJ, &mpisbaij)); in CheckValuesAIJ() 28 PetscCall(MatGetValue(A, i, j, &val)); in CheckValuesAIJ() 39 Mat A; in main() local 49 …TSC_COMM_WORLD, bs, PETSC_DECIDE, PETSC_DECIDE, M, N, PETSC_DECIDE, NULL, PETSC_DECIDE, NULL, &A)); in main() 54 PetscCall(MatGetSize(A, &M, &N)); in main() 55 PetscCall(MatGetOwnershipRange(A, &rstart, &rend)); in main() [all …]
|
| H A D | ex44.c | 13 static PetscErrorCode CheckValuesAIJ(Mat A) in CheckValuesAIJ() argument 20 PetscCall(MatGetSize(A, &M, &N)); in CheckValuesAIJ() 21 PetscCall(MatGetOwnershipRange(A, &rstart, &rend)); in CheckValuesAIJ() 24 PetscCall(MatGetValue(A, i, j, &val)); in CheckValuesAIJ() 35 Mat A; in main() local 45 …J(PETSC_COMM_WORLD, PETSC_DECIDE, PETSC_DECIDE, M, N, PETSC_DECIDE, NULL, PETSC_DECIDE, NULL, &A)); in main() 50 PetscCall(MatGetOwnershipRange(A, &rstart, &rend)); in main() 54 if (PetscAbsReal(v) > 0) PetscCall(MatSetValue(A, i, j, v, INSERT_VALUES)); in main() 57 PetscCall(MatAssemblyBegin(A, MAT_FINAL_ASSEMBLY)); in main() 58 PetscCall(MatAssemblyEnd(A, MAT_FINAL_ASSEMBLY)); in main() [all …]
|
| H A D | ex27.c | 9 Mat A[2]; in main() local 18 …PetscCall(MatCreateAIJ(PETSC_COMM_WORLD, PETSC_DECIDE, PETSC_DECIDE, 20, 20, 3, NULL, 3, NULL, &A[… in main() 19 …PetscCall(MatCreateAIJ(PETSC_COMM_WORLD, PETSC_DECIDE, PETSC_DECIDE, 20, 20, 3, NULL, 3, NULL, &A[… in main() 20 PetscCall(MatSetRandom(A[0], rctx)); in main() 21 PetscCall(MatSetRandom(A[1], rctx)); in main() 23 PetscCall(MatAXPY(A[0], 1.0, A[1], DIFFERENT_NONZERO_PATTERN)); in main() 24 PetscCall(MatAXPY(A[0], -1.0, A[0], SAME_NONZERO_PATTERN)); in main() 25 PetscCall(MatNorm(A[0], NORM_1, &nrm)); in main() 29 PetscCall(MatSetRandom(A[0], rctx)); in main() 30 PetscCall(MatSetRandom(A[1], rctx)); in main() [all …]
|
| H A D | ex127.c | 7 Mat A, As, B; in main() local 23 PetscCall(MatCreate(PETSC_COMM_WORLD, &A)); in main() 24 PetscCall(MatSetSizes(A, PETSC_DECIDE, PETSC_DECIDE, dim, dim)); in main() 25 PetscCall(MatSetType(A, MATAIJ)); in main() 26 PetscCall(MatSetFromOptions(A)); in main() 27 PetscCall(MatSetUp(A)); in main() 32 PetscCall(MatGetOwnershipRange(A, &rstart, &rend)); in main() 39 PetscCall(MatSetValues(A, 1, &Ii, 1, &J, &v, ADD_VALUES)); in main() 43 PetscCall(MatSetValues(A, 1, &Ii, 1, &J, &v, ADD_VALUES)); in main() 47 PetscCall(MatSetValues(A, 1, &Ii, 1, &J, &v, ADD_VALUES)); in main() [all …]
|
| H A D | ex12.c | 11 Mat A; in main() local 24 PetscCall(MatCreate(PETSC_COMM_WORLD, &A)); in main() 25 PetscCall(MatSetSizes(A, PETSC_DECIDE, PETSC_DECIDE, m * n, m * n)); in main() 26 PetscCall(MatSetFromOptions(A)); in main() 27 PetscCall(MatSetUp(A)); in main() 34 PetscCall(MatSetValues(A, 1, &Ii, 1, &J, &v, INSERT_VALUES)); in main() 38 PetscCall(MatSetValues(A, 1, &Ii, 1, &J, &v, INSERT_VALUES)); in main() 42 PetscCall(MatSetValues(A, 1, &Ii, 1, &J, &v, INSERT_VALUES)); in main() 46 PetscCall(MatSetValues(A, 1, &Ii, 1, &J, &v, INSERT_VALUES)); in main() 49 PetscCall(MatSetValues(A, 1, &Ii, 1, &Ii, &v, INSERT_VALUES)); in main() [all …]
|
| /petsc/src/binding/petsc4py/test/ |
| H A D | test_mat_py.py | 49 def productSetFromOptions(self, mat, producttype, A, B, C): argument 52 def productSymbolic(self, mat, product, producttype, A, B, C): argument 54 if mat is A: # product = identity * B 61 product.setType(A.getType()) 62 product.setSizes(A.getSizes()) 65 A.copy(product) 69 if mat is A: # product = identity^T * B 77 A.transpose(tmp) 86 if mat is A: # product = identity * B^T 95 product.setType(A.getType()) [all …]
|
| H A D | test_mat_aij.py | 67 A = self.A = PETSc.Mat().create(comm=COMM) 68 A.setType(self.TYPE) 69 A.setSizes([rowsz, colsz], BS) 72 self.A.destroy() 73 self.A = None 78 self.A.setPreallocationNNZ(nnz) 79 self._chk_bs(self.A, self.BSIZE) 81 self.A.setOption(opt, True) 83 self.A.assemble() 84 self._chk_aij(self.A, ai, aj) [all …]
|
| /petsc/src/mat/impls/aij/seq/aijsell/ |
| H A D | aijsell.c | 17 PETSC_INTERN PetscErrorCode MatConvert_SeqAIJSELL_SeqAIJ(Mat A, MatType type, MatReuse reuse, Mat *… in MatConvert_SeqAIJSELL_SeqAIJ() argument 22 Mat_SeqAIJSELL *aijsell = (Mat_SeqAIJSELL *)A->spptr; in MatConvert_SeqAIJSELL_SeqAIJ() 25 if (reuse == MAT_INITIAL_MATRIX) PetscCall(MatDuplicate(A, MAT_COPY_VALUES, &B)); in MatConvert_SeqAIJSELL_SeqAIJ() 53 static PetscErrorCode MatDestroy_SeqAIJSELL(Mat A) in MatDestroy_SeqAIJSELL() argument 55 Mat_SeqAIJSELL *aijsell = (Mat_SeqAIJSELL *)A->spptr; in MatDestroy_SeqAIJSELL() 63 PetscCall(PetscFree(A->spptr)); in MatDestroy_SeqAIJSELL() 68 PetscCall(PetscObjectChangeTypeName((PetscObject)A, MATSEQAIJ)); in MatDestroy_SeqAIJSELL() 72 PetscCall(PetscObjectComposeFunction((PetscObject)A, "MatConvert_seqaijsell_seqaij_C", NULL)); in MatDestroy_SeqAIJSELL() 73 PetscCall(MatDestroy_SeqAIJ(A)); in MatDestroy_SeqAIJSELL() 79 PETSC_INTERN PetscErrorCode MatSeqAIJSELL_build_shadow(Mat A) in MatSeqAIJSELL_build_shadow() argument [all …]
|
| /petsc/src/ksp/ksp/tutorials/output/ |
| H A D | ex21_1.out | 3 0: ||M*A - I|| NORM2 abs 0.999692 rel 1. 4 1: ||M*A - I|| NORM2 abs 0.999647 rel 0.999956 5 2: ||M*A - I|| NORM2 abs 0.999715 rel 1.00002 6 3: ||M*A - I|| NORM2 abs 0.999848 rel 1.00016 7 4: ||M*A - I|| NORM2 abs 0.999899 rel 1.00021 8 5: ||M*A - I|| NORM2 abs 0.999856 rel 1.00016 9 6: ||M*A - I|| NORM2 abs 0.999789 rel 1.0001 10 7: ||M*A - I|| NORM2 abs 0.999662 rel 0.99997 11 8: ||M*A - I|| NORM2 abs 0.999398 rel 0.999706 12 9: ||M*A - I|| NORM2 abs 0.99895 rel 0.999259 [all …]
|
| /petsc/share/petsc/datafiles/meshes/ |
| H A D | cube.stl | 1 …A\�pB�A� B�A�?� B�A\�pB�A\� B�A��� B…
|
| /petsc/src/mat/impls/aij/seq/ |
| H A D | seqhashmat.h | 1 static PetscErrorCode MatCopyHashToXAIJ_Seq_Hash(Mat A, Mat B) in MatCopyHashToXAIJ_Seq_Hash() argument 3 PetscConcat(Mat_Seq, TYPE) *a = (PetscConcat(Mat_Seq, TYPE) *)A->data; in MatCopyHashToXAIJ_Seq_Hash() 14 PetscCall(MatGetBlockSize(A, &bs)); in MatCopyHashToXAIJ_Seq_Hash() 15 if (bs > 1 && A == B) PetscCall(PetscHSetIJDestroy(&a->bht)); in MatCopyHashToXAIJ_Seq_Hash() 17 if (A == B) { in MatCopyHashToXAIJ_Seq_Hash() 18 A->preallocated = PETSC_FALSE; /* this was set to true for the MatSetValues_Hash() to work */ in MatCopyHashToXAIJ_Seq_Hash() 20 A->ops[0] = a->cops; in MatCopyHashToXAIJ_Seq_Hash() 21 A->hash_active = PETSC_FALSE; in MatCopyHashToXAIJ_Seq_Hash() 25 PetscCall(MatGetSize(A, &m, NULL)); in MatCopyHashToXAIJ_Seq_Hash() 47 if (A == B) PetscCall(PetscHMapIJVDestroy(&a->ht)); in MatCopyHashToXAIJ_Seq_Hash() [all …]
|
| /petsc/src/mat/impls/dense/seq/ |
| H A D | dense.c | 13 PetscErrorCode MatSeqDenseSymmetrize_Private(Mat A, PetscBool hermitian) in MatSeqDenseSymmetrize_Private() argument 15 Mat_SeqDense *mat = (Mat_SeqDense *)A->data; in MatSeqDenseSymmetrize_Private() 16 PetscInt j, k, n = A->rmap->n; in MatSeqDenseSymmetrize_Private() 20 …PetscCheck(A->rmap->n == A->cmap->n, PetscObjectComm((PetscObject)A), PETSC_ERR_SUP, "Cannot symme… in MatSeqDenseSymmetrize_Private() 21 PetscCall(MatDenseGetArray(A, &v)); in MatSeqDenseSymmetrize_Private() 31 PetscCall(MatDenseRestoreArray(A, &v)); in MatSeqDenseSymmetrize_Private() 35 PetscErrorCode MatSeqDenseInvertFactors_Private(Mat A) in MatSeqDenseInvertFactors_Private() argument 37 Mat_SeqDense *mat = (Mat_SeqDense *)A->data; in MatSeqDenseInvertFactors_Private() 41 if (!A->rmap->n || !A->cmap->n) PetscFunctionReturn(PETSC_SUCCESS); in MatSeqDenseInvertFactors_Private() 42 PetscCall(PetscBLASIntCast(A->cmap->n, &n)); in MatSeqDenseInvertFactors_Private() [all …]
|
| /petsc/src/benchmarks/ |
| H A D | PetscMemzero.c | 7 PetscScalar A[10000]; in main() local 11 PetscCall(PetscMemzero(A, sizeof(PetscScalar) * 0)); in main() 15 PetscCall(PetscMemzero(A, sizeof(PetscScalar) * 10000)); in main() 16 PetscCall(PetscMemzero(A, sizeof(PetscScalar) * 10000)); in main() 17 PetscCall(PetscMemzero(A, sizeof(PetscScalar) * 10000)); in main() 18 PetscCall(PetscMemzero(A, sizeof(PetscScalar) * 10000)); in main() 19 PetscCall(PetscMemzero(A, sizeof(PetscScalar) * 10000)); in main() 20 PetscCall(PetscMemzero(A, sizeof(PetscScalar) * 10000)); in main() 21 PetscCall(PetscMemzero(A, sizeof(PetscScalar) * 10000)); in main() 22 PetscCall(PetscMemzero(A, sizeof(PetscScalar) * 10000)); in main() [all …]
|
| H A D | PetscMemcmp.c | 7 PetscScalar A[10000], B[10000]; in main() local 13 A[i] = i % 61897; in main() 17 PetscMemcmp(A, B, sizeof(PetscScalar) * 0, &flg); in main() 21 PetscMemcmp(A, B, sizeof(PetscScalar) * 10000, &flg); in main() 22 PetscMemcmp(A, B, sizeof(PetscScalar) * 10000, &flg); in main() 23 PetscMemcmp(A, B, sizeof(PetscScalar) * 10000, &flg); in main() 24 PetscMemcmp(A, B, sizeof(PetscScalar) * 10000, &flg); in main() 25 PetscMemcmp(A, B, sizeof(PetscScalar) * 10000, &flg); in main() 26 PetscMemcmp(A, B, sizeof(PetscScalar) * 10000, &flg); in main() 27 PetscMemcmp(A, B, sizeof(PetscScalar) * 10000, &flg); in main() [all …]
|
| /petsc/src/binding/petsc4py/demo/python_types/ |
| H A D | matpython_protocol.py | 14 def mult(self, A: Mat, x: Vec, y: Vec) -> None: 18 def multAdd(self, A: Mat, x: Vec, y: Vec, z: Vec) -> None: 22 def multTranspose(self, A: Mat, x: Vec, y: Vec) -> None: 26 def multTransposeAdd(self, A: Mat, x: Vec, y: Vec, z: Vec) -> None: 30 def multHermitian(self, A: Mat, x: Vec, y: Vec) -> None: 34 def multHermitianAdd(self, A: Mat, x: Vec, y: Vec, z: Vec) -> None: 38 def view(self, A: Mat, viewer: Viewer) -> None: 42 def setFromOptions(self, A: Mat) -> None: 46 def multDiagonalBlock(self, A: Mat, x: Vec, y: Vec) -> None: 50 def createVecs(self, A: Mat) -> tuple[Vec, Vec]: [all …]
|
| /petsc/src/mat/impls/sell/mpi/mpihip/ |
| H A D | mpisellhip.hip.cxx | 15 PetscCall(MatCreate(PETSC_COMM_SELF, &b->A)); in MatMPISELLSetPreallocation_MPISELLHIP() 16 PetscCall(MatBindToCPU(b->A, B->boundtocpu)); in MatMPISELLSetPreallocation_MPISELLHIP() 17 PetscCall(MatSetSizes(b->A, B->rmap->n, B->cmap->n, B->rmap->n, B->cmap->n)); in MatMPISELLSetPreallocation_MPISELLHIP() 18 PetscCall(MatSetType(b->A, MATSEQSELLHIP)); in MatMPISELLSetPreallocation_MPISELLHIP() 24 PetscCall(MatSeqSELLSetPreallocation(b->A, d_rlenmax, d_rlen)); in MatMPISELLSetPreallocation_MPISELLHIP() 37 static PetscErrorCode MatAssemblyEnd_MPISELLHIP(Mat A, MatAssemblyType mode) in MatAssemblyEnd_MPISELLHIP() argument 40 PetscCall(MatAssemblyEnd_MPISELL(A, mode)); in MatAssemblyEnd_MPISELLHIP() 41 …if (!A->was_assembled && mode == MAT_FINAL_ASSEMBLY) PetscCall(VecSetType(((Mat_MPISELL *)A->data)… in MatAssemblyEnd_MPISELLHIP() 45 static PetscErrorCode MatDestroy_MPISELLHIP(Mat A) in MatDestroy_MPISELLHIP() argument 48 PetscCall(MatDestroy_MPISELL(A)); in MatDestroy_MPISELLHIP() [all …]
|
| /petsc/src/mat/impls/sell/mpi/mpicuda/ |
| H A D | mpisellcuda.cu | 15 PetscCall(MatCreate(PETSC_COMM_SELF, &b->A)); in MatMPISELLSetPreallocation_MPISELLCUDA() 16 PetscCall(MatBindToCPU(b->A, B->boundtocpu)); in MatMPISELLSetPreallocation_MPISELLCUDA() 17 PetscCall(MatSetSizes(b->A, B->rmap->n, B->cmap->n, B->rmap->n, B->cmap->n)); in MatMPISELLSetPreallocation_MPISELLCUDA() 18 PetscCall(MatSetType(b->A, MATSEQSELLCUDA)); in MatMPISELLSetPreallocation_MPISELLCUDA() 24 PetscCall(MatSeqSELLSetPreallocation(b->A, d_rlenmax, d_rlen)); in MatMPISELLSetPreallocation_MPISELLCUDA() 37 static PetscErrorCode MatAssemblyEnd_MPISELLCUDA(Mat A, MatAssemblyType mode) in MatAssemblyEnd_MPISELLCUDA() argument 40 PetscCall(MatAssemblyEnd_MPISELL(A, mode)); in MatAssemblyEnd_MPISELLCUDA() 41 …if (!A->was_assembled && mode == MAT_FINAL_ASSEMBLY) PetscCall(VecSetType(((Mat_MPISELL *)A->data)… in MatAssemblyEnd_MPISELLCUDA() 45 static PetscErrorCode MatDestroy_MPISELLCUDA(Mat A) in MatDestroy_MPISELLCUDA() argument 48 PetscCall(MatDestroy_MPISELL(A)); in MatDestroy_MPISELLCUDA() [all …]
|
| /petsc/src/mat/impls/aij/seq/seqviennacl/ |
| H A D | aijviennacl.cxx | 21 PETSC_INTERN PetscErrorCode MatConvert_SeqAIJ_SeqAIJViennaCL(Mat A, MatType type, MatReuse reuse, M… 25 PetscErrorCode MatViennaCLCopyToGPU(Mat A) in MatViennaCLCopyToGPU() argument 27 Mat_SeqAIJViennaCL *viennaclstruct = (Mat_SeqAIJViennaCL *)A->spptr; in MatViennaCLCopyToGPU() 28 Mat_SeqAIJ *a = (Mat_SeqAIJ *)A->data; in MatViennaCLCopyToGPU() 31 …if (A->rmap->n > 0 && A->cmap->n > 0 && a->nz) { //some OpenCL SDKs have issues with buffers of si… in MatViennaCLCopyToGPU() 32 if (A->offloadmask == PETSC_OFFLOAD_UNALLOCATED || A->offloadmask == PETSC_OFFLOAD_CPU) { in MatViennaCLCopyToGPU() 33 PetscCall(PetscLogEventBegin(MAT_ViennaCLCopyToGPU, A, 0, 0, 0)); in MatViennaCLCopyToGPU() 54 …mat->set(row_buffer.get(), row_indices.get(), col_buffer.get(), a->a, A->rmap->n, A->cmap->n, a->c… in MatViennaCLCopyToGPU() 63 row_buffer.raw_resize(dummy, A->rmap->n + 1); in MatViennaCLCopyToGPU() 64 for (PetscInt i = 0; i <= A->rmap->n; ++i) row_buffer.set(i, (a->i)[i]); in MatViennaCLCopyToGPU() [all …]
|
| /petsc/src/mat/impls/diagonal/ |
| H A D | diagonal.c | 13 static PetscErrorCode MatDiagonalSetUpDiagonal(Mat A) in MatDiagonalSetUpDiagonal() argument 15 Mat_Diagonal *ctx = (Mat_Diagonal *)A->data; in MatDiagonalSetUpDiagonal() 19 …PetscAssert(ctx->inv_diag_valid, PetscObjectComm((PetscObject)A), PETSC_ERR_PLIB, "Neither diagona… in MatDiagonalSetUpDiagonal() 27 static PetscErrorCode MatDiagonalSetUpInverseDiagonal(Mat A) in MatDiagonalSetUpInverseDiagonal() argument 29 Mat_Diagonal *ctx = (Mat_Diagonal *)A->data; in MatDiagonalSetUpInverseDiagonal() 33 …PetscAssert(ctx->diag_valid, PetscObjectComm((PetscObject)A), PETSC_ERR_PLIB, "Neither diagonal no… in MatDiagonalSetUpInverseDiagonal() 54 static PetscErrorCode MatGetRow_Diagonal(Mat A, PetscInt row, PetscInt *ncols, PetscInt **cols, Pet… in MatGetRow_Diagonal() argument 56 Mat_Diagonal *mat = (Mat_Diagonal *)A->data; in MatGetRow_Diagonal() 57 PetscInt rstart = A->rmap->rstart, rend = A->rmap->rend; in MatGetRow_Diagonal() 79 static PetscErrorCode MatMult_Diagonal(Mat A, Vec x, Vec y) in MatMult_Diagonal() argument [all …]
|