surface_of_section¶
-
gala.dynamics.
surface_of_section
(orbit, plane_ix, interpolate=False)[source]¶ Generate and return a surface of section from the given orbit.
Warning
This is an experimental function and the API may change.
Parameters: orbit :
CartesianOrbit
plane_ix : int
Integer that represents the coordinate to record crossings in. For example, for a 2D Hamiltonian where you want to make a SoS in \(y-p_y\), you would specify
plane_ix=0
(crossing the \(x\) axis), and this will only record crossings for which \(p_x>0\).interpolate : bool (optional)
Whether or not to interpolate on to the plane of interest. This makes it much slower, but will work for orbits with a coarser sampling.
Examples
If your orbit of interest is a tube orbit, it probably conserves (at least approximately) some equivalent to angular momentum in the direction of the circulation axis. Therefore, a surface of section in R-z should be instructive for classifying these orbits. TODO...show how to convert an orbit to Cylindrical..etc...