# fdmat.m

Returns arbitrary-order central finite-difference differentiation matrices (sparse) with unit grid point spacing.

## Syntax

    D=fdmat(dim,nstenc,order,boundary)


## Arguments

    dim       - dimension of the column vector to be
differentiated

nstenc    - number of points in the finite diffe-
rence stencil

order     - order of the derivative required

boundary  - 'wall' fills the edges with sided
finite difference schemes, 'pbc'
assumes periodic boundaries. The
default is 'pbc'.


## Outputs

    D      - finite difference differentiation matrix


## Examples

A three-point second derivative matrix designed to act on a vector with ten elements with periodic boundary conditions is:

 >> full(fdmat(10,3,2,'pbc'))

ans =

-2     1     0     0     0     0     0     0     0     1
1    -2     1     0     0     0     0     0     0     0
0     1    -2     1     0     0     0     0     0     0
0     0     1    -2     1     0     0     0     0     0
0     0     0     1    -2     1     0     0     0     0
0     0     0     0     1    -2     1     0     0     0
0     0     0     0     0     1    -2     1     0     0
0     0     0     0     0     0     1    -2     1     0
0     0     0     0     0     0     0     1    -2     1
1     0     0     0     0     0     0     0     1    -2