odeint/doc/concepts/second_order_system.qbk
2014-03-26 08:20:20 +01:00

44 lines
1.7 KiB
Plaintext

[/============================================================================
Boost.odeint
Copyright (c) 2009-2013 Karsten Ahnert
Copyright (c) 2009-2013 Mario Mulansky
Use, modification and distribution is subject to the Boost Software License,
Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)
=============================================================================/]
[section Second Order System]
[heading Description]
The Second Order System concept models the algorithmic implementation of the rhs for steppers requirering the second order
derivative, hence the r.h.s. of the ODE ['x'' = f(x,x',t)]. The only requirement for this concept is that it should be callable
with a specific parameter syntax (see below). A Second Order System is typically implemented as a function or a functor.
Systems fulfilling this concept are required by the Velocity Verlet method.
[heading Notation]
[variablelist
[[`System`] [A type that is a model of Second Order System]]
[[`Space`] [A type representing the state /x/ of the ODE]]
[[`Velocity`] [A type representing the derivative /x'/ of the ODE]]
[[`Acceleration`] [A type representing the second order derivative /x''/ of the ODE]]
[[`Time`] [A type representing the time]]
[[`sys`] [An object of type `System`]]
[[`x`] [Object of type `Space`]]
[[`v`] [Object of type `Velocity`]]
[[`a`] [Object of type `Acceleration`]]
[[`t`] [Object of type `Time`]]
]
[heading Valid expressions]
[table
[[Name] [Expression] [Type] [Semantics]]
[[Calculate ['x'' := f(x,x',t)]] [`sys( x , v , a , t )`] [`void`] [Calculates f(x,x',t), the result is stored into a.] ]
]
[endsect]