|
CAPD DynSys Library
5.2.0
|
The main header file
defines the following types for computation in (I) interval arithmetics.
(see Representation of initial condition)
(see Representation of initial condition)Moreover, every class [Prefix]TimeMap defines public type SolutionCurve that is a functional object representing solution to IVP over time range. For example,
The CAPD library implements three strategies for solving IVP for ODEs. One can choose from
Before we describe these strategies in details we need to explain how subsets of phase space are represented in the memory of a computer.
The CAPD library provides various methods for rigorous enclosures of trajectories. There are two main groups of rigorous solvers
In each group we implemented several algorithms with performance depending on dynamical properties of the system in consideration. In this section we will present four main algorithms that proved to be most efficient in typical cases.
The rigorous solver IOdeSolver requires that the initial condition is given in one of the acceptable representation. Among others four of them are proved to be most efficient and thus we omit other in this introduction. These are defined in classes
Two classes C0Rect2Set and C0HORect2Set represent a subset of
in the form of doubleton
where
are interval vectors, where
is a point interval vector
are interval matrices, with
close to orthogonal Two classes C0TripletonSet and C0HOTripletonSet represent a subset of
in the form of tripleton
where
are interval vectors, where
is a point interval vector
are interval matrices, with
close to orthogonal They differ by the numerical method used to integrate an ODE:
One can define an instance of these classes by simple contructor call
If the initial condition is not an interval vector but an affine set
we strongly recommend to use one of the following overloaded constructors
All above classes provide conversion to interval vector:
Given an initial condition set (which is an instance of either C0Rect2Set or C0HORect2Set or C0TripletonSet or C0HOTripletonSet) one can compute image of this set after one step of numerical method. One has to
that is ready to perform the next time step.As in the case of nonrigorous computation the user can fix time step by the call to
set. [0,timeStep].One-step method, although possible, is not recommended in general. Sometimes it performs better for very wide initial conditions with relatively low order of the method (3-5). For long-time integration we recommend to use class ITimeMap that combines ISolver with automatic step control strategies.