/Deconvoluted

Deconvoluted makes performing numerical integral transforms simple and pythonic!

Primary LanguagePythonMIT LicenseMIT

Deconvoluted

Documentation Status

Deconvoluted makes performing numerical integral transforms simple and pythonic!

Features

Fourier Transforms

As a first example, let's perform a Fourier transform:

t = np.linspace(0, 10, 201)
f = np.sin(3 * 2 * np.pi * t)
F, nu = fourier_transform(f, t)

By default, Fourier transforms use Fourier coefficients a=0, b=-2\pi. Using another convention is simple:

F, omega = fourier_transform(f, t, convention=(-1, 1))

As a physicist myself, I therefore switch the labelling of the output from \nu for frequency, to \omega for angular frequency.

Performing multidimensional transforms is just as easy. For example:

F_pq, p, q = fourier_transform(f_xy, x, y)

transforms both x and y at the same time. Transforming only one of the two variables can be done simply by setting those that shouldn't transform to None:

F_py, p = fourier_transform(f_xy, x, None)
F_xq, q = fourier_transform(f_xy, None, y)

See the documentation for more examples!