Transducer
Model for a transducer.
See https://arxiv.org/abs/2411.11377, Simulation of Quantum Transduction Strategies for Quantum Networks
- class sequence.components.transducer.DownConversionProtocol(owner: Node, name: str, tl: Timeline, transducer: Transducer)
Protocol for Down-conversion of an input optical photon into an output microwave photon.
- name
the name of the protocol
- Type:
str
- transducer
the transducer component
- Type:
- received_message(src: str, msg)
Receive classical message from another node.
- class sequence.components.transducer.Transducer(owner: Node, name: str, timeline: Timeline, efficiency: float = 1)
Class modeling a transducer.
A transducer can operate in two modes: up-conversion and down-conversion. In up-conversion it can convert microwave photons to optical photons. In down-conversion it can convert optical photons to microwave photons.
- name
the name of the transducer
- Type:
str
- efficiency
the efficiency of the transducer
- Type:
float
- photon_counter
photon counter
- Type:
int
- up_conversion_protocol
up convert microwave to photon
- Type:
- down_conversion_protocol
down convert photon to microwave
- Type:
- add_outputs(outputs: list)
Add outputs, i.e., receivers
- get(photon) None
The optical photon reaches the destination
- 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.
- class sequence.components.transducer.UpConversionProtocol(owner: Node, name: str, tl: Timeline, transducer: Transducer)
Protocol for Up-conversion of an input microwave photon into an output optical photon.
- name
the name of the protocol
- Type:
str
- transducer
the transducer component
- Type:
- convert(photon: Photon) None
receives
- Parameters:
photon (Photon) – photon from arrived at the transducer from the transmon
- received_message(src: str, msg)
Receive classical message from another node.
- start() None
start the protocol
- sequence.components.transducer.get_conversion_matrix(efficiency: float) Qobj
- Parameters:
efficiency (float) – transducer efficiency