lsdo-function-spaces 1.0.0__tar.gz → 1.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.
- {lsdo_function_spaces-1.0.0/lsdo_function_spaces.egg-info → lsdo_function_spaces-1.1.0}/PKG-INFO +7 -3
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/README.md +6 -2
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/__init__.py +18 -1
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/function.py +258 -236
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/function_set.py +89 -38
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/b_spline_space.py +2 -2
- lsdo_function_spaces-1.1.0/lsdo_function_spaces/core/spaces/non_cython_bsplines/b_spline_csdl_custom_ops_v2.py +352 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/non_cython_bsplines/b_spline_patch_projection.py +4 -6
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/utils/file_io.py +34 -14
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/utils/plotting_functions.py +2 -2
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0/lsdo_function_spaces.egg-info}/PKG-INFO +7 -3
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces.egg-info/SOURCES.txt +2 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/pyproject.toml +1 -1
- lsdo_function_spaces-1.1.0/release_notes.md +77 -0
- lsdo_function_spaces-1.1.0/tests/conftest.py +46 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_file_io.py +36 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_projection.py +25 -0
- lsdo_function_spaces-1.0.0/release_notes.md +0 -55
- lsdo_function_spaces-1.0.0/tests/conftest.py +0 -23
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/LICENSE.txt +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/MANIFEST.in +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/__init__.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/function_set_space.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/function_space.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/operations/__init__.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/operations/basic_ops.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/operations/operations.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/optimization.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/__init__.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/conditional_space.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/constant_space.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/idw_space.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/non_cython_bsplines/__init__.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/non_cython_bsplines/b_spline_csdl_custom_ops.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/non_cython_bsplines/b_spline_patch_projection_non_differentiable.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/non_cython_bsplines/b_spline_patch_projection_optimized.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/non_cython_bsplines/b_spline_space_new.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/non_cython_bsplines/compute_basis_matrix_jax.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/non_cython_bsplines/compute_basis_matrix_jax_factory.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/non_cython_bsplines/compute_basis_matrix_jax_stencil.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/non_cython_bsplines/compute_basis_matrix_numpy.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/non_cython_bsplines/compute_basis_matrix_numpy_factory.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/operation_space.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/polynomial_space.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/rbf_space.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/tri_space.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/utils/__init__.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/utils/internal_utilities.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/utils/utility_functions.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces.egg-info/dependency_links.txt +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces.egg-info/requires.txt +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces.egg-info/top_level.txt +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/setup.cfg +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_b_spline_space.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_backward_compatibility.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_function.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_function_set.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_function_set_space.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_jax_bsplines.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_optimization.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_optimized_projection_and_factories.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_plotting.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_spaces.py +0 -0
- {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_utilities.py +0 -0
{lsdo_function_spaces-1.0.0/lsdo_function_spaces.egg-info → lsdo_function_spaces-1.1.0}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: lsdo_function_spaces
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.1.0
|
|
4
4
|
Summary: A package for functional representation and function spaces in multidisciplinary design optimization.
|
|
5
5
|
Author-email: Andrew Fletcher <afletcher168@gmail.com>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -49,6 +49,8 @@ Dynamic: license-file
|
|
|
49
49
|
|
|
50
50
|
**lsdo_function_spaces** is a pure-Python library for constructing continuous, high-dimensional, differentiable function representations (B-splines, tensor-product splines, scattered data spaces, and multivariate polynomials) tailored for gradient-based Multidisciplinary Design Optimization (MDO) and scientific computing.
|
|
51
51
|
|
|
52
|
+
> 📖 **Online Documentation**: [https://lsdo-function-spaces.readthedocs.io](https://lsdo-function-spaces.readthedocs.io/en/latest/)
|
|
53
|
+
|
|
52
54
|
Developed by the [Large-Scale Design Optimization (LSDO) Lab](https://lsdo.eng.ucsd.edu/) at the University of California, San Diego.
|
|
53
55
|
|
|
54
56
|
---
|
|
@@ -175,8 +177,10 @@ xvfb-run --auto-servernum pytest -v tests/
|
|
|
175
177
|
---
|
|
176
178
|
|
|
177
179
|
## Documentation
|
|
178
|
-
|
|
179
|
-
|
|
180
|
+
|
|
181
|
+
Official documentation, API references, tutorials, and mathematical foundations are hosted online at **[lsdo-function-spaces.readthedocs.io](https://lsdo-function-spaces.readthedocs.io/en/latest/)**.
|
|
182
|
+
|
|
183
|
+
To build the HTML documentation locally:
|
|
180
184
|
```sh
|
|
181
185
|
sphinx-build -b html docs docs/_build/html -q -W
|
|
182
186
|
```
|
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
|
|
8
8
|
**lsdo_function_spaces** is a pure-Python library for constructing continuous, high-dimensional, differentiable function representations (B-splines, tensor-product splines, scattered data spaces, and multivariate polynomials) tailored for gradient-based Multidisciplinary Design Optimization (MDO) and scientific computing.
|
|
9
9
|
|
|
10
|
+
> 📖 **Online Documentation**: [https://lsdo-function-spaces.readthedocs.io](https://lsdo-function-spaces.readthedocs.io/en/latest/)
|
|
11
|
+
|
|
10
12
|
Developed by the [Large-Scale Design Optimization (LSDO) Lab](https://lsdo.eng.ucsd.edu/) at the University of California, San Diego.
|
|
11
13
|
|
|
12
14
|
---
|
|
@@ -133,8 +135,10 @@ xvfb-run --auto-servernum pytest -v tests/
|
|
|
133
135
|
---
|
|
134
136
|
|
|
135
137
|
## Documentation
|
|
136
|
-
|
|
137
|
-
|
|
138
|
+
|
|
139
|
+
Official documentation, API references, tutorials, and mathematical foundations are hosted online at **[lsdo-function-spaces.readthedocs.io](https://lsdo-function-spaces.readthedocs.io/en/latest/)**.
|
|
140
|
+
|
|
141
|
+
To build the HTML documentation locally:
|
|
138
142
|
```sh
|
|
139
143
|
sphinx-build -b html docs docs/_build/html -q -W
|
|
140
144
|
```
|
|
@@ -2,9 +2,26 @@
|
|
|
2
2
|
|
|
3
3
|
import multiprocessing
|
|
4
4
|
|
|
5
|
-
__version__ = "1.
|
|
5
|
+
__version__ = "1.1.0"
|
|
6
6
|
num_workers = multiprocessing.cpu_count()
|
|
7
7
|
|
|
8
|
+
# NumPy 2.x compatibility patch for CSDL_alpha SetVarIndex
|
|
9
|
+
try:
|
|
10
|
+
import numpy as _np
|
|
11
|
+
from csdl_alpha.src.operations.set_get.setindex import SetVarIndex as _SetVarIndex
|
|
12
|
+
|
|
13
|
+
def _safe_compute_inline(self, x, y, *slice_args):
|
|
14
|
+
x_updated = x.copy()
|
|
15
|
+
if getattr(y, "size", None) == 1:
|
|
16
|
+
x_updated[self.slice.evaluate(*slice_args)] = y.item() if isinstance(y, _np.ndarray) else y
|
|
17
|
+
else:
|
|
18
|
+
x_updated[self.slice.evaluate(*slice_args)] = y
|
|
19
|
+
return x_updated
|
|
20
|
+
|
|
21
|
+
_SetVarIndex.compute_inline = _safe_compute_inline
|
|
22
|
+
except Exception:
|
|
23
|
+
pass
|
|
24
|
+
|
|
8
25
|
# Core representations
|
|
9
26
|
from .core.function import Function
|
|
10
27
|
from .core.function_set import FunctionSet
|