Re: Numerical derivative on non-uniform grid
- To: mathgroup at smc.vnet.net
- Subject: [mg30275] Re: [mg30257] Numerical derivative on non-uniform grid
- From: BobHanlon at aol.com
- Date: Sat, 4 Aug 2001 20:02:04 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
In a message dated 2001/8/4 1:44:15 AM, jim at freeze.org writes: >Can Mathematica take a numerical derivative (on a list of x,y pairs) >where the x spacing is non-uniform? > data = Table[ToExpression[{"x"<>ToString[k], "y"<>ToString[k]}], {k, 5}]; Rest[data-RotateRight[data]] /. {x_, y_} :> y/x {(y2 - y1)/(x2 - x1), (y3 - y2)/(x3 - x2), (y4 - y3)/(x4 - x3), (y5 - y4)/(x5 - x4)} You can also use an interpolating function data = ({#, Sin[#]}& /@ Sort[Table[2*Pi*Random[], {50}]]); f = Interpolation[data]; Table[{x, f[x], f'[x]}, {x, Pi/8., 15Pi/8, Pi/8}]//TableForm Plot[{f[x], f'[x]}, Evaluate[{x, f[[1, 1, 1]], f[[1, 1, 2]]}], PlotStyle -> {RGBColor[0, 0, 1], RGBColor[1, 0, 0]}]; Bob Hanlon Chantilly, VA USA