Commit Graph
296 Commits
Author SHA1 Message Date
Omar SobhandClaude Opus 5.5 74fac32a91 R8-e: the coupled 3D FSI's small-dt instability located in the load/kinematics transfer, not a lagged fluid response
- 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]>
2026-09-25 22:11:31 -05:00
Omar SobhandClaude Opus 5.5 171da41ed1 Merge r8a-span-uniform-fsi (R8-a: the first coupled 3D FSI, span-uniform; default-off). Merge fixes: the load-route observers of R8-a (to_load_sink) and R8-c (sink(LoadKind, …)) both kept on the same summands (both inert by default); the harness's DeviceSdf gains plate: None (R8-c's new field). Merged-tree gate: slab ny 62 default / BAND_CHECK / all-host / uniform plate byte-identical to main's base; device suites 2/2, 3/3; the coupled harness reproduces R8-a's recorded slab march row for row (478 rows)
CI / Test (macos-latest) (push) Blocked by required conditions
CI / Test (ubuntu-latest) (push) Blocked by required conditions
CI / Build (macos-latest) (push) Waiting to run
CI / Python Bindings (maturin) (macos-latest) (push) Blocked by required conditions
CI / WASM Build + Size Check (push) Blocked by required conditions
CI / Distributed Training Tests (push) Blocked by required conditions
CI / CI Success (push) Blocked by required conditions
CI / Python Bindings (maturin) (ubuntu-latest) (push) Blocked by required conditions
CI / Clippy Check (push) Failing after 5s
CI / Build CPU-Only (Explicit) (push) Failing after 4s
CI / Format Check (push) Failing after 5s
CI / Build (ubuntu-latest) (push) Failing after 5s
Documentation / Build User Guide (push) Successful in 6s
Performance Benchmarks / Run Benchmarks (push) Successful in 15s
Documentation / Build API Documentation (push) Failing after 17s
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 21:21:40 -05:00
Omar SobhandClaude Opus 5.5 fc73929f8e Merge r8c-3d-interface (R8/R7 phase 1; default-off, verified)
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 21:13:06 -05:00
Omar SobhandClaude Opus 5.5 0ac15dbb3c Merge r7-nested-patch (R8/R7 phase 1; default-off, verified)
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 21:13:06 -05:00
Omar SobhandClaude Opus 5.5 05bf4c74a0 R8-c: drop zero summands from cut_wall_loads; extrapolation diagnostics beyond FAR_OUTSIDE with the worst point
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 20:45:04 -05:00
Omar SobhandClaude Opus 5.5 312ea305c6 R8-b: pin the free-lateral-face path (CSM1 strip, span 0.02)
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 18:26:01 -05:00
Omar SobhandClaude Opus 5.5 11fff74c3d R8-a harness: RTX_E3FSI_RESTORE_CHECK (re-run the accepted candidate from the snapshot)
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 18:15:42 -05:00
Omar SobhandClaude Opus 5.5 0f386df871 R8-a harness: RTX_E3FSI_LOAD_PLANES (the load route on the n mid planes; cost knob, whole span by default)
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 18:14:55 -05:00
Omar SobhandClaude Opus 5.5 9867a8b831 R8-a harness: save/load of the coupled state (continue on the same grid, or extrude the slab onto the full duct)
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 18:14:16 -05:00
Omar SobhandClaude Opus 5.5 12a27c6fca R8-a: span-uniform coupled FSI2 on embedded3 — DeviceStep snapshot/restore, operator-route load sink, harness fsi2_embedded3.rs
- 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]>
2026-09-25 18:11:27 -05:00
Omar SobhandClaude Opus 5.5 9c2ae32061 R8-c: the 3D flag's interface — deformed-plate body (host + device φ/ub) and the conservative load transfer onto a Hex20 plate
- embedded3/plate.rs: PlateSurface (mid-surface on span stations) and the
  host evaluation of DeviceSdf (phi_host / velocity_host / is_flag_host),
  expression for expression e3_geom.cu; a span-uniform plate is the
  polyline capsule to the bit; first-order spanwise-slope correction.
- e3_geom.cu / device/geom.rs: plate branch of geom_phi_at and
  body_velocity (nst = 0 keeps the polyline path unchanged).
- cutwall.rs / exchange.rs: the load loops observed through a sink (sums
  unchanged); interface.rs: Mask::cut_wall_loads (every summand of
  cut_wall_force with its foot), HexPlate (R8-b's Hex20 lattice numbering),
  consistent point-force transfer conserving force and moment to round-off,
  locate() for the transpose, mid_surface() for the fluid body.
- flag test: RTX_E3_FLAG_BODY=plate, _STATIONS, _TWIST, _TRANSFER(_EVERY,
  _CSV, _NODAL); all default off.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 18:03:26 -05:00
Omar SobhandClaude Opus 5.5 508207223a R8-b: 3-D Hex20 flag structure (rtx-fea analysis::flag3d) + plane-strain self-consistency gates
New code only: Flag3d builds the Turek-Hron flag as a structured Hex20
plate (x-major serendipity lattice), the root clamp with free or
plane-strain (u_z = 0) lateral faces, the TL-SVK Newmark analysis with the
2-D harness's settings (beta = (gamma + 1/2)^2/4, 60 Newton), the wetted
Quad8 faces with outward orientation, and consistent nodal forces of a
traction field on the current faces. The dynamic stepper and the TL path
were already dimension-generic; nothing existing changes.

Gates (tests/flag3d_structure.rs): mass = rho V, face-force totals;
plane-strain 3-D reproduces the 2-D 35x2 Quad8 CSM1 to rounding and the
first 60 CSM3 steps to 9e-16 m. Instruments (#[ignore]): CSM1 table,
CSM3 march, modal K/M dump.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 18:01:49 -05:00
Omar SobhandClaude Opus 5.5 d49f2787d9 R7 composite: cut flag threshold, P2 direct comparison against the uniformly fine solution on the patch cells
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 17:55:23 -05:00
Omar SobhandClaude Opus 5.5 e19cad03b2 R7 phase 1: host prototype of the composite Poisson with one nested ratio-2 patch (embedded3::composite; three coarse-fine fluxes, FAC-preconditioned BiCGStab; P1/P1b/P2/P3 gates as ignored tests). Additive module, nothing calls it.
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 17:53:50 -05:00
Omar SobhandClaude Opus 5.5 ec0e4f1573 b4am: prescribed b4 motion on the overset (modal added mass / fluid damping instrument)
- tests/fsi2_b4_added_mass.rs: #[ignore] instrument fsi2_b4_prescribed_mode. The flag's wetted
  surface moves as q(t) phi (phi from B4_MODE, M-orthonormal in-vacuo b4), q = q0 r(t) sin(w t);
  per step the CSV records q, qd, qdd and the generalised fluid force sum_k f_k . phi_k from the
  march's own nodal load (sample_load); optional per-node load CSV. B4_DT overrides the fluid step.
- fsi2_harness/overset.rs: RTX_FSI2O_STILL=1 turns the inflow off (still fluid) while keeping
  u_mean for the CFL step and the solvers' reference flux. Unset = unchanged; gate: a short
  prescribed replay (fsi2_overset_prescribed_motion, ny 62, 185 steps) byte-identical to main.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 10:23:21 -05:00
Omar SobhandClaude Opus 5.5 973274f2c0 Merge the FSI2 flag in-vacuo modal instrument (smodes; test-only, #[ignore])
CI / Build CPU-Only (Explicit) (push) Failing after 10s
Documentation / Build User Guide (push) Successful in 17s
CI / Format Check (push) Failing after 12s
Documentation / Build API Documentation (push) Failing after 18s
Performance Benchmarks / Run Benchmarks (push) Successful in 15s
CI / Build (ubuntu-latest) (push) Failing after 1m34s
CI / Clippy Check (push) Failing after 1m46s
CI / Build (macos-latest) (push) Failing after 6s
CI / Test (macos-latest) (push) Skipped
CI / Test (ubuntu-latest) (push) Skipped
CI / Python Bindings (maturin) (macos-latest) (push) Skipped
CI / Python Bindings (maturin) (ubuntu-latest) (push) Skipped
CI / WASM Build + Size Check (push) Skipped
CI / Distributed Training Tests (push) Skipped
CI / CI Success (push) Failing after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 07:13:28 -05:00
Omar SobhandClaude Opus 5.5 73e4c7513e embedded3 R6-3 default ON: the device Poisson setup (RTX_E3_POISSON_DEVICE=0 restores the host) and the p-only field transfer (RTX_E3_FIELD_P_ONLY=0 restores the full one)
Both held their two-period 3D ny 62 gate on da2945f (default span, CSV
identical to round 3's two-period CSV; with the check: 1176 poisson and 118
hierarchy checks identical, 0 differ).

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 05:15:13 -05:00
Omar SobhandClaude Opus 5.5 da2945fcf5 embedded3 R6-3: the hierarchy rebuild's level 0 on the device (RTX_E3_POISSON_DEVICE=1)
DeviceCg::new_device: level 0 by refresh_device, level 1's operator
coarsened on the device (Level::coarsen per coarse cell, children in
ascending index order) and brought down, levels 1.. by Hierarchy's loop
(Hierarchy::chain_below, export_levels), level 0's children lists on the
device. Falls back to DeviceCg::new when the hierarchy would stop at level 0.
RTX_E3_BAND_CHECK=1: every level against export_hierarchy, the fine
structures as refresh_device's check, the raw components' singular flag.
DeviceCg::new gains profile laps; DeviceVcycle::new split into upload_level +
from_levels, export_hierarchy into export_levels (same code).

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 04:09:51 -05:00
Omar SobhandClaude Opus 5.5 b00f297ef7 embedded3 R6-3: RTX_E3_FIELD_P_ONLY=1 (default off) — the rebuild's field transfer limited to p when the classification and imposition ran on the device
The download waits until the step's rebuild route is known; with the device
mask and device imposition the host rebuild reads and writes only the
pressure (the fresh cells' refill), so u, v, w and the old velocities stay on
the device (their upload wrote back the values just downloaded). Not under
RTX_E3_BAND_CHECK (its references read the whole mirror).

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 03:28:30 -05:00
Omar SobhandClaude Opus 5.5 348f4621d1 embedded3 R6-3: the moving path's Poisson setup on the device (RTX_E3_POISSON_DEVICE=1, default off)
The operator (poisson_operator + merge_small_cells), Level::new's activity,
masked couplings, z links and cell/colour lists, the link CSR, the
components' count and singular count (lock-free union-find), and the f32
fine export with its parent map, built on the device from DeviceCut's
projection tables into the CG's and V-cycle's persistent buffers
(e3_pset.cu, poisson/device_cg/setup.rs). RTX_E3_BAND_CHECK=1 compares every
structure against the host build bit for bit. Fallback to the host setup
(logged once) with gradient weights or a periodic z of <= 2 planes.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 03:25:44 -05:00
Omar SobhandClaude Opus 5.5 66aab2833c rtx-fsi: FSI2 flag in-vacuo modal instrument (smodes, test-only, #[ignore])
fsi2_flag_modes_dump writes the march's structure operators (TL SVK tangent
at u = 0, plane strain; consistent mass; root-clamped free DoFs) per mesh
for an outside eigen-solve; fsi2_flag_free_vibration releases the march's
NonlinearDynamicStepper from a mode shape at a given Newmark gamma and
records the probe's uy(t). Nothing in the march changes.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 03:22:50 -05:00
Omar SobhandClaude Opus 5.5 c860783c81 embedded3 R6-2 step 2: the device ub/impose default ON (RTX_E3_UB_DEVICE=0 restores the host) — its two-period 3D gate held; merged-tree gate: slab ny 62 default / BAND_CHECK / RTX_E3_GEOM_DEVICE=0 all byte-identical to main's base, 0 differs over 2,349 geometry+mask+table and 1,174 ub+impose checks; device suites 2/2, 3/3
Documentation / Build User Guide (push) Successful in 4s
Documentation / Build API Documentation (push) Failing after 4s
CI / Build CPU-Only (Explicit) (push) Failing after 9s
CI / Format Check (push) Failing after 17s
CI / Build (ubuntu-latest) (push) Failing after 3m57s
CI / Clippy Check (push) Failing after 4m24s
Performance Benchmarks / Run Benchmarks (push) Successful in 4m43s
CI / Build (macos-latest) (push) Failing after 5s
CI / Test (macos-latest) (push) Skipped
CI / Test (ubuntu-latest) (push) Skipped
CI / Python Bindings (maturin) (macos-latest) (push) Skipped
CI / Python Bindings (maturin) (ubuntu-latest) (push) Skipped
CI / WASM Build + Size Check (push) Skipped
CI / Distributed Training Tests (push) Skipped
CI / CI Success (push) Failing after 0s
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 02:56:28 -05:00
Omar SobhandClaude Opus 5.5 1bfa0e4334 Merge R4-m: RTX_FSI2O_NODE_CSV — per-node accepted load and displacement along the flag (default off, byte-identical when unset)
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 02:51:49 -05:00
Omar SobhandClaude Opus 5.5 2c054ccc91 embedded3 R6-2 step 2: the band's surface velocity at the foot (ub) and the rebuild's imposition on the device (RTX_E3_UB_DEVICE=1, default off)
e3_geom_ub / e3_geom_impose / e3_geom_seam: the flag body's surface velocity
(DeviceSdf::vel, the centreline's velocity per point) at the foot from the
trilinear interpolant of the device corner phi, and at the face centre for the
band's solid faces of the uploaded field (a cut mask has no ghosts); the host
mirror of ub by a packed download. RTX_E3_BAND_CHECK=1 compares the device ub
with Mask::surface_velocity_at and the imposed u, v, w with impose_from, bit for
bit; check_against now compares ub on every band face (zeros included).

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-25 01:30:29 -05:00
Omar SobhandClaude Opus 5.5 e80b122854 R4-m: RTX_FSI2O_NODE_CSV — per-node accepted load and displacement along the flag every coupled step
Each wetted node's (dx, dy, fx, fy) grouped bottom / tip / top (sidecar
<path>.nodes.csv: group, node, reference x, y, arc length) plus the
centreline uy at s = 1/4 (mean of the two straddling nodes) and 1/2.
Default off; gate on the R4-l line slice 6.0 -> 6.2 s (CPU V-cycle,
floor 7.5e-8, rtol 1e-3): main vs branch knob-off vs knob-on march CSV
and step CSV byte-identical (md5 70dcf484..., dd535386...); the node
sums equal the step CSV's fx_nodal / fy_nodal.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-24 22:36:17 -05:00
Omar SobhandClaude Opus 5.5 6ae5312b6f embedded3 R6-2: the device classification default ON (RTX_E3_MASK_DEVICE=0 restores the host rebuild; needs the device geometry and a CUDA build)
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-24 22:25:49 -05:00
Omar SobhandClaude Opus 5.5 d9847cd818 Merge R6-2: the moving mask's classification, merging, face shifts and GCL table on the device (RTX_E3_MASK_DEVICE=1, default off); on top of R6-1's default-on device geometry. Merge fix: the mask knob requires the geometry not switched off (it required RTX_E3_GEOM_DEVICE=1 before the geometry became the default). Gate on the merged tree: slab ny 62 one period default and mask-on+BAND_CHECK both byte-identical to main's base, 0 differs; device suites 2/2, 3/3
CI / Build (ubuntu-latest) (push) Failing after 4s
CI / Format Check (push) Failing after 5s
CI / Build (macos-latest) (push) Failing after 7s
CI / Test (macos-latest) (push) Skipped
CI / Test (ubuntu-latest) (push) Skipped
CI / Python Bindings (maturin) (macos-latest) (push) Skipped
CI / Python Bindings (maturin) (ubuntu-latest) (push) Skipped
CI / WASM Build + Size Check (push) Skipped
CI / Distributed Training Tests (push) Skipped
CI / CI Success (push) Failing after 0s
Performance Benchmarks / Run Benchmarks (push) Failing after 5s
CI / Clippy Check (push) Failing after 5s
Documentation / Build User Guide (push) Successful in 5s
CI / Build CPU-Only (Explicit) (push) Failing after 9s
Documentation / Build API Documentation (push) Failing after 15s
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-24 22:00:00 -05:00
Omar SobhandClaude Opus 5.5 0150f79a4a embedded3 R6-2: the moving mask's classification on the device (RTX_E3_MASK_DEVICE=1, needs RTX_E3_GEOM_DEVICE=1)
- e3_mask.cu: the changed set (touched by either build, dilated), the faces of
  the changed cells, per changed cell the fluid flag / space-time activity /
  GCL entry and the merging master, per face the kind, the step aperture and
  open flag and the open-part centroid shift (compute_face_shifts' cv
  geometry), the GCL table's wall cells / areas / table with the correction,
  the merged cells' CSR (slave ranks from the master's distinct face
  neighbours), the imposition band's faces; block scans for ascending stream
  compaction and the CSR's exclusive scan. fp64, FMA contraction off.
- step/device/mask.rs DeviceMask: snapshots the previous apertures / volumes /
  evaluated cells before the R6-1 geometry kernels, runs the classification
  into DeviceCut's persistent tables (a, open, open_pred, active,
  active_pred, owner, shift, wall_flux, fold_ptr/fold_idx) and returns the
  compact values (MaskUpdate); the GCL sums in ascending order on the host.
  DeviceCut::update_after_device_mask: only the band's surface velocities
  remain (band list compacted on the device).
- maskupdate.rs: Mask::from_update — the host mirror from the old mask's step
  arrays and merging map (moved) and the mask retired a step earlier
  (instantaneous arrays, pooled), the compact values scattered; incremental
  fluid count / anchor / side check; the fresh-cell refill over the changed set.
- RTX_E3_BAND_CHECK=1 with the knob: the host rebuild on copies (from_cut,
  face shifts, step apertures, merging, GCL, refill) against the mirror, bit
  for bit, and every device table against a full build.
- Knob off: the host path unchanged (Mask::from_parts, Solver::configure_mask
  and retire_mask are the same statements); profile laps under
  RTX_E3_MOVING_PROFILE only.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-24 21:00:25 -05:00
Omar SobhandClaude Opus 5.5 91fbf86026 embedded3 R6-1: the device geometry default ON (RTX_E3_GEOM_DEVICE=0 restores the host build); a body without a device form of φ falls back to the host, logged once, nothing allocated
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-24 18:08:50 -05:00
Omar SobhandClaude Opus 5.5 f5f0ffdd2a embedded3 R6-1: the body's φ and the cut geometry on the device (RTX_E3_GEOM_DEVICE=1)
CI / Format Check (push) Failing after 5s
Performance Benchmarks / Run Benchmarks (push) Failing after 5s
CI / Build (ubuntu-latest) (push) Failing after 6s
Documentation / Build User Guide (push) Successful in 5s
CI / Clippy Check (push) Failing after 4s
Documentation / Build API Documentation (push) Failing after 15s
CI / Build CPU-Only (Explicit) (push) Failing after 24s
CI / Build (macos-latest) (push) Failing after 5s
CI / Test (macos-latest) (push) Skipped
CI / Test (ubuntu-latest) (push) Skipped
CI / Python Bindings (maturin) (macos-latest) (push) Skipped
CI / Python Bindings (maturin) (ubuntu-latest) (push) Skipped
CI / WASM Build + Size Check (push) Skipped
CI / Distributed Training Tests (push) Skipped
CI / CI Success (push) Failing after 0s
- e3_geom.cu: corner φ on the narrow band (the flag test's circle + capsule
  around the step's centreline polyline + span cuts + fillet union), face
  apertures / face-centre φ by the Kuhn triangles, cell volumes by the six
  Kuhn tets and wall vectors by closure — CutGeometry::build_from in fp64,
  host operation order, FMA contraction off.
- Body::with_device_sdf / DeviceSdf: the device form of φ (the host passes the
  polyline per step); the flag wake test attaches it (same arithmetic as its
  closure; the polylines factored out unchanged).
- step/device/geom.rs DeviceGeom: persistent φ / bound / volume / wall buffers;
  the face tables written straight into DeviceCut's predictor apertures and
  distances (update skips their scatters); the host mirror = the band's entries
  gathered compactly onto recycled arrays of retired device generations
  (GeomPool; band-list history) — Mask::from_cut classifies it.
- RTX_E3_BAND_CHECK=1 with the knob: mirror AND device tables against the host
  build_from bit for bit on every refresh.
- Knob off: byte-identical (slab ny 62 one period CSV = main's); host suite 21/21.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-09-24 08:15:34 -05:00
Omar SobhandClaude Fable 5.1 c4a29b557d embedded3 flag wake: RTX_E3_FLAG_CYL_SPAN=flag — the cylinder cut to the flag's span with the flag's rounded edges (the whole body finite in the wider ducts); wall to wall by default, slab gate byte-identical
Performance Benchmarks / Run Benchmarks (push) Failing after 4s
CI / Build CPU-Only (Explicit) (push) Failing after 4s
CI / Clippy Check (push) Failing after 4s
Documentation / Build API Documentation (push) Failing after 5s
CI / Format Check (push) Failing after 18s
Documentation / Build User Guide (push) Successful in 6s
CI / Build (ubuntu-latest) (push) Failing after 1m27s
CI / WASM Build + Size Check (push) Skipped
CI / Distributed Training Tests (push) Skipped
CI / Build (macos-latest) (push) Failing after 12s
CI / Test (macos-latest) (push) Skipped
CI / Test (ubuntu-latest) (push) Skipped
CI / Python Bindings (maturin) (macos-latest) (push) Skipped
CI / Python Bindings (maturin) (ubuntu-latest) (push) Skipped
CI / CI Success (push) Failing after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-23 12:02:49 -05:00
Omar SobhandClaude Fable 5.1 b848d98719 embedded3 flag wake: RTX_E3_FLAG_HEIGHT — the duct's y extent as a knob (default H; the cell size stays H/ny), the body re-centred (body_cy); the inflow paraboloid and the 2D branch follow it; unset-knob slab gate byte-identical
Performance Benchmarks / Run Benchmarks (push) Failing after 4s
Documentation / Build API Documentation (push) Failing after 3s
CI / Format Check (push) Failing after 25s
CI / Clippy Check (push) Failing after 25s
CI / Build CPU-Only (Explicit) (push) Failing after 1m23s
CI / Build (ubuntu-latest) (push) Failing after 4s
Documentation / Build User Guide (push) Successful in 20s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-23 09:26:34 -05:00
Omar SobhandClaude Fable 5.1 e562bf8663 embedded3 flag wake: RTX_E3_FLAG_PHASES (phases per period) and RTX_E3_FLAG_VTK_FROM (the period the export starts at; 0 = the onset from rest) — 3-digit phase names past 100 files
Documentation / Build API Documentation (push) Failing after 5s
CI / Build CPU-Only (Explicit) (push) Failing after 6s
CI / Format Check (push) Failing after 18s
CI / Build (ubuntu-latest) (push) Failing after 5s
Documentation / Build User Guide (push) Successful in 3s
CI / Clippy Check (push) Failing after 41s
Performance Benchmarks / Run Benchmarks (push) Successful in 2m30s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-22 17:24:09 -05:00
Omar SobhandClaude Fable 5.1 f016f0f96f embedded3 flag wake: RTX_E3_FLAG_DEPTH — the duct's z extent as a knob (default H); the inflow paraboloid, the flag's centring and the full/free tag follow it (the wide-duct exploration: the benchmark-span flag with free ends in a 0.82 m duct)
CI / Format Check (push) Failing after 4s
CI / Build (ubuntu-latest) (push) Failing after 5s
Performance Benchmarks / Run Benchmarks (push) Failing after 5s
Documentation / Build User Guide (push) Successful in 4s
CI / Clippy Check (push) Failing after 40s
CI / Build CPU-Only (Explicit) (push) Failing after 1m23s
Documentation / Build API Documentation (push) Failing after 1m25s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-22 13:45:48 -05:00
Omar SobhandClaude Fable 5.1 e9fe155c4b R5 design pass: the curved probe's least-squares reconstruction instrument (fit_terms; RTX_E3_FIT_ORDER=3 cubic) — the candidate cut-face closure's flux truncation against the exact box integrals
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Clippy Check (push) Failing after 3s
Performance Benchmarks / Run Benchmarks (push) Failing after 3s
CI / Format Check (push) Failing after 4s
Documentation / Build User Guide (push) Successful in 4s
CI / Build (ubuntu-latest) (push) Failing after 58s
CI / Build CPU-Only (Explicit) (push) Failing after 1m32s
Documentation / Build API Documentation (push) Failing after 1m34s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-22 08:05:33 -05:00
Omar SobhandClaude Fable 5.1 501b45f9d0 R4-i + R5 design pass: RTX_FSI2O_REGEN_ONCE (one patch regeneration per coupled step; dies at step 0 — the registered test is void), the step CSV's subit/dres_y/dres_norm/fx_nodal/fy_nodal columns; the cut predictor's per-face term probe (enable_term_probe) and the curved instrument's exact side/wall viscous integrals — the static convex wall's flat residual is the viscous closure's first-order relative accuracy on O(1/h) fluxes
CI / Build (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / Build CPU-Only (Explicit) (push) Failing after 4s
CI / Clippy Check (push) Failing after 4s
Documentation / Build User Guide (push) Successful in 4s
CI / Format Check (push) Failing after 12s
CI / Build (ubuntu-latest) (push) Failing after 1m26s
Documentation / Build API Documentation (push) Failing after 1m28s
Performance Benchmarks / Run Benchmarks (push) Successful in 2m7s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-22 07:39:54 -05:00
Omar SobhandClaude Fable 5.1 f5735fdeaa R4-d: the dt²-scaled floor uses the COUPLED step (the first form scaled with the fluid substep); ny 62 check identical to the 3e-5 run
CI / Build (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Format Check (push) Failing after 4s
CI / Clippy Check (push) Failing after 3s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Build (ubuntu-latest) (push) Failing after 4s
Performance Benchmarks / Run Benchmarks (push) Failing after 5s
Documentation / Build User Guide (push) Successful in 7s
CI / Build CPU-Only (Explicit) (push) Failing after 53s
Documentation / Build API Documentation (push) Failing after 54s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-21 21:05:38 -05:00
Omar SobhandClaude Fable 5.1 457c6fa88d R4-d: RTX_FSI2O_TOL_FLOOR_DT2 — the coupling floor scaled with (dt/3.44e-4)² (the FSI3 force spikes are the displacement floor's acceleration noise; R4-c held the scaling at ny 82)
CI / Build (macos-latest) (push) Canceled after 0s
Performance Benchmarks / Run Benchmarks (push) Failing after 4s
CI / Clippy Check (push) Failing after 5s
CI / Build (ubuntu-latest) (push) Failing after 3s
CI / Format Check (push) Failing after 9s
CI / Build CPU-Only (Explicit) (push) Failing after 4s
Documentation / Build API Documentation (push) Failing after 3s
Documentation / Build User Guide (push) Successful in 6s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-21 21:02:11 -05:00
Omar SobhandClaude Fable 5.1 847502f7c3 R2-b: the added-mass pins print the confined target (potential flow 1.071 in the unit box + Stokes 0.064 = 1.135); R4 probe: RTX_FSI2O_STEP_CSV — every step's raw force with the accepted fluid step's overlap defects (the march CSV carries 10-step medians)
CI / Build (macos-latest) (push) Canceled after 0s
CI / Build CPU-Only (Explicit) (push) Failing after 3s
Documentation / Build API Documentation (push) Failing after 4s
Documentation / Build User Guide (push) Successful in 5s
CI / Format Check (push) Failing after 13s
CI / Build (ubuntu-latest) (push) Failing after 1m34s
CI / Clippy Check (push) Failing after 1m45s
Performance Benchmarks / Run Benchmarks (push) Successful in 2m15s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-21 20:22:15 -05:00
Omar SobhandClaude Fable 5.1 83922974d7 R2-b/R3: embedded3_added_mass (the cut-cell added-mass pin, the overset instrument's parameters: n 64/128 C_m 1.087/1.127 vs the confined potential-flow 1.071 + Stokes 0.064 = 1.135, the overset's 1.097/1.127); flag tests: the capsule's tip inset (RTX_E3_FLAG_TIP_INSET, default FLAG_HALF — the apex ON the benchmark's tip A; every earlier record had it 10 mm beyond, =0 restores), root fillet knob RTX_E3_FLAG_FILLET (5 mm: no effect), the tip CSV column = the record's tip in recorded mode
CI / Format Check (push) Failing after 3s
Performance Benchmarks / Run Benchmarks (push) Failing after 4s
CI / Build (ubuntu-latest) (push) Failing after 4s
CI / Clippy Check (push) Failing after 4s
Documentation / Build User Guide (push) Successful in 5s
CI / Build CPU-Only (Explicit) (push) Failing after 58s
Documentation / Build API Documentation (push) Failing after 59s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-21 19:33:59 -05:00
Omar SobhandClaude Fable 5.1 d9239961ad S2-9c: embedded3_flag_reference_2d takes RTX_E3_FLAG_NY (default 62), its dt scaling with h so the reference and the slab march the same step at every rung
CI / Format Check (push) Failing after 4s
CI / Build (ubuntu-latest) (push) Failing after 4s
Documentation / Build API Documentation (push) Failing after 4s
Documentation / Build User Guide (push) Successful in 5s
CI / Build CPU-Only (Explicit) (push) Failing after 1m27s
CI / Clippy Check (push) Failing after 1m46s
Performance Benchmarks / Run Benchmarks (push) Successful in 2m10s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-21 02:24:33 -05:00
Omar SobhandClaude Fable 5.1 3dcafd134f S2-9b: embedded3_flag_wake knobs RTX_E3_FLAG_INFLOW=2d (the slab's 2D parabola, uniform in z) and RTX_E3_FLAG_ZSIDES=slip (SlipWall on z0/z1) — the 3D solver on the 2D problem reproduces the four-cell periodic slab to the digit; the 3D-over-slab drag was the inflow convention
CI / Build (ubuntu-latest) (push) Failing after 4s
CI / Clippy Check (push) Failing after 4s
CI / Format Check (push) Failing after 4s
Performance Benchmarks / Run Benchmarks (push) Failing after 5s
Documentation / Build User Guide (push) Successful in 7s
CI / Build CPU-Only (Explicit) (push) Failing after 54s
Documentation / Build API Documentation (push) Failing after 56s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-20 22:31:35 -05:00
Omar SobhandClaude Fable 5.1 f1714fb926 S2-9: the flag on the recorded FSI2 kinematics — fsi2_overset_dump_centreline (rtx-fsi) exports the saved instants' wetted-node d/ḋ as a centreline per knot (clamp + 70 columns); tests/embedded3_flag_kinematics (cubic Hermite through the knots with their velocities, t = 0 at RTX_E3_FLAG_KIN_T0, a 0.5 s ramp from the undeflected line, arc-length interpolation along the stations) drives both the 3D/slab flag (RTX_E3_FLAG_KINEMATICS, both in-plane surface-velocity components, the record's period) and the 2D reference; the analytic paths unchanged (same tuples)
CI / Build CPU-Only (Explicit) (push) Failing after 4s
Documentation / Build API Documentation (push) Failing after 4s
Documentation / Build User Guide (push) Successful in 6s
CI / Format Check (push) Failing after 13s
CI / Build (ubuntu-latest) (push) Failing after 1m56s
CI / Clippy Check (push) Failing after 2m12s
Performance Benchmarks / Run Benchmarks (push) Successful in 2m54s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-20 21:27:26 -05:00
Omar SobhandClaude Fable 5.1 03a9c9686e embedded3 PERF-3 P1-5 (j): the step apertures, open flags and step activity patched on the changed cells' faces with the old mask's arrays moved over (a face of no changed cell keeps its trapezoid: its corners are untouched in both builds); the touched-cell map stored per build — slab CSV byte-identical, band check passed, device moving/cg green, host suite 21/21; ny 124 rebuild block 1,578 → 1,348 ms per step (refill + apertures + merging 196 → 64)
CI / Format Check (push) Failing after 4s
CI / Build (ubuntu-latest) (push) Failing after 3s
CI / Clippy Check (push) Failing after 5s
Performance Benchmarks / Run Benchmarks (push) Failing after 5s
Documentation / Build User Guide (push) Successful in 6s
Documentation / Build API Documentation (push) Failing after 28s
CI / Build CPU-Only (Explicit) (push) Failing after 1m29s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-20 20:36:07 -05:00
Omar SobhandClaude Fable 5.1 0efb8be745 embedded3 PERF-3 P1-5 (c) part 2 + (d): the device tables persist across steps and are updated in place within the band — one DeviceCut with both phases' aperture / open / activity buffers (the predictor phase is a flag); the faces of the changed cells for apertures, distances, shifts and open flags, the imposition band's faces for the surface velocities, the changed cells for activity and owner, the changed and wall cells for the wall flux, the merged-cell CSR whole; RTX_E3_BAND_CHECK=1 compares every table against a full build (passed); slab CSV byte-identical, device moving/cg green; ny 124 rebuild block 1,910 → 1,578 ms per step (tables 442 → 132)
Documentation / Build API Documentation (push) Failing after 5s
CI / Build CPU-Only (Explicit) (push) Failing after 5s
Documentation / Build User Guide (push) Successful in 5s
CI / Format Check (push) Failing after 17s
CI / Build (ubuntu-latest) (push) Failing after 2m18s
CI / Clippy Check (push) Failing after 2m42s
Performance Benchmarks / Run Benchmarks (push) Successful in 3m6s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-20 18:17:28 -05:00
Omar SobhandClaude Fable 5.1 77fda442c6 embedded3 PERF-3 P1-5 (c) part 1: scatter kernels (e3_scat_{f64,f32,u32,i32}) in the CG module; the refresh's seven f64 coefficient arrays and z links, and the V-cycle fine level's f32 arrays and maps, scattered on the changed rows into persistent buffers (DeviceVcycle::refresh_fine_rows) — slab CSV byte-identical, band check passed, device moving/cg green; ny 124 rebuild block 1,895 → 1,748 ms per step. The first form redirected the V-cycle's own e3_cg_scatter_f64 launch (a replace-all on the launch name) and failed every gate — the symbol table is the first thing to read when adding to a module
CI / Build CPU-Only (Explicit) (push) Failing after 4s
CI / Format Check (push) Failing after 4s
Documentation / Build User Guide (push) Successful in 4s
Documentation / Build API Documentation (push) Failing after 30s
CI / Clippy Check (push) Failing after 1m0s
CI / Build (ubuntu-latest) (push) Failing after 2m53s
Performance Benchmarks / Run Benchmarks (push) Successful in 3m27s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-20 18:09:02 -05:00
Omar SobhandClaude Fable 5.1 e3958fc9c5 embedded3 PERF-3 P1-5 (a)(b): the previous-step aperture/volume records move out of the old mask instead of being cloned; the GCL table over the changed cells and the wall cells (the serial sums with their exact-zero terms left out, same order) — slab flag ny 62 CSV byte-identical, device moving/cg green; ny 124 rebuild block 1,995 → 1,895 ms per step
CI / Format Check (push) Failing after 4s
CI / Build (ubuntu-latest) (push) Failing after 4s
CI / Clippy Check (push) Failing after 4s
Performance Benchmarks / Run Benchmarks (push) Failing after 5s
Documentation / Build User Guide (push) Successful in 7s
CI / Build CPU-Only (Explicit) (push) Failing after 56s
Documentation / Build API Documentation (push) Failing after 56s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-20 17:55:41 -05:00
Omar SobhandClaude Fable 5.1 c6a35a77e2 embedded3 PERF-3 P1-4 step e: Components::summary_planes — the component count and singular flags alone on the device path (no per-cell id / member arrays); slab CSV byte-identical, device moving/cg green; ny 124 rebuild block 2,119 → 1,995 ms per step (components 262 → 156)
CI / Format Check (push) Failing after 11s
Documentation / Build API Documentation (push) Failing after 4s
CI / Clippy Check (push) Failing after 4s
Documentation / Build User Guide (push) Successful in 5s
CI / Build (ubuntu-latest) (push) Failing after 1m27s
CI / Build CPU-Only (Explicit) (push) Failing after 2m28s
Performance Benchmarks / Run Benchmarks (push) Successful in 2m54s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-20 13:54:37 -05:00
Omar SobhandClaude Fable 5.1 fe76413c66 embedded3 PERF-3 P1-4 (steps 1–3 + d): the band-persistent operator — CutGeometry marks re-evaluated corners; Mask::changed_cells (touched by either build, dilated by one); Level::patch re-derives the changed rows with the constructor's formulas on the kept level; the fine export patched likewise with the parent map as a parallel per-cell map; components plane by plane with a small union across planes; Problem::link_map (sparse) replaces the per-cell link lists on the per-step path; RTX_E3_BAND_CHECK=1 compares against full rebuilds (passed on the slab) — slab CSV byte-identical at every step, device moving/cg green; ny 124 rebuild block 2,569 → 2,119 ms per step
CI / Format Check (push) Failing after 4s
CI / Clippy Check (push) Failing after 4s
CI / Build (ubuntu-latest) (push) Failing after 4s
Performance Benchmarks / Run Benchmarks (push) Failing after 7s
Documentation / Build User Guide (push) Successful in 4s
CI / Build CPU-Only (Explicit) (push) Failing after 1m9s
Documentation / Build API Documentation (push) Failing after 1m10s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-20 13:46:33 -05:00
Omar SobhandClaude Fable 5.1 44caeb8110 embedded3 PERF-3 P1-3 (f): the mask build's whole-grid scans as parallel per-entry maps (cell classification with the anchor as the smallest fluid index, the three face-kind tables, the merging scan's small flags, the centroid-shift table per face) — slab flag ny 62 CSV byte-identical, device moving/cg green; ny 124 rebuild block 2,680 → 2,569 ms per step (build_mask 409 → 309)
CI / Build CPU-Only (Explicit) (push) Failing after 4s
Documentation / Build API Documentation (push) Failing after 5s
Documentation / Build User Guide (push) Successful in 4s
CI / Format Check (push) Failing after 14s
CI / Clippy Check (push) Failing after 54s
CI / Build (ubuntu-latest) (push) Failing after 1m44s
Performance Benchmarks / Run Benchmarks (push) Successful in 2m4s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-09-20 12:31:00 -05:00