pub struct Waveform {
pub samples: Vec<Complex64>,
pub sample_rate: f64,
pub duration: f64,
}Expand description
Pulse waveform representation
Fields§
§samples: Vec<Complex64>Sample points
sample_rate: f64Sample rate in GS/s (gigasamples per second)
duration: f64Total duration in nanoseconds
Implementations§
Source§impl Waveform
impl Waveform
Sourcepub fn gaussian(
amplitude: f64,
sigma: f64,
duration: f64,
sample_rate: f64,
) -> Self
pub fn gaussian( amplitude: f64, sigma: f64, duration: f64, sample_rate: f64, ) -> Self
Create a Gaussian pulse
Sourcepub fn drag(
amplitude: f64,
sigma: f64,
beta: f64,
duration: f64,
sample_rate: f64,
) -> Self
pub fn drag( amplitude: f64, sigma: f64, beta: f64, duration: f64, sample_rate: f64, ) -> Self
Create a DRAG (Derivative Removal by Adiabatic Gate) pulse
Sourcepub fn max_amplitude(&self) -> f64
pub fn max_amplitude(&self) -> f64
Get maximum amplitude
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Waveform
impl<'de> Deserialize<'de> for Waveform
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Waveform
impl RefUnwindSafe for Waveform
impl Send for Waveform
impl Sync for Waveform
impl Unpin for Waveform
impl UnwindSafe for Waveform
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> Serialize for T
impl<T> Serialize for T
fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<(), Error>
fn do_erased_serialize( &self, serializer: &mut dyn Serializer, ) -> Result<(), ErrorImpl>
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.