# DOPRI853Integrator¶

class gala.integrate.DOPRI853Integrator(func, func_args=(), func_units=None, progress=False, **kwargs)[source]

Bases: gala.integrate.core.Integrator

This provides a wrapper around Scipy’s implementation of the Dormand-Prince 85(3) integration scheme.

Parameters
funccallable

A callable object that computes the phase-space coordinate derivatives with respect to the independent variable at a point in phase space.

func_argstuple (optional)

Any extra arguments for the function.

func_unitsUnitSystem (optional)

If using units, this is the unit system assumed by the integrand function.

progressbool (optional)

Display a progress bar during integration.

Methods Summary

 run(self, w0[, mmap]) Run the integrator starting from the specified phase-space position.

Methods Documentation

run(self, w0, mmap=None, **time_spec)[source]

Run the integrator starting from the specified phase-space position. The initial conditions w0 should be a PhaseSpacePosition instance.

There are a few combinations of keyword arguments accepted for specifying the timestepping. For example, you can specify a fixed timestep (dt) and a number of steps (n_steps), or an array of times:

dt, n_steps[, t1] : (numeric, int[, numeric])
A fixed timestep dt and a number of steps to run for.
dt, t1, t2 : (numeric, numeric, numeric)
A fixed timestep dt, an initial time, and a final time.
t : array_like
An array of times to solve on.


Warning

Right now, this always returns a Orbit instance. This is wrong and will change!

Todo

Allow specifying the return orbit class.

Parameters
w0PhaseSpacePosition

Initial conditions.

**time_spec

Timestep information passed to parse_time_specification.

Returns
orbitOrbit