pub struct OperationalAmplifier { /* private fields */ }Expand description
Model of an operational amplifier with slew-rate limiting, bandwidth roll-off, and voltage rail clamping.
Implementations§
Source§impl OperationalAmplifier
impl OperationalAmplifier
Sourcepub fn new(gain: f64, slew_rate: f64, bandwidth: f64) -> Self
pub fn new(gain: f64, slew_rate: f64, bandwidth: f64) -> Self
Create a new op-amp model.
gain— open-loop gain (V/V)slew_rate— slew rate in V/µsbandwidth— gain-bandwidth product (Hz)
Sourcepub fn set_voltage_rails(&mut self, negative: f64, positive: f64)
pub fn set_voltage_rails(&mut self, negative: f64, positive: f64)
Set positive and negative voltage rails
Sourcepub fn process(&mut self, input: f64, dt: f64) -> f64
pub fn process(&mut self, input: f64, dt: f64) -> f64
Process one sample.
input— differential input voltagedt— sample period (seconds)
Sourcepub fn output_voltage(&self) -> f64
pub fn output_voltage(&self) -> f64
Current output voltage
Trait Implementations§
Source§impl Clone for OperationalAmplifier
impl Clone for OperationalAmplifier
Source§fn clone(&self) -> OperationalAmplifier
fn clone(&self) -> OperationalAmplifier
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 moreAuto Trait Implementations§
impl Freeze for OperationalAmplifier
impl RefUnwindSafe for OperationalAmplifier
impl Send for OperationalAmplifier
impl Sync for OperationalAmplifier
impl Unpin for OperationalAmplifier
impl UnsafeUnpin for OperationalAmplifier
impl UnwindSafe for OperationalAmplifier
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