interpn 0.2.1__tar.gz → 0.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.
- {interpn-0.2.1 → interpn-0.2.2}/.github/workflows/CI.yml +3 -3
- {interpn-0.2.1 → interpn-0.2.2}/.github/workflows/test.yml +1 -1
- interpn-0.2.2/CHANGELOG.md +9 -0
- {interpn-0.2.1 → interpn-0.2.2}/Cargo.lock +13 -13
- {interpn-0.2.1 → interpn-0.2.2}/Cargo.toml +3 -3
- {interpn-0.2.1 → interpn-0.2.2}/LICENSE-MIT +1 -1
- {interpn-0.2.1 → interpn-0.2.2}/PKG-INFO +10 -6
- {interpn-0.2.1 → interpn-0.2.2}/README.md +4 -1
- {interpn-0.2.1 → interpn-0.2.2}/docs/index.md +10 -0
- {interpn-0.2.1 → interpn-0.2.2}/pyproject.toml +7 -7
- {interpn-0.2.1 → interpn-0.2.2}/.gitignore +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/.readthedocs.yml +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/LICENSE-APACHE +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/1d_quality_of_fit_Rectilinear.svg +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/1d_quality_of_fit_Regular.svg +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/2d_quality_of_fit_Rectilinear.svg +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/2d_quality_of_fit_Regular.svg +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/3d_throughput_vs_nobs.svg +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/3d_throughput_vs_nobs_prealloc.svg +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/6d_throughput_vs_nobs.svg +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/6d_throughput_vs_nobs_prealloc.svg +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/API_Docs.md +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/perf.md +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/ram_vs_dims.svg +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/requirements.txt +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/throughput_vs_dims_1000_obs.svg +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/docs/throughput_vs_dims_1_obs.svg +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/examples/cubic_comparison.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/interpn/__init__.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/interpn/multicubic_rectilinear.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/interpn/multicubic_regular.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/interpn/multilinear_rectilinear.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/interpn/multilinear_regular.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/interpn/py.typed +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/interpn/raw.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/interpn/serialization.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/mkdocs.yml +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/src/lib.rs +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/test/bench_cpu.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/test/bench_mem.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/test/test_docs.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/test/test_multicubic_rectilinear.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/test/test_multicubic_regular.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/test/test_multilinear_rectilinear.py +0 -0
- {interpn-0.2.1 → interpn-0.2.2}/test/test_multilinear_regular.py +0 -0
|
@@ -28,7 +28,7 @@ jobs:
|
|
|
28
28
|
strategy:
|
|
29
29
|
matrix:
|
|
30
30
|
target: [x86_64, x86, aarch64, armv7, s390x, ppc64le]
|
|
31
|
-
python-version: ["3.9", "3.10", "3.11"]
|
|
31
|
+
python-version: ["3.9", "3.10", "3.11", "3.12"]
|
|
32
32
|
steps:
|
|
33
33
|
- uses: actions/checkout@v3
|
|
34
34
|
- uses: actions/setup-python@v4
|
|
@@ -52,7 +52,7 @@ jobs:
|
|
|
52
52
|
strategy:
|
|
53
53
|
matrix:
|
|
54
54
|
target: [x64, x86]
|
|
55
|
-
python-version: ["3.9", "3.10", "3.11"]
|
|
55
|
+
python-version: ["3.9", "3.10", "3.11", "3.12"]
|
|
56
56
|
steps:
|
|
57
57
|
- uses: actions/checkout@v3
|
|
58
58
|
- uses: actions/setup-python@v4
|
|
@@ -76,7 +76,7 @@ jobs:
|
|
|
76
76
|
strategy:
|
|
77
77
|
matrix:
|
|
78
78
|
target: [x86_64, aarch64]
|
|
79
|
-
python-version: ["3.9", "3.10", "3.11"]
|
|
79
|
+
python-version: ["3.9", "3.10", "3.11", "3.12"]
|
|
80
80
|
steps:
|
|
81
81
|
- uses: actions/checkout@v3
|
|
82
82
|
- uses: actions/setup-python@v4
|
|
@@ -4,7 +4,7 @@ version = 3
|
|
|
4
4
|
|
|
5
5
|
[[package]]
|
|
6
6
|
name = "_interpn"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.3"
|
|
8
8
|
dependencies = [
|
|
9
9
|
"interpn",
|
|
10
10
|
"numpy",
|
|
@@ -135,9 +135,9 @@ dependencies = [
|
|
|
135
135
|
|
|
136
136
|
[[package]]
|
|
137
137
|
name = "numpy"
|
|
138
|
-
version = "0.
|
|
138
|
+
version = "0.21.0"
|
|
139
139
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
140
|
-
checksum = "
|
|
140
|
+
checksum = "ec170733ca37175f5d75a5bea5911d6ff45d2cd52849ce98b685394e4f2f37f4"
|
|
141
141
|
dependencies = [
|
|
142
142
|
"libc",
|
|
143
143
|
"ndarray",
|
|
@@ -194,9 +194,9 @@ dependencies = [
|
|
|
194
194
|
|
|
195
195
|
[[package]]
|
|
196
196
|
name = "pyo3"
|
|
197
|
-
version = "0.
|
|
197
|
+
version = "0.21.2"
|
|
198
198
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
199
|
-
checksum = "
|
|
199
|
+
checksum = "a5e00b96a521718e08e03b1a622f01c8a8deb50719335de3f60b3b3950f069d8"
|
|
200
200
|
dependencies = [
|
|
201
201
|
"cfg-if",
|
|
202
202
|
"indoc",
|
|
@@ -212,9 +212,9 @@ dependencies = [
|
|
|
212
212
|
|
|
213
213
|
[[package]]
|
|
214
214
|
name = "pyo3-build-config"
|
|
215
|
-
version = "0.
|
|
215
|
+
version = "0.21.2"
|
|
216
216
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
217
|
-
checksum = "
|
|
217
|
+
checksum = "7883df5835fafdad87c0d888b266c8ec0f4c9ca48a5bed6bbb592e8dedee1b50"
|
|
218
218
|
dependencies = [
|
|
219
219
|
"once_cell",
|
|
220
220
|
"target-lexicon",
|
|
@@ -222,9 +222,9 @@ dependencies = [
|
|
|
222
222
|
|
|
223
223
|
[[package]]
|
|
224
224
|
name = "pyo3-ffi"
|
|
225
|
-
version = "0.
|
|
225
|
+
version = "0.21.2"
|
|
226
226
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
227
|
-
checksum = "
|
|
227
|
+
checksum = "01be5843dc60b916ab4dad1dca6d20b9b4e6ddc8e15f50c47fe6d85f1fb97403"
|
|
228
228
|
dependencies = [
|
|
229
229
|
"libc",
|
|
230
230
|
"pyo3-build-config",
|
|
@@ -232,9 +232,9 @@ dependencies = [
|
|
|
232
232
|
|
|
233
233
|
[[package]]
|
|
234
234
|
name = "pyo3-macros"
|
|
235
|
-
version = "0.
|
|
235
|
+
version = "0.21.2"
|
|
236
236
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
237
|
-
checksum = "
|
|
237
|
+
checksum = "77b34069fc0682e11b31dbd10321cbf94808394c56fd996796ce45217dfac53c"
|
|
238
238
|
dependencies = [
|
|
239
239
|
"proc-macro2",
|
|
240
240
|
"pyo3-macros-backend",
|
|
@@ -244,9 +244,9 @@ dependencies = [
|
|
|
244
244
|
|
|
245
245
|
[[package]]
|
|
246
246
|
name = "pyo3-macros-backend"
|
|
247
|
-
version = "0.
|
|
247
|
+
version = "0.21.2"
|
|
248
248
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
249
|
-
checksum = "
|
|
249
|
+
checksum = "08260721f32db5e1a5beae69a55553f56b99bd0e1c3e6e0a5e8851a9d0f5a85c"
|
|
250
250
|
dependencies = [
|
|
251
251
|
"heck",
|
|
252
252
|
"proc-macro2",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[package]
|
|
2
2
|
name = "_interpn"
|
|
3
|
-
version = "0.1.
|
|
3
|
+
version = "0.1.3"
|
|
4
4
|
edition = "2021"
|
|
5
5
|
|
|
6
6
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
@@ -9,8 +9,8 @@ name = "_interpn"
|
|
|
9
9
|
crate-type = ["cdylib"]
|
|
10
10
|
|
|
11
11
|
[dependencies]
|
|
12
|
-
pyo3 = "0.
|
|
13
|
-
numpy = "0.
|
|
12
|
+
pyo3 = "^0.21.0"
|
|
13
|
+
numpy = "^0.21.0"
|
|
14
14
|
interpn = {version = "0.4.2", default_features = false}
|
|
15
15
|
#interpn = { path = "../interpn/interpn" }
|
|
16
16
|
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: interpn
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.2
|
|
4
4
|
Classifier: Programming Language :: Rust
|
|
5
5
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
6
6
|
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
7
|
-
Requires-Dist: numpy >=
|
|
7
|
+
Requires-Dist: numpy >=2
|
|
8
8
|
Requires-Dist: pydantic >=2.5.2
|
|
9
|
-
Requires-Dist: pytest >=
|
|
9
|
+
Requires-Dist: pytest >=8.0 ; extra == 'test'
|
|
10
10
|
Requires-Dist: coverage >=7.3.2 ; extra == 'test'
|
|
11
|
-
Requires-Dist: ruff >=0.
|
|
12
|
-
Requires-Dist: pyright
|
|
11
|
+
Requires-Dist: ruff >=0.4.10 ; extra == 'test'
|
|
12
|
+
Requires-Dist: pyright ==1.1.337 ; extra == 'test'
|
|
13
13
|
Requires-Dist: mktestdocs >=0.2.1 ; extra == 'test'
|
|
14
14
|
Requires-Dist: scipy >=1.11.4 ; extra == 'test'
|
|
15
15
|
Requires-Dist: matplotlib >=3.8 ; extra == 'test'
|
|
@@ -26,7 +26,7 @@ License-File: LICENSE-APACHE
|
|
|
26
26
|
License-File: LICENSE-MIT
|
|
27
27
|
Summary: N-dimensional interpolation/extrapolation methods
|
|
28
28
|
Author-email: jlogan03@gmail.com
|
|
29
|
-
Requires-Python: >=3.9, <3.
|
|
29
|
+
Requires-Python: >=3.9, <3.13
|
|
30
30
|
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
31
31
|
|
|
32
32
|
# interpn
|
|
@@ -39,12 +39,14 @@ Python bindings to the `interpn` Rust library for N-dimensional interpolation an
|
|
|
39
39
|
[Rust Docs (docs.rs)](https://docs.rs/interpn/latest/interpn/)
|
|
40
40
|
|
|
41
41
|
## Features
|
|
42
|
+
|
|
42
43
|
| Feature →<br>↓ Interpolant Method | Regular<br>Grid | Rectilinear<br>Grid | Json<br>Serialization |
|
|
43
44
|
|-----------------------------------|-----------------|---------------------|-----------------------|
|
|
44
45
|
| Linear | ✅ | ✅ | ✅ |
|
|
45
46
|
| Cubic | ✅ | ✅ | ✅ |
|
|
46
47
|
|
|
47
48
|
The methods provided here, while more limited in scope than scipy's, are
|
|
49
|
+
|
|
48
50
|
* significantly faster for higher dimensions (1-3 orders of magnitude under most conditions)
|
|
49
51
|
* use almost no RAM (and perform no heap allocations at all)
|
|
50
52
|
* produce significantly improved floating-point error (by 1-2 orders of magnitude)
|
|
@@ -131,9 +133,11 @@ assert np.all(out == out2)
|
|
|
131
133
|
|
|
132
134
|
|
|
133
135
|
# License
|
|
136
|
+
|
|
134
137
|
Licensed under either of
|
|
135
138
|
|
|
136
139
|
- Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
|
|
137
140
|
- MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)
|
|
138
141
|
|
|
139
142
|
at your option.
|
|
143
|
+
|
|
@@ -8,12 +8,14 @@ Python bindings to the `interpn` Rust library for N-dimensional interpolation an
|
|
|
8
8
|
[Rust Docs (docs.rs)](https://docs.rs/interpn/latest/interpn/)
|
|
9
9
|
|
|
10
10
|
## Features
|
|
11
|
+
|
|
11
12
|
| Feature →<br>↓ Interpolant Method | Regular<br>Grid | Rectilinear<br>Grid | Json<br>Serialization |
|
|
12
13
|
|-----------------------------------|-----------------|---------------------|-----------------------|
|
|
13
14
|
| Linear | ✅ | ✅ | ✅ |
|
|
14
15
|
| Cubic | ✅ | ✅ | ✅ |
|
|
15
16
|
|
|
16
17
|
The methods provided here, while more limited in scope than scipy's, are
|
|
18
|
+
|
|
17
19
|
* significantly faster for higher dimensions (1-3 orders of magnitude under most conditions)
|
|
18
20
|
* use almost no RAM (and perform no heap allocations at all)
|
|
19
21
|
* produce significantly improved floating-point error (by 1-2 orders of magnitude)
|
|
@@ -100,9 +102,10 @@ assert np.all(out == out2)
|
|
|
100
102
|
|
|
101
103
|
|
|
102
104
|
# License
|
|
105
|
+
|
|
103
106
|
Licensed under either of
|
|
104
107
|
|
|
105
108
|
- Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
|
|
106
109
|
- MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)
|
|
107
110
|
|
|
108
|
-
at your option.
|
|
111
|
+
at your option.
|
|
@@ -19,6 +19,7 @@ effective when examining small numbers of observation points. See the [performan
|
|
|
19
19
|
| Cubic | ✅ | ✅ | ✅ |
|
|
20
20
|
|
|
21
21
|
The methods provided here, while more limited in scope than scipy's, are
|
|
22
|
+
|
|
22
23
|
* significantly faster for higher dimensions (1-3 orders of magnitude under most conditions)
|
|
23
24
|
* use almost no RAM (and perform no heap allocations at all)
|
|
24
25
|
* produce significantly improved floating-point error (by 1-2 orders of magnitude)
|
|
@@ -102,3 +103,12 @@ out2 = roundtrip_interpolator.eval(obs)
|
|
|
102
103
|
# Check result from roundtrip serialized/deserialized interpolator
|
|
103
104
|
assert np.all(out == out2)
|
|
104
105
|
```
|
|
106
|
+
|
|
107
|
+
# License
|
|
108
|
+
|
|
109
|
+
Licensed under either of
|
|
110
|
+
|
|
111
|
+
- Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
|
|
112
|
+
- MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)
|
|
113
|
+
|
|
114
|
+
at your option.
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
[build-system]
|
|
2
|
-
requires = ["maturin>=1.
|
|
2
|
+
requires = ["maturin>=1.7,<2.0"]
|
|
3
3
|
build-backend = "maturin"
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "interpn"
|
|
7
|
-
version = "0.2.
|
|
7
|
+
version = "0.2.2"
|
|
8
8
|
repository = "https://github.com/jlogan03/interpnpy"
|
|
9
9
|
documentation = "https://interpn.readthedocs.io/"
|
|
10
10
|
description = "N-dimensional interpolation/extrapolation methods"
|
|
11
11
|
authors = [{ author = "James Logan", email = "jlogan03@gmail.com" }]
|
|
12
|
-
requires-python = ">=3.9, <3.
|
|
12
|
+
requires-python = ">=3.9, <3.13"
|
|
13
13
|
classifiers = [
|
|
14
14
|
"Programming Language :: Rust",
|
|
15
15
|
"Programming Language :: Python :: Implementation :: CPython",
|
|
@@ -17,16 +17,16 @@ classifiers = [
|
|
|
17
17
|
]
|
|
18
18
|
dynamic = ["version"]
|
|
19
19
|
dependencies = [
|
|
20
|
-
"numpy >=
|
|
20
|
+
"numpy >= 2",
|
|
21
21
|
"pydantic >= 2.5.2",
|
|
22
22
|
]
|
|
23
23
|
|
|
24
24
|
[project.optional-dependencies]
|
|
25
25
|
test = [
|
|
26
|
-
"pytest >=
|
|
26
|
+
"pytest >= 8.0",
|
|
27
27
|
"coverage >= 7.3.2",
|
|
28
|
-
"ruff >= 0.
|
|
29
|
-
"pyright
|
|
28
|
+
"ruff >= 0.4.10",
|
|
29
|
+
"pyright == 1.1.337",
|
|
30
30
|
"mktestdocs >= 0.2.1",
|
|
31
31
|
"scipy >= 1.11.4",
|
|
32
32
|
"matplotlib >= 3.8",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|