![]() |
PeriDEM 0.3.0
PeriDEM -- Peridynamics-based high-fidelity model for granular media
|
Functions | |
| int | frame_key (Path p) |
| int | wall_id_from_deck (Path here) |
| load_frame (Path out, int fr, int wall_id) | |
| int | main () |
| tuple[int, float] | wall_id_and_T (Path here, str|None deck_name) |
| int | frame_index (Path p) |
| list[tuple[np.ndarray, int]] | spatial_clusters (np.ndarray X, np.ndarray|None D=None, float link=CLUSTER_LINK, float dam_cut=0.75) |
| load_frames (Path out) | |
Variables | |
| float | R_IN = 0.02 |
| float | R_OUT = 0.021 |
| float | PEN_TOL = 8.0e-5 |
| float | MAX_V = 40.0 |
| float | EARLY_MEAN_DAMAGE_MAX = 0.08 |
| float | MIN_FINAL_DAMAGE = 0.1 |
| int | MIN_DAMAGED_NODES = 10 |
| int | MIN_DAMAGED_PARTICLES = 2 |
| float | MIN_FRAC_DAMAGE = 0.001 |
| AXIS = np.array([0.0, 0.0]) | |
| float | EARLY_DAMAGE_CAP = 0.98 |
| float | EARLY_MEAN_DAMAGE_CAP = 0.25 |
| float | MAX_FINAL_MEAN_DAMAGE = 0.50 |
| int | MIN_DAMAGE_RISE_FRAMES = 1 |
| float | MAX_COM_RADIUS = 0.012 |
| float | MAX_COM_DRIFT = 0.012 |
| float | TETHER_DIST = 1.5e-4 |
| float | TETHER_COM_LIFT = 5.0e-4 |
| float | TETHER_DAMAGE = 0.9 |
| float | CLUSTER_LINK = 1.9e-4 |
| float | MIN_CLUSTER_FRAC = 0.15 |
| float | MIN_CLUSTER_SEP = 6.0e-4 |
| float | MESH_SIZE = 1.0e-4 |
Health gates for attrition sim1 (increased Kn_Factor, R_out=0.021). Containment is measured about the drum axis (0,0) — the rotation center — not the wall-node COM (protrusion biases COM and falsely flags escape). IC also checks that the wall mesh was not translated into the packing.
Health gates for attrition sim2 (thin container, R_out=0.0203). Containment about drum axis (0,0). Wall rotates about an offset, but the cavity geometry is still centered at the origin.
Health gates for ellipse × tip-up triangle. Desired: tip-seeded crack that grows into two spatially separated pieces (not a glued tip tether, not fragment spray).
| int check_health.frame_index | ( | Path | p | ) |
Definition at line 36 of file check_health.py.
Referenced by load_frames().
| int check_health.frame_key | ( | Path | p | ) |
Definition at line 30 of file check_health.py.
Referenced by main(), and wall_id_and_T().
| check_health.load_frame | ( | Path | out, |
| int | fr, | ||
| int | wall_id | ||
| ) |
Definition at line 46 of file check_health.py.
Referenced by main(), and wall_id_and_T().
| check_health.load_frames | ( | Path | out | ) |
Definition at line 83 of file check_health.py.
References frame_index(), load_frames(), main(), and spatial_clusters().
Referenced by load_frames().
| int check_health.main | ( | ) |
Definition at line 78 of file check_health.py.
References frame_key(), load_frame(), main(), and wall_id_from_deck().
Referenced by load_frames(), main(), and wall_id_and_T().
| list[tuple[np.ndarray, int]] check_health.spatial_clusters | ( | np.ndarray | X, |
| np.ndarray | None | D = None, |
||
| float | link = CLUSTER_LINK, |
||
| float | dam_cut = 0.75 |
||
| ) |
Union-find clusters. Highly damaged nodes are removed so a crack is a cut.
Definition at line 41 of file check_health.py.
Referenced by load_frames().
| tuple[int, float] check_health.wall_id_and_T | ( | Path | here, |
| str | None | deck_name | ||
| ) |
Pick wall id / Final_Time from the deck that was actually run.
Definition at line 35 of file check_health.py.
References frame_key(), load_frame(), main(), and wall_id_and_T().
Referenced by wall_id_and_T().
| int check_health.wall_id_from_deck | ( | Path | here | ) |
Definition at line 35 of file check_health.py.
Referenced by main().
| check_health.AXIS = np.array([0.0, 0.0]) |
Definition at line 27 of file check_health.py.
| float check_health.CLUSTER_LINK = 1.9e-4 |
Definition at line 30 of file check_health.py.
| float check_health.EARLY_DAMAGE_CAP = 0.98 |
Definition at line 18 of file check_health.py.
| float check_health.EARLY_MEAN_DAMAGE_CAP = 0.25 |
Definition at line 19 of file check_health.py.
| float check_health.EARLY_MEAN_DAMAGE_MAX = 0.08 |
Definition at line 22 of file check_health.py.
| float check_health.MAX_COM_DRIFT = 0.012 |
Definition at line 24 of file check_health.py.
| float check_health.MAX_COM_RADIUS = 0.012 |
Definition at line 23 of file check_health.py.
| float check_health.MAX_FINAL_MEAN_DAMAGE = 0.50 |
Definition at line 21 of file check_health.py.
| float check_health.MAX_V = 40.0 |
Definition at line 21 of file check_health.py.
| float check_health.MESH_SIZE = 1.0e-4 |
Definition at line 33 of file check_health.py.
| float check_health.MIN_CLUSTER_FRAC = 0.15 |
Definition at line 31 of file check_health.py.
| float check_health.MIN_CLUSTER_SEP = 6.0e-4 |
Definition at line 32 of file check_health.py.
| int check_health.MIN_DAMAGE_RISE_FRAMES = 1 |
Definition at line 22 of file check_health.py.
| int check_health.MIN_DAMAGED_NODES = 10 |
Definition at line 24 of file check_health.py.
| int check_health.MIN_DAMAGED_PARTICLES = 2 |
Definition at line 25 of file check_health.py.
| float check_health.MIN_FINAL_DAMAGE = 0.1 |
Definition at line 23 of file check_health.py.
| float check_health.MIN_FRAC_DAMAGE = 0.001 |
Definition at line 26 of file check_health.py.
| float check_health.PEN_TOL = 8.0e-5 |
Definition at line 20 of file check_health.py.
| float check_health.R_IN = 0.02 |
Definition at line 18 of file check_health.py.
| float check_health.R_OUT = 0.021 |
Definition at line 19 of file check_health.py.
| float check_health.TETHER_COM_LIFT = 5.0e-4 |
Definition at line 27 of file check_health.py.
| float check_health.TETHER_DAMAGE = 0.9 |
Definition at line 28 of file check_health.py.
| float check_health.TETHER_DIST = 1.5e-4 |
Definition at line 26 of file check_health.py.