pub trait Accelerations: Iterator + Sized
where Self::Item: Particle,
{ // Provided method fn accelerations<C>(self, cm: &mut C) -> IntoIter<ParticleArray<Self::Item>> where C: ReorderedCompute<Self::Item>, ParticleScalar<Self::Item>: Float, ParticleArray<Self::Item>: ScalarArray { ... } }
Expand description

Trait to compute accelerations from an iterator of Particle objects.

Provided Methods§

source

fn accelerations<C>(self, cm: &mut C) -> IntoIter<ParticleArray<Self::Item>>

Returns the computed acceleration of each Particle using the provided ComputeMethod.

§Example
let mut particles = vec![([0.0, 1.0], 1.0), ([0.0, 0.0], 1.0)];
let mut accelerations = particles.iter().accelerations(&mut sequential::BruteForceScalar);

assert_eq!(accelerations.next().unwrap(), [0.0, -1.0]);
assert_eq!(accelerations.next().unwrap(), [0.0, 1.0]);

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<I: Iterator> Accelerations for I
where I::Item: Particle,