Code for calculating actions, angles and frequencies in various ways
- Specify compiler path in Makefile.inc (need a C++-11 compatible compiler, currently compiles with g++ 4.9)
- Specify path to Torus, LAPACK and gsl in Makefile.inc
- Run make
- Analytic potentials (Isochrone and Harmonic oscillator)
- General spherical potentials
- Polar Adiabatic Approximation, Schoenrich & Binney (2012)
- Spheroidal Adiabatic Approximation (unpublished, in my thesis)
- Stackel fitting, Sanders (2012)
- Axisymmetric Stackel fudge, Binney (2012)
- Interpolation using Axisymmetric Stackel fudge, Binney (2012)
- Triaxial Stackel fudge, Sanders & Binney (2014)
- Generating function from orbit (axisymmetric and triaxial), Sanders & Binney (2014)
- Average generating function from orbit, Bovy (2014), Fox (2014)
- Iterative Torus Machine, Sanders & Binney (2014)
After successful compilation the command
./mains/test_actions.exe 8. 1. 0.2 40. 200. 50. acts.dat
should integrate an orbit with initial conditions X=(8. 1. 0.2) kpc and V = (40. 200. 50.)km/s in the potential
Phi(x)=Vc^2/2 log(R^2+(z/q)^2)
with Vc=220km/s and q=0.9 and compute the actions for each point using a variety of methods. The results are output in tmp with two columns per method (JR and Jz).