API reference¶
Generated from the docstrings in the package itself, so it never drifts away from the code.
Where to look¶
Writing an application? Everything you need is in the
SDK — Environment,
Circuit and
QMPICommunicator.
Configuring a run? See Runtime for
RunConfig and the CLI, and
Adapters for each backend’s config subclass.
Writing a backend? Runtime has the
Executor contract; Adapters
has four worked implementations.
Package layout¶
netqmpi/
├── helpers.py load_main(): locate a script's main()
├── sdk/ user-facing, backend-agnostic
│ ├── environment.py Environment
│ ├── circuit.py Circuit (fluent API + translation hooks)
│ ├── communicator.py QMPICommunicator
│ ├── resources.py IndexPool
│ └── operations/ the Command/Composite operation model
│ ├── operation.py Operation
│ ├── gate.py Gate, ControlledGate, ClassicalControlledGate
│ ├── non_unitary.py Measure, Reset, Barrier
│ ├── container.py OperationContainer
│ └── qmpi.py QSend, QRecv, QScatter, QGather, Expose, Unexpose
└── runtime/ execution-facing
├── cli.py netqmpi entry point, simulate()
├── executor.py Executor contract
├── run_config.py RunConfig, read_config_block()
└── adapters/
├── cunqa/ reference backend
├── netqasm/
├── aer/
└── qoala/