| Well (UWI) | 15-135-24,857-00-00 |
| Log date | Thu Nov 27 23-42-50 2008 |
| Service company | Log Tech |
| Acquisition date (header) | Thu Nov 27 23-42-50 2008 |
| PLSS location | Sec 18 T19S R21W (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 | bd23bea18153 |
| 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.
⚠️ claim verifier FLAGS: 1 number(s) not traceable to the ledger
⚠️ 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)
- net-pay avg PHIE 0.30 > 0.25 — implausibly high for carbonate
The evaluation is restricted to the consolidated section between 1000.0 m and 1330.9 m — the interval above it is not evaluated (unconsolidated, washed-out response). Within that interval the net pay is 2.6 m with average effective porosity 0.304 and average water saturation 0.463. Monte-Carlo places the P50 net pay at 19.7 m within a P10-P90 range of 3.7 to 40.2 m. An independent SP-derived water resistivity of 0.0422 ohm-m (static SP -66.7 mV; offset-median mud-filtrate resistivity 0.110 ohm-m — a declared cross-well assumption) supports the regional default, and the Monte-Carlo Rw range is narrowed to the field SP band with recorded provenance. The Rxo/Rt movable-hydrocarbon index reads a median of 1.596 over 2092 samples — an invasion-based indicator profile, not a saturation. The run ABSTAINS from a confident estimate: the validators keep an unresolved objection, so the result must be read as a bracketed range, not a point value.
Net pay P10 / P50 / P90 = 3.7 / 19.7 / 40.2 m.
Net pay is dominated by 'a', 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 195 |
| hard_range_mask | RMED | count 78 |
| hard_range_mask | RHOB | count 2 |
| hard_range_mask | DRHO | count 3 |
| hard_range_mask | PHID_SVC | count 5 |
| range_warn | GR | count 2 |
| range_warn | RHOB | count 3 |
| range_warn | NPHI | count 25 |
| spike_removal | — | 153 edits |
| degradation | — | — |
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: 1, hard_range_mask: 6, range_warn: 3, spike_removal: 153, 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 | 2-mineral volumetric solve (matrix+clay+porosity from RHOB+NPHI) | vsh_multimineral 0.1.0 |
| PHIE | Density-neutron crossplot, shale-corrected | phie_density_neutron 0.1.0 |
| Sw | Archie 1942 | sw_archie 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.7, n_flagged=797, intervals=[[268.1, 269.9], [273.9, 275.8], [276.3, 276.9], [278.9, 290.9], [291.7, 296.7], [297.3, 333.8], [340.0, 341.5], [354.9, 356.3], [359.8, 361.2], [393.5, 394.4]].
Invasion profile (multi-depth resistivities, 7952 samples): fraction with shallow reading above deep (Rxo/RT > 1.2, invaded/permeable indication): 0.542; reversed (< 0.8): 0.101; median Rxo/RT 1.248; median Rmed/RT 0.966. Raw-curve facts; naming moveable hydrocarbon is the analyst's judgement.
Matrix point-shares (fraction of points near each matrix line): sandstone: 0.077, limestone: 0.071, dolomite: 0.032. 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 agent's; the LLM authors no number):
| Method | Mean Vsh | Selected |
|---|---|---|
| vsh_larionov_old | 0.324 | |
| vsh_larionov_tertiary | 0.252 | |
| vsh_linear | 0.441 | |
| vsh_clavier | 0.310 | |
| vsh_steiber | 0.274 | |
| vsh_neutron_density | 0.001 | |
| vsh_multimineral | 0.001 | ✓ |
Mean porosity by method (effective where shale-corrected; the LLM authors no number):
| Method | Mean porosity | Selected |
|---|---|---|
| phie_density_neutron | 0.290 | ✓ |
| phi_density | 0.395 | |
| phi_neutron | 0.169 |
Service-company porosity curves (cross-check evidence, full-column means): phid_svc: 0.405. Matrix assumptions differ per curve; agreement/disagreement is the analyst's reading.
Mean Sw (Archie 1942) = 0.720 (a=1.00, m=2.00, n=2.00, Rw=0.1657 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.720 | ✓ |
| sw_simandoux | 0.720 | |
| sw_indonesia | 0.720 |
Raw net-pay runs merged into 2 geological intervals (gap tolerance 1.5 m).
| Interval | Top (m) | Base (m) | Net pay (m) | Avg PHIE | Avg Sw | Avg Vsh |
|---|---|---|---|---|---|---|
| Z1 | 1000.4 | 1001.1 | 0.9 | 0.301 | 0.450 | 0.000 |
| Z2 | 1007.2 | 1009.8 | 1.7 | 0.305 | 0.470 | 0.000 |
| Quantity | Value |
|---|---|
| Gross interval | 330.9 m |
| Net pay (P10/P50/P90) | 3.7 / 19.7 / 40.2 m |
| Net-to-gross | 0.008 |
| Avg PHIE (net pay) | 0.304 |
| Avg Sw (net pay) | 0.463 |
| Avg Vsh (net pay) | 0.000 |
Monte Carlo, 500 realizations (seed 42). Net pay swing per parameter (one-at-a-time):
| Parameter | Net-pay swing (m) |
|---|---|
| a | 10.1 |
| Rw | 9.0 |
| m | 7.9 |
| n | 4.0 |
Dominant uncertainty: a (swing 10.1 m).
Multi-seed robustness: P50 stable (spread 1.0 m across 4 seeds).
Net pay is dominated by 'a', which is a regional DEFAULT (uncalibrated). This is the single largest uncertainty — the result is bracketed, not a confident point estimate.
| 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 a — 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: 1, hard_range_mask: 6, range_warn: 3, spike_removal: 153, unit_conversion: 1.
| Validator | Type | Detail |
|---|---|---|
| model_mismatch_nd | mechanical | low-porosity RHOB median 2.09 ~ sandstone (2.65), not assumed rho_ma 2.55 |
| net_pay_plausibility | irreducible | net-pay avg PHIE 0.30 > 0.25 — implausibly high for carbonate |
flowchart TD
dec_1["decision: step: set_zone_of_interest"]
act_1["tool_call: set_zone_of_interest"]
dec_2["decision: step: compare_methods"]
act_2["tool_call: compare_methods"]
dec_3["decision: step: compute_vsh"]
act_3["tool_call: compute_vsh"]
dec_4["decision: step: compute_phie"]
act_4["tool_call: compute_phie"]
dec_5["decision: step: compare_methods"]
act_5["tool_call: compare_methods"]
dec_6["decision: step: compute_sw"]
act_6["tool_call: compute_sw"]
dec_7["decision: step: apply_cutoffs"]
act_7["tool_call: apply_cutoffs"]
dec_8["decision: step: run_uncertainty"]
act_8["tool_call: run_uncertainty"]
dec_9["decision: step: derived_parameters"]
act_9["tool_call: derived_parameters"]
dec_10["decision: step: lithology"]
act_10["tool_call: lithology"]
This is a LAS-only study. Data that would calibrate the interpretation is absent:
900 m bin still unconsolidated (1.98); sustained rock from 1000 m (2.43). N-D clay ~0.07 -> clean carbonate, Archie. Method choices were made against the engine's numeric comparisons, not by preference; the comparison tables show the rejected alternatives beside the selected method. All numbers in this report come from the deterministic engine; the analyst chose the interval, the methods and the analyses, and wrote this prose — nothing more. Remaining uncertainty is dominated by the uncalibrated regional parameters.
{
"net_pay_total_m": 2.5908000000000015,
"net_pay_p10_p50_p90": [
3.657600000000002,
19.735800000000012,
40.24884000000003
],
"driving_params": {
"a": 1.0,
"m": 2.0,
"n": 2.0,
"Rw": 0.04
},
"claim_verifier": {
"result": "FLAGS",
"flags": [
1.98
],
"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 | ✓ |