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


Edit on GitLab

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