Q2NS dev
ns-3 module
Loading...
Searching...
No Matches
q2ns-2-qmap-example.cc File Reference

Example of using different quantum maps. More...

#include "ns3/core-module.h"
#include "ns3/network-module.h"
#include "ns3/q2ns-netcontroller.h"
#include "ns3/q2ns-qmap.h"
#include "ns3/q2ns-qnode.h"
#include "ns3/q2ns-qstate.h"
#include "ns3/q2ns-qubit.h"
#include "ns3/simulator.h"
#include <iostream>
#include <random>
#include <string>
Include dependency graph for q2ns-2-qmap-example.cc:

Go to the source code of this file.

Functions

int main (int argc, char *argv[])
 

Detailed Description

Example of using different quantum maps.

Demonstrates the usage of various quantum maps in q2ns. Run with different –mode values to see different maps in action:

  • loss+depol: a composition of LossQMap and DepolarizingQMap
  • randomgate: a RandomGateQMap with X and Z gates
  • randomunitary: a RandomUnitaryQMap applying Haar-random unitaries
  • conditional: a ConditionalQMap that applies loss only if flight time > 20 ns
  • lambda: a QMap from a simple lambda that applies S gate
  • lambda-random: a QMap from a lambda that applies X with probability based on a rate and flight time

Definition in file q2ns-2-qmap-example.cc.

Function Documentation

◆ main()

int main ( int  argc,
char *  argv[] 
)

Definition at line 41 of file q2ns-2-qmap-example.cc.

References q2ns::QNode::Apply(), q2ns::QMap::Compose(), q2ns::NetController::CreateNode(), q2ns::QMapContext::elapsedTime, q2ns::QMap::FromLambda(), q2ns::NetController::GetState(), q2ns::gates::H(), q2ns::NetController::InstallQuantumLink(), q2ns::QMap::RateToProb(), q2ns::gates::S(), q2ns::gates::X(), and q2ns::gates::Z().

Here is the call graph for this function: