Struct SimpleHarmonicOscillator
pub struct SimpleHarmonicOscillator {
pub amplitude: f64,
pub angular_frequency: f64,
pub phase: f64,
}Expand description
A simple scalar harmonic oscillator state.
Fields§
§amplitude: f64§angular_frequency: f64§phase: f64Implementations§
§impl SimpleHarmonicOscillator
impl SimpleHarmonicOscillator
pub fn new(
amplitude: f64,
angular_frequency: f64,
phase: f64,
) -> Option<SimpleHarmonicOscillator>
pub fn new( amplitude: f64, angular_frequency: f64, phase: f64, ) -> Option<SimpleHarmonicOscillator>
Creates a simple harmonic oscillator from amplitude, angular frequency, and phase.
pub fn displacement(&self, time: f64) -> Option<f64>
pub fn displacement(&self, time: f64) -> Option<f64>
Computes displacement at time.
§Examples
use use_oscillation::SimpleHarmonicOscillator;
let oscillator = SimpleHarmonicOscillator::new(2.0, 1.0, 0.0).unwrap();
assert!((oscillator.displacement(0.0).unwrap() - 2.0).abs() < 1.0e-12);pub fn acceleration(&self, time: f64) -> Option<f64>
pub fn acceleration(&self, time: f64) -> Option<f64>
Computes acceleration at time.
pub fn max_acceleration(&self) -> Option<f64>
pub fn max_acceleration(&self) -> Option<f64>
Computes maximum acceleration.
Trait Implementations§
§impl Clone for SimpleHarmonicOscillator
impl Clone for SimpleHarmonicOscillator
§fn clone(&self) -> SimpleHarmonicOscillator
fn clone(&self) -> SimpleHarmonicOscillator
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for SimpleHarmonicOscillator
impl Debug for SimpleHarmonicOscillator
§impl PartialEq for SimpleHarmonicOscillator
impl PartialEq for SimpleHarmonicOscillator
impl Copy for SimpleHarmonicOscillator
impl StructuralPartialEq for SimpleHarmonicOscillator
Auto Trait Implementations§
impl Freeze for SimpleHarmonicOscillator
impl RefUnwindSafe for SimpleHarmonicOscillator
impl Send for SimpleHarmonicOscillator
impl Sync for SimpleHarmonicOscillator
impl Unpin for SimpleHarmonicOscillator
impl UnsafeUnpin for SimpleHarmonicOscillator
impl UnwindSafe for SimpleHarmonicOscillator
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more