ansys-speos-core 0.4.0__tar.gz → 0.5.1__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 (45) hide show
  1. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/PKG-INFO +11 -11
  2. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/pyproject.toml +25 -11
  3. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/__init__.py +2 -1
  4. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/body.py +9 -0
  5. ansys_speos_core-0.5.1/src/ansys/speos/core/bsdf.py +1131 -0
  6. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/face.py +10 -0
  7. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/generic/constants.py +8 -4
  8. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/generic/general_methods.py +12 -9
  9. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/generic/visualization_methods.py +9 -9
  10. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/client.py +14 -2
  11. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/launcher.py +14 -4
  12. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/opt_prop.py +18 -3
  13. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/part.py +9 -0
  14. ansys_speos_core-0.5.1/src/ansys/speos/core/py.typed +0 -0
  15. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/sensor.py +17 -8
  16. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/source.py +23 -6
  17. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/speos.py +11 -1
  18. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/LICENSE +0 -0
  19. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/README.rst +0 -0
  20. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/geo_ref.py +0 -0
  21. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/intensity.py +0 -0
  22. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/__init__.py +0 -0
  23. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/body.py +0 -0
  24. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/crud.py +0 -0
  25. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/face.py +0 -0
  26. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/intensity_template.py +0 -0
  27. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/job.py +0 -0
  28. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/part.py +0 -0
  29. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/proto_message_utils.py +0 -0
  30. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/scene.py +0 -0
  31. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/sensor_template.py +0 -0
  32. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/simulation_template.py +0 -0
  33. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/sop_template.py +0 -0
  34. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/source_template.py +0 -0
  35. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/spectrum.py +0 -0
  36. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/kernel/vop_template.py +0 -0
  37. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/logger.py +0 -0
  38. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/lxp.py +0 -0
  39. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/project.py +0 -0
  40. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/proto_message_utils.py +0 -0
  41. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/simulation.py +0 -0
  42. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/spectrum.py +0 -0
  43. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/workflow/__init__.py +0 -0
  44. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/workflow/combine_speos.py +0 -0
  45. {ansys_speos_core-0.4.0 → ansys_speos_core-0.5.1}/src/ansys/speos/core/workflow/open_result.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ansys-speos-core
3
- Version: 0.4.0
3
+ Version: 0.5.1
4
4
  Summary: A Python wrapper for Ansys Speos
5
5
  Author-email: "ANSYS, Inc." <pyansys.core@ansys.com>
6
6
  Maintainer-email: "ANSYS, Inc." <pyansys.core@ansys.com>
@@ -20,14 +20,14 @@ Classifier: Topic :: Software Development :: Libraries
20
20
  Classifier: Topic :: Scientific/Engineering :: Physics
21
21
  Classifier: Topic :: Scientific/Engineering :: Information Analysis
22
22
  License-File: LICENSE
23
- Requires-Dist: protobuf>=3.20,<6
23
+ Requires-Dist: protobuf>=3.20,<7
24
24
  Requires-Dist: grpcio>=1.50.0,<1.71
25
25
  Requires-Dist: grpcio-health-checking>=1.45.0,<1.68
26
26
  Requires-Dist: ansys-api-speos==0.14.2
27
27
  Requires-Dist: ansys-tools-path>=0.3.1
28
28
  Requires-Dist: numpy>=1.20.3,<3
29
29
  Requires-Dist: comtypes>=1.4,<1.5
30
- Requires-Dist: ansys-sphinx-theme==1.4.2 ; extra == "doc"
30
+ Requires-Dist: ansys-sphinx-theme==1.4.4 ; extra == "doc"
31
31
  Requires-Dist: numpydoc==1.8.0 ; extra == "doc"
32
32
  Requires-Dist: Sphinx==8.1.3 ; extra == "doc"
33
33
  Requires-Dist: sphinx-copybutton==0.5.2 ; extra == "doc"
@@ -37,23 +37,23 @@ Requires-Dist: sphinx-jinja==2.0.2 ; extra == "doc"
37
37
  Requires-Dist: sphinxcontrib-mermaid==1.0.0 ; extra == "doc"
38
38
  Requires-Dist: myst-parser==4.0.1 ; extra == "doc"
39
39
  Requires-Dist: nbsphinx==0.9.7 ; extra == "doc"
40
- Requires-Dist: jupytext==1.16.7 ; extra == "doc"
41
- Requires-Dist: jupyterlab==4.3.6 ; extra == "doc"
42
- Requires-Dist: jupyter-server==2.15.0 ; extra == "doc"
40
+ Requires-Dist: jupytext==1.17.1 ; extra == "doc"
41
+ Requires-Dist: jupyterlab==4.4.2 ; extra == "doc"
42
+ Requires-Dist: jupyter-server==2.16.0 ; extra == "doc"
43
43
  Requires-Dist: nbconvert==7.16.6 ; extra == "doc"
44
- Requires-Dist: pyvista[jupyter]>=0.43,<0.45 ; extra == "doc"
44
+ Requires-Dist: pyvista[jupyter]>=0.43,<0.46 ; extra == "doc"
45
45
  Requires-Dist: ansys-tools-visualization-interface>=0.8.3 ; extra == "doc"
46
- Requires-Dist: pyvista>=0.40.0,<0.45 ; extra == "graphics"
46
+ Requires-Dist: pyvista>=0.40.0,<0.46 ; extra == "graphics"
47
47
  Requires-Dist: ansys-tools-visualization-interface>=0.8.3 ; extra == "graphics"
48
48
  Requires-Dist: matplotlib ; extra == "jupyter"
49
49
  Requires-Dist: jupyterlab>=3 ; extra == "jupyter"
50
50
  Requires-Dist: ipywidgets ; extra == "jupyter"
51
- Requires-Dist: pyvista[jupyter]>=0.43,<0.45 ; extra == "jupyter"
51
+ Requires-Dist: pyvista[jupyter]>=0.43,<0.46 ; extra == "jupyter"
52
52
  Requires-Dist: ansys-tools-visualization-interface>=0.8.3 ; extra == "jupyter"
53
- Requires-Dist: notebook==7.3.3 ; extra == "jupyter"
53
+ Requires-Dist: notebook==7.4.2 ; extra == "jupyter"
54
54
  Requires-Dist: psutil==7.0.0 ; extra == "tests"
55
55
  Requires-Dist: pytest==8.3.5 ; extra == "tests"
56
- Requires-Dist: pyvista>=0.40.0,<0.45 ; extra == "tests"
56
+ Requires-Dist: pyvista>=0.40.0,<0.46 ; extra == "tests"
57
57
  Requires-Dist: ansys-tools-visualization-interface>=0.8.3 ; extra == "tests"
58
58
  Requires-Dist: ansys-platform-instancemanagement>=1.0.3 ; extra == "tests"
59
59
  Requires-Dist: pytest-cov==6.1.1 ; extra == "tests"
@@ -4,7 +4,7 @@ build-backend = "flit_core.buildapi"
4
4
 
5
5
  [project]
6
6
  name = "ansys-speos-core"
7
- version = "0.4.0"
7
+ version = "0.5.1"
8
8
  description = "A Python wrapper for Ansys Speos"
9
9
  readme = "README.rst"
10
10
  requires-python = ">=3.10"
@@ -27,7 +27,7 @@ classifiers=[
27
27
  "Topic :: Scientific/Engineering :: Information Analysis",
28
28
  ]
29
29
  dependencies=[
30
- "protobuf>=3.20,<6",
30
+ "protobuf>=3.20,<7",
31
31
  "grpcio>=1.50.0,<1.71",
32
32
  "grpcio-health-checking>=1.45.0,<1.68",
33
33
  "ansys-api-speos==0.14.2",
@@ -38,13 +38,13 @@ dependencies=[
38
38
 
39
39
  [project.optional-dependencies]
40
40
  graphics = [
41
- "pyvista>=0.40.0,<0.45",
41
+ "pyvista>=0.40.0,<0.46",
42
42
  "ansys-tools-visualization-interface>=0.8.3",
43
43
  ]
44
44
  tests = [
45
45
  "psutil==7.0.0",
46
46
  "pytest==8.3.5",
47
- "pyvista>=0.40.0,<0.45",
47
+ "pyvista>=0.40.0,<0.46",
48
48
  "ansys-tools-visualization-interface>=0.8.3",
49
49
  "ansys-platform-instancemanagement>=1.0.3",
50
50
  "pytest-cov==6.1.1",
@@ -53,12 +53,12 @@ jupyter = [
53
53
  "matplotlib",
54
54
  "jupyterlab>=3",
55
55
  "ipywidgets",
56
- "pyvista[jupyter]>=0.43,<0.45",
56
+ "pyvista[jupyter]>=0.43,<0.46",
57
57
  "ansys-tools-visualization-interface>=0.8.3",
58
- "notebook==7.3.3",
58
+ "notebook==7.4.2",
59
59
  ]
60
60
  doc = [
61
- "ansys-sphinx-theme==1.4.2",
61
+ "ansys-sphinx-theme==1.4.4",
62
62
  "numpydoc==1.8.0",
63
63
  "Sphinx==8.1.3",
64
64
  "sphinx-copybutton==0.5.2",
@@ -68,11 +68,11 @@ doc = [
68
68
  "sphinxcontrib-mermaid==1.0.0",
69
69
  "myst-parser==4.0.1",
70
70
  "nbsphinx==0.9.7",
71
- "jupytext==1.16.7",
72
- "jupyterlab==4.3.6",
73
- "jupyter-server==2.15.0",
71
+ "jupytext==1.17.1",
72
+ "jupyterlab==4.4.2",
73
+ "jupyter-server==2.16.0",
74
74
  "nbconvert==7.16.6",
75
- "pyvista[jupyter]>=0.43,<0.45",
75
+ "pyvista[jupyter]>=0.43,<0.46",
76
76
  "ansys-tools-visualization-interface>=0.8.3",
77
77
  ]
78
78
 
@@ -87,6 +87,9 @@ Changelog = "https://github.com/ansys/pyspeos/blob/main/doc/source/changelog.rst
87
87
  [tool.flit.module]
88
88
  name = "ansys.speos.core"
89
89
 
90
+ [tool.flit.sdist]
91
+ include = ["ansys/speos/core/py.typed"]
92
+
90
93
  [tool.ruff]
91
94
  line-length = 100
92
95
  fix = true
@@ -145,6 +148,17 @@ minversion = "7.1"
145
148
  addopts = "-vvv --color=yes -ra --durations=25 --cov=ansys.speos --cov-report html:.cov/html --cov-report xml:.cov/xml --cov-report term"
146
149
  testpaths = ["tests"]
147
150
 
151
+ [tool.mypy]
152
+ python_version = "3.10"
153
+ disable_error_code = "type-abstract"
154
+ show_error_context = true
155
+ pretty = true
156
+
157
+ [[tool.mypy.overrides]]
158
+ module = [
159
+ "ansys.tools.visualization_interface",
160
+ ]
161
+
148
162
  [tool.towncrier]
149
163
  package = "ansys.speos.core"
150
164
  directory = "doc/changelog.d"
@@ -28,13 +28,14 @@ It gathers functionaties and tools of these APIs.
28
28
  try:
29
29
  import importlib.metadata as importlib_metadata
30
30
  except ModuleNotFoundError: # pragma: no cover
31
- import importlib_metadata
31
+ import importlib_metadata # type: ignore[no-redef]
32
32
 
33
33
  # Version
34
34
  __version__ = importlib_metadata.version("ansys-speos-core")
35
35
 
36
36
 
37
37
  from ansys.speos.core.body import Body
38
+ import ansys.speos.core.bsdf as bsdf
38
39
  from ansys.speos.core.face import Face
39
40
  from ansys.speos.core.geo_ref import GeoRef
40
41
  from ansys.speos.core.intensity import Intensity
@@ -29,6 +29,7 @@ from typing import List, Mapping, Optional, Union
29
29
 
30
30
  from ansys.speos.core import proto_message_utils
31
31
  import ansys.speos.core.face as face
32
+ from ansys.speos.core.geo_ref import GeoRef
32
33
  from ansys.speos.core.kernel.body import ProtoBody
33
34
  from ansys.speos.core.kernel.client import SpeosClient
34
35
  import ansys.speos.core.part as part
@@ -81,6 +82,14 @@ class Body:
81
82
 
82
83
  self._geom_features = []
83
84
 
85
+ @property
86
+ def geo_path(self) -> GeoRef:
87
+ """Geometry path to be used within other speos objects."""
88
+ geo_paths = [self._name]
89
+ if isinstance(self._parent_part, part.Part.SubPart):
90
+ geo_paths.insert(0, self._parent_part.geo_path.metadata["GeoPath"])
91
+ return GeoRef.from_native_link("/".join(geo_paths))
92
+
84
93
  def create_face(
85
94
  self,
86
95
  name: str,