Abstract

We propose an implementation of symplectic implicit Runge-Kutta schemes for highly accurate numerical integration of non-stiff Hamiltonian systems based on fixed point iteration. Provided that the computations are done in a given floating point arithmetic, the precision of the results is limited by round-off error propagation. We claim that our implementation with fixed point iteration is near-optimal with respect to round-off error propagation under the assumption that the function that evaluates the right-hand side of the differential equations is implemented with machine numbers (of the prescribed floating point arithmetic) as input and output. In addition, we present a simple procedure to estimate the round-off error propagation by means of a slightly less precise second numerical integration. Some numerical experiments are reported to illustrate the round-off error propagation properties of the proposed implementation.

Highlights

  • When numerically integrating an autonomous Hamiltonian system, one typically monitors the error in the preservation of the Hamiltonian function to check the precision of the numerical solution

  • That we call FPIEA (Fixed Point iteration with Exact Arithmetic) implementation, is based on the following two modifications to the standard implementation with fixed point iterations: (i) From one hand, we reformulate each symplectic implicit Runge-Kutta method in such a way that its coefficients can be approximated by machine numbers while still keeping its symplectic character exactly (Subsection 3.1). (ii) On the other hand, we propose a modification of the stopping criterion introduced in [5] that is more robust and is independent of the chosen norm (Subsection 3.2)

  • The implementation we present here is based on the FPIEA implementation, with most multiplications and additions performed in the prescribed floating point arithmetic, but some of the operations performed with special care in order to reduce the effect of round-off errors

Read more

Summary

Introduction

When numerically integrating an autonomous Hamiltonian system, one typically monitors the error in the preservation of the Hamiltonian function to check the precision of the numerical solution. We first define a reference implementation with fixed point iteration where all the arithmetic operations other than the evaluation of the right-hand side of the system of differential equations are performed in exact arithmetic, and as many iterations as needed are performed in each step Such an implementation, that we call FPIEA (Fixed Point iteration with Exact Arithmetic) implementation, is based on the following two modifications to the standard implementation with fixed point iterations: (i) From one hand, we reformulate each symplectic implicit Runge-Kutta method in such a way that its coefficients can be approximated by machine numbers while still keeping its symplectic character exactly (Subsection 3.1). The implementation we present here is based on the FPIEA implementation, with most multiplications and additions performed (for efficiency reasons) in the prescribed floating point arithmetic, but some of the operations performed with special care in order to reduce the effect of round-off errors This includes a somewhat non-standard application of Kahan’s ”compensated summation” algorithm [7][6][9], described in detail in Subsection 3.3.

Numerical integration of ODEs by symplectic IRK schemes
Floating point version of an IRK integrator
Kahan’s compensated summation algorithm
Symplectic schemes with machine number coefficients
Iterative solution of the nonlinear Runge-Kutta equations
Machine precision implementation of new algorithm
Test problems
Comparison of different sources of error in energy
The iteration error
Statistical analysis of errors
Distribution of energy jumps
Evolution of mean and standard deviation of errors
Round-off error estimation
Concluding remarks
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call