Lines Matching refs:scatter

9   VecScatter scatter;  member
27 PetscErrorCode MatScatterGetVecScatter(Mat mat, VecScatter *scatter) in MatScatterGetVecScatter() argument
33 PetscAssertPointer(scatter, 2); in MatScatterGetVecScatter()
35 *scatter = mscatter->scatter; in MatScatterGetVecScatter()
41 Mat_Scatter *scatter = (Mat_Scatter *)mat->data; in MatDestroy_Scatter() local
44 PetscCall(VecScatterDestroy(&scatter->scatter)); in MatDestroy_Scatter()
51 Mat_Scatter *scatter = (Mat_Scatter *)A->data; in MatMult_Scatter() local
54 …PetscCheck(scatter->scatter, PetscObjectComm((PetscObject)A), PETSC_ERR_ARG_WRONGSTATE, "Need to f… in MatMult_Scatter()
56 PetscCall(VecScatterBegin(scatter->scatter, x, y, ADD_VALUES, SCATTER_FORWARD)); in MatMult_Scatter()
57 PetscCall(VecScatterEnd(scatter->scatter, x, y, ADD_VALUES, SCATTER_FORWARD)); in MatMult_Scatter()
63 Mat_Scatter *scatter = (Mat_Scatter *)A->data; in MatMultAdd_Scatter() local
66 …PetscCheck(scatter->scatter, PetscObjectComm((PetscObject)A), PETSC_ERR_ARG_WRONGSTATE, "Need to f… in MatMultAdd_Scatter()
68 PetscCall(VecScatterBegin(scatter->scatter, x, z, ADD_VALUES, SCATTER_FORWARD)); in MatMultAdd_Scatter()
69 PetscCall(VecScatterEnd(scatter->scatter, x, z, ADD_VALUES, SCATTER_FORWARD)); in MatMultAdd_Scatter()
75 Mat_Scatter *scatter = (Mat_Scatter *)A->data; in MatMultTranspose_Scatter() local
78 …PetscCheck(scatter->scatter, PetscObjectComm((PetscObject)A), PETSC_ERR_ARG_WRONGSTATE, "Need to f… in MatMultTranspose_Scatter()
80 PetscCall(VecScatterBegin(scatter->scatter, x, y, ADD_VALUES, SCATTER_REVERSE)); in MatMultTranspose_Scatter()
81 PetscCall(VecScatterEnd(scatter->scatter, x, y, ADD_VALUES, SCATTER_REVERSE)); in MatMultTranspose_Scatter()
87 Mat_Scatter *scatter = (Mat_Scatter *)A->data; in MatMultTransposeAdd_Scatter() local
90 …PetscCheck(scatter->scatter, PetscObjectComm((PetscObject)A), PETSC_ERR_ARG_WRONGSTATE, "Need to f… in MatMultTransposeAdd_Scatter()
92 PetscCall(VecScatterBegin(scatter->scatter, x, z, ADD_VALUES, SCATTER_REVERSE)); in MatMultTransposeAdd_Scatter()
93 PetscCall(VecScatterEnd(scatter->scatter, x, z, ADD_VALUES, SCATTER_REVERSE)); in MatMultTransposeAdd_Scatter()
301 PetscErrorCode MatCreateScatter(MPI_Comm comm, VecScatter scatter, Mat *A) in MatCreateScatter() argument
305 …PetscCall(MatSetSizes(*A, scatter->vscat.to_n, scatter->vscat.from_n, PETSC_DETERMINE, PETSC_DETER… in MatCreateScatter()
307 PetscCall(MatScatterSetVecScatter(*A, scatter)); in MatCreateScatter()
325 PetscErrorCode MatScatterSetVecScatter(Mat mat, VecScatter scatter) in MatScatterSetVecScatter() argument
331 PetscValidHeaderSpecific(scatter, PETSCSF_CLASSID, 2); in MatScatterSetVecScatter()
332 PetscCheckSameComm(scatter, 2, mat, 1); in MatScatterSetVecScatter()
333scatter->vscat.to_n, PETSC_COMM_SELF, PETSC_ERR_ARG_SIZ, "Number of local rows in matrix %" PetscI… in MatScatterSetVecScatter()
334scatter->vscat.from_n, PETSC_COMM_SELF, PETSC_ERR_ARG_SIZ, "Number of local columns in matrix %" P… in MatScatterSetVecScatter()
336 PetscCall(PetscObjectReference((PetscObject)scatter)); in MatScatterSetVecScatter()
337 PetscCall(VecScatterDestroy(&mscatter->scatter)); in MatScatterSetVecScatter()
339 mscatter->scatter = scatter; in MatScatterSetVecScatter()