sqil-core 0.0.1__tar.gz → 0.1.0__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.
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.3
2
2
  Name: sqil-core
3
- Version: 0.0.1
3
+ Version: 0.1.0
4
4
  Summary: The codebase of the SQIL group in EPFL
5
5
  Author: Andrea Duina
6
6
  Requires-Python: >=3.10,<4.0
@@ -11,10 +11,11 @@ Classifier: Programming Language :: Python :: 3.12
11
11
  Classifier: Programming Language :: Python :: 3.13
12
12
  Requires-Dist: h5py (>=3.12.1,<4.0.0)
13
13
  Requires-Dist: isort (==5.9.3)
14
+ Requires-Dist: lmfit (>=1.3.2,<2.0.0)
14
15
  Requires-Dist: matplotlib (>=3.9.3,<4.0.0)
15
- Requires-Dist: numpy (>=2.2.0,<3.0.0)
16
+ Requires-Dist: numpy (>=2.2.3,<3.0.0)
16
17
  Requires-Dist: scipy (>=1.14.1,<2.0.0)
17
- Requires-Dist: seaborn (>=0.13.2,<0.14.0)
18
+ Requires-Dist: tabulate (>=0.9.0,<0.10.0)
18
19
  Description-Content-Type: text/markdown
19
20
 
20
21
  # For users
@@ -38,34 +39,44 @@ path = 'path to your data folder'
38
39
  mag, phase, freq = sqil.extract_h5_data(path, ['mag_dB', 'phase', 'ro_freq'])
39
40
  ```
40
41
 
42
+ ## Documentation
43
+ You can find the documentation for this package [here](https://sqil-epfl.github.io/sqil-core/)
44
+
41
45
  # For developers
42
46
 
43
47
  ## Development
44
48
 
45
49
  1. **Install poetry if you haven't already**
50
+
46
51
  ```bash
47
52
  $ pip install poetry
53
+ $ pip install poetry-plugin-shell
48
54
  ```
49
55
 
50
56
  2. **Install the required packages using poetry**
57
+
51
58
  ```bash
52
59
  $ poetry install
53
60
  ```
54
61
 
55
62
  3. **Install the pre-commit hooks**
56
- If you are on windows you need to install git ([https://git-scm.com/downloads](here)) and add it to your windows PATH.
57
- After the installation open a new terminal.
63
+ If you are on windows you need to install git ([https://git-scm.com/downloads](here)) and add it to your windows PATH.
64
+ After the installation open a new terminal.
65
+
58
66
  ```bash
59
67
  $ poetry run pre-commit install
60
68
  ```
69
+
61
70
  This will check if your python files are formatted correctly when you try to commit.
62
71
  If that's not the case the commit will be canceled and the files will be automatically formatted.
63
72
  Then you'll have to add and commit again the new files.
64
73
 
65
74
  4. **Start the virtual environment**
75
+
66
76
  ```bash
67
77
  $ poetry shell
68
78
  ```
79
+
69
80
  To exit the virtual environment just use `exit`
70
81
 
71
82
  #### Test your changes
@@ -91,7 +102,11 @@ $ poetry run build
91
102
  $ pip install PATH_TO_SQIL_CORE_FOLDER/dist/SQIL_CORE-VERSION.whl
92
103
  ```
93
104
 
94
- If you're using a jupyter notebook remember to restart the kernel
105
+ If you're testing a new function remember to import it in the folder's `__init__.py` file.
106
+
107
+
108
+ If you're using a jupyter notebook remember to restart the kernel.
109
+
95
110
 
96
111
  ## Build
97
112
 
@@ -99,6 +114,16 @@ If you're using a jupyter notebook remember to restart the kernel
99
114
  $ poetry run build
100
115
  ```
101
116
 
117
+ ## Publish
118
+
119
+ To publish version X.X.X run the commands below. This will trigger a GitHub action that deploys to release to PyPi (pip) and GitHub.
120
+ Remember also to change the version number in the `pyproject.toml` file.
121
+
122
+ ```bash
123
+ $ git tag vX.X.X
124
+ $ git push origin vX.X.X
125
+ ```
126
+
102
127
  ## Docs
103
128
 
104
129
  Serve docs
@@ -19,34 +19,44 @@ path = 'path to your data folder'
19
19
  mag, phase, freq = sqil.extract_h5_data(path, ['mag_dB', 'phase', 'ro_freq'])
20
20
  ```
21
21
 
22
+ ## Documentation
23
+ You can find the documentation for this package [here](https://sqil-epfl.github.io/sqil-core/)
24
+
22
25
  # For developers
23
26
 
24
27
  ## Development
25
28
 
26
29
  1. **Install poetry if you haven't already**
30
+
27
31
  ```bash
28
32
  $ pip install poetry
33
+ $ pip install poetry-plugin-shell
29
34
  ```
30
35
 
31
36
  2. **Install the required packages using poetry**
37
+
32
38
  ```bash
33
39
  $ poetry install
34
40
  ```
35
41
 
36
42
  3. **Install the pre-commit hooks**
37
- If you are on windows you need to install git ([https://git-scm.com/downloads](here)) and add it to your windows PATH.
38
- After the installation open a new terminal.
43
+ If you are on windows you need to install git ([https://git-scm.com/downloads](here)) and add it to your windows PATH.
44
+ After the installation open a new terminal.
45
+
39
46
  ```bash
40
47
  $ poetry run pre-commit install
41
48
  ```
49
+
42
50
  This will check if your python files are formatted correctly when you try to commit.
43
51
  If that's not the case the commit will be canceled and the files will be automatically formatted.
44
52
  Then you'll have to add and commit again the new files.
45
53
 
46
54
  4. **Start the virtual environment**
55
+
47
56
  ```bash
48
57
  $ poetry shell
49
58
  ```
59
+
50
60
  To exit the virtual environment just use `exit`
51
61
 
52
62
  #### Test your changes
@@ -72,7 +82,11 @@ $ poetry run build
72
82
  $ pip install PATH_TO_SQIL_CORE_FOLDER/dist/SQIL_CORE-VERSION.whl
73
83
  ```
74
84
 
75
- If you're using a jupyter notebook remember to restart the kernel
85
+ If you're testing a new function remember to import it in the folder's `__init__.py` file.
86
+
87
+
88
+ If you're using a jupyter notebook remember to restart the kernel.
89
+
76
90
 
77
91
  ## Build
78
92
 
@@ -80,6 +94,16 @@ If you're using a jupyter notebook remember to restart the kernel
80
94
  $ poetry run build
81
95
  ```
82
96
 
97
+ ## Publish
98
+
99
+ To publish version X.X.X run the commands below. This will trigger a GitHub action that deploys to release to PyPi (pip) and GitHub.
100
+ Remember also to change the version number in the `pyproject.toml` file.
101
+
102
+ ```bash
103
+ $ git tag vX.X.X
104
+ $ git push origin vX.X.X
105
+ ```
106
+
83
107
  ## Docs
84
108
 
85
109
  Serve docs
@@ -1,23 +1,24 @@
1
1
  [tool.poetry]
2
2
  name = "sqil-core"
3
- version = "0.0.1"
3
+ version = "v0.1.0"
4
4
  description = "The codebase of the SQIL group in EPFL"
5
5
  authors = ["Andrea Duina"]
6
6
  readme = "README.md"
7
7
 
8
8
  [tool.poetry.scripts]
9
9
  build = "scripts:build"
10
- docs-serve = "scripts:docs_serve"
10
+ docs-dev = "scripts:docs_dev"
11
11
  docs-build = "scripts:docs_build"
12
12
 
13
13
  [tool.poetry.dependencies]
14
- python = "^3.10"
15
- numpy = "^2.2.0"
14
+ python = ">=3.10,<4.0"
16
15
  scipy = "^1.14.1"
17
16
  h5py = "^3.12.1"
18
17
  matplotlib = "^3.9.3"
19
- seaborn = "^0.13.2"
20
18
  isort = "5.9.3"
19
+ tabulate = "^0.9.0"
20
+ numpy = "^2.2.3"
21
+ lmfit = "^1.3.2"
21
22
 
22
23
 
23
24
  [tool.poetry.group.dev.dependencies]
@@ -27,6 +28,7 @@ mkdocs = "^1.6.1"
27
28
  mkdocs-material = "^9.5.48"
28
29
  mkdocstrings-python = "^1.12.2"
29
30
  pytest = "^8.3.4"
31
+ mkdocs-jupyter = "^0.25.1"
30
32
 
31
33
  [build-system]
32
34
  requires = ["poetry-core"]
@@ -46,4 +48,4 @@ exclude = '''
46
48
 
47
49
  [tool.isort]
48
50
  profile = "black"
49
- known_first_party = ["sqil-core"]
51
+ known_first_party = ["sqil-core"]
@@ -0,0 +1,6 @@
1
+ import sqil_core.fit as fit
2
+ import sqil_core.resonator as resonator
3
+ import sqil_core.utils as utils
4
+ from sqil_core.utils import *
5
+
6
+ __all__ = utils.__all__ + ["utils", "fit", "resonator"]
@@ -0,0 +1,13 @@
1
+ _EXCLUDED_PACKAGES = [
2
+ "os",
3
+ "sys",
4
+ "inspect",
5
+ "np",
6
+ "spopt",
7
+ "lmfit",
8
+ "h5py",
9
+ "json",
10
+ "tabulate",
11
+ "matplotlib",
12
+ "plt",
13
+ ]
@@ -0,0 +1,16 @@
1
+ from ._core import (
2
+ FitResult,
3
+ compute_adjusted_standard_errors,
4
+ compute_chi2,
5
+ fit_input,
6
+ fit_output,
7
+ )
8
+ from ._fit import (
9
+ fit_circle_algebraic,
10
+ fit_decaying_exp,
11
+ fit_decaying_oscillations,
12
+ fit_gaussian,
13
+ fit_lorentzian,
14
+ fit_qubit_relaxation_qp,
15
+ fit_skewed_lorentzian,
16
+ )