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.
Files changed (64) hide show
  1. {lsdo_function_spaces-1.0.0/lsdo_function_spaces.egg-info → lsdo_function_spaces-1.1.0}/PKG-INFO +7 -3
  2. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/README.md +6 -2
  3. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/__init__.py +18 -1
  4. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/function.py +258 -236
  5. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/function_set.py +89 -38
  6. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/b_spline_space.py +2 -2
  7. lsdo_function_spaces-1.1.0/lsdo_function_spaces/core/spaces/non_cython_bsplines/b_spline_csdl_custom_ops_v2.py +352 -0
  8. {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
  9. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/utils/file_io.py +34 -14
  10. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/utils/plotting_functions.py +2 -2
  11. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0/lsdo_function_spaces.egg-info}/PKG-INFO +7 -3
  12. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces.egg-info/SOURCES.txt +2 -0
  13. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/pyproject.toml +1 -1
  14. lsdo_function_spaces-1.1.0/release_notes.md +77 -0
  15. lsdo_function_spaces-1.1.0/tests/conftest.py +46 -0
  16. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_file_io.py +36 -0
  17. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_projection.py +25 -0
  18. lsdo_function_spaces-1.0.0/release_notes.md +0 -55
  19. lsdo_function_spaces-1.0.0/tests/conftest.py +0 -23
  20. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/LICENSE.txt +0 -0
  21. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/MANIFEST.in +0 -0
  22. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/__init__.py +0 -0
  23. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/function_set_space.py +0 -0
  24. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/function_space.py +0 -0
  25. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/operations/__init__.py +0 -0
  26. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/operations/basic_ops.py +0 -0
  27. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/operations/operations.py +0 -0
  28. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/optimization.py +0 -0
  29. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/__init__.py +0 -0
  30. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/conditional_space.py +0 -0
  31. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/constant_space.py +0 -0
  32. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/idw_space.py +0 -0
  33. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/non_cython_bsplines/__init__.py +0 -0
  34. {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
  35. {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
  36. {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
  37. {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
  38. {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
  39. {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
  40. {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
  41. {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
  42. {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
  43. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/operation_space.py +0 -0
  44. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/polynomial_space.py +0 -0
  45. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/rbf_space.py +0 -0
  46. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/core/spaces/tri_space.py +0 -0
  47. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/utils/__init__.py +0 -0
  48. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/utils/internal_utilities.py +0 -0
  49. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces/utils/utility_functions.py +0 -0
  50. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces.egg-info/dependency_links.txt +0 -0
  51. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces.egg-info/requires.txt +0 -0
  52. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/lsdo_function_spaces.egg-info/top_level.txt +0 -0
  53. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/setup.cfg +0 -0
  54. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_b_spline_space.py +0 -0
  55. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_backward_compatibility.py +0 -0
  56. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_function.py +0 -0
  57. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_function_set.py +0 -0
  58. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_function_set_space.py +0 -0
  59. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_jax_bsplines.py +0 -0
  60. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_optimization.py +0 -0
  61. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_optimized_projection_and_factories.py +0 -0
  62. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_plotting.py +0 -0
  63. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_spaces.py +0 -0
  64. {lsdo_function_spaces-1.0.0 → lsdo_function_spaces-1.1.0}/tests/test_utilities.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lsdo_function_spaces
3
- Version: 1.0.0
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
- Build the HTML documentation locally:
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
- Build the HTML documentation locally:
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.0.0"
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