oslocyclotronlab / rhosig.py

Tools for matrix decomposition in the Oslo Method
GNU General Public License v3.0
0 stars 0 forks source link

Choose of numerical integration #8

Open vetlewi opened 6 years ago

vetlewi commented 6 years ago

In the normalization.py file the evaluation of the integral is: https://github.com/oslocyclotronlab/rhosig.py/blob/acc5d42aa2867db35fb521e2d84af4d8dc757bb8/normalization.py#L217-L223

which looks to me to be by a simple Euler-Cromer algorithm. However, I would propose that we should use something a little more sophisticated such as Gaussian Quadrature. This would allow for much more accurate integration and a good measure of numerical errors introduced by the choice of algorithm. Scipy has some great built-in functions for Gaussian Quadrature that should be considered.

Also, we should divide up the integral into smaller pieces as the interpolations that are done will create a somewhat discontinuous curve: integrand

fzeiser commented 6 years ago

This is linked also to #3 -- we need a proper basis to work on for an improved integration algorithm. Probably, it suffices already only to have a logarithmic interpolation to do it somewhat better.