pub struct QuantumBenchmarkSuite {
pub noise_model: NoiseModel,
pub enable_mitigation: bool,
pub config: BenchmarkConfig,
}Expand description
Integrated quantum benchmarking suite
Fields§
§noise_model: NoiseModelNoise model for realistic simulation
enable_mitigation: boolEnable error mitigation
config: BenchmarkConfigBenchmarking configuration
Implementations§
Source§impl QuantumBenchmarkSuite
impl QuantumBenchmarkSuite
Sourcepub fn new(noise_model: NoiseModel, config: BenchmarkConfig) -> Self
pub fn new(noise_model: NoiseModel, config: BenchmarkConfig) -> Self
Create a new benchmark suite
Sourcepub fn benchmark_qaoa_with_mitigation(
&self,
num_qubits: usize,
edges: Vec<(usize, usize)>,
num_layers: usize,
) -> QuantRS2Result<QAOABenchmarkResult>
pub fn benchmark_qaoa_with_mitigation( &self, num_qubits: usize, edges: Vec<(usize, usize)>, num_layers: usize, ) -> QuantRS2Result<QAOABenchmarkResult>
Benchmark QAOA with error mitigation
Sourcepub fn benchmark_quantum_volume(
&self,
max_qubits: usize,
) -> QuantRS2Result<QuantumVolumeBenchmarkResult>
pub fn benchmark_quantum_volume( &self, max_qubits: usize, ) -> QuantRS2Result<QuantumVolumeBenchmarkResult>
Benchmark quantum volume
Sourcepub fn benchmark_with_dynamical_decoupling(
&self,
dd_sequence: DDSequenceType,
num_pulses: usize,
idle_time: f64,
) -> QuantRS2Result<DDEffectivenessResult>
pub fn benchmark_with_dynamical_decoupling( &self, dd_sequence: DDSequenceType, num_pulses: usize, idle_time: f64, ) -> QuantRS2Result<DDEffectivenessResult>
Benchmark with dynamical decoupling
Sourcepub fn benchmark_algorithm<F>(
&self,
algorithm_name: &str,
algorithm: F,
) -> QuantRS2Result<BenchmarkResult>
pub fn benchmark_algorithm<F>( &self, algorithm_name: &str, algorithm: F, ) -> QuantRS2Result<BenchmarkResult>
Comprehensive algorithm benchmark
Auto Trait Implementations§
impl Freeze for QuantumBenchmarkSuite
impl RefUnwindSafe for QuantumBenchmarkSuite
impl Send for QuantumBenchmarkSuite
impl Sync for QuantumBenchmarkSuite
impl Unpin for QuantumBenchmarkSuite
impl UnwindSafe for QuantumBenchmarkSuite
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> 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<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.