pub struct BatchVQE { /* private fields */ }
Expand description
Batch VQE (Variational Quantum Eigensolver) optimization
Implementations§
Source§impl BatchVQE
impl BatchVQE
Sourcepub fn new(
executor: BatchCircuitExecutor,
hamiltonian: Array2<Complex64>,
config: OptimizationConfig,
) -> Self
pub fn new( executor: BatchCircuitExecutor, hamiltonian: Array2<Complex64>, config: OptimizationConfig, ) -> Self
Create a new batch VQE optimizer
Sourcepub fn optimize(
&mut self,
ansatz_fn: impl Fn(&[f64]) -> QuantRS2Result<BatchCircuit> + Sync + Send + Clone + 'static,
initial_params: &[f64],
num_samples: usize,
n_qubits: usize,
) -> QuantRS2Result<VQEResult>
pub fn optimize( &mut self, ansatz_fn: impl Fn(&[f64]) -> QuantRS2Result<BatchCircuit> + Sync + Send + Clone + 'static, initial_params: &[f64], num_samples: usize, n_qubits: usize, ) -> QuantRS2Result<VQEResult>
Run VQE optimization
Auto Trait Implementations§
impl Freeze for BatchVQE
impl !RefUnwindSafe for BatchVQE
impl Send for BatchVQE
impl Sync for BatchVQE
impl Unpin for BatchVQE
impl !UnwindSafe for BatchVQE
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 more