pub struct PulseSequence {
pub pulses: Vec<(f64, QubitId, Pulse)>,
pub duration: f64,
pub name: String,
}Expand description
Pulse sequence for implementing quantum gates
Fields§
§pulses: Vec<(f64, QubitId, Pulse)>List of pulses with timing information
duration: f64Total sequence duration (ns)
name: StringSequence name/identifier
Implementations§
Source§impl PulseSequence
impl PulseSequence
Sourcepub fn add_pulse(&mut self, start_time: f64, qubit: QubitId, pulse: Pulse)
pub fn add_pulse(&mut self, start_time: f64, qubit: QubitId, pulse: Pulse)
Add a pulse to the sequence
Sourcepub fn get_qubit_pulses(&self, qubit: QubitId) -> Vec<&(f64, QubitId, Pulse)>
pub fn get_qubit_pulses(&self, qubit: QubitId) -> Vec<&(f64, QubitId, Pulse)>
Get pulses for a specific qubit
Sourcepub fn check_overlaps(&self) -> QuantRS2Result<()>
pub fn check_overlaps(&self) -> QuantRS2Result<()>
Check for pulse overlaps on the same qubit
Trait Implementations§
Source§impl Clone for PulseSequence
impl Clone for PulseSequence
Source§fn clone(&self) -> PulseSequence
fn clone(&self) -> PulseSequence
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 PulseSequence
impl !RefUnwindSafe for PulseSequence
impl Send for PulseSequence
impl Sync for PulseSequence
impl Unpin for PulseSequence
impl !UnwindSafe for PulseSequence
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 more