Programs require CAPD-DynSys 4 library with multiprecision support (MPFR library). Source code or binary packages along with installation instructions can be found on
Compiler: The program must be compiled with gcc-4.8 or newer.
Unpack archive
tar -xf KAMstability.tar.gz
(optional) If CAPD is installed to the non-standard localization (/usr/local/) open file KAMstability/Makefile and edit line with
CAPDBINDIR =
to point to the directory with the CAPD scripts e.g. mpcapd-config. Path has to end with / e.g.
CAPDBINDIR = /home/user/capd/bin/
Change directory to KAMstability and call make
cd KAMstability
make
After succesfull compilation executable files H4Proof
and EightProof
,
which perform proofs, are placed in the current directory
Main programs, which perform proofs, are
They perform the following steps:
Command line arguments:
Input files for proofs described in article are stored in data directory:
quartic_3.txt
, quartic_16.txt
- period 3 nad 16 orbits of quartic potentialeight.txt
- figure eight solution of the N-body problemeight_148.txt
, eight_488.txt
, eight_794.txt
- rotating eight with angular
momentum equal to 0.148, 0.00488, 0.794 respectively.To perform e.g. proof of KAM stability of period 3 orbit for quartic potential run command
./H4Proof data/quartic_3.txt result.txt
The output will be written to the screen and file result.txt will contain computed normal form, rigorous estimates of initial conditions and parameters used in computations.
In the current directory file output.tex will be created with the results in the LaTeX form, similar to the one given in article.
The directory result contains example output files from proofs performed on authors computers. The actual result can slightly differ depending on operating system, processor and/or compiler used.
Time of computations for figure eight solution is ca 2 hours.
Under Linux depending on your system settings to run programs you may have to
set LD_LIBRARY_PATH
to point to directory with CAPD libraries e.g. by calling
export LD_LIBRARY_PATH=/usr/local/lib
or run
ldconfig
Programs were tested on