solidipes-solid-mech-plugin 0.0.11__tar.gz → 0.0.13__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 (48) hide show
  1. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/PKG-INFO +1 -1
  2. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/loaders/abaqus.py +17 -21
  3. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/viewers/xdmf.py +2 -2
  4. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin.egg-info/PKG-INFO +1 -1
  5. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/test_ontologies.py +3 -0
  6. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/.flake8 +0 -0
  7. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/.gitignore +0 -0
  8. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/.gitlab-ci.yml +0 -0
  9. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/.pre-commit-config.yaml +0 -0
  10. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/CHANGELOG.md +0 -0
  11. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/LICENSE +0 -0
  12. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/README.md +0 -0
  13. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/pyproject.toml +0 -0
  14. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/setup.cfg +0 -0
  15. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/__init__.py +0 -0
  16. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/config.py +0 -0
  17. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/loaders/__init__.py +0 -0
  18. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/loaders/abaqus_python_code.py +0 -0
  19. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/loaders/geo_msh.py +0 -0
  20. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/loaders/geof_mesh.py +0 -0
  21. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/loaders/meshio.py +0 -0
  22. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/loaders/parse_inp.py +0 -0
  23. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/loaders/pyvista_mesh.py +0 -0
  24. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/loaders/xdmf.py +0 -0
  25. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/ontologies/solidipes_solid_mech.py +0 -0
  26. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/ontologies/solidipes_solid_mech.yaml +0 -0
  27. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/viewers/__init__.py +0 -0
  28. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin/viewers/pyvista_plotter.py +0 -0
  29. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin.egg-info/SOURCES.txt +0 -0
  30. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin.egg-info/dependency_links.txt +0 -0
  31. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin.egg-info/entry_points.txt +0 -0
  32. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin.egg-info/requires.txt +0 -0
  33. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/solidipes_solid_mech_plugin.egg-info/top_level.txt +0 -0
  34. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/assets/generate_assets.py +0 -0
  35. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/assets/pyvista_mesh.vtu +0 -0
  36. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/assets/pyvista_mesh_no_fields.vtu +0 -0
  37. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/assets/pyvista_plot.png +0 -0
  38. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/assets/test_mesh_loaded.png +0 -0
  39. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/assets/xdmf_mesh.h5 +0 -0
  40. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/assets/xdmf_mesh.xdmf +0 -0
  41. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/conftest.py +0 -0
  42. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/helpers/utils.py +0 -0
  43. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/test_load_modules.py +0 -0
  44. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/test_pyvista_mesh.py +0 -0
  45. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/test_pyvista_plotter.py +0 -0
  46. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/test_streamlit_pyvista.py +0 -0
  47. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/tests/test_xdmf_mesh.py +0 -0
  48. {solidipes_solid_mech_plugin-0.0.11 → solidipes_solid_mech_plugin-0.0.13}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: solidipes-solid-mech-plugin
3
- Version: 0.0.11
3
+ Version: 0.0.13
4
4
  Summary: Plugin for Solidipes with solid mechanics components
5
5
  Author-email: Son Pham-Ba <son.phamba@epfl.ch>, Guillaume Anciaux <guillaume.anciaux@epfl.ch>
6
6
  License: GPL-3.0-or-later
@@ -4,6 +4,7 @@ import mergedeep
4
4
  import numpy as np
5
5
  import pandas as pd
6
6
  import pyparsing as pp
7
+ from solidipes.validators.validator import validator
7
8
  from solidipes_core_plugin.loaders.code_snippet import CodeSnippet
8
9
 
9
10
 
@@ -114,11 +115,11 @@ class ParseAbaqus:
114
115
  class Abaqus(CodeSnippet):
115
116
  supported_mime_types = {"application/fem/abaqus": "inp"}
116
117
 
117
- from solidipes_core_plugin.viewers.xml import XML
118
+ from solidipes_core_plugin.viewers.dictionary import DictViewer
118
119
 
119
120
  from ..viewers.pyvista_plotter import PyvistaPlotter
120
121
 
121
- _compatible_viewers = [PyvistaPlotter, XML]
122
+ _compatible_viewers = [PyvistaPlotter, DictViewer]
122
123
 
123
124
  @CodeSnippet.loadable
124
125
  def structure(self):
@@ -129,6 +130,16 @@ class Abaqus(CodeSnippet):
129
130
  except Exception as e:
130
131
  print(e)
131
132
 
133
+ @validator(description="Loadable meshes")
134
+ def _is_mesh_loadable(self) -> bool:
135
+ if not self.structure:
136
+ self.add_validation_error([f"Invalid structure: {self.structure}"])
137
+ return False
138
+ if not self.meshes:
139
+ self.add_validation_error([f"Invalid meshes: {self.meshes}"])
140
+ return False
141
+ return True
142
+
132
143
  @property
133
144
  def xml(self):
134
145
  return self.structure
@@ -166,31 +177,18 @@ class Abaqus(CodeSnippet):
166
177
  @CodeSnippet.loadable
167
178
  def meshes(self):
168
179
  import pyvista as pv
180
+ from solidipes.loaders.data_container import ExitCalled
169
181
 
170
182
  try:
171
183
  fname = self.file_info.path
172
- import sys
173
-
174
- from pyvista.core.utilities import from_meshio
175
-
176
- original_exit = sys.exit
177
-
178
- def my_exit(code):
179
- raise RuntimeError(f"Meshio: sys.exit({code})")
180
-
181
- sys.exit = my_exit
182
184
  import meshio
185
+ from pyvista.core.utilities import from_meshio
183
186
 
184
187
  _mesh = meshio.read(fname)
185
188
 
186
- res = {"meshio_reader": from_meshio(_mesh)}
187
- sys.exit = original_exit
188
- return res
189
- except Exception as e:
189
+ return {"meshio_reader": from_meshio(_mesh)}
190
+ except ExitCalled as e:
190
191
  print(e)
191
- pass
192
-
193
- sys.exit = original_exit
194
192
 
195
193
  meshes = {}
196
194
  for p, part in enumerate(self.parts):
@@ -201,8 +199,6 @@ class Abaqus(CodeSnippet):
201
199
  if param.startswith("name="):
202
200
  param = param[5:]
203
201
  meshes[param] = mesh
204
- if not meshes:
205
- return None
206
202
  return meshes
207
203
 
208
204
  @property
@@ -1,10 +1,10 @@
1
1
  import streamlit as st
2
2
  from IPython.display import display
3
3
  from solidipes.viewers import backends as viewer_backends
4
- from solidipes_core_plugin.viewers.xml import XML
4
+ from solidipes_core_plugin.viewers.dictionary import DictViewer
5
5
 
6
6
 
7
- class XDMF(XML):
7
+ class XDMF(DictViewer):
8
8
  """Viewer for xml text files"""
9
9
 
10
10
  def __init__(self, data=None):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: solidipes-solid-mech-plugin
3
- Version: 0.0.11
3
+ Version: 0.0.13
4
4
  Summary: Plugin for Solidipes with solid mechanics components
5
5
  Author-email: Son Pham-Ba <son.phamba@epfl.ch>, Guillaume Anciaux <guillaume.anciaux@epfl.ch>
6
6
  License: GPL-3.0-or-later
@@ -4,6 +4,7 @@ from pathlib import Path
4
4
  import pytest
5
5
  import solidipes as sp
6
6
  import utils
7
+ from solidipes.loaders.rocrate_metadata import rocrate
7
8
  from solidipes.validators.ontology import set_ontology_identifier
8
9
 
9
10
  ontology_identifier = os.path.join(
@@ -27,6 +28,7 @@ class TestPyvistaMeshOntology:
27
28
  validator = get_global_validator(OntologyValidator)
28
29
  file_path = utils.get_asset_path("pyvista_mesh_no_fields.vtu")
29
30
  file = sp.load_file(file_path)
31
+ rocrate.write_json()
30
32
  class_name = validator.ontology.get_file_class_name(file)
31
33
  assert class_name == "InputMesh"
32
34
 
@@ -37,5 +39,6 @@ class TestPyvistaMeshOntology:
37
39
  validator = get_global_validator(OntologyValidator)
38
40
  file_path = utils.get_asset_path("pyvista_mesh.vtu")
39
41
  file = sp.load_file(file_path)
42
+ rocrate.write_json()
40
43
  class_name = validator.ontology.get_file_class_name(file)
41
44
  assert class_name == "OutputMesh"