MatMFFDSetFunctioni#

Sets the function for a single component for a MATMFFD matrix

Synopsis#

#include "petscmat.h"   
PetscErrorCode MatMFFDSetFunctioni(Mat mat, PetscErrorCode (*funci)(void *, PetscInt, Vec, PetscScalar *))

Logically Collective

Input Parameters#

  • mat - the matrix-free matrix MATMFFD

  • funci - the function to use

Notes#

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

This function is necessary to compute the diagonal of the matrix. funci must not contain any MPI call as it is called inside a loop on the local portion of the vector.

See Also#

Matrices, Mat, MATMFFD, MatCreateSNESMF(), MatMFFDGetH(), MatMFFDSetHHistory(), MatMFFDResetHHistory(), SNESetFunction(), MatGetDiagonal()

Level#

advanced

Location#

src/mat/impls/mffd/mffd.c

Implementations#

MatMFFDSetFunctioni_MFFD() in src/mat/impls/mffd/mffd.c


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