Lines Matching refs:right

127   if (!shell->right) {  in MatShellPreScaleRight()
130 if (!shell->right_work) PetscCall(VecDuplicate(shell->right, &shell->right_work)); in MatShellPreScaleRight()
131 PetscCall(VecPointwiseMult(shell->right_work, x, shell->right)); in MatShellPreScaleRight()
157 if (shell->right) { in MatShellPostScaleRight()
163 PetscCall(VecGetArrayRead(shell->right, &d)); in MatShellPostScaleRight()
168 } else PetscCall(VecPointwiseMult(x, x, shell->right)); in MatShellPostScaleRight()
444 PetscCall(VecDestroy(&shell->right)); in MatDestroy_Shell()
528 if (shell->right || shell->left) { in MatProductNumeric_Shell_X()
539 if (shell->right) PetscCall(MatDiagonalScale(mdata->B, shell->right, NULL)); in MatProductNumeric_Shell_X()
545 if (shell->right) PetscCall(MatDiagonalScale(mdata->B, NULL, shell->right)); in MatProductNumeric_Shell_X()
548 if (shell->right && shell->left) { in MatProductNumeric_Shell_X()
551 PetscCall(VecEqual(shell->right, shell->left, &flg)); in MatProductNumeric_Shell_X()
555 if (shell->right) PetscCall(MatDiagonalScale(mdata->B, NULL, shell->right)); in MatProductNumeric_Shell_X()
558 if (shell->right && shell->left) { in MatProductNumeric_Shell_X()
561 PetscCall(VecEqual(shell->right, shell->left, &flg)); in MatProductNumeric_Shell_X()
565 if (shell->right) PetscCall(MatDiagonalScale(mdata->B, shell->right, NULL)); in MatProductNumeric_Shell_X()
617 if (shell->right) { in MatProductNumeric_Shell_X()
618 PetscCall(MatDiagonalScale(D, shell->right, NULL)); in MatProductNumeric_Shell_X()
626 PetscCall(VecPointwiseMult(shell->right_work, shell->right_work, shell->right)); in MatProductNumeric_Shell_X()
936 if (shellA->right) { in MatCopy_Shell()
937 if (!shellB->right) PetscCall(VecDuplicate(shellA->right, &shellB->right)); in MatCopy_Shell()
938 PetscCall(VecCopy(shellA->right, shellB->right)); in MatCopy_Shell()
940 PetscCall(VecDestroy(&shellB->right)); in MatCopy_Shell()
1153 if (shell->right) PetscCall(VecPointwiseMult(v, v, shell->right)); in MatGetDiagonal_Shell()
1175 Vec left = NULL, right = NULL; in MatGetDiagonalBlock_Shell() local
1189 if (shell->right) { in MatGetDiagonalBlock_Shell()
1190 PetscCall(VecCreateLocalVector(shell->right, &right)); in MatGetDiagonalBlock_Shell()
1191 PetscCall(VecGetLocalVectorRead(shell->right, right)); in MatGetDiagonalBlock_Shell()
1193 PetscCall(MatDiagonalScale(*b, left, right)); in MatGetDiagonalBlock_Shell()
1198 if (shell->right) { in MatGetDiagonalBlock_Shell()
1199 PetscCall(VecRestoreLocalVectorRead(shell->right, right)); in MatGetDiagonalBlock_Shell()
1200 PetscCall(VecDestroy(&right)); in MatGetDiagonalBlock_Shell()
1213 if (shell->left || shell->right) { in MatShift_Shell()
1215 PetscCall(VecDuplicate(shell->left ? shell->left : shell->right, &shell->dshift)); in MatShift_Shell()
1219 if (shell->right) PetscCall(VecPointwiseMult(shell->dshift, shell->dshift, shell->right)); in MatShift_Shell()
1223 if (shell->right) PetscCall(VecPointwiseDivide(shell->dshift, shell->dshift, shell->right)); in MatShift_Shell()
1235 if (shell->left || shell->right) { in MatDiagonalSet_Shell_Private()
1236 …if (!shell->right_work) PetscCall(VecDuplicate(shell->left ? shell->left : shell->right, &shell->r… in MatDiagonalSet_Shell_Private()
1237 if (shell->left && shell->right) { in MatDiagonalSet_Shell_Private()
1239 PetscCall(VecPointwiseDivide(shell->right_work, shell->right_work, shell->right)); in MatDiagonalSet_Shell_Private()
1243 PetscCall(VecPointwiseDivide(shell->right_work, D, shell->right)); in MatDiagonalSet_Shell_Private()
1288 static PetscErrorCode MatDiagonalScale_Shell(Mat Y, Vec left, Vec right) in MatDiagonalScale_Shell() argument
1302 if (right) { in MatDiagonalScale_Shell()
1303 if (!shell->right) { in MatDiagonalScale_Shell()
1304 PetscCall(VecDuplicate(right, &shell->right)); in MatDiagonalScale_Shell()
1305 PetscCall(VecCopy(right, shell->right)); in MatDiagonalScale_Shell()
1307 PetscCall(VecPointwiseMult(shell->right, shell->right, right)); in MatDiagonalScale_Shell()
1312 …PetscCall(VecScatterBegin(shell->zvals_sct_c, right, shell->zvals_w, INSERT_VALUES, SCATTER_FORWAR… in MatDiagonalScale_Shell()
1313 …PetscCall(VecScatterEnd(shell->zvals_sct_c, right, shell->zvals_w, INSERT_VALUES, SCATTER_FORWARD)… in MatDiagonalScale_Shell()
1317 if (shell->axpy) PetscCall(MatDiagonalScale(shell->axpy, left, right)); in MatDiagonalScale_Shell()
1333 PetscCall(VecDestroy(&shell->right)); in MatAssemblyEnd_Shell()
1580 …A, PetscScalar *vshift, PetscScalar *vscale, Vec *dshift, Vec *left, Vec *right, Mat *axpy, IS *zr… in MatShellGetScalingShifts_Shell() argument
1594 …if (right == MAT_SHELL_NOT_ALLOWED) PetscCheck(!shell->right, PetscObjectComm((PetscObject)A), PET… in MatShellGetScalingShifts_Shell()
1595 else if (right) *right = shell->right; in MatShellGetScalingShifts_Shell()
2011 …A, PetscScalar *vshift, PetscScalar *vscale, Vec *dshift, Vec *left, Vec *right, Mat *axpy, IS *zr… in MatShellGetScalingShifts() argument
2015 …ec *, Vec *, Vec *, Mat *, IS *, IS *), (A, vshift, vscale, dshift, left, right, axpy, zrows, zcol… in MatShellGetScalingShifts()