Skip to main content
`Ctrl`+`K`

# SNESSetUpMatrices

ensures that matrices are available for `SNES` Newton-like methods, this is called by `SNESSetUp_XXX()`

## Synopsis

    #include "petscsnes.h"
    #include "petscsnes.h"
    PetscErrorCode SNESSetUpMatrices(SNES snes)

Collective

## Input Parameter

- snes - `SNES` object to configure

## Note

If the matrices do not yet exist it attempts to create them based on options previously set for the `SNES` such as `-snes_mf`

## Developer Note

The functionality of this routine overlaps in a confusing way with the functionality of `SNESSetUpMatrixFree_Private()` which is called by `SNESSetUp()` but sometimes `SNESSetUpMatrices()` is called without `SNESSetUp()` being called. A refactorization to simplify the logic that handles the matrix-free case is desirable.

## See Also

SNES: Nonlinear Solvers, `SNES`, `SNESSetUp()`

## Level

developer

## Location

src/snes/interface/snes.c

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