Re: [Boost-bugs] [Boost C++ Libraries] #10946: Add dt to system arguments

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #10946: Add dt to system arguments
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2015-01-29 21:29:57


#10946: Add dt to system arguments
--------------------------------+----------------------
  Reporter: ilja.j.honkonen@… | Owner: karsten
      Type: Feature Requests | Status: assigned
 Milestone: To Be Determined | Component: odeint
   Version: Boost 1.57.0 | Severity: Problem
Resolution: | Keywords:
--------------------------------+----------------------

Comment (by ilja.j.honkonen@…):

> Do you think it is possible to use your suggestion with Runge Kutta
 methods?

 Should be possible as eqs 25 and 26 only present the accelerator. Instead
 of
 (h)ttps://github.com/nasailja/pamhd/blob/master/tests/particle/odeint.cpp#L70
 the acceleration step would be
 (h)ttps://github.com/nasailja/pamhd/blob/master/source/particle/solve.hpp#L79
 Currently the problem is that the former using rkf78 allows long steps but
 still conserves particle energy worse than the latter with any step size
 while the latter requires very short steps in order to get a reasonable
 particle trajectory.

 I thought about this a bit more and basically at the moment odeint assumes
 that there is a linear relation between time step and the resulting change
 but I guess there are many cases where this doesn't hold. One that came to
 mind is corner transport when solving the advection equation in multiple
 dimensions. First hit on google has a nice picture (6.2):
 (h)ttp://ocw.mit.edu/courses/earth-atmospheric-and-planetary-
 sciences/12-950-atmospheric-and-oceanic-modeling-spring-2004/lecture-
 notes/lec10.pdf In that case it might not be too difficult to come up with
 a dt-less solver but with more dimensions and complex geometries that will
 quickly become not worth the trouble.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/10946#comment:3>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:17 UTC