The Mathematical Institute, University of Oxford, Eprints Archive

Automatic reformulation of ODEs to systems of first order equations

Birkisson, Asgeir (2016) Automatic reformulation of ODEs to systems of first order equations. Technical Report. Unspecified. (Submitted)



Most numerical ODE solvers require problems to be written as systems of first order differential equations.
This normally requires the user to rewrite higher order differential equations as coupled first order systems.
Here, we introduce the treeVar class, written in object-oriented Matlab, which is capable of algorithmically
reformulating higher order ODEs to equivalent systems of first order equations. This allows users to specify
problems using a more natural syntax, and saves them from having to manually derive the first order reformulation. The technique works by using operator overloading to build up syntax trees of expressions as mathematical programs are evaluated. It then applies a set of rules to the resulting trees to obtain the first order reformulation, which is returned as another program. This technique has connections with operator overloaded algorithmic/automatic differentiation. We present how treeVar has been incorporated in Chebfun, greatly improving the ODE capabilities of the system.

Item Type:Technical Report (Technical Report)
Subjects:H - N > Numerical analysis
Research Groups:Numerical Analysis Group
ID Code:1920
Deposited By: Helen Taylor
Deposited On:22 Jan 2016 07:32
Last Modified:22 Jan 2016 07:32

Repository Staff Only: item control page