ABC Flow

The ABC flow (see [1]) is described by a divergence-free differential equation whose flow strongly depends on the initial condition.

using GeometricIntegrators: integrate, ImplicitMidpoint
using GeometricProblems.ABCFlow
using Plots

ensemble_solution = integrate(odeensemble(), ImplicitMidpoint())

p = plot()
for solution in ensemble_solution
    plot!(p, solution.q[:, 1], solution.q[:, 2], solution.q[:, 3])
end
p
Example block output

Library functions

GeometricProblems.ABCFlowModule

ABC Flow

\[\begin{aligned} \dot{x} = A\sin(z) + C\cos(y) \\ \dot{y} = B\sin(x) + A\cos(z) \\ \dot{z} = C\sin(y) + B\cos(x) \end{aligned}\]

source
[1]
E. Hairer, C. Lubich and G. Wanner. Geometric Numerical integration: structure-preserving algorithms for ordinary differential equations (Springer, Berlin, 2006).