- tests/fsi2_embedded3_impulse.rs (new, ignored, cuda): the added-mass timing instrument — the R8-a fluid
with a prescribed centreline velocity step (a one-step acceleration delta), baseline and impulse passes
from one device snapshot, the load difference per step. Pitch shape on the slab ny 62: generalized added
mass 39.11 / 39.09 / 39.07 kg/m at dt x 1 / 0.75 / 0.5, the step after carries 1.7 / 1.3 / 0.9 % above
the steady tail — the cut-cell fluid answers in the same step (the lagged-added-mass hypothesis refuted).
- fsi2_embedded3.rs: `RTX_E3FSI_LINE_CSV` (per-step centreline + mid/bottom/top y per station) showed the
growing 2dt mode is a through-thickness mode — the edge nodes move against the mid-plane nodes (~4:1):
the fluid reads the mid-plane, the loads land on the edges, so the added mass acts on that mode with the
wrong sign (a negative effective added mass; the scalar Newmark model is unstable for it at omega dt
below ~1-2 with gamma 0.7, stable at larger dt or gamma 0.9 — R8-a's observed pattern).
`RTX_E3FSI_KIN=surface` (default off, byte-identical when unset): the fluid's centreline = the mean of
the bottom and top edge nodes (the nodes the loads land on) — dt x 0.75 / 0.5 / 0.25 stable at gamma 0.7.
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
- embedded3 DeviceStep::snapshot/restore (step/device/snapshot.rs): the start-of-step
device fields + the moving body's host records; a restore rebuilds the R6 persistent
geometry/classification, the predictor tables, the hierarchy and the guess basis.
Only called by the new harness (existing paths untouched).
- exchange::set_load_sink: every contribution of the operator load route (p W, wall
shear, diffusive/convective exchange) with position/component/part; None by default,
the routes' sums unchanged (slab ny 62 CSV byte-identical to r6_1/base_slab62.csv).
- rtx-fsi feature cuda (= rtx-cfd/cuda) and tests/fsi2_embedded3.rs: the 2D rtx-fea flag
(35x2 Quad8, TL, Newmark 0.7) drives the capsule's centreline per coupled step; the
route's contributions are distributed onto the wetted nodes per unit span; Aitken
subiterations each re-run the fluid step from the snapshot.
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>