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

MatGetOperation

Gets a matrix operation for any matrix type.

Synopsis

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

Input Parameters

mat - the matrix
op - the name of the operation

Output Parameter

f - the function that provides the operation

Usage

     PetscErrorCode (*usermult)(Mat,Vec,Vec);
     ierr = MatGetOperation(A,MATOP_MULT,(void(**)(void))&usermult);

Notes

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).

This routine is distinct from MatShellGetOperation() in that it can be called on any matrix type.

See Also

MatSetOperation(), MatCreateShell(), MatShellGetContext(), MatShellGetOperation()

Level

developer

Location

src/mat/interface/matrix.c

Examples

src/ksp/ksp/tutorials/ex29.c.html
src/ksp/ksp/tutorials/ex34.c.html

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