Lines Matching refs:Y

3 static PetscErrorCode MatTransposeAXPY_Private(Mat Y, PetscScalar a, Mat X, MatStructure str, Mat T)  in MatTransposeAXPY_Private()  argument
21 A = Y; in MatTransposeAXPY_Private()
31 A = Y; in MatTransposeAXPY_Private()
43 static PetscErrorCode MatAXPY_BasicWithTypeCompare(Mat Y, PetscScalar a, Mat X, MatStructure str) in MatAXPY_BasicWithTypeCompare() argument
48 PetscCall(MatIsShell(Y, &flg)); in MatAXPY_BasicWithTypeCompare()
52 PetscCall(MatGetOperation(Y, MATOP_AXPY, (PetscErrorCodeFn **)&f)); in MatAXPY_BasicWithTypeCompare()
54 PetscCall((*f)(Y, a, X, str)); in MatAXPY_BasicWithTypeCompare()
59 PetscCall(PetscObjectBaseTypeCompareAny((PetscObject)Y, &flg, MATSEQDENSE, MATMPIDENSE, "")); in MatAXPY_BasicWithTypeCompare()
63 PetscCall(MatAXPY_Dense_Nest(Y, a, X)); in MatAXPY_BasicWithTypeCompare()
71 PetscCall(MatConvert(X, ((PetscObject)Y)->type_name, MAT_INITIAL_MATRIX, &C)); in MatAXPY_BasicWithTypeCompare()
72 PetscCall(MatAXPY(Y, a, C, str)); in MatAXPY_BasicWithTypeCompare()
77 PetscCall(MatAXPY_Basic(Y, a, X, str)); in MatAXPY_BasicWithTypeCompare()
96 PetscErrorCode MatAXPY(Mat Y, PetscScalar a, Mat X, MatStructure str) in MatAXPY() argument
103 PetscValidHeaderSpecific(Y, MAT_CLASSID, 1); in MatAXPY()
104 PetscValidLogicalCollectiveScalar(Y, a, 2); in MatAXPY()
106 PetscCheckSameComm(Y, 1, X, 3); in MatAXPY()
108 PetscCall(MatGetSize(Y, &M2, &N2)); in MatAXPY()
110 PetscCall(MatGetLocalSize(Y, &m2, &n2)); in MatAXPY()
111 …PetscCheck(M1 == M2 && N1 == N2, PetscObjectComm((PetscObject)Y), PETSC_ERR_ARG_SIZ, "Non conformi… in MatAXPY()
113 …PetscCheck(Y->assembled, PetscObjectComm((PetscObject)Y), PETSC_ERR_ARG_WRONGSTATE, "Not for unass… in MatAXPY()
116 if (Y == X) { in MatAXPY()
117 PetscCall(MatScale(Y, 1.0 + a)); in MatAXPY()
120 PetscCall(PetscObjectObjectTypeCompare((PetscObject)X, (PetscObject)Y, &sametype)); in MatAXPY()
121 PetscCall(PetscLogEventBegin(MAT_AXPY, Y, 0, 0, 0)); in MatAXPY()
122 if (Y->ops->axpy && (sametype || X->ops->axpy == Y->ops->axpy)) { in MatAXPY()
123 PetscUseTypeMethod(Y, axpy, a, X, str); in MatAXPY()
127 PetscCall(MatTransposeAXPY_Private(Y, a, X, str, X)); in MatAXPY()
129 …PetscCall(PetscObjectTypeCompareAny((PetscObject)Y, &transpose, MATTRANSPOSEVIRTUAL, MATHERMITIANT… in MatAXPY()
131 PetscCall(MatTransposeAXPY_Private(Y, a, X, str, Y)); in MatAXPY()
133 PetscCall(MatAXPY_BasicWithTypeCompare(Y, a, X, str)); in MatAXPY()
137 PetscCall(PetscLogEventEnd(MAT_AXPY, Y, 0, 0, 0)); in MatAXPY()
141 PetscErrorCode MatAXPY_Basic_Preallocate(Mat Y, Mat X, Mat *B) in MatAXPY_Basic_Preallocate() argument
147 PetscCall(PetscObjectQueryFunction((PetscObject)Y, "MatAXPYGetPreallocation_C", &preall)); in MatAXPY_Basic_Preallocate()
149 PetscCall((*preall)(Y, X, B)); in MatAXPY_Basic_Preallocate()
155 PetscCall(MatGetRowUpperTriangular(Y)); in MatAXPY_Basic_Preallocate()
157 PetscCall(MatGetSize(Y, &M, &N)); in MatAXPY_Basic_Preallocate()
158 PetscCall(MatGetLocalSize(Y, &m, &n)); in MatAXPY_Basic_Preallocate()
159 PetscCall(MatCreate(PetscObjectComm((PetscObject)Y), &preallocator)); in MatAXPY_Basic_Preallocate()
161 PetscCall(MatSetLayouts(preallocator, Y->rmap, Y->cmap)); in MatAXPY_Basic_Preallocate()
169 PetscCall(MatGetRow(Y, r, &ncols, &row, &vals)); in MatAXPY_Basic_Preallocate()
171 PetscCall(MatRestoreRow(Y, r, &ncols, &row, &vals)); in MatAXPY_Basic_Preallocate()
179 PetscCall(MatRestoreRowUpperTriangular(Y)); in MatAXPY_Basic_Preallocate()
182 PetscCall(MatCreate(PetscObjectComm((PetscObject)Y), B)); in MatAXPY_Basic_Preallocate()
183 PetscCall(MatSetType(*B, ((PetscObject)Y)->type_name)); in MatAXPY_Basic_Preallocate()
184 PetscCall(MatSetLayouts(*B, Y->rmap, Y->cmap)); in MatAXPY_Basic_Preallocate()
191 PetscErrorCode MatAXPY_Basic(Mat Y, PetscScalar a, Mat X, MatStructure str) in MatAXPY_Basic() argument
198 … PetscCall(PetscObjectBaseTypeCompareAny((PetscObject)Y, &isdense, MATSEQDENSE, MATMPIDENSE, "")); in MatAXPY_Basic()
214 PetscCall(MatSetValues(Y, 1, &i, ncols, row, vals, ADD_VALUES)); in MatAXPY_Basic()
228 PetscCall(MatSetValues(Y, 1, &i, ncols, row, val, ADD_VALUES)); in MatAXPY_Basic()
234 PetscCall(MatGetOption(Y, MAT_NO_OFF_PROC_ENTRIES, &option)); in MatAXPY_Basic()
235 PetscCall(MatSetOption(Y, MAT_NO_OFF_PROC_ENTRIES, PETSC_TRUE)); in MatAXPY_Basic()
236 PetscCall(MatAssemblyBegin(Y, MAT_FINAL_ASSEMBLY)); in MatAXPY_Basic()
237 PetscCall(MatAssemblyEnd(Y, MAT_FINAL_ASSEMBLY)); in MatAXPY_Basic()
238 PetscCall(MatSetOption(Y, MAT_NO_OFF_PROC_ENTRIES, option)); in MatAXPY_Basic()
242 PetscCall(MatAXPY_Basic_Preallocate(Y, X, &B)); in MatAXPY_Basic()
243 PetscCall(MatAXPY_BasicWithPreallocation(B, Y, a, X, str)); in MatAXPY_Basic()
244 PetscCall(MatHeaderMerge(Y, &B)); in MatAXPY_Basic()
249 PetscErrorCode MatAXPY_BasicWithPreallocation(Mat B, Mat Y, PetscScalar a, Mat X, MatStructure str) in MatAXPY_BasicWithPreallocation() argument
260 PetscCall(MatGetRowUpperTriangular(Y)); in MatAXPY_BasicWithPreallocation()
264 PetscCall(MatGetRow(Y, i, &ncols, &row, &vals)); in MatAXPY_BasicWithPreallocation()
266 PetscCall(MatRestoreRow(Y, i, &ncols, &row, &vals)); in MatAXPY_BasicWithPreallocation()
277 PetscCall(MatGetRow(Y, i, &ncols, &row, &vals)); in MatAXPY_BasicWithPreallocation()
279 PetscCall(MatRestoreRow(Y, i, &ncols, &row, &vals)); in MatAXPY_BasicWithPreallocation()
292 PetscCall(MatRestoreRowUpperTriangular(Y)); in MatAXPY_BasicWithPreallocation()
324 PetscErrorCode MatShift(Mat Y, PetscScalar a) in MatShift() argument
327 PetscValidHeaderSpecific(Y, MAT_CLASSID, 1); in MatShift()
328 …PetscCheck(Y->assembled, PetscObjectComm((PetscObject)Y), PETSC_ERR_ARG_WRONGSTATE, "Not for unass… in MatShift()
329 …PetscCheck(!Y->factortype, PetscObjectComm((PetscObject)Y), PETSC_ERR_ARG_WRONGSTATE, "Not for fac… in MatShift()
330 MatCheckPreallocated(Y, 1); in MatShift()
333 if (Y->ops->shift) PetscUseTypeMethod(Y, shift, a); in MatShift()
334 else PetscCall(MatShift_Basic(Y, a)); in MatShift()
336 PetscCall(PetscObjectStateIncrease((PetscObject)Y)); in MatShift()
340 PetscErrorCode MatDiagonalSet_Default(Mat Y, Vec D, InsertMode is) in MatDiagonalSet_Default() argument
346 PetscCall(MatGetOwnershipRange(Y, &start, &end)); in MatDiagonalSet_Default()
348 for (i = start; i < end; i++) PetscCall(MatSetValues(Y, 1, &i, 1, &i, v + i - start, is)); in MatDiagonalSet_Default()
350 PetscCall(MatAssemblyBegin(Y, MAT_FINAL_ASSEMBLY)); in MatDiagonalSet_Default()
351 PetscCall(MatAssemblyEnd(Y, MAT_FINAL_ASSEMBLY)); in MatDiagonalSet_Default()
376 PetscErrorCode MatDiagonalSet(Mat Y, Vec D, InsertMode is) in MatDiagonalSet() argument
381 PetscValidHeaderSpecific(Y, MAT_CLASSID, 1); in MatDiagonalSet()
383 MatCheckPreallocated(Y, 1); in MatDiagonalSet()
384 PetscCall(MatGetLocalSize(Y, &matlocal, NULL)); in MatDiagonalSet()
387 if (Y->ops->diagonalset) PetscUseTypeMethod(Y, diagonalset, D, is); in MatDiagonalSet()
388 else PetscCall(MatDiagonalSet_Default(Y, D, is)); in MatDiagonalSet()
389 PetscCall(PetscObjectStateIncrease((PetscObject)Y)); in MatDiagonalSet()
408 PetscErrorCode MatAYPX(Mat Y, PetscScalar a, Mat X, MatStructure str) in MatAYPX() argument
411 PetscCall(MatScale(Y, a)); in MatAYPX()
412 PetscCall(MatAXPY(Y, 1.0, X, str)); in MatAYPX()