History log of /petsc/src/ksp/pc/impls/mat/tests/output/ex1_0.out (Results 1 – 4 of 4)
Revision Date Author Comments
# eaa7cf45 17-Nov-2025 Satish Balay <balay@mcs.anl.gov>

Merge branch 'barry/2025-11-04/kspview-clearer-amat-pmat' into 'main'

Fix terminology for Pmat in KSPView output.

See merge request petsc/petsc!8826


# ecf3d421 17-Nov-2025 Barry Smith <bsmith@mcs.anl.gov>

Fix terminology for Pmat in KSPView output.


# 93d6cec8 30-May-2023 Satish Balay <balay@mcs.anl.gov>

Merge branch 'tisaac/feature-mat-vectordiagonal' into 'main'

Add MATDIAGONAL and PCMatSetApplyOperation()

See merge request petsc/petsc!6487


# 345a4b08 19-May-2023 Toby Isaac <toby.isaac@gmail.com>

Add `MATDIAGONAL` and `PCMatSetApplyOperation()`

`MATDIAGONAL` (`MatCreateDiagonal()`) is an interface for
manipulating a diagonal matrix as a `Vec`, in particular supporting
no-copy modification of

Add `MATDIAGONAL` and `PCMatSetApplyOperation()`

`MATDIAGONAL` (`MatCreateDiagonal()`) is an interface for
manipulating a diagonal matrix as a `Vec`, in particular supporting
no-copy modification of the diagonal and inverse diagonal via
`MatDiagonalGetDiagonal()`, `MatDiagonalRestoreDiagonal()`,
`MatDiagonalGetInverseDiagonal()`, and
`MatDiagonalRestoreInverseDiagonal`().

`PCMatSetApplyOperation()` and `PCMatGetApplyOperation()`
support using all the linear operators currently defined by a `Mat`
(`MatMult()`, `MatMultTranspose()`, `MatMultHermitianTranspose()`,
`MatSolve()`, `MatSolveTranspose()`) as the operation of `PCApply()`
for a `PCMAT`. The advantage over a `PCSHELL` is that the other
operations (`PCApplyTranspose()`, `PCMatApply()`) are automatically
inferred.

These tools help make it easier to route operations like
`VecPointwiseMult()` and `VecPointwiseDivide()` through
`KSPSolve()` to avoid handling diagonal matrices as a special
case (a pattern that is going to be removed from `MATLMVM`).

show more ...