Wellbore Genius

PL3D Fracture-Validation Comparator

Visually compare the fully-planar 3D propagation model's predicted aperture and height-vs-time curves against analytic reference benchmarks.

Switch to non-planar 3D viewer →
PL3D fracture-validation comparator

Visual + residual check of propagatePlanar3D() vs analytic Sneddon references. Picks aperture per bench and height-vs-time growth.

Bookmarks

Single bench (PKN-like)Thick homogeneous pay, no barriers — collapses to PKN-style growth. Source: Analytical Sneddon plane-strain (this lib).

H [ft] = 1000.0
L [ft] = 128.7
A_xs [ft·in] = 942.48
V_wing [bbl] = 1800.0
not converged · 60 iter
Benchmark cache
hits 0
misses 0
hit-rate
LRU run 0/64
LRU compare 0/64
run key
compare key

Aperture w_max [in] vs depth [ft TVD]

06.00 in91009100
reference model

Residual Δw_max [in] vs depth [ft TVD] — NP3D − PL3D

0.0000 in0+0.0000 in91009100
NP3D > PL3D NP3D < PL3D worst: 9100.0 ft · |Δ|=0.00000 in

Height H [ft] vs time t [min]

030 min01000 ft
√t envelope model H(t)
CurveNMAERMSE|max|bias
Aperture [in]10.000000.000000.000000.000001.0000
Height [ft]25341.628428.0841000.000341.628-1.7538
Per-step trends — Single bench (PKN-like)

Δ taken relative to the final (t = t_max) step — shows how each geometric output converges over pump time. 12 steps.

ΔL — half-length residual [ft]min -117.954 ft · max 0.000 ft
0.000-117.95t = 2.5 min30.0 min
ΔH — contained height residual [ft]min 0.000 ft · max 0.000 ft
0.0000.00t = 2.5 min30.0 min
Δw_max — peak aperture residual [in]min 0.000 in · max 0.000 in
0.0000.00t = 2.5 min30.0 min

Combined benchmark summary

Pick any subset of shipped benchmarks. Each row reports headline residuals plus the single worst-layer aperture mismatch (depth, |Δ|, relative).

BenchmarkH [ft]L [ft]Ap MAE [in]Ap RMSE [in]Ap R²H MAE [ft]H R²Worst TVD [ft]Worst |Δw| [in]Worst |Δw|/ref
Single bench (PKN-like)1000.0128.70.000000.000001.0000341.628-1.75380.00000

Results scoreboard: planar-3D vs PKN · KGD · Radial

PL3D is the reference (rank 1, by definition). Classic closed-forms run on the SAME equivalent (q, E', μ, h) reduction and are ranked by |ΔL| vs PL3D.

Rank by:
Bars:
Closest classic match: PKN
Δ% = 309.2%
|ΔL| = 397.9 ft
L_PL3D = 128.7 ft
L_PKN = 526.6 ft
q [m³/s] = 0.15899
E' [Pa] = 2.76e+10
μ [Pa·s] = 0.0500
h [m] = 304.80
t [s] = 1800.0
RankModelL (or R) [ft]w_w [in]p_net [psi]|ΔL| [ft]Δ%Δ% bar
1PL3D (live)
reference
128.76.00000.00.0%
2PKN
closest
526.60.284888397.9309.2%
3Radial530.70.249323402.1312.5%
4KGD541.20.285044412.5320.6%

Bars are normalized to the worst Δ% (relative error) in the current run, so the closest classic wins the visual race even at sub-percent residuals. Ranking key: Δ% (relative).

Per-layer σ_h influence on PL3D vs PKN · KGD · Radial gap

For each σ_h layer we replace its stress with the contained-thickness-weighted mean of the OTHER layers (E' fixed), re-run PL3D, and report how much the |L_PL3D − L_classic| gap shrinks. Positive Δ% means the layer drives the discrepancy; negative means it masks an even larger gap.

Top driver: layer 1 (9000.0 ft, σ_h=6000 psi)
vs PKN: Δgap 0.0 ft (0%)
LayerTop TVD [ft]h [ft]σ_h [psi]σ_h flat [psi]L_PL3D' [ft]Δgap PKN [ft] (Δ%)Δgap KGD [ft] (Δ%)Δgap Radial [ft] (Δ%)
19000.0200.060006000128.70.0 (0%)0.0 (0%)0.0 (0%)

Baseline L_PL3D = 128.7 ft · L_PKN = 526.6 ft · L_KGD = 541.2 ft · L_Radial = 530.7 ft. Rows sorted by Σ |Δgap|.

Non-planar 3D (M4) vs PL3D benchmark comparison

Drives runNonPlanar3DPipeline on the same benchmark and reports ΔL / ΔH / Δw_max vs PL3D, plus M4 totals (branched / welded / max tilt).

[1] Sneddon 1946
[2] PKN — Perkins & Kern 1961; Nordgren 1972
[3] KGD — Geertsma & de Klerk 1969
[4] Radial — Abé, Mura & Keer 1976
[5] Tada, Paris & Irwin 2000
[6] Adachi et al. 2007
Planar-3D assumptions & notes (click to expand)

Aperture kernel. Per-bench plane-strain Sneddon: w_max(L) = 2·max(0, p − σ_h,L)·H / E'_L, with H solved implicitly from K_I = K_IC at the top/bottom tips using the Tada/Sneddon piecewise-constant kernel [1, 5].

Vertical profile. Upper-half-ellipse aperture across each contained bench, integrated as A_xs = Σ (π/4)·w_max(L)·t_L. Two symmetric wings about the wellbore.

Length growth. Leakoff-free volume balance L(t) = q·t / (2·A_xs); Carter leakoff is stubbed off in v1, so PL3D vs PKN/KGD/Radial residuals isolate the layered-σ_h upgrade [6].

Classic baselines. PKN [2] and KGD [3] reduce the layered stack to a single equivalent (q, E', μ, h) tuple (badges above); Radial [4] ignores the contained-height constraint. Single-bench PL3D collapses byte-identically to PKN — drift-guarded in planar3DBenchmarks.test.ts.

Out of scope (v1). Proppant transport, fluid-lag tip region, poroelastic back-stress, and time-varying μ. See /solver-spec §11 for the full inputs / assumptions / limits matrix.