Mirror¶
- class src.components.mirror.Mirror(name: str, timeline: Timeline, fidelity=0.98, destination='', encoding_type={'bases': [((1 + 0j, 0j), (0j, 1 + 0j)), ((0.7071067811865476 + 0j, 0.7071067811865476 + 0j), (- 0.7071067811865476 + 0j, 0.7071067811865476 + 0j))], 'name': 'polarization'}, phase_error=0)¶
Single photon reflecting device. This class models the reflection of a single photon, in the fashion of an experimental mirror. Can be attached to many devices to enable different measurement options.
- name¶
label for mirror instance.
- Type:
str
- fidelity¶
fraction of qubits not lost on the reflective surface
- Type:
float
- destination¶
destination node for reflected photons
- Type:
str
- encoding_type¶
encoding scheme of emitted photons (as defined in the encoding module).
- Type:
Dict[str, Any]
- phase_error¶
phase error applied to qubits.
- Type:
float
- get(photon, **kwargs) None ¶
Method to get a photon to reflect.
Will send to destination node specified by destination attribute through owner node.
- Parameters:
photon (Photon) – photon to reflect
- init()¶
Method to initialize entity (abstract).
Entity init methods are invoked for all timeline entities when the timeline is initialized. This method can be used to perform any necessary functions before simulation.