StationaryQubit. https://arxiv.org/abs/1908.10758.
More...
#include <StationaryQubit.h>
◆ StationaryQubit()
| quisp::modules::StationaryQubit::StationaryQubit |
( |
| ) |
|
◆ emitPhoton()
| void quisp::modules::StationaryQubit::emitPhoton |
( |
int | pulse | ) |
|
|
overridevirtual |
Emit photon.
- Parameters
-
| pulse | is 1 for the beginning of the burst, 2 for the end. |
| pulse | 0 for nothing, 1 for first, 2 for last, 3 for first and last |
The stationary qubit shouldn't be already busy.
Implements quisp::modules::IStationaryQubit.
◆ finish()
| void quisp::modules::StationaryQubit::finish |
( |
| ) |
|
|
overrideprotected |
◆ gateCNOT()
| void quisp::modules::StationaryQubit::gateCNOT |
( |
IStationaryQubit * | target_qubit | ) |
|
|
overridevirtual |
◆ gateHadamard()
| void quisp::modules::StationaryQubit::gateHadamard |
( |
| ) |
|
|
overridevirtual |
◆ gateS()
| void quisp::modules::StationaryQubit::gateS |
( |
| ) |
|
|
overridevirtual |
◆ gateSdg()
| void quisp::modules::StationaryQubit::gateSdg |
( |
| ) |
|
|
overridevirtual |
◆ gateX()
| void quisp::modules::StationaryQubit::gateX |
( |
| ) |
|
|
overridevirtual |
◆ gateY()
| void quisp::modules::StationaryQubit::gateY |
( |
| ) |
|
|
overridevirtual |
◆ gateZ()
| void quisp::modules::StationaryQubit::gateZ |
( |
| ) |
|
|
overridevirtual |
◆ generateEntangledPhoton()
| PhotonicQubit * quisp::modules::StationaryQubit::generateEntangledPhoton |
( |
| ) |
|
|
protected |
Generate photon entangled with the memory.
- Warning
- Shouldn't we destroy a possibly existing photon object before? <- No, I dont think so...
◆ getBackendQubitRef()
| backends::IQubit * quisp::modules::StationaryQubit::getBackendQubitRef |
( |
| ) |
const |
|
overridevirtual |
◆ handleMessage()
| void quisp::modules::StationaryQubit::handleMessage |
( |
omnetpp::cMessage * | msg | ) |
|
|
overrideprotected |
handle PhotonicQubit generated by StatinoryQubit itself
- Parameters
-
| msg | is the PhotonicQubit message |
◆ initialize()
| void quisp::modules::StationaryQubit::initialize |
( |
| ) |
|
|
overrideprotected |
◆ isLocked()
| bool quisp::modules::StationaryQubit::isLocked |
( |
| ) |
|
|
overridevirtual |
◆ Lock()
| void quisp::modules::StationaryQubit::Lock |
( |
unsigned long | rs_id, |
|
|
int | rule_id, |
|
|
int | action_id ) |
|
overridevirtual |
◆ measureRandomPauliBasis()
◆ measureX()
◆ measureY()
◆ measureZ()
◆ prepareBackendQubitConfiguration()
| std::unique_ptr< IConfiguration > quisp::modules::StationaryQubit::prepareBackendQubitConfiguration |
( |
bool | overwrite | ) |
|
|
protected |
get the default backend configuration from the Bcakend module. if overwrite arg is true, collect StationaryQubit's backend qubit config and overwrite the default configuration with it. if you want to use different qubit configuration, it's useful.
◆ setBusy()
| void quisp::modules::StationaryQubit::setBusy |
( |
| ) |
|
|
protected |
◆ setFree()
| void quisp::modules::StationaryQubit::setFree |
( |
bool | consumed | ) |
|
|
overridevirtual |
◆ Unlock()
| void quisp::modules::StationaryQubit::Unlock |
( |
| ) |
|
|
overridevirtual |
◆ backend
◆ emission_jittering_standard_deviation
| double quisp::modules::StationaryQubit::emission_jittering_standard_deviation |
|
protected |
◆ emission_success_probability
| double quisp::modules::StationaryQubit::emission_success_probability |
◆ emitted_time
| omnetpp::simtime_t quisp::modules::StationaryQubit::emitted_time = -1 |
|
protected |
◆ is_busy
| bool quisp::modules::StationaryQubit::is_busy |
|
protected |
◆ locked
| bool quisp::modules::StationaryQubit::locked |
◆ locked_rule_id
| unsigned long quisp::modules::StationaryQubit::locked_rule_id |
◆ locked_ruleset_id
| unsigned long quisp::modules::StationaryQubit::locked_ruleset_id |
◆ node_address
| int quisp::modules::StationaryQubit::node_address |
|
protected |
◆ provider
◆ qnic_address
| int quisp::modules::StationaryQubit::qnic_address |
|
protected |
◆ qubit_ref
◆ stationary_qubit_address
| int quisp::modules::StationaryQubit::stationary_qubit_address |
|
protected |
The documentation for this class was generated from the following files: