mqt.qudits.simulation.noise_tools

Submodules

Package Contents

class Noise(probability_depolarizing: float, probability_dephasing: float)[source]

Represents a noise model with depolarizing and dephasing probabilities.

probability_depolarizing
probability_dephasing
__str__() str[source]
class NoiseModel[source]

Represents a quantum noise model for various gates and qudit configurations.

quantum_errors: dict[str, dict[str, Noise | SubspaceNoise]]
add_quantum_error_locally(noise: Noise | SubspaceNoise, gates: list[str]) None[source]

Add a quantum error locally to all qudits for specified gates.

add_all_qudit_quantum_error(noise: Noise | SubspaceNoise, gates: list[str]) None[source]

Add a quantum error to all qudits for specified gates.

add_nonlocal_quantum_error(noise: Noise | SubspaceNoise, gates: list[str]) None[source]

Add a nonlocal quantum error for specified gates.

add_nonlocal_quantum_error_on_target(noise: Noise | SubspaceNoise, gates: list[str]) None[source]

Add a nonlocal quantum error on target qudits for specified gates.

add_nonlocal_quantum_error_on_control(noise: Noise | SubspaceNoise, gates: list[str]) None[source]

Add a nonlocal quantum error on control qudits for specified gates.

property basis_gates: list[str]

The basis gates in the noise model.

__str__() str[source]

Return a string representation of the NoiseModel.

class SubspaceNoise(probability_depolarizing: float, probability_dephasing: float, levels: tuple[int, int] | list[tuple[int, int]])[source]

Represents physical noises for each level transitions.

subspace_w_probs: dict[tuple[int, int], Noise]
__str__() str[source]
add_noise(lev_a: int, lev_b: int, noise: Noise) None[source]
add_noises(noises: dict[tuple[int, int], Noise]) None[source]
class NoisyCircuitFactory(noise_model: NoiseModel, circuit: QuantumCircuit)[source]
noise_model: NoiseModel
circuit: QuantumCircuit
rng: Generator
generate_circuit() QuantumCircuit[source]