bloqade.cirq_utils.noise.model.GeminiOneZoneNoiseModel
classGeminiOneZoneNoiseModel¶source
bloqade.cirq_utils.noise.model.GeminiOneZoneNoiseModel
Bases: GeminiNoiseModelABC
A Cirq-compatible noise model for a one-zone implementation of the Gemini architecture.
Signature
class GeminiOneZoneNoiseModel(check_input_circuit: bool = True, scaling_factor: float = 1.0, cz_paired_correlated_rates: np.ndarray | None = None, cz_paired_error_probabilities: dict | None = None, parallelize_circuit: bool = False, *, local_px: float = 0.0004102, local_py: float = 0.0004102, local_pz: float = 0.0004112, local_loss_prob: float = 0.0, local_unaddressed_px: float = 2e-07, local_unaddressed_py: float = 2e-07, local_unaddressed_pz: float = 1.2e-06, local_unaddressed_loss_prob: float = 0.0, global_px: float = 6.5e-05, global_py: float = 6.5e-05, global_pz: float = 6.5e-05, global_loss_prob: float = 0.0, cz_paired_gate_px: float = 0.0006549, cz_paired_gate_py: float = 0.0006549, cz_paired_gate_pz: float = 0.003184, cz_gate_loss_prob: float = 0.0, cz_unpaired_gate_px: float = 0.0005149, cz_unpaired_gate_py: float = 0.0005149, cz_unpaired_gate_pz: float = 0.002185, cz_unpaired_loss_prob: float = 0.0, mover_px: float = 0.000806, mover_py: float = 0.000806, mover_pz: float = 0.002458, move_loss_prob: float = 0.0, sitter_px: float = 0.0003066, sitter_py: float = 0.0003066, sitter_pz: float = 0.0004639, sit_loss_prob: float = 0.0)This model introduces custom asymmetric depolarizing noise for both single- and two-qubit gates depending on whether operations are global, local, or part of a CZ interaction. Since the model assumes all atoms are in the entangling zone, errors are applied that stem from application of Rydberg error, even for qubits not actively involved in a gate operation.
Note, that the noise applied to entangling pairs is correlated.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
check_input_circuit | bool | True | |
scaling_factor | float | 1.0 | |
cz_paired_correlated_rates | np.ndarray | None | None | |
cz_paired_error_probabilities | dict | None | None | |
parallelize_circuit | bool | False | |
local_px | float | 0.0004102 | |
local_py | float | 0.0004102 | |
local_pz | float | 0.0004112 | |
local_loss_prob | float | 0.0 | |
local_unaddressed_px | float | 2e-07 | |
local_unaddressed_py | float | 2e-07 | |
local_unaddressed_pz | float | 1.2e-06 | |
local_unaddressed_loss_prob | float | 0.0 | |
global_px | float | 6.5e-05 | |
global_py | float | 6.5e-05 | |
global_pz | float | 6.5e-05 | |
global_loss_prob | float | 0.0 | |
cz_paired_gate_px | float | 0.0006549 | |
cz_paired_gate_py | float | 0.0006549 | |
cz_paired_gate_pz | float | 0.003184 | |
cz_gate_loss_prob | float | 0.0 | |
cz_unpaired_gate_px | float | 0.0005149 | |
cz_unpaired_gate_py | float | 0.0005149 | |
cz_unpaired_gate_pz | float | 0.002185 | |
cz_unpaired_loss_prob | float | 0.0 | |
mover_px | float | 0.000806 | |
mover_py | float | 0.000806 | |
mover_pz | float | 0.002458 | |
move_loss_prob | float | 0.0 | |
sitter_px | float | 0.0003066 | |
sitter_py | float | 0.0003066 | |
sitter_pz | float | 0.0004639 | |
sit_loss_prob | float | 0.0 |
Attributes
| Name | Type | Default | Description |
|---|---|---|---|
parallelize_circuit | bool | False |
methodnoisy_moment¶source
bloqade.cirq_utils.noise.model.GeminiOneZoneNoiseModel.noisy_moment
methodnoisy_moments¶source
bloqade.cirq_utils.noise.model.GeminiOneZoneNoiseModel.noisy_moments
Signature
def noisy_moments(moments: Iterable[cirq.Moment], system_qubits: Sequence[cirq.Qid]) -> Sequence[cirq.OP_TREE]Adds possibly stateful noise to a series of moments.
Parameters
| Name | Type | Description |
|---|---|---|
moments | Iterable[cirq.Moment] | The moments to add noise to. |
system_qubits | Sequence[cirq.Qid] | A list of all qubits in the system. |
Returns
(Sequence[cirq.OP_TREE], Sequence[cirq.OP_TREE])A sequence of OP_TREEEs, with the k'th tree corresponding to the noisy operations for the k'th moment.