quantum-simulation-lab 1.0.2__tar.gz → 1.2.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/DIARY.md +11 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/PKG-INFO +4 -5
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/README.md +3 -4
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/ROADMAP.md +12 -13
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/pyproject.toml +1 -1
- quantum_simulation_lab-1.2.2/tensor_network_library/algorithms/tebd.py +596 -0
- quantum_simulation_lab-1.2.2/tensor_network_library/core/gate_application.py +229 -0
- quantum_simulation_lab-1.2.2/tensor_network_library/core/gates.py +202 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/core/utils.py +1 -1
- quantum_simulation_lab-1.2.2/tensor_network_library/states/entangled_states.py +252 -0
- quantum_simulation_lab-1.2.2/tests/algorithms/test_dmrg.py +107 -0
- quantum_simulation_lab-1.2.2/tests/algorithms/test_tebd.py +266 -0
- quantum_simulation_lab-1.2.2/tests/core/test_gate_application.py +221 -0
- quantum_simulation_lab-1.2.2/tests/core/test_gates.py +113 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tests/examples/test_dmrg_hamiltonians.py +4 -4
- quantum_simulation_lab-1.2.2/tests/examples/test_tebd_physical_problem.py +107 -0
- quantum_simulation_lab-1.2.2/tests/states/test_entnagled_states.py +156 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/.gitattributes +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/.github/workflows/publish.yml +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/.github/workflows/tests.yml +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/.github/workflows/update-loc.yml +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/.gitignore +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/.vscode/settings.json +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/LICENSE +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/__init__.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/dmrg_hamiltonians.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_x_field/__init__.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_x_field/results/H2_convergence.csv +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_x_field/results/H2_energy_convergence.png +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_x_field/results/H2_itensors_convergence.csv +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_x_field/results/H2_itensors_energy.png +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_x_field/run_dmrg.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_x_field/run_dmrg_itensors.jl +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_x_field/test_run_dmrg.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_z_field/__init__.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_z_field/results/H1_convergence.csv +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_z_field/results/H1_energy_convergence.png +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_z_field/results/H1_itensors_convergence.csv +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_z_field/results/H1_itensors_energy.png +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_z_field/run_dmrg.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_z_field/run_dmrg_itensors.jl +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/random_z_field/test_run_dmrg.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/zz_plus_z/__init__.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/zz_plus_z/results/H3_convergence.csv +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/zz_plus_z/results/H3_energy_convergence.png +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/zz_plus_z/results/H3_itensors_convergence.csv +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/zz_plus_z/results/H3_itensors_energy.png +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/zz_plus_z/run_dmrg.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/examples/zz_plus_z/run_dmrg_itensors.jl +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/__init__.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/algorithms/__init__.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/algorithms/dmrg.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/core/__init__.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/core/canonical.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/core/env.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/core/index.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/core/mpo.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/core/mps.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/core/policy.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/core/tensor.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/hamiltonian/__init__.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/hamiltonian/models.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/hamiltonian/operators.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/requirements.txt +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/states/__init__.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tensor_network_library/states/qubit_states.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tests/core/test_canonical.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tests/core/test_env.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tests/core/test_index.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tests/core/test_mpo.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tests/core/test_mps.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tests/core/test_policy.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tests/core/test_tensor.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tests/core/test_utils.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tests/hamiltonian/test_hamiltonians.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tests/hamiltonian/test_operators.py +0 -0
- {quantum_simulation_lab-1.0.2 → quantum_simulation_lab-1.2.2}/tests/states/test_qubit_states.py +0 -0
|
@@ -2,6 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
A chronological log of design decisions, bugs found, and milestones reached.
|
|
4
4
|
|
|
5
|
+
## v1.0.7 • 2026-04-24
|
|
6
|
+
|
|
7
|
+
## v1.0.6 • 2026-04-23
|
|
8
|
+
|
|
9
|
+
## v1.0.5 • 2026-04-21
|
|
10
|
+
|
|
11
|
+
- Added dense statevector helpers for standard entangled state generation (GHZ, Bell, w)
|
|
12
|
+
- Added MPS helpers to generate and initialize entangled states from dense state vectors (Bell, GHZ, w)
|
|
13
|
+
- Added appropriate tests for these above new functions.
|
|
14
|
+
|
|
15
|
+
---
|
|
5
16
|
|
|
6
17
|
## v1.0.3 · 2026-03-31
|
|
7
18
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: quantum-simulation-lab
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.2.2
|
|
4
4
|
Summary: A test-driven tensor network playground for finite-size DMRG and MPS/MPO algorithms
|
|
5
5
|
License: Apache License
|
|
6
6
|
Version 2.0, January 2004
|
|
@@ -221,7 +221,7 @@ Description-Content-Type: text/markdown
|
|
|
221
221
|
[](https://www.python.org/)
|
|
222
222
|
[](./LICENSE)
|
|
223
223
|
|
|
224
|
-
**A test-driven tensor network
|
|
224
|
+
**A test-driven tensor network library for finite-size DMRG and MPS/MPO algorithms on 1D quantum lattice models.**
|
|
225
225
|
|
|
226
226
|
[Installation](#installation) · [Quickstart](#quickstart-ground-state-of-tfim-with-dmrg) · [Features](#features) · [Roadmap](./ROADMAP.md) · [Diary](./DIARY.md)
|
|
227
227
|
|
|
@@ -323,9 +323,8 @@ The CI badge above reflects the current state of the `main` branch.
|
|
|
323
323
|
| Version | Focus | Status |
|
|
324
324
|
|---------|-------|--------|
|
|
325
325
|
| v1 | Finite-size DMRG — qubit and spin-1/2 bosonic chains | ✅ Done |
|
|
326
|
-
| v2 | TEBD / iTEBD — fermionic and spin-1 environments | 🔲
|
|
326
|
+
| v2 | TEBD / iTEBD — fermionic and spin-1 environments | 🔲 In-progress |
|
|
327
327
|
| v3 | 2D geometries and long-range Hamiltonians | 🔲 Planned |
|
|
328
|
-
| v4+ | Advanced interfaces (AQA, QML, QEC) | 🔲 Exploratory |
|
|
329
328
|
|
|
330
329
|
See [`ROADMAP.md`](./ROADMAP.md) for detailed per-version task lists and [`DIARY.md`](./DIARY.md) for development notes.
|
|
331
330
|
|
|
@@ -336,5 +335,5 @@ See [`ROADMAP.md`](./ROADMAP.md) for detailed per-version task lists and [`DIARY
|
|
|
336
335
|
_Last updated automatically by CI:_
|
|
337
336
|
|
|
338
337
|
<!-- LOC-AUTO-START -->
|
|
339
|
-
|
|
338
|
+
6885
|
|
340
339
|
<!-- LOC-AUTO-END -->
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
[](https://www.python.org/)
|
|
8
8
|
[](./LICENSE)
|
|
9
9
|
|
|
10
|
-
**A test-driven tensor network
|
|
10
|
+
**A test-driven tensor network library for finite-size DMRG and MPS/MPO algorithms on 1D quantum lattice models.**
|
|
11
11
|
|
|
12
12
|
[Installation](#installation) · [Quickstart](#quickstart-ground-state-of-tfim-with-dmrg) · [Features](#features) · [Roadmap](./ROADMAP.md) · [Diary](./DIARY.md)
|
|
13
13
|
|
|
@@ -109,9 +109,8 @@ The CI badge above reflects the current state of the `main` branch.
|
|
|
109
109
|
| Version | Focus | Status |
|
|
110
110
|
|---------|-------|--------|
|
|
111
111
|
| v1 | Finite-size DMRG — qubit and spin-1/2 bosonic chains | ✅ Done |
|
|
112
|
-
| v2 | TEBD / iTEBD — fermionic and spin-1 environments | 🔲
|
|
112
|
+
| v2 | TEBD / iTEBD — fermionic and spin-1 environments | 🔲 In-progress |
|
|
113
113
|
| v3 | 2D geometries and long-range Hamiltonians | 🔲 Planned |
|
|
114
|
-
| v4+ | Advanced interfaces (AQA, QML, QEC) | 🔲 Exploratory |
|
|
115
114
|
|
|
116
115
|
See [`ROADMAP.md`](./ROADMAP.md) for detailed per-version task lists and [`DIARY.md`](./DIARY.md) for development notes.
|
|
117
116
|
|
|
@@ -122,5 +121,5 @@ See [`ROADMAP.md`](./ROADMAP.md) for detailed per-version task lists and [`DIARY
|
|
|
122
121
|
_Last updated automatically by CI:_
|
|
123
122
|
|
|
124
123
|
<!-- LOC-AUTO-START -->
|
|
125
|
-
|
|
124
|
+
6885
|
|
126
125
|
<!-- LOC-AUTO-END -->
|
|
@@ -14,11 +14,11 @@ Robust 2-site DMRG for qubit and spin-1/2 bosonic chains.
|
|
|
14
14
|
- [x] `MPO` — identity, apply-to-MPS, dense conversion
|
|
15
15
|
- [x] `TruncationPolicy` — cutoff, max bond dimension, strict mode
|
|
16
16
|
- [x] `Environment` — qubit and spin-1/2 bosonic chain support
|
|
17
|
-
- [x] `core/site.py` — `QubitSite
|
|
17
|
+
- [x] `core/site.py` — `QubitSite`
|
|
18
18
|
- [x] `core/geometry.py` — `FiniteChain`
|
|
19
19
|
- [x] MPO builders — TFIM, Heisenberg (XXZ), random Z/X fields, ZZ+Z
|
|
20
20
|
- [x] Finite 2-site DMRG with incremental environments and correct gauge per sweep direction
|
|
21
|
-
- [x]
|
|
21
|
+
- [x] Tests — unit, integration, dense-reference, DMRG regression
|
|
22
22
|
- [x] Cross-validated against iTensor
|
|
23
23
|
- [x] GitHub Actions CI — pytest, LOC badge, PyPI publish
|
|
24
24
|
|
|
@@ -26,18 +26,17 @@ Robust 2-site DMRG for qubit and spin-1/2 bosonic chains.
|
|
|
26
26
|
|
|
27
27
|
## 🔲 v2 — TEBD / iTEBD
|
|
28
28
|
|
|
29
|
-
Real and imaginary time evolution on finite and infinite chains
|
|
29
|
+
Real and imaginary time evolution on finite and infinite chains.
|
|
30
30
|
|
|
31
|
-
- [
|
|
32
|
-
- [
|
|
33
|
-
- [
|
|
34
|
-
- [
|
|
35
|
-
- [
|
|
36
|
-
- [
|
|
37
|
-
- [ ]
|
|
31
|
+
- [x] Entangled-state helpers — Bell pair (all 4 states), GHZ, W (dense + MPS wrappers)
|
|
32
|
+
- [x] Local two-site gate application on MPS
|
|
33
|
+
- [x] `two_site_gate_from_hamiltonian` — exact diagonalisation gate builder
|
|
34
|
+
- [x] Finite TEBD — first-order Trotter time-stepper
|
|
35
|
+
- [x] Imaginary-time TEBD — ground-state preparation via Euclidean evolution
|
|
36
|
+
- [x] Validated against dense simulations
|
|
37
|
+
- [ ] Second-order (Strang) Trotter splitting
|
|
38
38
|
- [ ] `InfiniteChain` geometry and iTEBD on infinite chains
|
|
39
|
-
- [ ]
|
|
40
|
-
- [ ] Tests for unitarity, norm conservation, and fermionic anti-commutation
|
|
39
|
+
- [ ] Truncation schedule presets
|
|
41
40
|
|
|
42
41
|
---
|
|
43
42
|
|
|
@@ -48,7 +47,7 @@ Real and imaginary time evolution on finite and infinite chains, with fermionic
|
|
|
48
47
|
- [ ] 2D geometries mapped to 1D chains via swap networks
|
|
49
48
|
- [ ] Swap gate layer for non-nearest-neighbour couplings
|
|
50
49
|
- [ ] Long-range MPO construction (exponential fitting / sum-of-exponentials)
|
|
51
|
-
- [ ] Support for
|
|
50
|
+
- [ ] Support for heavy-hexagonal lattice geometries
|
|
52
51
|
- [ ] Benchmark DMRG ground states on 2D Heisenberg and Hubbard models
|
|
53
52
|
|
|
54
53
|
---
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "quantum-simulation-lab"
|
|
7
|
-
version = "1.
|
|
7
|
+
version = "1.2.2"
|
|
8
8
|
description = "A test-driven tensor network playground for finite-size DMRG and MPS/MPO algorithms"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = { file = "LICENSE" }
|