:orphan:
# MatMFFD
A data structured used to manage the computation of the h differencing parameter for matrix-free Jacobian vector products 
## Synopsis
```
typedef struct _p_MatMFFD *MatMFFD;
```



## Notes
`MATMFFD` is a specific `MatType` which uses the `MatMFFD` data structure

MatMFFD*() methods actually take the `Mat` as their first argument. Not a `MatMFFD` data structure

This functionality is often obtained using `MatCreateSNESMF()` or with `SNES` solvers using `-snes_mf` or `-snes_mf_operator`


## See Also
 [](ch_matrices), `MatMFFDType`, `MATMFFD`, `MatCreateMFFD()`, `MatMFFDSetFuction()`, `MatMFFDSetType()`, `MatMFFDRegister()`,
`MatCreateSNESMF()`, `SNES`, `-snes_mf`, `-snes_mf_operator`

## Level
developer

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/include/petscmat.h.html#MatMFFD">include/petscmat.h</A>

## Implementations

<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/mat/impls/mffd/mffdimpl.h.html#_p_MatMFFD">_p_MatMFFD in src/mat/impls/mffd/mffdimpl.h</A><BR>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/include/petscmat.h)


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