Skip to main content
`Ctrl`+`K`

# MatLMVMSetJ0

Allows the user to define the initial Jacobian matrix from which the LMVM-type approximation is built up.

## Synopsis

    #include "petscksp.h"
    PetscErrorCode MatLMVMSetJ0(Mat B, Mat J0)

## Input Parameters

- B - A `MATLMVM` matrix

- J0 - The initial Jacobian matrix

## Notes

The inverse of this initial Jacobian is applied using an internal `KSP` solver, which defaults to `KSPGMRES`.

This internal `KSP` solver has the “mat_lmvm_” option prefix.

Another `MATLMVM` matrix can be used in place of `J0`, in which case updating the outer `MATLMVM` matrix will also trigger the update for the inner `MATLMVM` matrix. This is useful in cases where a full-memory diagonal approximation such as `MATLMVMDIAGBRDN` is used in place of `J0`.

## See Also

KSP: Linear System Solvers, LMVM Matrices, `MATLMVM`, `MatLMVMSetJ0PC()`, `MatLMVMSetJ0KSP()`

## Level

advanced

## Location

src/ksp/ksp/utils/lmvm/lmvmutils.c

Index of all KSP routines
Table of Contents for all manual pages
Index of all manual pages