runningqilin commited on
Commit
6069ba5
·
verified ·
1 Parent(s): e66ba87

docs: total_energy is kinetic + internal, not the run's total (data v0.1.1)

Browse files
Files changed (2) hide show
  1. README.md +5 -5
  2. card.json +15 -1
README.md CHANGED
@@ -34,8 +34,8 @@ root = snapshot_download("StructBench/taylor-impact-2d", repo_type="dataset")
34
  ```
35
 
36
  `cases.csv` lists every case with its split and loading/geometry
37
- parameters plus a SHA-256 manifest; pin the dataset repo's `v0.1.0`
38
- tag (`revision="v0.1.0"` — a data release, independent of the code
39
  version) for reproducible pipelines. Point
40
  `structbench-train --data-root` at the snapshot directory.
41
  Code, benchmark protocol, and leaderboards:
@@ -52,7 +52,7 @@ Autoregressive next-step surrogate of a 2D SPH copper bar under Taylor impact ag
52
  - Source units: g-mm-ms (files are strict SI, ADR-0012)
53
  - Cases: 33 (train 21, val 3, test_interp 6, test_extrap 3)
54
  - Particles per case: 4800-8000; 152 frames at 0.002 ms; 2.4 GB on disk
55
- - Fields: node/displacement, node/velocity, node/acceleration, sph/stress, sph/strain, sph/strain_rate, sph/effective_plastic_strain, sph/pressure, sph/density, sph/internal_energy, sph/mass, sph/radius, sph/n_neighbors, sph/deletion, global/kinetic_energy, global/internal_energy, global/total_energy
56
  - Provenance: LS-DYNA parametric sweep (3 bar lengths x 11 impact velocities) produced by Curtin collaborators; benchmark protocol per ADR-0019. One extra Convergence run is held aside for a mesh-resolution check.
57
  - License: CC BY 4.0
58
 
@@ -90,7 +90,7 @@ One HDF5 file per case, readable with `h5py` or any HDF5 tool. Every quantity is
90
  | `response/element/sph/effective_plastic_strain` | (T, P) | f32 | whatever the material model writes to LS-DYNA's plastic-strain history slot: equivalent plastic strain [–] for elastoplastic models, the K&C concrete model's scaled damage measure (0–2) for `*MAT_CONCRETE_DAMAGE_REL3`, and an unrelated history variable for purely elastic materials (treat as unused) |
91
  | `response/element/sph/{radius, n_neighbors, deletion}` | (T, P) | f32 | smoothing length [m], neighbour count, 0/1 deletion flag |
92
  | `response/element/<other>/…` | (T, E, …) | f32 | per-element response of any further element group |
93
- | `response/global/{kinetic_energy, internal_energy, total_energy}` | (T,) | f32 | [J] |
94
 
95
  `sph/stress` and `sph/strain` are 6-component Voigt tensors; scalar targets are loader-derived (see the card's aux field).
96
 
@@ -116,7 +116,7 @@ from structbench.datasets import load_case_trajectory
116
 
117
  traj = load_case_trajectory("<case_id>.h5", aux_field="von_mises_stress")
118
  traj.positions # (T′, P, d) float32, mm
119
- traj.aux # (T′, P) float32, MPa
120
  traj.time # (T′,) float64, s
121
  ```
122
 
 
34
  ```
35
 
36
  `cases.csv` lists every case with its split and loading/geometry
37
+ parameters plus a SHA-256 manifest; pin the dataset repo's `v0.1.1`
38
+ tag (`revision="v0.1.1"` — a data release, independent of the code
39
  version) for reproducible pipelines. Point
40
  `structbench-train --data-root` at the snapshot directory.
41
  Code, benchmark protocol, and leaderboards:
 
52
  - Source units: g-mm-ms (files are strict SI, ADR-0012)
53
  - Cases: 33 (train 21, val 3, test_interp 6, test_extrap 3)
54
  - Particles per case: 4800-8000; 152 frames at 0.002 ms; 2.4 GB on disk
55
+ - Fields: node/displacement, node/velocity, node/acceleration, sph/stress, sph/strain, sph/strain_rate, sph/effective_plastic_strain, sph/pressure, sph/density, sph/internal_energy, sph/mass, sph/radius, sph/n_neighbors, sph/deletion, shell/stress, shell/effective_plastic_strain, shell/internal_energy, shell/thickness, shell/is_alive, global/kinetic_energy, global/internal_energy, global/total_energy
56
  - Provenance: LS-DYNA parametric sweep (3 bar lengths x 11 impact velocities) produced by Curtin collaborators; benchmark protocol per ADR-0019. One extra Convergence run is held aside for a mesh-resolution check.
57
  - License: CC BY 4.0
58
 
 
90
  | `response/element/sph/effective_plastic_strain` | (T, P) | f32 | whatever the material model writes to LS-DYNA's plastic-strain history slot: equivalent plastic strain [–] for elastoplastic models, the K&C concrete model's scaled damage measure (0–2) for `*MAT_CONCRETE_DAMAGE_REL3`, and an unrelated history variable for purely elastic materials (treat as unused) |
91
  | `response/element/sph/{radius, n_neighbors, deletion}` | (T, P) | f32 | smoothing length [m], neighbour count, 0/1 deletion flag |
92
  | `response/element/<other>/…` | (T, E, …) | f32 | per-element response of any further element group |
93
+ | `response/global/{kinetic_energy, internal_energy, total_energy}` | (T,) | f32 | [J], as the solver's state output writes them. **`total_energy` is `kinetic + internal`**, to float32; it is NOT the run's total energy, because it excludes dissipation terms the solver's own energy ledger carries (rigid-wall work, contact, hourglass, damping). Which of those a given run had is a property of that run: on the Taylor sweep, the only one of these archives whose runs kept an energy ledger, the omission is the rigid-wall work and reaches 0.6-1.2 % of the peak, growing through the run. Do not read this channel as an energy balance: for that, see the verification report at <https://github.com/qilinli/StructBench/blob/main/docs/datachecks/taylor_impact_2d.md>, which reports the balance where the run recorded one |
94
 
95
  `sph/stress` and `sph/strain` are 6-component Voigt tensors; scalar targets are loader-derived (see the card's aux field).
96
 
 
116
 
117
  traj = load_case_trajectory("<case_id>.h5", aux_field="von_mises_stress")
118
  traj.positions # (T′, P, d) float32, mm
119
+ traj.aux # (T′, P, C) float32, MPa (C = 1 here; ADR-0059)
120
  traj.time # (T′,) float64, s
121
  ```
122
 
card.json CHANGED
@@ -45,6 +45,11 @@
45
  "sph/radius",
46
  "sph/n_neighbors",
47
  "sph/deletion",
 
 
 
 
 
48
  "global/kinetic_energy",
49
  "global/internal_energy",
50
  "global/total_energy"
@@ -71,5 +76,14 @@
71
  }
72
  ],
73
  "data_access": "the canonical archive is public on Hugging Face \u2014 [StructBench/taylor-impact-2d](https://huggingface.co/datasets/StructBench/taylor-impact-2d) (CC BY 4.0): one `.h5` per case (the held-aside Convergence run included, `split=held_aside` in the manifest), `cases.csv` (split, loading/geometry parameters, SHA-256 manifest) and the LS-DYNA input decks under `decks/`. Fetch one case with `hf_hub_download` or the whole archive with `snapshot_download` and point `--data-root` at it; pin the dataset repo's `v0.1.0` tag (`revision=\"v0.1.0\"` \u2014 a data release, independent of the code version) for reproducible pipelines. The maintainer's OneDrive copy remains the master (ADR-0040, amended 2026-08-28).",
74
- "data_access_label": "public on Hugging Face \u2014 [StructBench/taylor-impact-2d](https://huggingface.co/datasets/StructBench/taylor-impact-2d)"
 
 
 
 
 
 
 
 
 
75
  }
 
45
  "sph/radius",
46
  "sph/n_neighbors",
47
  "sph/deletion",
48
+ "shell/stress",
49
+ "shell/effective_plastic_strain",
50
+ "shell/internal_energy",
51
+ "shell/thickness",
52
+ "shell/is_alive",
53
  "global/kinetic_energy",
54
  "global/internal_energy",
55
  "global/total_energy"
 
76
  }
77
  ],
78
  "data_access": "the canonical archive is public on Hugging Face \u2014 [StructBench/taylor-impact-2d](https://huggingface.co/datasets/StructBench/taylor-impact-2d) (CC BY 4.0): one `.h5` per case (the held-aside Convergence run included, `split=held_aside` in the manifest), `cases.csv` (split, loading/geometry parameters, SHA-256 manifest) and the LS-DYNA input decks under `decks/`. Fetch one case with `hf_hub_download` or the whole archive with `snapshot_download` and point `--data-root` at it; pin the dataset repo's `v0.1.0` tag (`revision=\"v0.1.0\"` \u2014 a data release, independent of the code version) for reproducible pipelines. The maintainer's OneDrive copy remains the master (ADR-0040, amended 2026-08-28).",
79
+ "data_access_label": "public on Hugging Face \u2014 [StructBench/taylor-impact-2d](https://huggingface.co/datasets/StructBench/taylor-impact-2d)",
80
+ "units_anchors": [
81
+ {
82
+ "kind": "density",
83
+ "si_value": 8900.0,
84
+ "digits": 2,
85
+ "input_quantity": "material:2:density",
86
+ "source_kind": "handbook"
87
+ }
88
+ ]
89
  }