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
Summary
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.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have