Skip to content

Commit 305f35e

Browse files
Update pyproject.yaml and docs
1 parent 3b2b81a commit 305f35e

3 files changed

Lines changed: 210 additions & 14 deletions

File tree

README.md

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,98 @@ To serve the documentation,
2929
pip install .[docs]
3030
mkdocs serve
3131
```
32+
33+
34+
```mermaid
35+
block-beta
36+
columns 3
37+
38+
block:Interface
39+
columns 1
40+
InterfaceTitle("<i><b>Interfaces</b><i/>")
41+
InterfaceDigital["<b>Digital Interface</b>\nQuantum circuits with discrete gates"]
42+
space
43+
InterfaceAnalog["<b>Analog Interface</b>\n Continuous-time evolution with Hamiltonians"]
44+
space
45+
InterfaceAtomic["<b>Atomic Interface</b>\nLight-matter interactions between lasers and ions"]
46+
space
47+
end
48+
49+
block:IR
50+
columns 1
51+
IRTitle("<i><b>IRs</b><i/>")
52+
IRDigital["Quantum circuit IR\nopenQASM, LLVM+QIR"]
53+
space
54+
IRAnalog["openQSIM"]
55+
space
56+
IRAtomic["openAPL"]
57+
space
58+
end
59+
60+
block:Emulator
61+
columns 1
62+
EmulatorsTitle("<i><b>Classical Emulators</b><i/>")
63+
64+
EmulatorDigital["Pennylane, Qiskit"]
65+
space
66+
EmulatorAnalog["QuTiP, QuantumOptics.jl"]
67+
space
68+
EmulatorAtomic["TrICal, QuantumIon.jl"]
69+
space
70+
end
71+
72+
space
73+
block:RealTime
74+
columns 1
75+
RealTimeTitle("<i><b>Real-Time</b><i/>")
76+
space
77+
RTSoftware["ARTIQ, DAX, OQDAX"]
78+
space
79+
RTGateware["Sinara Real-Time Control"]
80+
space
81+
RTHardware["Lasers, Modulators, Photodetection, Ion Trap"]
82+
space
83+
RTApparatus["Trapped-Ion QPU (<sup>171</sup>Yt<sup>+</sup>, <sup>133</sup>Ba<sup>+</sup>)"]
84+
space
85+
end
86+
space
87+
88+
InterfaceDigital --> IRDigital
89+
InterfaceAnalog --> IRAnalog
90+
InterfaceAtomic --> IRAtomic
91+
92+
IRDigital --> IRAnalog
93+
IRAnalog --> IRAtomic
94+
95+
IRDigital --> EmulatorDigital
96+
IRAnalog --> EmulatorAnalog
97+
IRAtomic --> EmulatorAtomic
98+
99+
IRAtomic --> RealTimeTitle
100+
101+
RTSoftware --> RTGateware
102+
RTGateware --> RTHardware
103+
RTHardware --> RTApparatus
104+
105+
classDef title fill:#d6d4d4,stroke:#333;
106+
classDef digital fill:#E7E08B,stroke:#333;
107+
classDef analog fill:#E4E9B2,stroke:#333;
108+
classDef atomic fill:#D2E4C4,stroke:#333;
109+
classDef realtime fill:#B5CBB7,stroke:#333;
110+
111+
classDef highlight fill:#f2bbbb,stroke:#333,stroke-dasharray: 5 5;
112+
113+
class InterfaceTitle,IRTitle,EmulatorsTitle,RealTimeTitle title
114+
class InterfaceDigital,IRDigital,EmulatorDigital digital
115+
class InterfaceAnalog,IRAnalog,EmulatorAnalog analog
116+
class InterfaceAtomic,IRAtomic,EmulatorAtomic atomic
117+
class RTSoftware,RTGateware,RTHardware,RTApparatus realtime
118+
119+
class Emulator highlight
120+
```
121+
The tools in this repository allow for self-hosting a server to run
122+
quantum programs on classical emulators, highlighted in the stack diagram in red.
123+
A client can specify a quantum program, submit it as a job to the self-hosted server,
124+
and retrieve the emulation results.
125+
126+
Currently, the analog layer backend is supported.

docs/index.md

Lines changed: 91 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -20,21 +20,98 @@ This documentation is still under development, we welcome contributions! © Open
2020
This repository contains the software needed to submit jobs to a remote, cloud server for classical simulations of quantum programs.
2121
In addition, it provides a Docker script to self-host a simulation server of the OQD emulator backends.
2222

23-
## Installation
24-
To install locally for development or launching a Docker container server:
2523

26-
```bash
27-
git clone https://github.com/OpenQuantumDesign/oqd-cloud.git
28-
pip install .
29-
```
3024

31-
To start the simulation server, ensure Docker is installed on the machine, navigate to the `docker` folder, and run,
32-
```bash
33-
docker compose up
34-
```
25+
```mermaid
26+
block-beta
27+
columns 3
28+
29+
block:Interface
30+
columns 1
31+
InterfaceTitle("<i><b>Interfaces</b><i/>")
32+
InterfaceDigital["<b>Digital Interface</b>\nQuantum circuits with discrete gates"]
33+
space
34+
InterfaceAnalog["<b>Analog Interface</b>\n Continuous-time evolution with Hamiltonians"]
35+
space
36+
InterfaceAtomic["<b>Atomic Interface</b>\nLight-matter interactions between lasers and ions"]
37+
space
38+
end
39+
40+
block:IR
41+
columns 1
42+
IRTitle("<i><b>IRs</b><i/>")
43+
IRDigital["Quantum circuit IR\nopenQASM, LLVM+QIR"]
44+
space
45+
IRAnalog["openQSIM"]
46+
space
47+
IRAtomic["openAPL"]
48+
space
49+
end
50+
51+
block:Emulator
52+
columns 1
53+
EmulatorsTitle("<i><b>Classical Emulators</b><i/>")
54+
55+
EmulatorDigital["Pennylane, Qiskit"]
56+
space
57+
EmulatorAnalog["QuTiP, QuantumOptics.jl"]
58+
space
59+
EmulatorAtomic["TrICal, QuantumIon.jl"]
60+
space
61+
end
62+
63+
space
64+
block:RealTime
65+
columns 1
66+
RealTimeTitle("<i><b>Real-Time</b><i/>")
67+
space
68+
RTSoftware["ARTIQ, DAX, OQDAX"]
69+
space
70+
RTGateware["Sinara Real-Time Control"]
71+
space
72+
RTHardware["Lasers, Modulators, Photodetection, Ion Trap"]
73+
space
74+
RTApparatus["Trapped-Ion QPU (<sup>171</sup>Yt<sup>+</sup>, <sup>133</sup>Ba<sup>+</sup>)"]
75+
space
76+
end
77+
space
78+
79+
InterfaceDigital --> IRDigital
80+
InterfaceAnalog --> IRAnalog
81+
InterfaceAtomic --> IRAtomic
82+
83+
IRDigital --> IRAnalog
84+
IRAnalog --> IRAtomic
85+
86+
IRDigital --> EmulatorDigital
87+
IRAnalog --> EmulatorAnalog
88+
IRAtomic --> EmulatorAtomic
89+
90+
IRAtomic --> RealTimeTitle
91+
92+
RTSoftware --> RTGateware
93+
RTGateware --> RTHardware
94+
RTHardware --> RTApparatus
95+
96+
classDef title fill:#d6d4d4,stroke:#333;
97+
classDef digital fill:#E7E08B,stroke:#333;
98+
classDef analog fill:#E4E9B2,stroke:#333;
99+
classDef atomic fill:#D2E4C4,stroke:#333;
100+
classDef realtime fill:#B5CBB7,stroke:#333;
35101
36-
To serve the documentation,
37-
```bash
38-
pip install .[docs]
39-
mkdocs serve
102+
classDef highlight fill:#f2bbbb,stroke:#333,stroke-dasharray: 5 5;
103+
104+
class InterfaceTitle,IRTitle,EmulatorsTitle,RealTimeTitle title
105+
class InterfaceDigital,IRDigital,EmulatorDigital digital
106+
class InterfaceAnalog,IRAnalog,EmulatorAnalog analog
107+
class InterfaceAtomic,IRAtomic,EmulatorAtomic atomic
108+
class RTSoftware,RTGateware,RTHardware,RTApparatus realtime
109+
110+
class Emulator highlight
40111
```
112+
The tools in this repository allow for self-hosting a server to run
113+
quantum programs on classical emulators, highlighted in the stack diagram in red.
114+
A client can specify a quantum program, submit it as a job to the self-hosted server,
115+
and retrieve the emulation results.
116+
117+
Currently, the analog layer backend is supported.

pyproject.toml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,23 @@ build-backend = "setuptools.build_meta"
77
name = "oqd-cloud"
88
version = "0.0.0"
99
requires-python = ">=3.10"
10+
readme = "README.md"
11+
license = {file = "LICENSE"}
12+
keywords = ["quantum", "computing", "simulation", "cloud", "server"]
13+
classifiers = [
14+
"Development Status :: 3 - Alpha",
15+
16+
"Intended Audience :: Science/Research ",
17+
"Topic :: Scientific/Engineering :: Physics",
18+
"Topic :: Scientific/Engineering :: Information Analysis",
19+
20+
"License :: OSI Approved :: Apache Software License",
21+
22+
"Programming Language :: Python :: 3",
23+
"Programming Language :: Python :: 3.10",
24+
"Programming Language :: Python :: 3.11",
25+
"Programming Language :: Python :: 3.12",
26+
]
1027

1128

1229
dependencies = [
@@ -39,3 +56,10 @@ test = ["unittest_prettify"]
3956
[tool.setuptools.packages.find]
4057
where = ["src"]
4158
include = ["oqd_cloud*"]
59+
60+
61+
62+
[project.urls]
63+
Homepage = "https://github.com/OpenQuantumDesign/oqd-cloud"
64+
Repository = "https://github.com/OpenQuantumDesign/oqd-cloud.git"
65+
Issues = "https://github.com/OpenQuantumDesign/oqd-cloud/issues"

0 commit comments

Comments
 (0)