Mathematica has two ways to integrate: Integrate and NIntegrate.
But what about D? D and Derivative are for symbolic differentiation.
How can I differentiate numerically?
|
Mathematica has two ways to integrate: How can I differentiate numerically? |
||||
|
As others mentioned, there's the It's a bit less widely known that Let's create a numerical black box function:
Caveat: In my experience, this method doesn't always give terribly reliable answers (generally worse than Update: Please also see a discussion by @acl concluding that the difference between |
|||||
|
|
There are two rather different scenarios for numerical derivatives:
For scenario 1, here is an example function and its derivative:
For scenario 2, here I discretize the above function to get a table of values in some interval:
Now the derivative can be taken using
Here, I took the list After doing the derivative, I remove the padding by using a negative argument in |
|||||||||||
|
|
Had
Both approaches are easily generalized; the Lanczos method can be generalized to arbitrary integer-order derivatives, and the Cauchy method can be generalized to arbitrary complex-order derivatives. I won't be discussing these generalizations further in this answer, tho. A demonstration:
It's not too hard to implement the Richardsonian method I alluded to in my MO answer, but the routine is somewhat longer; I'll edit this answer to include it if there's interest. |
|||
ND? – VLC Nov 11 '12 at 17:43