pyroll-core 3.0.2__tar.gz → 3.0.2.post2__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.
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/PKG-INFO +1 -1
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/__init__.py +1 -1
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/generic_elongation.py +1 -1
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/unit/unit.py +16 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/.gitignore +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/LICENSE +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/README.md +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/hatch.toml +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyproject.toml +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/config.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/disk_elements/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/disk_elements/disk_element_unit.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/disk_elements/hookimpls.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/base.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/boxes/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/boxes/box.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/boxes/constricted_box.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/boxes/upset_box.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/diamonds/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/diamonds/diamond.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/diamonds/gothic.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/diamonds/square.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/equivalent_ripped_groove.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/flat.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/generic_elongation_solvers.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/hexagonal.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/ovals/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/ovals/circular_oval.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/ovals/constricted_circular_oval.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/ovals/constricted_swedish_oval.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/ovals/flat_oval.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/ovals/oval_3radii.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/ovals/oval_3radii_flanked.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/ovals/swedish_oval.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/ovals/upset_oval.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/rounds/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/rounds/false_round.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/rounds/round.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/spline.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/hooks.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/log.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/profile/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/profile/hookimpls.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/profile/profile.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/repr.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll/hookimpls.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll/roll.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/base.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/deformation_unit.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/base_roll_pass.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/deformation_unit.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/disk_element.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/helpers.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/profile.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/roll.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/symmetric_roll_pass.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/three_roll_pass.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/two_roll_pass.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/symmetric_roll_pass.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/three_roll_pass.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/two_roll_pass.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/rotator/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/rotator/hookimpls.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/rotator/rotator.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/sequence/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/sequence/hookimpls.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/sequence/sequence.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/shapes.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/transport/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/transport/cooling_pipe.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/transport/hookimpls/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/transport/hookimpls/cooling_pipe.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/transport/hookimpls/transport.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/transport/transport.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/unit/__init__.py +0 -0
- {pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/unit/hookimpls.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pyroll-core
|
|
3
|
-
Version: 3.0.2
|
|
3
|
+
Version: 3.0.2.post2
|
|
4
4
|
Summary: PyRoll rolling simulation framework - core library.
|
|
5
5
|
Project-URL: Homepage, https://pyroll-project.github.io
|
|
6
6
|
Project-URL: Repository, https://github.com/pyroll-project/pyroll-core
|
|
@@ -44,7 +44,7 @@ from .hooks import Hook, HookHost, HookFunction, root_hooks
|
|
|
44
44
|
from .disk_elements import DiskElementUnit
|
|
45
45
|
from .config import Config, config, PlottingBackend, ConfigValue, ConfigMeta
|
|
46
46
|
|
|
47
|
-
VERSION = "3.0.2"
|
|
47
|
+
VERSION = "3.0.2.post2"
|
|
48
48
|
|
|
49
49
|
__all__ = [
|
|
50
50
|
# grooves
|
|
@@ -234,7 +234,7 @@ class GenericElongationGroove(GrooveBase, ReprMixin):
|
|
|
234
234
|
|
|
235
235
|
@property
|
|
236
236
|
def groove_factor(self) -> float:
|
|
237
|
-
return self.
|
|
237
|
+
return self.contour_line.centroid.y
|
|
238
238
|
|
|
239
239
|
def local_depth(self, z) -> Union[float, np.ndarray]:
|
|
240
240
|
z = np.abs(z)
|
|
@@ -62,6 +62,12 @@ class Unit(HookHost):
|
|
|
62
62
|
|
|
63
63
|
self._parent = weakref.ref(parent) if parent is not None else None
|
|
64
64
|
|
|
65
|
+
self.convergence_history = []
|
|
66
|
+
"""List to store the convergence history of the unit."""
|
|
67
|
+
|
|
68
|
+
self.global_iterator = 1
|
|
69
|
+
"""Global iterator for the convergence history."""
|
|
70
|
+
|
|
65
71
|
self.in_profile: Optional[Unit.InProfile] = None
|
|
66
72
|
"""The state of the incoming profile."""
|
|
67
73
|
|
|
@@ -208,6 +214,16 @@ class Unit(HookHost):
|
|
|
208
214
|
self.out_profile.reevaluate_cache()
|
|
209
215
|
current_results = self.get_root_hook_results()
|
|
210
216
|
|
|
217
|
+
residuum = np.max(np.abs(current_results - self._old_results) / (np.abs(self._old_results) + 1e-12))
|
|
218
|
+
|
|
219
|
+
self.convergence_history.append({
|
|
220
|
+
"iteration": self.global_iterator,
|
|
221
|
+
"residuum": residuum,
|
|
222
|
+
"label": self.label
|
|
223
|
+
})
|
|
224
|
+
|
|
225
|
+
self.global_iterator += 1
|
|
226
|
+
|
|
211
227
|
if np.all(
|
|
212
228
|
np.abs(current_results - self._old_results) <= np.abs(self._old_results) * self.iteration_precision
|
|
213
229
|
):
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/disk_elements/disk_element_unit.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/equivalent_ripped_groove.py
RENAMED
|
File without changes
|
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/generic_elongation_solvers.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/ovals/constricted_circular_oval.py
RENAMED
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/ovals/constricted_swedish_oval.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/grooves/ovals/oval_3radii_flanked.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/base_roll_pass.py
RENAMED
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/deformation_unit.py
RENAMED
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/disk_element.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/symmetric_roll_pass.py
RENAMED
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/three_roll_pass.py
RENAMED
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/roll_pass/hookimpls/two_roll_pass.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyroll_core-3.0.2 → pyroll_core-3.0.2.post2}/pyroll/core/transport/hookimpls/cooling_pipe.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|