petsc-3.6.4 2016-04-12
Report Typos and Errors


Gets a matrix function for a shell matrix.


#include "petscmat.h" 
PetscErrorCode  MatShellGetOperation(Mat mat,MatOperation op,void(**f)(void))
Not Collective

Input Parameters

mat - the shell matrix
op - the name of the operation

Output Parameter

f -the function that provides the operation.


See the file include/petscmat.h for a complete list of matrix operations, which all have the form MATOP_<OPERATION>, where <OPERATION> is the name (in all capital letters) of the user interface routine (e.g., MatMult() -> MATOP_MULT).

All user-provided functions have the same calling sequence as the usual matrix interface routines, since they are intended to be accessed via the usual matrix interface routines, e.g.,

      MatMult(Mat,Vec,Vec) -> usermult(Mat,Vec,Vec)

Within each user-defined routine, the user should call MatShellGetContext() to obtain the user-defined context that was set by MatCreateShell().


matrix, shell, set, operation

See Also

MatCreateShell(), MatShellGetContext(), MatShellSetOperation(), MatShellSetContext()

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