giacrossi / FORbID

Simple OOP Fortran Definite Integrals Solver
12 stars 2 forks source link

List of numerical schemes #11

Open szaghi opened 8 years ago

szaghi commented 8 years ago

To the aim of the numerical solution of definite integrals many schemes have been devised. It could be helpful to have a list of desiderata:

giacrossi commented 8 years ago

Closed by 84838cba3439cec995a3339ef3eeff048b53d02c

szaghi commented 8 years ago

This issue was not intended to be closed... was just a "room" for discuss about desiderata schemes. Please, reopen it.

giacrossi commented 8 years ago

As @szaghi said, the issue is been reopened.

A list of numerical schemes can be found here. Any suggestion is very appreciated!

szaghi commented 8 years ago

@giacombum thank you!

P.S. nice README :-) I have already seen something similar...

giacrossi commented 8 years ago

@szaghi I've a good master...

giacrossi commented 8 years ago

I've found a nice algorithm to divide an integration interval in a series of little intervals to minimize the error of the numerical integration algorithm, but I've a doubt on which is the best way to proceed: this algorithm is suitable for a wide series of integration formulas (midpoint, trapezoidal, Simpson's, ecc...), so I think that can be useful that any of this integrator use this adaptive method to release themselves from a fixed choose of the number of subintervals in which the main interval has to be divided (see for example here).

Do you think can be useful to implement this algorithm over all the integrators?

Or do you think is better to develop an "adaptive" version of each integrator?

Or, moreover, do you think is better to develop an independent routine that uses this algorithm to split the original interval into adaptive sub-intervals?

A remarkable observation: the procedure that computes the step sizes uses the integrator to compute an error estimation and estabilish if the interval has to be splitted or not!

As always, I hope I've explained what I mean...

szaghi commented 8 years ago

I am not an expert on definite integrals numerical schemes (I just remember what learned at university lessons), but in general I can suggest:

In this scenario you avoid to replicate the adaptive algorithm for each integrator using always the same implementation (improving code re-usability, robustness, conciseness and clearness).