Orbit.plotSOS(pot, *args, ncross=500, surface=None, t0=0.0, method='dop853_c', skip=100, progressbar=True, **kwargs)[source]

Calculate and plot a surface of section of the orbit.

  • pot (Potential, DissipativeForce, or list of such instances) – Gravitational field to integrate the orbit in.

  • ncross (int, optional) – Number of times to cross the surface. The default is 500.

  • surface (str, optional) – Surface to punch through (this has no effect in 3D, where the surface is always z=0, but in 2D it can be ‘x’ or ‘y’ for x=0 or y=0). The default is None.

  • t0 (float or Quantity, optional) – Time of the initial condition. The default is 0.0.

  • method ({'odeint', 'dop853_c', 'dop853', 'dop54_c', 'rk4_c', 'rk6_c'}, optional) – Method to integrate the orbit. The default is ‘dop853_c’.

  • skip (int, optional) – For non-adaptive integrators, the number of basic steps to take between crossings (these are further refined in the code, but only up to a maximum refinement, so you can use skip to get finer integration in cases where more accuracy is needed). The default is 100.

  • progressbar (bool, optional) – If True, display a tqdm progress bar when integrating multiple orbits (requires tqdm to be installed!). The default is True.

  • *args (optional) – Additional arguments to pass to galpy.util.plot.plot.

  • **kwargs (optional) – Additional keyword arguments to pass to galpy.util.plot.plot.


  • 2023-03-16 - Written - Bovy (UofT)