petsc-3.14.6 2021-03-30
Report Typos and Errors

MatMFFDSetFunction

Sets the function used in applying the matrix free.

Synopsis

#include "petscmat.h"   
PetscErrorCode  MatMFFDSetFunction(Mat mat,PetscErrorCode (*func)(void*,Vec,Vec),void *funcctx)
Logically Collective on Mat

Input Parameters

mat - the matrix free matrix created via MatCreateSNESMF() or MatCreateMFFD()
func - the function to use
funcctx - optional function context passed to function

Calling Sequence of func

    func (void *funcctx, Vec x, Vec f)

funcctx - user provided context
x - input vector
f - computed output function

Notes

If you use this you MUST call MatAssemblyBegin()/MatAssemblyEnd() on the matrix free matrix inside your compute Jacobian routine

If this is not set then it will use the function set with SNESSetFunction() if MatCreateSNESMF() was used.

See Also

MatCreateSNESMF(),MatMFFDGetH(), MatCreateMFFD(), MATMFFD,
MatMFFDSetHHistory(), MatMFFDResetHHistory(), SNESetFunction()

Level

advanced

Location

src/mat/impls/mffd/mffd.c

Examples

src/snes/tutorials/ex22.c.html

Implementations

MatMFFDSetFunction_MFFD(Mat mat,PetscErrorCode (*func) in src/mat/impls/mffd/mffd.c

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