-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathpyproject.toml
More file actions
107 lines (95 loc) · 2.72 KB
/
Copy pathpyproject.toml
File metadata and controls
107 lines (95 loc) · 2.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
[tool.poetry]
name = "pulsebasedcircuitelementsvqa"
version = "1.0.0"
description = "Code for full reproduction of the paper linked in README."
authors = ["Henrik <hgothen@posteo.de>"]
readme = "README.md"
[tool.poetry.dependencies]
python = "=3.13.*"
matplotlib = "=3.11.1"
thread-chunks = "=1.0.5"
ray = "=2.56.1"
tqdm = "=4.69.0"
cloudpickle = "=3.1.2"
saveable-objects = "=1.1.8"
qutip = "=5.3.0"
numpy = "=2.5.1"
qugrad = "=1.1.0"
qugradlab = "=0.2.0"
pandas = "=3.0.3"
sympy = "=1.14.0"
[tool.poetry.group.dev.dependencies]
ruff = "^0.8.0"
pyright = "^1.1.390"
pytest = "^8.3.0"
poethepoet = "^0.32.0"
pre-commit = "^4.0.0"
[tool.ruff]
line-length = 100
target-version = "py312"
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"F", # pyflakes
"I", # import sorting
"B", # flake8-bugbear
"UP", # pyupgrade
"N", # naming conventions
"SIM", # simplify
]
ignore = [
"N802", # allow capitalized functions. Sometimes useful for gates like Rz, H, ...
"N803", # allow non-lowercase argument names, useful in scientific code
"N806", # allow non-lowercase variable names, useful for matrices/operators
"N816", # mixed case variables
]
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
line-ending = "auto"
[tool.pyright]
pythonVersion = "3.12"
typeCheckingMode = "basic"
include = ["."]
exclude = [
"**/__pycache__",
".venv",
".git",
"build",
"dist",
]
reportMissingImports = true
reportMissingTypeStubs = false
reportUnknownMemberType = false
reportUnknownArgumentType = false
reportUnknownVariableType = false
[tool.pytest.ini_options]
testpaths = ["tests"]
python_files = ["test_*.py", "*_test.py"]
[tool.poe.tasks]
format = "ruff format ."
lint = "ruff check ."
lint-fix = "ruff check . --fix"
typecheck = "pyright"
test = "pytest"
check = ["lint", "typecheck", "test"]
generate_data_fig4_sqe = "python data_generation_fig4.py sqe 2"
generate_data_fig4_dqe = "python data_generation_fig4.py dqe 3"
generate_data_fig5_6 = "python data_generation_fig5_6.py 4"
generate_data_fig7_sqe = "python data_generation_fig7.py sqe 2"
generate_data_fig7_dqe = "python data_generation_fig7.py dqe 5"
make_fig4 = "python figure_generation_fig4.py"
make_fig5_6 = "python figure_generation_fig5_6.py"
make_fig7 = "python figure_generation_fig7.py"
make_fig_supp_mat = { shell = """
echo SINGLE QUBIT, Fig. 1, 2 and 3
cd supplementary_material &&
python Pi_half_gate_time_synch/supp_mat_fig_1.py &&
python Pi_half_gate_time_shaped/supp_mat_fig_2_3.py &&
echo DOUBLE QUBIT, Fig. 4, 5 and 6
python CZ_gate_time_synch/supp_mat_fig_4.py &&
python CZ_gate_time_shaped/supp_mat_fig_5_6.py
""" }
[build-system]
requires = ["poetry-core>=2.0.0,<3.0.0"]
build-backend = "poetry.core.masonry.api"