I'm numerically inverting an integral transform using a method suggested by a scicomp user from an earlier question. The problem is as follows:
I wish to estimate $f(x)$ for a given $F(y)$, both of which are expressed as a linear combination of some set of orthogonal basdis functions $\phi_n$:
$$ f(x) = \sum_{i}^{M} c_i \phi_i(x) \quad \quad \quad F(y) = \sum_{j}^{M} b_j \phi_j(y) $$
The coefficients needed to reconstruct $f(x)$ are given by the vector $\mathbf{c}$, which can be obtained by solving the linear linear system:
$$ \mathbf{b} = \mathbf{A}\mathbf{c} $$
This method works well in some theoretical test cases, but when applying it to real data I find that the solution to this system produces an $f(x)$ which is highly oscillatory, with much more power in the higher order basis functions. Adding small amounts of random noise to test cases which do work also produces incorrect oscillatory solutions.
I know the following about the true solution for $f(x)$:
- $f(x)$ is not oscillatory
- $f(x)$ has a smooth, decaying form - often similar to a half-Cauchy distribution
- $f(x)$ is positive everywhere (it's a continuous probability distribution)
I've done some reading around the problem and I think I need to use regularisation to constrain the solution of the linear system such that it produces the correct $f(x)$, but I've seen there are many types of regularisation.
Can anyone give me advice on which approaches to regularisation would be appropriate and how to apply them?
Thanks for your time and help!