You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Luc Maisonobe (JIRA)" <ji...@apache.org> on 2011/06/26 17:07:47 UTC

[jira] [Created] (MATH-604) optional dense output in ODE step handlers leads to weird results

optional dense output in ODE step handlers leads to weird results
-----------------------------------------------------------------

                 Key: MATH-604
                 URL: https://issues.apache.org/jira/browse/MATH-604
             Project: Commons Math
          Issue Type: Bug
    Affects Versions: 2.2
            Reporter: Luc Maisonobe
            Assignee: Luc Maisonobe
             Fix For: 3.0


The requiresDenseOutput method defined in the StepHandler interface was first created as an optimization feature to avoid calling computeDerivatives too many times for some integrators. In fact, only Dormand-Prince 8 (5,3) needs it because we can save 3 calls per step when the interpolator is not used.

This feature brings more problems than it solves:
* it forces users to implement this method despite its purpose is not clear,
* even if the method returns false, sometimes dense output will be generated (in fact when there are events detectors),
* it creates problems with at least Gragg-Bulirsch-Stoer since this integrator really needs interpolation,
* it will create the same problems for Adams integrators (they also need interpolation),
* this "optimization" is useful only for one integrator: Dormand-Prince 8 (5,3),
* in many cases, even for Dormand-Prince 8 (5,3) it does not optimize anything since people will often need interpolation

So I would like to completely remove this.

Removing the method is backward compatible for users.


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Resolved] (MATH-604) optional dense output in ODE step handlers leads to weird results

Posted by "Luc Maisonobe (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/MATH-604?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Luc Maisonobe resolved MATH-604.
--------------------------------

    Resolution: Fixed

Fixed in subversion repository as of r1139831

> optional dense output in ODE step handlers leads to weird results
> -----------------------------------------------------------------
>
>                 Key: MATH-604
>                 URL: https://issues.apache.org/jira/browse/MATH-604
>             Project: Commons Math
>          Issue Type: Bug
>    Affects Versions: 2.2
>            Reporter: Luc Maisonobe
>            Assignee: Luc Maisonobe
>             Fix For: 3.0
>
>
> The requiresDenseOutput method defined in the StepHandler interface was first created as an optimization feature to avoid calling computeDerivatives too many times for some integrators. In fact, only Dormand-Prince 8 (5,3) needs it because we can save 3 calls per step when the interpolator is not used.
> This feature brings more problems than it solves:
> * it forces users to implement this method despite its purpose is not clear,
> * even if the method returns false, sometimes dense output will be generated (in fact when there are events detectors),
> * it creates problems with at least Gragg-Bulirsch-Stoer since this integrator really needs interpolation,
> * it will create the same problems for Adams integrators (they also need interpolation),
> * this "optimization" is useful only for one integrator: Dormand-Prince 8 (5,3),
> * in many cases, even for Dormand-Prince 8 (5,3) it does not optimize anything since people will often need interpolation
> So I would like to completely remove this.
> Removing the method is backward compatible for users.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (MATH-604) optional dense output in ODE step handlers leads to weird results

Posted by "Dennis Hendriks (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/MATH-604?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13055352#comment-13055352 ] 

Dennis Hendriks commented on MATH-604:
--------------------------------------

> Removing the method is backward compatible for users.

Since I used @Override on that method (Java 6), I now get an error, as the interface no longer has the method, so I'm no longer overriding anything. It is easy to remove the method, and the error is nice, as you'd want to remove the method anyway. It is therefore however not backward compatible...

> optional dense output in ODE step handlers leads to weird results
> -----------------------------------------------------------------
>
>                 Key: MATH-604
>                 URL: https://issues.apache.org/jira/browse/MATH-604
>             Project: Commons Math
>          Issue Type: Bug
>    Affects Versions: 2.2
>            Reporter: Luc Maisonobe
>            Assignee: Luc Maisonobe
>             Fix For: 3.0
>
>
> The requiresDenseOutput method defined in the StepHandler interface was first created as an optimization feature to avoid calling computeDerivatives too many times for some integrators. In fact, only Dormand-Prince 8 (5,3) needs it because we can save 3 calls per step when the interpolator is not used.
> This feature brings more problems than it solves:
> * it forces users to implement this method despite its purpose is not clear,
> * even if the method returns false, sometimes dense output will be generated (in fact when there are events detectors),
> * it creates problems with at least Gragg-Bulirsch-Stoer since this integrator really needs interpolation,
> * it will create the same problems for Adams integrators (they also need interpolation),
> * this "optimization" is useful only for one integrator: Dormand-Prince 8 (5,3),
> * in many cases, even for Dormand-Prince 8 (5,3) it does not optimize anything since people will often need interpolation
> So I would like to completely remove this.
> Removing the method is backward compatible for users.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira