liblaf-melon 0.2.3__tar.gz → 0.2.4__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 (123) hide show
  1. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/PKG-INFO +1 -1
  2. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/_version.py +2 -2
  3. liblaf_melon-0.2.4/src/liblaf/melon/barycentric/_points.py +15 -0
  4. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/paraview/_series_writer.py +0 -1
  5. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/point_set/convert/_array.py +1 -1
  6. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/point_set/convert/_convert.py +2 -0
  7. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/point_set/convert/_poly_data.py +1 -1
  8. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/utils/_typing.py +22 -2
  9. liblaf_melon-0.2.3/src/liblaf/melon/barycentric/_points.py +0 -15
  10. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/.gitignore +0 -0
  11. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/LICENSE +0 -0
  12. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/docs/README.md +0 -0
  13. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/pyproject.toml +0 -0
  14. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/__init__.py +0 -0
  15. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/__init__.pyi +0 -0
  16. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/_version.pyi +0 -0
  17. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/barycentric/__init__.py +0 -0
  18. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/barycentric/__init__.pyi +0 -0
  19. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/barycentric/_sample.py +0 -0
  20. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/__init__.py +0 -0
  21. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/__init__.pyi +0 -0
  22. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/_save.py +0 -0
  23. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/abc/__init__.py +0 -0
  24. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/abc/__init__.pyi +0 -0
  25. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/abc/_converter.py +0 -0
  26. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/abc/_reader.py +0 -0
  27. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/abc/_writer.py +0 -0
  28. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/paraview/__init__.py +0 -0
  29. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/paraview/__init__.pyi +0 -0
  30. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/paraview/_pvd_writer.py +0 -0
  31. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/__init__.py +0 -0
  32. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/__init__.pyi +0 -0
  33. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/_convert.py +0 -0
  34. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/point_set/__init__.py +0 -0
  35. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/point_set/__init__.pyi +0 -0
  36. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/point_set/convert/__init__.py +0 -0
  37. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/point_set/convert/__init__.pyi +0 -0
  38. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/__init__.py +0 -0
  39. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/__init__.pyi +0 -0
  40. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/convert/__init__.py +0 -0
  41. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/convert/__init__.pyi +0 -0
  42. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/convert/_convert.py +0 -0
  43. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/convert/_mapping.py +0 -0
  44. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/convert/_wrap.py +0 -0
  45. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/reader/__init__.py +0 -0
  46. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/reader/__init__.pyi +0 -0
  47. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/reader/_load.py +0 -0
  48. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/reader/_obj.py +0 -0
  49. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/reader/_pyvista.py +0 -0
  50. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/writer/__init__.py +0 -0
  51. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/writer/__init__.pyi +0 -0
  52. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/poly_data/writer/_pyvista.py +0 -0
  53. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/unstructured_grid/__init__.py +0 -0
  54. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/unstructured_grid/__init__.pyi +0 -0
  55. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/unstructured_grid/convert/__init__.py +0 -0
  56. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/unstructured_grid/convert/__init__.pyi +0 -0
  57. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/unstructured_grid/convert/_convert.py +0 -0
  58. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/unstructured_grid/reader/__init__.py +0 -0
  59. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/unstructured_grid/reader/__init__.pyi +0 -0
  60. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/unstructured_grid/reader/_pyvista.py +0 -0
  61. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/unstructured_grid/reader/_reader.py +0 -0
  62. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/unstructured_grid/writer/__init__.py +0 -0
  63. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/unstructured_grid/writer/__init__.pyi +0 -0
  64. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/pyvista/unstructured_grid/writer/_pyvista.py +0 -0
  65. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/__init__.py +0 -0
  66. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/__init__.pyi +0 -0
  67. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/convert/__init__.py +0 -0
  68. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/convert/__init__.pyi +0 -0
  69. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/convert/_convert.py +0 -0
  70. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/convert/_poly_data.py +0 -0
  71. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/reader/__init__.py +0 -0
  72. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/reader/__init__.pyi +0 -0
  73. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/reader/_reader.py +0 -0
  74. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/reader/_trimesh.py +0 -0
  75. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/writer/__init__.py +0 -0
  76. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/writer/__init__.pyi +0 -0
  77. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/trimesh/writer/_trimesh.py +0 -0
  78. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/wrap/__init__.py +0 -0
  79. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/wrap/__init__.pyi +0 -0
  80. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/wrap/landmarks/__init__.py +0 -0
  81. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/wrap/landmarks/__init__.pyi +0 -0
  82. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/wrap/landmarks/_reader.py +0 -0
  83. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/wrap/landmarks/_utils.py +0 -0
  84. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/wrap/landmarks/_writer.py +0 -0
  85. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/wrap/polygons/__init__.py +0 -0
  86. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/wrap/polygons/__init__.pyi +0 -0
  87. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/wrap/polygons/_reader.py +0 -0
  88. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/wrap/polygons/_utils.py +0 -0
  89. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/io/wrap/polygons/_writer.py +0 -0
  90. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/mesh/__init__.py +0 -0
  91. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/mesh/__init__.pyi +0 -0
  92. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/mesh/_graph.py +0 -0
  93. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/plugin/__init__.py +0 -0
  94. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/plugin/__init__.pyi +0 -0
  95. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/plugin/_mesh_fix.py +0 -0
  96. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/plugin/_tetwild.py +0 -0
  97. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/plugin/wrap/__init__.py +0 -0
  98. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/plugin/wrap/__init__.pyi +0 -0
  99. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/plugin/wrap/_annotate_landmarks.py +0 -0
  100. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/plugin/wrap/_fast_wrapping.py +0 -0
  101. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/plugin/wrap/annotate-landmarks.wrap +0 -0
  102. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/plugin/wrap/fast-wrapping.wrap +0 -0
  103. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/proximity/__init__.py +0 -0
  104. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/proximity/__init__.pyi +0 -0
  105. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/proximity/_abc.py +0 -0
  106. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/proximity/_nearest.py +0 -0
  107. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/proximity/_nearest_point.py +0 -0
  108. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/py.typed +0 -0
  109. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/tetra/__init__.py +0 -0
  110. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/tetra/__init__.pyi +0 -0
  111. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/tetra/_flip.py +0 -0
  112. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/triangle/__init__.py +0 -0
  113. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/triangle/__init__.pyi +0 -0
  114. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/triangle/_boolean.py +0 -0
  115. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/triangle/_compute_edge_length.py +0 -0
  116. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/triangle/_extract.py +0 -0
  117. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/triangle/_ray.py +0 -0
  118. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/triangle/_selection.py +0 -0
  119. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/typed/__init__.py +0 -0
  120. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/typed/__init__.pyi +0 -0
  121. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/typed/_misc.py +0 -0
  122. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/utils/__init__.py +0 -0
  123. {liblaf_melon-0.2.3 → liblaf_melon-0.2.4}/src/liblaf/melon/utils/__init__.pyi +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: liblaf-melon
3
- Version: 0.2.3
3
+ Version: 0.2.4
4
4
  Summary: Add your description here
5
5
  Project-URL: Changelog, https://github.com/liblaf/melon/blob/main/CHANGELOG.md
6
6
  Project-URL: Documentation, https://liblaf.github.io/melon/
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '0.2.3'
21
- __version_tuple__ = version_tuple = (0, 2, 3)
20
+ __version__ = version = '0.2.4'
21
+ __version_tuple__ = version_tuple = (0, 2, 4)
@@ -0,0 +1,15 @@
1
+ import einops
2
+ import numpy as np
3
+ from jaxtyping import Float
4
+ from numpy.typing import ArrayLike
5
+
6
+
7
+ def barycentric_to_points(
8
+ cells: Float[ArrayLike, "*N B D"], barycentric: Float[ArrayLike, "*N B"]
9
+ ) -> Float[np.ndarray, "*N D"]:
10
+ cells: Float[np.ndarray, "*N B D"] = np.asarray(cells)
11
+ barycentric: Float[np.ndarray, "*N B"] = np.asarray(barycentric)
12
+ points: Float[np.ndarray, "*N D"] = einops.einsum(
13
+ barycentric, cells, "... B, ... B D -> ... D"
14
+ )
15
+ return points
@@ -99,7 +99,6 @@ class SeriesWriter(Sequence[File], contextlib.AbstractContextManager):
99
99
  self, data: Any, *, time: float | None = None, timestep: float | None = None
100
100
  ) -> None:
101
101
  filename: str = f"{self.name}_{len(self):06d}{self.ext}"
102
- ic(filename, self.ext, self.file)
103
102
  save(self.folder / filename, data)
104
103
  if time is None:
105
104
  if timestep is None:
@@ -8,7 +8,7 @@ from liblaf.melon.io.abc import AbstractConverter
8
8
 
9
9
  class ArrayToPointSet(AbstractConverter):
10
10
  @override
11
- def match_from(self, data: Any) -> bool:
11
+ def match_from(self, data: Any, /) -> bool:
12
12
  return utils.is_array_like(data)
13
13
 
14
14
  @override
@@ -2,7 +2,9 @@ import pyvista as pv
2
2
 
3
3
  from liblaf.melon.io.abc import ConverterDispatcher
4
4
 
5
+ from ._array import ArrayToPointSet
5
6
  from ._poly_data import PolyDataToPointSet
6
7
 
7
8
  as_point_set = ConverterDispatcher(pv.PointSet)
9
+ as_point_set.register(ArrayToPointSet())
8
10
  as_point_set.register(PolyDataToPointSet())
@@ -8,7 +8,7 @@ from liblaf.melon.io.abc import AbstractConverter
8
8
 
9
9
  class PolyDataToPointSet(AbstractConverter):
10
10
  @override
11
- def match_from(self, data: Any) -> bool:
11
+ def match_from(self, data: Any, /) -> bool:
12
12
  return utils.is_poly_data(data)
13
13
 
14
14
  @override
@@ -12,12 +12,32 @@ def is_subclass(cls: type, prefix: str, name: str) -> bool:
12
12
 
13
13
  def is_array_like(obj: Any) -> bool:
14
14
  # TODO: Implement a more robust check for array-like objects.
15
- return isinstance(obj, Sequence)
15
+ return (
16
+ is_jax(obj)
17
+ or is_numpy(obj)
18
+ or is_torch(obj)
19
+ or is_warp(obj)
20
+ or isinstance(obj, Sequence)
21
+ )
16
22
 
17
23
 
18
24
  # ----------------------------------- numpy ---------------------------------- #
25
+
26
+
27
+ def is_jax(obj: Any) -> bool:
28
+ return is_instance(obj, "jax", "Array")
29
+
30
+
19
31
  def is_numpy(obj: Any) -> bool:
20
- return is_subclass(obj, "numpy", "ndarray")
32
+ return is_instance(obj, "numpy", "ndarray")
33
+
34
+
35
+ def is_torch(obj: Any) -> bool:
36
+ return is_instance(obj, "torch", "Tensor")
37
+
38
+
39
+ def is_warp(obj: Any) -> bool:
40
+ return is_instance(obj, "warp", "array")
21
41
 
22
42
 
23
43
  # ---------------------------------- pyvista --------------------------------- #
@@ -1,15 +0,0 @@
1
- import einops
2
- import numpy as np
3
- from jaxtyping import Float
4
- from numpy.typing import ArrayLike
5
-
6
-
7
- def barycentric_to_points(
8
- cells: Float[ArrayLike, "N B D"], barycentric: Float[ArrayLike, "N B"]
9
- ) -> Float[np.ndarray, "N D"]:
10
- cells: Float[np.ndarray, "N B D"] = np.asarray(cells)
11
- barycentric: Float[np.ndarray, "N B"] = np.asarray(barycentric)
12
- points: Float[np.ndarray, "N D"] = einops.einsum(
13
- barycentric, cells, "N B, N B D -> N D"
14
- )
15
- return points
File without changes
File without changes