pisces.extensions.simulation.core.initial_conditions.InitialConditions3DCartesian.integrate_point_mass_orbits#
- InitialConditions3DCartesian.integrate_point_mass_orbits(models: str | list[str] = 'all', masses: dict[str, unyt_quantity] | None = None, t_end: unyt_quantity = None, dt: unyt_quantity | None = None, integrator: str = 'whfast')[source]#
Integrate the point-mass equivalent orbits for selected models.
This method treats each selected model as a single massive particle with its center-of-mass position, velocity, and total mass. The integration is done in a self-consistent gravitational N-body simulation without hydrodynamics.
- Parameters:
models (
strorlistofstr, default"all") – Models to include as point masses. If"all", uses all models. If a single string is given, it is treated as a list of one.masses (
dictofstr,unyt_quantity, optional) – Mapping from model name to its total mass. If provided for a given model, overrides thetotal_massvalue from that model’s metadata. All masses must be scalar unyt_quantity with units convertible toMsun.t_end (
unyt_quantity) – Total integration time from the current epoch. Must have time units.dt (
unyt_quantity, optional) – Time step for the integrator. If not provided, defaults tot_end / 1000. Must have time units.integrator (
str, default"whfast") –- The REBOUND integrator to use. Options include:
"whfast": fast symplectic integrator (default)"ias15": high-accuracy adaptive integratorOther integrators supported by rebound
- Returns:
The rebound simulation object after integration to
t_end. Particle indices correspond to the order of models in themodelsparameter.- Return type:
rebound.Simulation- Raises:
ImportError – If the rebound package is not installed.
KeyError – If any requested model is not found in the configuration.
ValueError – If t_end is not provided, is non-positive, or if mass data is missing.