Non-planar 3D solver — tip-kinking viewer
- DFN is off — weld, tilt and NF knobs are ignored by the pipeline.
Kink-angle criterion
Erdogan-Sih is the only criterion shipped in this build. The other two are queued for later milestones (placeholders to lock the UI seam).
Solver knobs
Max kink is persisted via the config card below; the other three are per-session viewer knobs.
Drives per-edge kink from a live Δσ tensor synthesised from the σHmax azimuth field; capped by the curvature limit below so the mesh stays well-resolved.
0 ⇒ forbid curvature (straight-ahead). Per-step cap effectively becomes 25.0° (1 °/ft × 25 ft).
Initial footprint
Last step summary
Drag to orbit · scroll to zoom · right-click to pan. Initial mesh faces are grey; each subsequent timestep's advanced tip row is tinted by the viridis ramp (dark = early, bright = latest).
Opening diagnostics
Centre vs edge collapse-to-planar drift-guard. Sneddon ref = 2·Δp·H·12/E′.
Reference: Δp = 500 psi · E′ = 4.00 ×10⁶ psi · H = 200 ft.
Opening diagnostics — history
Centre/Sneddon ratio (left axis, log) and centre/edge-mean ratio (right axis) per timestep. Green band = Sneddon pass [0.01, 0.1].
σHmax azimuth field
Non-planar 3D solver config
Persisted globally. Applies on next run.
Erdogan-Sih clamp applied to every advancing tip.
Kink angle at which the viewer flags a branching advisory.
Initial triangle edge length for the seed planar mesh.
M2 σ-rotation curvature cap applied inside the propagation loop.
Defaults: enabled · 15° kink · 30° branch · 25 ft · M2 curvature off · 1°/ft cap.
Cross-stage frac-frac merge
Welds fractures from different stages whose tips collide within the snap tolerance. Persisted globally.
Off = diagnostic-only (meshes unchanged). On = snap welded vertex coords into each stage and drop collapsed faces.
Quick presets
Enable cross-stage merge to apply a preset.
Vertex-snap radius for cross-stage frac-frac welds.
Run the cross-stage merge every N propagation steps (≥1).
Skip stage pairs whose index distance is below this value.
Cap pairs visited per cadence tick. 0 = no cap (full C(N,2) sweep).
Run preview
Pipeline will run without any cross-stage frac-frac welds.
Defaults: off · tol 5 ft · cadence 1 step · min stage gap 2.
Merge history preview
Runs the multi-stage pipeline once on a representative scenario and shows how much geometry each cross-stage merge tick changed. Apply- to-stages columns are em-dash when the welder runs diagnostic-only.
Cross-stage merge benchmark
Sweeps boundary-merge wall-clock cost across cadence values on a representative multi-stage scenario (planar rectangles tip-driven toward +x). Run-on-demand · uses performance.now.
Picking a preset overwrites the form fields below. Edit any field to drop into Custom mode.
Each value runs the multi-stage pipeline with cross-stage merge triggered every N steps. Baseline run omits the merge entirely.
Press Run benchmark to start the cadence sweep. Nothing is persisted; results live only in this card.
Microseismic-calibrated conductivity validation
Compare modeled propped k·w(x,y,z) against MS-inverted discs. Coverage = fraction of discs with nearest k·w ≥ threshold; contrast = mean k·w near discs ÷ mean k·w outside.
153 parsed samples
5 parsed discs
- · Modeled proppant placement aligns with microseismic cloud.
DFN-aware branching (M4)
Activate the natural-fracture slip-tendency gate. When critically stressed NFs sit within the proximity radius of the parent tip, a child ribbon is welded onto the mesh as a T-junction; out-of- plane tilt rotates the ribbon away from the parent plane.
Propagation thresholds (Mohr slip-tendency gate)
| Run | Welded vertices | Removed faces | Max |tilt| [°] | L [ft] | w_max [in] | Save |
|---|---|---|---|---|---|---|
| M3 baseline(weld off · tilt 0°) | 0 | 0 | 0.00 | 344.9 | 0.0300 | |
| M4 current(weld on · tilt 0.0°) | 0 | 0 | 0.00 | 344.9 | 0.0300 | |
| Δ (M4 − M3) | +0 | +0 | +0.00 | +0.0 | +0.0000 |
Baseline M3 = current scenario with weld off + tilt = 0°. Byte-identity drift-guarded by m4WeldAndTilt.test.ts.
DFN debug — per-step trace
DFN is off — enable DFN in the right rail to populate the trace.
μ (friction) sensitivity sweep
Re-runs the M4 pipeline across μ ∈ [μ_min, μ_max] and ranks runs by total branching count to surface the slip-tendency hot zone.
Enable DFN-aware branching and the solver to run the sweep.