Back to eand.py project, and with additional features. We discussed last time a numerical differentiation method capable of handling arbitrarily-noisy signals, however one could rapidly oppose it two limitations.

The most evident, perhaps, is the fact that the current implementation only deals with monodimensional signals, i.e. functions of a single variable, while our world is slightly more complicated. Yet most signals encountered in nature hopefully meet certain conditions of regularity so that the problem can be at least partially circumvented. The other important issue is somehow more tricky, namely the necessity of equally-spaced samples. Although quite a lot of practical differentiation problems may boil down to this framework at the cost of reasonable approximations, the question particularly holds when information is not equally distributed or accessible accross dimensions.

Both issues are tackled in a recent article by Riachy et al. (2011), presenting theoretical developments and implementation suggestions, which I merely coded back into Python.

Multidimensional randomly-sampled signal (left) and partial derivative along first axis (right)

Multidimensional randomly-sampled signal (left) and first-order partial derivative estimate along first axis (right)

As before, the corresponding code is available on eand.py package’s repository, and you can download it and modify it as you wish under the terms of the GNU General Public License version 3. Oh, and I just found out that iPython project offered a nice interface to display code and associated outputs, so that you can understand that I really meant each letter when I named the package :)

Next time, something completely different!


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: