Struct roqoqo::operations::PragmaOverrotation[][src]

pub struct PragmaOverrotation {
    gate_hqslang: String,
    qubits: Vec<usize>,
    amplitude: f64,
    variance: f64,
}
Expand description

The statistical overrotation PRAGMA operation.

This PRAGMA applies a statistical overrotation to the next rotation gate in the circuit, which matches the hqslang name in the gate parameter of PragmaOverrotation and the involved qubits in qubits.

The applied overrotation corresponds to adding a random number to the rotation angle. The random number is drawn from a normal distribution with mean 0 and standard deviation variance and is multiplied by the amplitude.

Fields

gate_hqslang: String

The unique hqslang name of the gate to overrotate.

qubits: Vec<usize>

The qubits of the gate to overrotate.

amplitude: f64

The amplitude the random number is multiplied by.

variance: f64

The standard deviation of the normal distribution the random number is drawn from.

Implementations

Returns the value of the field gate_hqslang.

Returns the value of the field amplitude.

Returns the value of the field variance.

Creates a new instance of PragmaOverrotation.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Deserialize this value from the given Serde deserializer. Read more

Implements the From trait $\textit{from}$ this Operation.

Performs the conversion.

Implements the From trait $\textit{from}$ this Operation.

Performs the conversion.

Implements the From trait $\textit{from}$ this Operation.

Performs the conversion.

Implements InvolveQubits trait for the qubits involved in this Operation.

Returns a list of all involved qubits.

Implements the universal basic trait Operate for this Operation.

Returns true when Operation has symbolic parameters.

Returns tags classifying the type of the Operation.

Returns hqslang name of the Operation.

Implements OperateMultiQubit trait for this Operation acting on a set of qubits.

Returns qubit the Operation acts on.

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Serialize this value into the given Serde serializer. Read more

Implements Substitute trait allowing to replace symbolic parameters and to perform qubit mappings.

Substitutes symbolic parameters in clone of the operation.

Remaps the qubits in clone of the operation.

Implements the core::convert::TryFrom trait $\textit{into}$ this Operation.

The type returned in case of a conversion error.

Performs the conversion.

Implements the core::convert::TryFrom trait $\textit{into}$ this Operation.

The type returned in case of a conversion error.

Performs the conversion.

Implements the core::convert::TryFrom trait $\textit{into}$ this Operation.

The type returned in case of a conversion error.

Performs the conversion.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

Should always be Self

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more

Checks if self is actually part of its subset T (and can be converted to it).

Use with care! Same as self.to_subset but without any property checks. Always succeeds.

The inclusion map: converts self to the equivalent element of its superset.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.