[
https://issues.apache.org/jira/browse/MATH-797?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13401444#comment-13401444
]
Sébastien Brisard commented on MATH-797:
----------------------------------------
Fine by me. Only, I would not call it a {{SingleStepLegendreGaussIntegrator}},
as Gauss integrators _are_ single-step by nature (of course, you can use
refined Gauss-like integrators, like Gauss-Kronrod, but that's another story).
It's a shame that the name {{LegendreGaussIntegrator}} should already be taken,
by a class that is not that useful...
What we could do is create {{SingleStepLegendreGaussIntegrator}} for the time
being in 3.1. Then, I think the best we could do is get rid in 4.0 of the
existing {{LegendreGaussIntegrator}}, rename
{{SingleStepLegendreGaussIntegrator}} and include it in a hierarchy of
Gauss-like integrators.
What do you think?
Sébastien
> Single step integrators
> -----------------------
>
> Key: MATH-797
> URL: https://issues.apache.org/jira/browse/MATH-797
> Project: Commons Math
> Issue Type: Wish
> Affects Versions: 3.0
> Reporter: Gilles
> Assignee: Gilles
> Priority: Trivial
> Fix For: 3.1
>
>
> CM assumes that the user wants to integrate a complex function on a large
> interval, so the large interval has to be subdivided into many subintervals.
> CM does the partition, and performs convergence checks, using an iterative
> approach.
> However, if the function is smooth enough, no subdivision of the integration
> interval is required. Those use-cases could benefit from the efficiency gain
> of not performing a convergence check.
> The proposal is to provide a new interface "UnivariateSingleStepIntegrator":
> {code}
> interface SingleIntervalIntegrator {
> /**
> * Method for implementing a single interval integration.
> * There is no convergence checks because it is not iterative.
> *
> * @param f Function to integrate.
> * @param lower Lower bound of the interval over which to integrate.
> * @param upper Upper bound of the interval over which to integrate.
> * @return the integrated value.
> */
> double integrate(UnivariateFunction f,
> double lower,
> double upper);
> }
> {code}
> In effect, the implementation of the above "integrate" method of a new
> "LegendreGaussIntegratorSingleStepIntegrator" would the equivalent of
> "stage(1)" in the current "LegendreGaussIntegrator".
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira