Geometric
Numerical Integration and Applications
Here we collect some Fortran
codes. We hope the programs will be useful for your own research.
Any criticism on your part will be very welcome.
1- Splitting methods for near-integrable systems
For a description of the methods,
see the following two references:
- S. Blanes, F. Casas, A.
Farrés, J. Laskar, J. Makazaga and A. Murua. New
families of symplectic splitting methods for numerical
integration in dynamical astronomy, Applied Numerical
Mathematics 68 (2013), 58-72
- A. Farrés, J. Laskar,
S. Blanes, F. Casas, J. Makazaga and A. Murua. High
precision Symplectic Integrators for the Solar System.
Celestial Mechanics & Dynamical Astronomy 116
(2013), 141-174
The zip file ProgramsNI.zip
contains a directory with the following Fortran codes:
- coefficientsJacobi.f:
coefficients of several splitting methods for
near-integrable systems when the perturbation is exactly
solvable
- coefficientsHeliocentric.f:
coefficients of several
splitting methods for near-integrable systems when the
perturbation is NOT exactly solvable
- keplerh.f:
subroutine to compute the solution of the Kepler
problem (in two dimensions)
- perturbation.f:
subroutine to compute the flow corresponding to the
perturbation
- PerturbedKepJacobiEnergy.f:
driver program to compute the average error in energy
as a function of the computational cost in a perturbed
Kepler problem when the perturbation is exactly
solvable.
- PerturbedKepHeliocentricEnergy.f:
driver program to compute the average
error in energy as a function of the
computational cost in a perturbed Kepler
problem when the perturbation is NOT
exactly solvable
In addition,
the file ReadmeNearIntegrableSystem.pdf
contains some notes explaining the use of
the codes.
2- An efficient algorithm for the time integration of
the Schrödinger equation
The algorithm, based
on symplectic splitting methods, is described in the paper
- S. Blanes, F. Casas and
A. Murua. An efficient algorithm based on splitting for
the time integration of the Schrödinger equation (submitted).
The compressed file
FilesSplittingMethods.zip
contains the relevant files to carry out the computation
of u(t) = exp(-i H t) u_0 with the new schemes.
The user should read first the notes contained in this file.
To further
illustrate the use of the algorithm, we include in the file FilesFigures34.zip
all the codes needed to work out Example 1 of the paper and
generate Figures 3 and 4. Again, these notes should be read
in advance.