Difference between revisions of "Fdmat.m"

From Spinach Documentation Wiki
Jump to: navigation, search
(Examples)
Line 31: Line 31:
 
   
 
   
 
   ans =
 
   ans =
 
+
 
       -2    1    0    0    0    0    0    0    0    1
 
       -2    1    0    0    0    0    0    0    0    1
 
       1    -2    1    0    0    0    0    0    0    0
 
       1    -2    1    0    0    0    0    0    0    0

Revision as of 14:47, 16 August 2018

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

See also

fdvec.m, fdlap.m, fdhess.m, fdkup.m, fdweights.m, fftdiff.m, fourdif.m


Version 2.2, authors: Ilya Kuprov