Skip to main content
`Ctrl`+`K`

# MatSetStencil

Sets the grid information for setting values into a matrix via `MatSetValuesStencil()`

## Synopsis

    #include "petscmat.h"
    PetscErrorCode MatSetStencil(Mat mat, PetscInt dim, const PetscInt dims[], const PetscInt starts[], PetscInt dof)

Not Collective

## Input Parameters

- mat - the matrix

- dim - dimension of the grid 1, 2, or 3

- dims - number of grid points in x, y, and z direction, including ghost points on your processor

- starts - starting point of ghost nodes on your processor in x, y, and z direction

- dof - number of degrees of freedom per node

## Notes

Inspired by the structured grid interface to the HYPRE package (www.llnl.gov/CASC/hyper)

For matrices generated with `DMCreateMatrix()` this routine is automatically called and so not needed by the user.

## See Also

Matrices, `Mat`, `MatStencil`, `MatSetOption()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `MatSetValuesBlocked()`, `MatSetValuesLocal()`, `MatSetValues()`, `MatSetValuesBlockedStencil()`, `MatSetValuesStencil()`

## Level

beginner

## Location

src/mat/interface/matrix.c

## Examples

src/snes/tutorials/ex48.c

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