# MatLMVMApplyJ0Inv
Applies some estimation of the initial Jacobian inverse to the given vector. The specific form of the application depends on whether the user provided a scaling factor, a J0 matrix, a J0 `PC`, or a J0 `KSP` object. If no form of the initial Jacobian is provided, the function simply does an identity matrix application (vector copy). 
## Synopsis
```
#include "petscksp.h" 
PetscErrorCode MatLMVMApplyJ0Inv(Mat B, Vec X, Vec Y)
```

## Input Parameters

- ***B -*** An LMVM-type matrix
- ***X -*** vector to "multiply" with J0^{-1}



## Output Parameter

- ***Y -*** resulting vector for the operation





## See Also
 [](chapter_ksp), [LMVM Matrices](sec_matlmvm), `MATLMVM`, `MatLMVMSetJ0()`, `MatLMVMSetJ0Scale()`, `MatLMVMSetJ0ScaleDiag()`,
`MatLMVMSetJ0PC()`, `MatLMVMSetJ0KSP()`, `MatLMVMApplyJ0Fwd()`

## Level
advanced

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/ksp/ksp/utils/lmvm/lmvmutils.c.html#MatLMVMApplyJ0Inv">src/ksp/ksp/utils/lmvm/lmvmutils.c</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/ksp/ksp/utils/lmvm/lmvmutils.c)


[Index of all KSP routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
