| Well (UWI) | 15-135-24,881-00-00 |
| Log date | Sat Feb 28 00-46-47 2009 |
| Service company | Log Tech |
| Acquisition date (header) | Sat Feb 28 00-46-47 2009 |
| PLSS location | Sec 12 T20S R22W (map precision ±1.6 km) |
| Larionov variant | old_rocks (degraded) |
| Convergence status | DID_NOT_CONVERGE |
| Confidence tier | ○ BRACKETED |
| Engine versions | calc_vsh 0.1.0 · calc_phie 0.1.0 · calc_sw 0.1.0 · formula_registry 0.1.0 |
| Config hash (SHA-256) | 2a9cb78728e386ab… |
| Git SHA | 7ded80e5dcb3 |
| Generated | autonomously, no human in the per-report loop |
Confidence legend. Each result is tagged by parameter provenance: ● FIRM (core-calibrated) · ◐ QUALIFIED (offset-derived) · ○ BRACKETED (regional/global default — read as a range, dominant uncertainty stated). The system does not claim *always correct*; it states how well-supported each number is.
⚠️ ABSTENTION — this is NOT a confident estimate. The run did not converge to a defensible result; the numbers below are an uncalibrated engineering estimate, reported for transparency only:
- 1 unresolved MECHANICAL objection(s)
⚠️ ABSTENTION — this is NOT a confident estimate. The run did not converge to a defensible result; the numbers below are an uncalibrated engineering estimate, reported for transparency only. One unresolved mechanical objection remains.
Well 15-135-24,881-00-00 encountered a thick gross interval of 1198.2 m but a very lean net-to-gross of 0.042, meaning pay is thinly developed within a predominantly non-reservoir section. Within the net-pay population, average effective porosity of 0.181 and shale volume of 0.168 indicate relatively clean, porous intervals; water saturation averages 0.352, consistent with hydrocarbon-bearing rock where pay is present. Net pay is best expressed as a range: 18.3 m at the P10, 72.3 m at the P50, and 264.9 m at the P90, reflecting substantial uncertainty driven primarily by formation-water resistivity (Rw), which is an uncalibrated regional default with a swing of 69.5 m. This run did not fully converge and carries 1 unresolved mechanical objection, so these results are bracketed estimates rather than a confident point determination.
Net pay P10 / P50 / P90 = 18.3 / 72.3 / 264.9 m. Net pay is dominated by 'Rw', which is a regional DEFAULT (uncalibrated). This is the single largest uncertainty — the result is bracketed, not a confident point estimate.
Net pay P10 / P50 / P90 = 18.3 / 72.3 / 264.9 m.
Net pay is dominated by 'Rw', which is a regional DEFAULT (uncalibrated). This is the single largest uncertainty — the result is bracketed, not a confident point estimate.
| Edit type | Curve | Detail |
|---|---|---|
| unit_conversion | NPHI | factor 0.01 |
| hard_range_mask | RXO | count 1 |
| hard_range_mask | RT | count 117 |
| hard_range_mask | RMED | count 95 |
| hard_range_mask | RHOB | count 1 |
| hard_range_mask | DRHO | count 4 |
| hard_range_mask | PHID_SVC | count 5 |
| range_warn | GR | count 4 |
| range_warn | RHOB | count 4 |
| range_warn | NPHI | count 3 |
| spike_removal | — | 89 edits |
| degradation | — | 3 edits |
Raw mnemonics mapped to canonical curve names:
| Canonical | Raw mnemonic |
|---|---|
| DCAL | DCAL |
| DRHO | RHOC |
| GR | GR |
| NPHI | CNLS |
| PHID_SVC | DPOR |
| RHOB | RHOB |
| RMED | RILM |
| RT | RILD |
| RXO | RLL3 |
| SP | SP |
Unit conversions: NPHI×0.01.
Edits applied before compute (by type): degradation: 3, hard_range_mask: 6, range_warn: 3, spike_removal: 89, unit_conversion: 1.
All numbers are produced by the deterministic, golden-tested engine. The LLM only selects methods/parameters and writes prose — it never computes a number. Figures are deterministic renderings of these computed numbers for the human reader; the agent reasons over the numeric EDA digest, not images (the models have no vision).
| Step | Method (frozen) | Version |
|---|---|---|
| Vsh | Larionov 1969 (old rocks) | vsh_larionov_old 0.1.0 |
| PHIE | Density-neutron crossplot, shale-corrected | phie_density_neutron 0.1.0 |
| Sw | Simandoux 1963 (shaly sand) | sw_simandoux 0.1.0 |
| Net pay | Vsh/PHIE/Sw cutoffs → net sand → net reservoir → net pay | netpay 0.1.0 |
| Uncertainty | Monte Carlo P10/P50/P90 + parameter sensitivity | mc 0.1.0 |
Low-resistivity scan: rt_threshold=1.79, n_flagged=848, intervals=[[278.6, 282.2], [284.2, 339.1], [345.5, 346.7], [361.8, 362.4], [366.8, 367.1], [399.9, 401.7], [419.9, 421.8], [458.6, 458.7], [459.8, 467.4], [478.7, 480.2]].
Invasion profile (multi-depth resistivities, 8471 samples): fraction with shallow reading above deep (Rxo/RT > 1.2, invaded/permeable indication): 0.604; reversed (< 0.8): 0.098; median Rxo/RT 1.301; median Rmed/RT 0.961. Raw-curve facts; naming moveable hydrocarbon is the analyst's judgement.
Matrix point-shares (fraction of points near each matrix line): sandstone: 0.091, limestone: 0.219, dolomite: 0.247. Engine crossplot output; naming the dominant lithology is the analyst's judgement. Comparison with core/mud log: not available (LAS-only).
Composite log

Pickett plot

Neutron-density crossplot

Buckles plot

Hingle plot

Distributions

Sensitivity tornado

Net-pay Monte-Carlo distribution

Mean Vsh by method (selection is the engine's; the LLM authors no number):
| Method | Mean Vsh | Selected |
|---|---|---|
| vsh_larionov_old | 0.364 | ✓ |
| vsh_larionov_tertiary | 0.277 | |
| vsh_linear | 0.495 | |
| vsh_clavier | 0.345 | |
| vsh_steiber | 0.299 | |
| vsh_neutron_density | 0.321 | |
| vsh_multimineral | 0.280 |
Mean porosity by method (effective where shale-corrected; the LLM authors no number):
| Method | Mean porosity | Selected |
|---|---|---|
| phie_density_neutron | 0.086 | ✓ |
| phi_density | 0.129 | |
| phi_neutron | 0.203 |
Service-company porosity curves (cross-check evidence, full-column means): phid_svc: 0.197. Matrix assumptions differ per curve; agreement/disagreement is the analyst's reading.
Mean Sw (Simandoux 1963 (shaly sand)) = 0.662 (a=1.00, m=2.00, n=2.00, Rw=0.0305 ohm-m). Electrical parameters are engine-sourced; alternative Sw models are optional sections.
Mean Sw by method (engine-computed comparison; the LLM authors no number):
| Method | Mean Sw | Selected |
|---|---|---|
| sw_archie | 0.846 | |
| sw_simandoux | 0.662 | ✓ |
| sw_indonesia | 0.652 |
| Parameter | Value | Unit | Provenance | Source |
|---|---|---|---|---|
| gr_min | 20.000 | API | default | — |
| gr_max | 120.000 | API | default | — |
| rho_ma | 2.710 | g/cc | default | Schlumberger 1989 |
| rho_fl | 1.000 | g/cc | default | — |
| phie_max | 0.450 | v/v | default | — |
| phi_sh_d | 0.100 | v/v | default | — |
| phi_sh_n | 0.350 | v/v | default | — |
| a | 1.000 | - | default | Winsauer et al. 1952 |
| m | 2.000 | - | default | Archie, G.E. 1942 |
| n | 2.000 | - | default | Archie, G.E. 1942 |
| Rw | 0.040 | ohm-m | default | Kansas Geological Survey 2000 |
| rt_hydrocarbon_floor | 5.000 | ohm-m | default | — |
| vsh_cutoff | 0.350 | v/v | default | — |
| phie_cutoff | 0.100 | v/v | default | — |
| sw_cutoff | 0.500 | v/v | default | — |
| bit_size_config | 7.875 | in | default | — |
| qc_abort_threshold | 0.800 | - | default | — |
| circuit_breaker_n | 3.000 | - | default | — |
The citations table (not RAG) gives each cited parameter exactly one frozen source. Parameters tagged
defaultare regional/global — they drive the bracketed tier.
Boundary-inclusive criteria applied by the engine (netpay) to flag reservoir:
| Stage | Criterion | Cutoff | Provenance |
|---|---|---|---|
| Net sand | Vsh ≤ cutoff | 0.350 | default |
| Net reservoir | + PHIE ≥ cutoff | 0.100 | default |
| Net pay | + Sw ≤ cutoff | 0.500 | default |
Cutoff values are engine parameters (never LLM-authored); the dominant net-pay uncertainty is Rw — see Uncertainty for the swing.
Curve provenance (canonical ← raw mnemonic): DCAL←DCAL, DRHO←RHOC, GR←GR, NPHI←CNLS, PHID_SVC←DPOR, RHOB←RHOB, RMED←RILM, RT←RILD, RXO←RLL3, SP←SP.
QC edits applied before compute — degradation: 3, hard_range_mask: 6, range_warn: 3, spike_removal: 89, unit_conversion: 1.
| Validator | Type | Detail |
|---|---|---|
| vsh_phie_anticorrelation | support | Vsh-PHIE Pearson 0.96 > 0.3 (dirty rock + high porosity) |
| rt_sw_consistency | mechanical | 114 depths with Sw<0.4 but RT<5.0 ohm-m |
flowchart TD
dec_1["decision: step: depth_quality"]
act_1["tool_call: depth_quality"]
dec_2["decision: step: compare_methods"]
act_2["tool_call: compare_methods"]
dec_3["decision: step: rw_evidence"]
act_3["tool_call: rw_evidence"]
dec_4["decision: step: compare_methods"]
act_4["tool_call: compare_methods"]
dec_5["decision: step: review_attempts"]
act_5["tool_call: review_attempts"]
dec_6["decision: step: mhi_scan"]
act_6["tool_call: mhi_scan"]
dec_7["decision: step: compute_vsh"]
act_7["tool_call: compute_vsh"]
dec_8["decision: step: compare_methods"]
act_8["tool_call: compare_methods"]
dec_9["decision: step: compute_phie"]
act_9["tool_call: compute_phie"]
dec_10["decision: step: compare_methods"]
act_10["tool_call: compare_methods"]
dec_11["decision: step: set_zone_of_interest"]
act_11["tool_call: set_zone_of_interest"]
dec_12["decision: step: compute_sw"]
act_12["tool_call: compute_sw"]
dec_13["decision: wasted no-op: compute_sw"]
dec_14["decision: DETERMINISTIC RECLOSE (stale chain): apply_cutoffs"]
act_13["tool_call: apply_cutoffs"]
dec_15["decision: DETERMINISTIC RECLOSE (stale chain): run_uncertainty"]
act_14["tool_call: run_uncertainty"]
This is a LAS-only study. Data that would calibrate the interpretation is absent:
This well penetrates a thick section of 1198.2 m in which reservoir-quality rock is sparse, yielding a net-to-gross of 0.042. Where pay criteria are met, the rock is relatively clean (Vsh 0.168) and porous (PHIE 0.181), with water saturation of 0.352 suggesting hydrocarbon charge in those intervals. However, the run did not converge, 1 unresolved mechanical objection remains, and the dominant uncertainty — formation-water resistivity (Rw), sourced as an uncalibrated regional default with a 69.5 m swing — propagates into a wide net-pay bracket of 18.3 m (P10) to 264.9 m (P90). These numbers are bracketed estimates for transparency only and should not be treated as a confident point determination. No core, mud log, pressure, or production data were available from the LAS to calibrate or independently validate any parameter.
{
"net_pay_total_m": 50.44440000000003,
"net_pay_p10_p50_p90": [
18.272760000000012,
72.31380000000004,
264.9016800000002
],
"driving_params": {
"a": 1.0,
"m": 2.0,
"n": 2.0,
"Rw": 0.04
},
"claim_verifier": {
"result": "PASS",
"flags": [],
"tone_flags": []
}
}
| Item | Present |
|---|---|
| QC edits recorded before compute | ✓ |
| Every number ledger-traced | ✓ |
| Confidence tier on the run | ✓ |
| Parameter citations frozen | ✓ |
| Validator objections listed, not hidden | ✓ |
| Uncertainty propagated (Monte Carlo) | ✓ |
| Claim verifier run on prose | ✓ |