SynGenerator¶
- class sbpy.dynamics.syndynes.SynGenerator(source: State, betas: Iterable | Quantity, ages: Quantity, observer: State | None = None, solver: DynamicalModel | None = None)[source] [edit on github]¶
Bases:
objectSyndyne / synchrone generator for cometary dust.
Dust is parameterized with
beta, the ratio of the force from solar radiation pressure (\(F_r\)) to that from solar gravity (\(F_g\)):\[\beta = \frac{F_r}{F_g}\]For spherical dust grains,
betareduces to:\[\beta = \frac{0.57 Q_{pr}}{\rho a}\]where \(Q_{pr}\) is the radiation pressure efficiency averaged over the solar spectrum, \(\rho\) is the mass density of the grain (g/cm3), and \(a\) is the grain radius (μm) (Burns et al. 1979).
- Parameters:
- source
State State vector (i.e., position and velocity at time) of the object producing dust at the time of the observation. Must be with respect to the central mass (e.g., the Sun).
- betas
ndarray Array of beta-parameters to be simulated (dimensionless).
- ages
Quantity Array of particle ages (time).
- observer
State, optional State vector of the observer in the same reference frame as
source.- solver
DynamicalModel, optional Solve the equations of motion with this object. The default solver is
SolarGravityAndRadiationPressure.
- source
Methods Summary
at_epochs(source, betas, epochs, **kwargs)An alternative constructor that ejects dust at specific times.
Generate the initial particle states.
solve()Generate test particle positions by solving the equations of motion.
source_orbit(dt)Calculate and observe the orbit of the dust source.
synchrone(i)Get a single synchrone.
Get a collection of all synchrones.
syndyne(i)Get a single syndyne.
syndynes()Get a collection of all syndynes.
Methods Documentation
- classmethod at_epochs(source: State, betas: Iterable | Quantity, epochs: Time, **kwargs: dict) SynGeneratorType[source] [edit on github]¶
An alternative constructor that ejects dust at specific times.
- Parameters:
- source
State State vector (i.e., position and velocity at time) of the object producing dust at the time of the observation. Must be with respect to the central mass (e.g., the Sun).
- betas
ndarray Array of beta-parameters to be simulated (dimensionless).
- epochs
Time Specific times to produce dust test particles. The times will be converted to particle ages.
- **kwargs
dict Any other
SynGeneratorkeyword argument.
- source
- initialize_states() None[source] [edit on github]¶
Generate the initial particle states.
This method is automatically run on initialization.
- solve() None[source] [edit on github]¶
Generate test particle positions by solving the equations of motion.
This method is automatically run on initialization.
- source_orbit(dt: Quantity) State | tuple[State, SkyCoord][source] [edit on github]¶
Calculate and observe the orbit of the dust source.
- Parameters:
- dt
astropy.units.Quantity The times at which to calculate the orbit, relative to the observation time.
- dt
- Returns:
- orbit
SourceOrbit The orbital states.
- orbit
- synchrone(i: int) Synchrone[source] [edit on github]¶
Get a single synchrone.
- synchrones() Synchrones[source] [edit on github]¶
Get a collection of all synchrones.
- Returns:
- synchrones
Synchrones
- synchrones
- syndyne(i: int) Syndyne[source] [edit on github]¶
Get a single syndyne.
- syndynes() Syndynes[source] [edit on github]¶
Get a collection of all syndynes.
- Returns:
- syndynes
Syndynes
- syndynes