ansys-mechanical-core 0.11.8__py3-none-any.whl → 0.11.9__py3-none-any.whl
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.
- ansys/mechanical/core/embedding/app.py +45 -7
- ansys/mechanical/core/embedding/background.py +5 -5
- ansys/mechanical/core/embedding/ui.py +6 -3
- ansys/mechanical/core/examples/downloads.py +9 -4
- ansys/mechanical/core/ide_config.py +58 -10
- ansys/mechanical/core/launcher.py +8 -8
- ansys/mechanical/core/mechanical.py +0 -1
- ansys/mechanical/core/pool.py +3 -3
- {ansys_mechanical_core-0.11.8.dist-info → ansys_mechanical_core-0.11.9.dist-info}/METADATA +9 -7
- {ansys_mechanical_core-0.11.8.dist-info → ansys_mechanical_core-0.11.9.dist-info}/RECORD +13 -13
- {ansys_mechanical_core-0.11.8.dist-info → ansys_mechanical_core-0.11.9.dist-info}/LICENSE +0 -0
- {ansys_mechanical_core-0.11.8.dist-info → ansys_mechanical_core-0.11.9.dist-info}/WHEEL +0 -0
- {ansys_mechanical_core-0.11.8.dist-info → ansys_mechanical_core-0.11.9.dist-info}/entry_points.txt +0 -0
@@ -21,8 +21,11 @@
|
|
21
21
|
# SOFTWARE.
|
22
22
|
|
23
23
|
"""Main application class for embedded Mechanical."""
|
24
|
+
from __future__ import annotations
|
25
|
+
|
24
26
|
import atexit
|
25
27
|
import os
|
28
|
+
import shutil
|
26
29
|
import typing
|
27
30
|
import warnings
|
28
31
|
|
@@ -34,13 +37,17 @@ from ansys.mechanical.core.embedding.poster import Poster
|
|
34
37
|
from ansys.mechanical.core.embedding.ui import launch_ui
|
35
38
|
from ansys.mechanical.core.embedding.warnings import connect_warnings, disconnect_warnings
|
36
39
|
|
40
|
+
if typing.TYPE_CHECKING:
|
41
|
+
# Make sure to run ``ansys-mechanical-ideconfig`` to add the autocomplete settings to VS Code
|
42
|
+
# Run ``ansys-mechanical-ideconfig --help`` for more information
|
43
|
+
import Ansys # pragma: no cover
|
44
|
+
|
37
45
|
try:
|
38
46
|
import ansys.tools.visualization_interface # noqa: F401
|
39
47
|
|
40
48
|
HAS_ANSYS_VIZ = True
|
41
49
|
"""Whether or not PyVista exists."""
|
42
50
|
except:
|
43
|
-
|
44
51
|
HAS_ANSYS_VIZ = False
|
45
52
|
|
46
53
|
|
@@ -188,8 +195,39 @@ class App:
|
|
188
195
|
else:
|
189
196
|
self.DataModel.Project.Save()
|
190
197
|
|
191
|
-
def save_as(self, path):
|
192
|
-
"""Save the project as.
|
198
|
+
def save_as(self, path: str, overwrite: bool = False):
|
199
|
+
"""Save the project as a new file.
|
200
|
+
|
201
|
+
If the `overwrite` flag is enabled, the current saved file is temporarily moved
|
202
|
+
to a backup location. The new file is then saved in its place. If the process fails,
|
203
|
+
the backup file is restored to its original location.
|
204
|
+
|
205
|
+
Parameters
|
206
|
+
----------
|
207
|
+
path: int, optional
|
208
|
+
The path where file needs to be saved.
|
209
|
+
overwrite: bool, optional
|
210
|
+
Whether the file should be overwritten if it already exists (default is False).
|
211
|
+
"""
|
212
|
+
if not os.path.exists(path):
|
213
|
+
self.DataModel.Project.SaveAs(path)
|
214
|
+
return
|
215
|
+
|
216
|
+
if not overwrite:
|
217
|
+
raise Exception(
|
218
|
+
f"File already exists in {path}, Use ``overwrite`` flag to "
|
219
|
+
"replace the existing file."
|
220
|
+
)
|
221
|
+
|
222
|
+
file_name = os.path.basename(path)
|
223
|
+
file_dir = os.path.dirname(path)
|
224
|
+
associated_dir = os.path.join(file_dir, os.path.splitext(file_name)[0] + "_Mech_Files")
|
225
|
+
|
226
|
+
# Remove existing files and associated folder
|
227
|
+
os.remove(path)
|
228
|
+
if os.path.exists(associated_dir):
|
229
|
+
shutil.rmtree(associated_dir)
|
230
|
+
# Save the new file
|
193
231
|
self.DataModel.Project.SaveAs(path)
|
194
232
|
|
195
233
|
def launch_gui(self, delete_tmp_on_close: bool = True, dry_run: bool = False):
|
@@ -292,22 +330,22 @@ class App:
|
|
292
330
|
return GetterWrapper(self._app, lambda app: app.DataModel)
|
293
331
|
|
294
332
|
@property
|
295
|
-
def ExtAPI(self):
|
333
|
+
def ExtAPI(self) -> Ansys.ACT.Interfaces.Mechanical.IMechanicalExtAPI:
|
296
334
|
"""Return the ExtAPI object."""
|
297
335
|
return GetterWrapper(self._app, lambda app: app.ExtAPI)
|
298
336
|
|
299
337
|
@property
|
300
|
-
def Tree(self):
|
338
|
+
def Tree(self) -> Ansys.ACT.Automation.Mechanical.Tree:
|
301
339
|
"""Return the Tree object."""
|
302
340
|
return GetterWrapper(self._app, lambda app: app.DataModel.Tree)
|
303
341
|
|
304
342
|
@property
|
305
|
-
def Model(self):
|
343
|
+
def Model(self) -> Ansys.ACT.Automation.Mechanical.Model:
|
306
344
|
"""Return the Model object."""
|
307
345
|
return GetterWrapper(self._app, lambda app: app.DataModel.Project.Model)
|
308
346
|
|
309
347
|
@property
|
310
|
-
def Graphics(self):
|
348
|
+
def Graphics(self) -> Ansys.ACT.Common.Graphics.MechanicalGraphicsWrapper:
|
311
349
|
"""Return the Graphics object."""
|
312
350
|
return GetterWrapper(self._app, lambda app: app.ExtAPI.Graphics)
|
313
351
|
|
@@ -59,9 +59,8 @@ class BackgroundApp:
|
|
59
59
|
time.sleep(0.05)
|
60
60
|
continue
|
61
61
|
else:
|
62
|
-
|
63
|
-
|
64
|
-
), "Cannot initialize a BackgroundApp once it has been stopped!"
|
62
|
+
if BackgroundApp.__stopped:
|
63
|
+
raise RuntimeError("Cannot initialize a BackgroundApp once it has been stopped!")
|
65
64
|
|
66
65
|
def new():
|
67
66
|
BackgroundApp.__app.new()
|
@@ -80,7 +79,8 @@ class BackgroundApp:
|
|
80
79
|
|
81
80
|
def post(self, callable: typing.Callable):
|
82
81
|
"""Post callable method to the background app thread."""
|
83
|
-
|
82
|
+
if BackgroundApp.__stopped:
|
83
|
+
raise RuntimeError("Cannot use BackgroundApp after stopping it.")
|
84
84
|
return BackgroundApp.__poster.post(callable)
|
85
85
|
|
86
86
|
def stop(self) -> None:
|
@@ -102,5 +102,5 @@ class BackgroundApp:
|
|
102
102
|
try:
|
103
103
|
utils.sleep(40)
|
104
104
|
except:
|
105
|
-
|
105
|
+
raise Exception("BackgroundApp cannot sleep.") # pragma: no cover
|
106
106
|
BackgroundApp.__stopped = True
|
@@ -22,7 +22,10 @@
|
|
22
22
|
"""Run Mechanical UI from Python."""
|
23
23
|
|
24
24
|
from pathlib import Path
|
25
|
-
|
25
|
+
|
26
|
+
# Subprocess is needed to launch the GUI and clean up the process on close.
|
27
|
+
# Excluding bandit check.
|
28
|
+
from subprocess import Popen # nosec: B404
|
26
29
|
import sys
|
27
30
|
import tempfile
|
28
31
|
import typing
|
@@ -113,7 +116,7 @@ class UILauncher:
|
|
113
116
|
if not self._dry_run:
|
114
117
|
# The subprocess that uses ansys-mechanical to launch the GUI of the temporary
|
115
118
|
# mechdb file
|
116
|
-
process = Popen(args)
|
119
|
+
process = Popen(args) # nosec: B603 # pragma: no cover
|
117
120
|
return process
|
118
121
|
else:
|
119
122
|
# Return a string containing the args
|
@@ -136,7 +139,7 @@ class UILauncher:
|
|
136
139
|
# Open a subprocess to remove the temporary mechdb file and folder when the process ends
|
137
140
|
Popen(
|
138
141
|
[sys.executable, cleanup_script, str(process.pid), temp_mechdb_path]
|
139
|
-
) # pragma: no cover
|
142
|
+
) # pragma: no cover # nosec: B603
|
140
143
|
|
141
144
|
|
142
145
|
def _is_saved(app: "ansys.mechanical.core.embedding.App") -> bool:
|
@@ -26,7 +26,8 @@ import os
|
|
26
26
|
import shutil
|
27
27
|
from typing import Optional
|
28
28
|
from urllib.parse import urljoin
|
29
|
-
|
29
|
+
|
30
|
+
import requests
|
30
31
|
|
31
32
|
import ansys.mechanical.core as pymechanical
|
32
33
|
|
@@ -53,9 +54,13 @@ def _get_filepath_on_default_server(filename: str, *directory: str):
|
|
53
54
|
return joiner(server, filename)
|
54
55
|
|
55
56
|
|
56
|
-
def _retrieve_url(url, dest):
|
57
|
-
|
58
|
-
|
57
|
+
def _retrieve_url(url: str, dest: str) -> str:
|
58
|
+
with requests.get(url, stream=True, timeout=10) as r:
|
59
|
+
r.raise_for_status()
|
60
|
+
with open(dest, "wb") as f:
|
61
|
+
for chunk in r.iter_content(chunk_size=4096):
|
62
|
+
f.write(chunk)
|
63
|
+
return dest
|
59
64
|
|
60
65
|
|
61
66
|
def _retrieve_data(url: str, filename: str, dest: str = None, force: bool = False):
|
@@ -25,13 +25,57 @@
|
|
25
25
|
import json
|
26
26
|
import os
|
27
27
|
from pathlib import Path
|
28
|
+
import re
|
29
|
+
import site
|
28
30
|
import sys
|
29
|
-
import sysconfig
|
30
31
|
|
31
32
|
import ansys.tools.path as atp
|
32
33
|
import click
|
33
34
|
|
34
35
|
|
36
|
+
def get_stubs_location():
|
37
|
+
"""Find the ansys-mechanical-stubs installation location in site-packages.
|
38
|
+
|
39
|
+
Returns
|
40
|
+
-------
|
41
|
+
pathlib.Path
|
42
|
+
The path to the ansys-mechanical-stubs installation in site-packages.
|
43
|
+
"""
|
44
|
+
site_packages = site.getsitepackages()
|
45
|
+
prefix_path = sys.prefix.replace("\\", "\\\\")
|
46
|
+
site_packages_regex = re.compile(f"{prefix_path}.*site-packages$")
|
47
|
+
site_packages_paths = list(filter(site_packages_regex.match, site_packages))
|
48
|
+
|
49
|
+
if len(site_packages_paths) == 1:
|
50
|
+
# Get the stubs location
|
51
|
+
stubs_location = Path(site_packages_paths[0]) / "ansys" / "mechanical" / "stubs"
|
52
|
+
return stubs_location
|
53
|
+
|
54
|
+
raise Exception("Could not retrieve the location of the ansys-mechanical-stubs package.")
|
55
|
+
|
56
|
+
|
57
|
+
def get_stubs_versions(stubs_location: Path):
|
58
|
+
"""Retrieve the revision numbers in ansys-mechanical-stubs.
|
59
|
+
|
60
|
+
Parameters
|
61
|
+
----------
|
62
|
+
pathlib.Path
|
63
|
+
The path to the ansys-mechanical-stubs installation in site-packages.
|
64
|
+
|
65
|
+
Returns
|
66
|
+
-------
|
67
|
+
list
|
68
|
+
The list containing minimum and maximum versions in the ansys-mechanical-stubs package.
|
69
|
+
"""
|
70
|
+
# Get revision numbers in stubs folder
|
71
|
+
revns = [
|
72
|
+
int(revision[1:])
|
73
|
+
for revision in os.listdir(stubs_location)
|
74
|
+
if os.path.isdir(os.path.join(stubs_location, revision)) and revision.startswith("v")
|
75
|
+
]
|
76
|
+
return revns
|
77
|
+
|
78
|
+
|
35
79
|
def _vscode_impl(
|
36
80
|
target: str = "user",
|
37
81
|
revision: int = None,
|
@@ -65,9 +109,7 @@ def _vscode_impl(
|
|
65
109
|
settings_json = current_dir / ".vscode" / "settings.json"
|
66
110
|
|
67
111
|
# Location where the stubs are installed -> .venv/Lib/site-packages, for example
|
68
|
-
stubs_location = (
|
69
|
-
Path(sysconfig.get_paths()["purelib"]) / "ansys" / "mechanical" / "stubs" / f"v{revision}"
|
70
|
-
)
|
112
|
+
stubs_location = get_stubs_location() / f"v{revision}"
|
71
113
|
|
72
114
|
# The settings to add to settings.json for autocomplete to work
|
73
115
|
settings_json_data = {
|
@@ -105,11 +147,17 @@ def _cli_impl(
|
|
105
147
|
The Mechanical revision number. For example, "242".
|
106
148
|
If unspecified, it finds the default Mechanical version from ansys-tools-path.
|
107
149
|
"""
|
150
|
+
# Get the ansys-mechanical-stubs install location
|
151
|
+
stubs_location = get_stubs_location()
|
152
|
+
# Get all revision numbers available in ansys-mechanical-stubs
|
153
|
+
revns = get_stubs_versions(stubs_location)
|
108
154
|
# Check the IDE and raise an exception if it's not VS Code
|
109
|
-
if
|
110
|
-
|
111
|
-
|
155
|
+
if revision < min(revns) or revision > max(revns):
|
156
|
+
raise Exception(f"PyMechanical Stubs are not available for {revision}")
|
157
|
+
elif ide != "vscode":
|
112
158
|
raise Exception(f"{ide} is not supported at the moment.")
|
159
|
+
else:
|
160
|
+
return _vscode_impl(target, revision)
|
113
161
|
|
114
162
|
|
115
163
|
@click.command()
|
@@ -118,13 +166,13 @@ def _cli_impl(
|
|
118
166
|
"--ide",
|
119
167
|
default="vscode",
|
120
168
|
type=str,
|
121
|
-
help="The IDE being used.",
|
169
|
+
help="The IDE being used. By default, it's ``vscode``.",
|
122
170
|
)
|
123
171
|
@click.option(
|
124
172
|
"--target",
|
125
173
|
default="user",
|
126
174
|
type=str,
|
127
|
-
help="The type of settings to update - either ``user`` or ``workspace`` settings.",
|
175
|
+
help="The type of settings to update - either ``user`` or ``workspace`` settings in VS Code.",
|
128
176
|
)
|
129
177
|
@click.option(
|
130
178
|
"--revision",
|
@@ -151,7 +199,7 @@ def cli(ide: str, target: str, revision: int) -> None:
|
|
151
199
|
-----
|
152
200
|
The following example demonstrates the main use of this tool:
|
153
201
|
|
154
|
-
$ ansys-mechanical-ideconfig --ide vscode --
|
202
|
+
$ ansys-mechanical-ideconfig --ide vscode --target user --revision 242
|
155
203
|
|
156
204
|
"""
|
157
205
|
exe = atp.get_mechanical_path(allow_input=False, version=revision)
|
@@ -23,10 +23,11 @@
|
|
23
23
|
"""Launch Mechanical in batch or UI mode."""
|
24
24
|
import errno
|
25
25
|
import os
|
26
|
-
|
26
|
+
|
27
|
+
# Subprocess is needed to start the backend. Excluding bandit check.
|
28
|
+
import subprocess # nosec: B404
|
27
29
|
|
28
30
|
from ansys.mechanical.core import LOG
|
29
|
-
from ansys.mechanical.core.misc import is_windows
|
30
31
|
|
31
32
|
|
32
33
|
class MechanicalLauncher:
|
@@ -90,17 +91,16 @@ class MechanicalLauncher:
|
|
90
91
|
env_variables = self.__get_env_variables()
|
91
92
|
args_list = self.__get_commandline_args()
|
92
93
|
|
93
|
-
shell_value = False
|
94
|
-
|
95
|
-
if is_windows():
|
96
|
-
shell_value = True
|
97
|
-
|
98
94
|
LOG.info(f"Starting the process using {args_list}.")
|
99
95
|
if self.verbose:
|
100
96
|
command = " ".join(args_list)
|
101
97
|
print(f"Running {command}.")
|
102
98
|
|
103
|
-
process = subprocess.Popen(
|
99
|
+
process = subprocess.Popen(
|
100
|
+
args_list,
|
101
|
+
stdout=subprocess.PIPE,
|
102
|
+
env=env_variables,
|
103
|
+
) # nosec: B603
|
104
104
|
LOG.info(f"Started the process:{process} using {args_list}.")
|
105
105
|
|
106
106
|
@staticmethod
|
ansys/mechanical/core/pool.py
CHANGED
@@ -180,7 +180,7 @@ class LocalMechanicalPool:
|
|
180
180
|
version = kwargs["version"]
|
181
181
|
self._remote = True
|
182
182
|
else:
|
183
|
-
raise "Pypim is configured
|
183
|
+
raise ValueError("Pypim is configured, but version is not passed.")
|
184
184
|
else: # get default executable
|
185
185
|
exec_file = get_mechanical_path()
|
186
186
|
if exec_file is None: # pragma: no cover
|
@@ -389,8 +389,8 @@ class LocalMechanicalPool:
|
|
389
389
|
LOG.error(f"Stopped instance because running failed.")
|
390
390
|
try:
|
391
391
|
obj.exit()
|
392
|
-
except:
|
393
|
-
|
392
|
+
except Exception as e:
|
393
|
+
LOG.error(f"Unexpected error while exiting: {e}")
|
394
394
|
|
395
395
|
obj.locked = False
|
396
396
|
if pbar:
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: ansys-mechanical-core
|
3
|
-
Version: 0.11.
|
3
|
+
Version: 0.11.9
|
4
4
|
Summary: A python wrapper for Ansys Mechanical
|
5
5
|
Keywords: pymechanical,mechanical,ansys,pyansys
|
6
6
|
Author-email: "ANSYS, Inc." <pyansys.core@ansys.com>
|
@@ -17,6 +17,7 @@ Classifier: License :: OSI Approved :: MIT License
|
|
17
17
|
Classifier: Operating System :: OS Independent
|
18
18
|
Requires-Dist: ansys-api-mechanical==0.1.2
|
19
19
|
Requires-Dist: ansys-mechanical-env==0.1.8
|
20
|
+
Requires-Dist: ansys-mechanical-stubs==0.1.4
|
20
21
|
Requires-Dist: ansys-platform-instancemanagement>=1.0.1
|
21
22
|
Requires-Dist: ansys-pythonnet>=3.1.0rc2
|
22
23
|
Requires-Dist: ansys-tools-path>=0.3.1
|
@@ -25,11 +26,12 @@ Requires-Dist: click>=8.1.3
|
|
25
26
|
Requires-Dist: clr-loader==0.2.6
|
26
27
|
Requires-Dist: grpcio>=1.30.0
|
27
28
|
Requires-Dist: protobuf>=3.12.2,<6
|
28
|
-
Requires-Dist: psutil==6.
|
29
|
+
Requires-Dist: psutil==6.1.0
|
29
30
|
Requires-Dist: tqdm>=4.45.0
|
31
|
+
Requires-Dist: requests>=2,<3
|
30
32
|
Requires-Dist: sphinx==8.1.3 ; extra == "doc"
|
31
|
-
Requires-Dist: ansys-sphinx-theme[autoapi]==1.1.
|
32
|
-
Requires-Dist: grpcio==1.
|
33
|
+
Requires-Dist: ansys-sphinx-theme[autoapi]==1.1.7 ; extra == "doc"
|
34
|
+
Requires-Dist: grpcio==1.67.0 ; extra == "doc"
|
33
35
|
Requires-Dist: imageio-ffmpeg==0.5.1 ; extra == "doc"
|
34
36
|
Requires-Dist: imageio==2.36.0 ; extra == "doc"
|
35
37
|
Requires-Dist: jupyter_sphinx==0.5.3 ; extra == "doc"
|
@@ -38,7 +40,7 @@ Requires-Dist: matplotlib==3.9.2 ; extra == "doc"
|
|
38
40
|
Requires-Dist: numpy==2.1.2 ; extra == "doc"
|
39
41
|
Requires-Dist: numpydoc==1.8.0 ; extra == "doc"
|
40
42
|
Requires-Dist: pandas==2.2.3 ; extra == "doc"
|
41
|
-
Requires-Dist: panel==1.5.
|
43
|
+
Requires-Dist: panel==1.5.3 ; extra == "doc"
|
42
44
|
Requires-Dist: plotly==5.24.1 ; extra == "doc"
|
43
45
|
Requires-Dist: pypandoc==1.14 ; extra == "doc"
|
44
46
|
Requires-Dist: pytest-sphinx==0.6.3 ; extra == "doc"
|
@@ -55,9 +57,9 @@ Requires-Dist: sphinxemoji==0.3.1 ; extra == "doc"
|
|
55
57
|
Requires-Dist: pytest==8.3.3 ; extra == "tests"
|
56
58
|
Requires-Dist: pytest-cov==5.0.0 ; extra == "tests"
|
57
59
|
Requires-Dist: pytest-print==1.0.2 ; extra == "tests"
|
58
|
-
Requires-Dist: psutil==6.
|
60
|
+
Requires-Dist: psutil==6.1.0 ; extra == "tests"
|
59
61
|
Requires-Dist: ansys-tools-visualization-interface>=0.2.6 ; extra == "viz"
|
60
|
-
Requires-Dist: usd-core==24.
|
62
|
+
Requires-Dist: usd-core==24.11 ; extra == "viz"
|
61
63
|
Project-URL: Changelog, https://mechanical.docs.pyansys.com/version/stable/changelog.html
|
62
64
|
Project-URL: Documentation, https://mechanical.docs.pyansys.com
|
63
65
|
Project-URL: Homepage, https://github.com/ansys/pymechanical
|
@@ -2,19 +2,19 @@ ansys/mechanical/core/__init__.py,sha256=91oPPatmqRyry_kzusIq522MQNiBgN5Of54zDMI
|
|
2
2
|
ansys/mechanical/core/_version.py,sha256=V2aPQlSX4bCe1N1hLIkQaed84WN4s9wl6Q7890ZihNU,1744
|
3
3
|
ansys/mechanical/core/errors.py,sha256=oGaBH-QZxen3YV3IChAFv8bwW5rK_IXTYgDqbX5lp1E,4508
|
4
4
|
ansys/mechanical/core/feature_flags.py,sha256=L88vHrI2lRjZPPUTW5sqcdloeK3Ouh8vt1VPfZLs5Wc,2032
|
5
|
-
ansys/mechanical/core/ide_config.py,sha256=
|
6
|
-
ansys/mechanical/core/launcher.py,sha256
|
5
|
+
ansys/mechanical/core/ide_config.py,sha256=Sbzax5Pf7FK0XAMhzcsBJu_8CclABLKuebDCqlvHN_0,7334
|
6
|
+
ansys/mechanical/core/launcher.py,sha256=dS3hN8RwiRh_c2RlXV5MVL7pgKZG5ZiNWreWQf3E800,6675
|
7
7
|
ansys/mechanical/core/logging.py,sha256=wQ8QwKd2k0R6SkN7cv2nHAO7V5-BrElEOespDNMpSLo,24554
|
8
|
-
ansys/mechanical/core/mechanical.py,sha256=
|
8
|
+
ansys/mechanical/core/mechanical.py,sha256=tLvmQ8gaFIFbiDdKT300uX8U32g8qC731zB0GWpwIKQ,79972
|
9
9
|
ansys/mechanical/core/misc.py,sha256=edm2UnklbooYW_hQUgk4n_UFCtlSGAVYJmC2gag74vw,5370
|
10
|
-
ansys/mechanical/core/pool.py,sha256=
|
10
|
+
ansys/mechanical/core/pool.py,sha256=F-Ckbc5c0V8OvYLOxoV2oJ3E8QOmPG0hH9XA07h3eAU,26586
|
11
11
|
ansys/mechanical/core/run.py,sha256=KgSL2XEyCxK7iq_XVDNEv6fx7SN56RA-ihNg2dLyuZc,9920
|
12
12
|
ansys/mechanical/core/embedding/__init__.py,sha256=y0yp3dnBW2oj9Jh_L_qfZstAbpON974EMmpV9w3kT3g,1356
|
13
13
|
ansys/mechanical/core/embedding/addins.py,sha256=2-de-sIOWjO5MCKdBHC2LFxTItr1DUztABIONTQhiWc,2167
|
14
|
-
ansys/mechanical/core/embedding/app.py,sha256=
|
14
|
+
ansys/mechanical/core/embedding/app.py,sha256=WKMN_2UQHEo-fsE0yqtVCZwA4ItSq13NvRz22r7QS1g,18708
|
15
15
|
ansys/mechanical/core/embedding/app_libraries.py,sha256=RiTO23AzjssAylIH2DaTa6mcJmxhfrlHW-yYvHpIkt0,2923
|
16
16
|
ansys/mechanical/core/embedding/appdata.py,sha256=krcmcgHhraHIlORFr43QvUXlAiXg231g_2iOIxkW_aQ,4223
|
17
|
-
ansys/mechanical/core/embedding/background.py,sha256=
|
17
|
+
ansys/mechanical/core/embedding/background.py,sha256=QxR5QE1Q2gdcVy6QTy-PYmTOyXAhgYV7wqLV2bxUV4I,3731
|
18
18
|
ansys/mechanical/core/embedding/cleanup_gui.py,sha256=GvWX2ylGBb5k1Hgz9vUywXNgWpDVwZ6L2M4gaOXyxl4,2354
|
19
19
|
ansys/mechanical/core/embedding/enum_importer.py,sha256=3REw7SI_WmfPuzD0i9mdC7k53S-1jxhowqSxjzw7UGk,1543
|
20
20
|
ansys/mechanical/core/embedding/imports.py,sha256=FcpePAi867YCuCH_lJotrLzYc1MW5VSAaLpYz7RejcA,4287
|
@@ -24,7 +24,7 @@ ansys/mechanical/core/embedding/poster.py,sha256=V0-cm229HgpOgcYXa0bnz0U5BDGw8_A
|
|
24
24
|
ansys/mechanical/core/embedding/resolver.py,sha256=95jUvZhNFEJBlbAbclzpK1Wgk51KsnYOKa5HvC7Oeco,1878
|
25
25
|
ansys/mechanical/core/embedding/runtime.py,sha256=zDxwKDTc23cR_kc63M9u4zDWVoJ2efEtF3djHGwicG4,2285
|
26
26
|
ansys/mechanical/core/embedding/shims.py,sha256=IJHhUmfsCtYEUFmuf2LGgozTiu03D0OZn1Qq1nCxXiI,1732
|
27
|
-
ansys/mechanical/core/embedding/ui.py,sha256=
|
27
|
+
ansys/mechanical/core/embedding/ui.py,sha256=6LRLzfPZq2ktdToo8V-pCwoha_GzFZen_VdQeFmW0DE,8497
|
28
28
|
ansys/mechanical/core/embedding/utils.py,sha256=UObL4XBvx19aAYV8iVM4eCQR9vfqNSDsdwqkb1VFwTY,1900
|
29
29
|
ansys/mechanical/core/embedding/warnings.py,sha256=igXfTCkDb8IDQqYP02Cynsqr7ewnueR12Dr0zpku7Kw,3071
|
30
30
|
ansys/mechanical/core/embedding/logger/__init__.py,sha256=XgC05i7r-YzotLtcZ5_rGtA0jDKzeuZiDB88d2pIL7o,7986
|
@@ -37,9 +37,9 @@ ansys/mechanical/core/embedding/viz/embedding_plotter.py,sha256=ausbFhezwmLCGhu6
|
|
37
37
|
ansys/mechanical/core/embedding/viz/usd_converter.py,sha256=feDq2KrZhYL-RR1miECQL-y0VNDhnZQ9Wke5UOkYmp4,5329
|
38
38
|
ansys/mechanical/core/embedding/viz/utils.py,sha256=FuGDh7a5mUqs2UZOaXZLD0vONdmDXl5JfDRilIVbjds,3660
|
39
39
|
ansys/mechanical/core/examples/__init__.py,sha256=A1iS8nknTU1ylafHZpYC9LQJ0sY83x8m1cDXsgvFOBo,1267
|
40
|
-
ansys/mechanical/core/examples/downloads.py,sha256=
|
41
|
-
ansys_mechanical_core-0.11.
|
42
|
-
ansys_mechanical_core-0.11.
|
43
|
-
ansys_mechanical_core-0.11.
|
44
|
-
ansys_mechanical_core-0.11.
|
45
|
-
ansys_mechanical_core-0.11.
|
40
|
+
ansys/mechanical/core/examples/downloads.py,sha256=rYFsq8U3YpXi_DVx_Uu5sRFFUS85ks6rMJfcgyvBat0,4295
|
41
|
+
ansys_mechanical_core-0.11.9.dist-info/entry_points.txt,sha256=tErx6bIM27HGgwyM6ryyTUTw30Ab2F9J3FFkX2TPkhI,130
|
42
|
+
ansys_mechanical_core-0.11.9.dist-info/LICENSE,sha256=gBJ2GQ6oDJwAWxcxmjx_0uXc-N0P4sHhA7BXsdPTfco,1098
|
43
|
+
ansys_mechanical_core-0.11.9.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
|
44
|
+
ansys_mechanical_core-0.11.9.dist-info/METADATA,sha256=y7oWZjaJBccSx1Lx1mEMaIvJ6S6muD8OMmU29NIzn3o,9887
|
45
|
+
ansys_mechanical_core-0.11.9.dist-info/RECORD,,
|
File without changes
|
File without changes
|
{ansys_mechanical_core-0.11.8.dist-info → ansys_mechanical_core-0.11.9.dist-info}/entry_points.txt
RENAMED
File without changes
|