← petro-agentglm-5.2 + thinking · v14 · ~$2/batch

Petrophysical Interpretation Report — 15-135-25990-00-00

Well (UWI)15-135-25990-00-00
Log date2/11/2018
Service companyPioneer Energy Services
Acquisition date (header)2/11/2018
PLSS locationSec 31 T19S R21W (map precision ±1.6 km)
Larionov variantold_rocks (degraded)
Convergence statusDID_NOT_CONVERGE
Confidence tier○ BRACKETED
Engine versionscalc_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 SHA7ded80e5dcb3
Generatedautonomously, 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.


1. Executive summary

⚠️ 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: 1 unresolved MECHANICAL objection(s). Well 15-135-25990-00-00 encountered a thin, moderately clean reservoir within a 476.0 m gross interval, where net-to-gross is 0.104 and the pay section carries average effective porosity of 0.210, water saturation of 0.331, and shale volume of 0.130. Net pay is bracketed across a wide range — 22.4 m at P10, 47.9 m at P50, and 97.9 m at P90 — because the formation-water resistivity (Rw) used here is an uncalibrated regional default, and its 30.8 m swing is the dominant uncertainty in net pay. Two validator objections were raised, one of them an unresolved mechanical objection, and the interpretation did not converge, so these results should be treated as a provisional bracket rather than a firm point estimate. Net pay P10 / P50 / P90 = 22.4 / 47.9 / 97.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 = 22.4 / 47.9 / 97.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.


2. Data inventory (from LAS)


3. LAS quality control

Edit typeCurveDetail
unit_conversionNPHIfactor 0.01
hard_range_maskPHID_SVCcount 4
hard_range_maskDRHOcount 4
hard_range_maskRTcount 151
hard_range_maskRMEDcount 82
range_warnRHOBcount 4
range_warnNPHIcount 15
spike_removal134 edits
degradation2 edits

4. Standardization

Raw mnemonics mapped to canonical curve names:

CanonicalRaw mnemonic
DCALDCAL
DRHORHOC
GRGR
NPHICNLS
NPHI_DOLCNDL
NPHI_SSCNSS
PHID_SVCDPOR
RHOBRHOB
RMEDRILM
RTRILD
RXORLL3
SPSP

Unit conversions: NPHI×0.01.


5. Per-curve log QC


6. Data preparation

Edits applied before compute (by type): degradation: 2, hard_range_mask: 4, range_warn: 2, spike_removal: 134, unit_conversion: 1.


7. Interval definition


8. Methodology

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).

StepMethod (frozen)Version
VshLarionov 1969 (old rocks)vsh_larionov_old 0.1.0
PHIEDensity-neutron crossplot, shale-correctedphie_density_neutron 0.1.0
SwPoupon-Leveaux 1971 (Indonesia)sw_indonesia 0.1.0
Net payVsh/PHIE/Sw cutoffs → net sand → net reservoir → net paynetpay 0.1.0
UncertaintyMonte Carlo P10/P50/P90 + parameter sensitivitymc 0.1.0

9. Gamma-ray analysis


10. Resistivity analysis

Low-resistivity scan: rt_threshold=1.33, n_flagged=836, intervals=[[292.0, 293.7], [300.7, 356.9], [361.6, 366.4], [418.9, 419.4], [435.1, 435.3], [438.0, 439.8], [478.1, 484.6], [495.3, 496.8], [501.9, 503.1], [508.1, 512.5]].

Invasion profile (multi-depth resistivities, 8346 samples): fraction with shallow reading above deep (Rxo/RT > 1.2, invaded/permeable indication): 0.931; reversed (< 0.8): 0.032; median Rxo/RT 2.380; median Rmed/RT 1.073. Raw-curve facts; naming moveable hydrocarbon is the analyst's judgement.


11. Density-neutron crossplot lithology

Matrix point-shares (fraction of points near each matrix line): sandstone: 0.099, limestone: 0.186, dolomite: 0.167. Engine crossplot output; naming the dominant lithology is the analyst's judgement. Comparison with core/mud log: not available (LAS-only).


12. Water resistivity (Rw)


13. Figures

Composite log

Composite log

Pickett plot

Pickett plot

Neutron-density crossplot

Neutron-density crossplot

Buckles plot

Buckles plot

Hingle plot

Hingle plot

Distributions

Distributions

Sensitivity tornado

Sensitivity tornado

Net-pay Monte-Carlo distribution

Net-pay Monte-Carlo distribution


14. Shale volume (Vsh)

Mean Vsh by method (selection is the engine's; the LLM authors no number):

MethodMean VshSelected
vsh_larionov_old0.275
vsh_larionov_tertiary0.207
vsh_linear0.383
vsh_clavier0.261
vsh_steiber0.228
vsh_neutron_density0.234
vsh_multimineral0.215

15. Water saturation

Mean Sw (Poupon-Leveaux 1971 (Indonesia)) = 0.695 (a=1.00, m=2.00, n=2.00, Rw=0.0265 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):

MethodMean SwSelected
sw_archie0.794
sw_simandoux0.681
sw_indonesia0.695

16. Zonation (net-pay intervals)

Raw net-pay runs merged into 31 intervals (gap tolerance 1.5 m); showing the 15 thickest, depth-ordered. Full set traces in the ledger.

IntervalTop (m)Base (m)Net pay (m)Avg PHIEAvg SwAvg Vsh
Z1900.1900.80.90.2040.4400.078
Z2903.9905.01.10.3150.3120.189
Z3918.5919.10.80.1680.4270.064
Z4933.8936.51.70.2570.2770.163
Z5940.6947.25.00.2560.2960.176
Z6968.0972.83.80.2980.2900.186
Z7996.71000.53.50.2380.2790.185
Z81002.51004.32.00.2790.3440.177
Z91067.61068.61.20.2330.4290.117
Z101079.11081.02.00.2160.2760.197
Z111134.81136.91.40.2070.4640.095
Z121174.91176.21.50.1780.3640.069
Z131200.21201.71.70.1560.3590.206
Z141230.81231.81.20.1440.2010.092
Z151347.21364.916.00.1760.3310.041

17. Results

QuantityValue
Gross interval476.0 m
Net pay (P10/P50/P90)22.4 / 47.9 / 97.9 m
Net-to-gross0.104
Avg PHIE (net pay)0.210
Avg Sw (net pay)0.331
Avg Vsh (net pay)0.130

18. Uncertainty and sensitivity

Monte Carlo, 500 realizations (seed 42). Net pay swing per parameter (one-at-a-time):

ParameterNet-pay swing (m)
Rw30.8
m30.8
a13.3
n6.2

Dominant uncertainty: Rw (swing 30.8 m).

Multi-seed robustness: P50 stable (spread 2.4 m across 4 seeds).

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.


19. Derived parameters


20. Permeability (uncalibrated)

_Uncalibrated screening estimate (no core); Sw used as the Swirr proxy._


21. Electrofacies

Unsupervised k-means on 2567 samples into 4 electrofacies (sample counts: facies 0: 699, facies 1: 434, facies 2: 614, facies 3: 820). Descriptive only — no core labels.


22. Rock quality (uncalibrated)

_Built on the uncalibrated permeability; indicative only._


23. Parameters and provenance

ParameterValueUnitProvenanceSource
gr_min20.000APIdefault
gr_max120.000APIdefault
rho_ma2.710g/ccdefaultSchlumberger 1989
rho_fl1.000g/ccdefault
phie_max0.450v/vdefault
phi_sh_d0.100v/vdefault
phi_sh_n0.350v/vdefault
a1.000-defaultWinsauer et al. 1952
m2.000-defaultArchie, G.E. 1942
n2.000-defaultArchie, G.E. 1942
Rw0.040ohm-mdefaultKansas Geological Survey 2000
rt_hydrocarbon_floor5.000ohm-mdefault
vsh_cutoff0.350v/vdefault
phie_cutoff0.100v/vdefault
sw_cutoff0.500v/vdefault
bit_size_config7.875indefault
qc_abort_threshold0.800-default
circuit_breaker_n3.000-default

The citations table (not RAG) gives each cited parameter exactly one frozen source. Parameters tagged default are regional/global — they drive the bracketed tier.


24. Petrophysical cutoffs

Boundary-inclusive criteria applied by the engine (netpay) to flag reservoir:

StageCriterionCutoffProvenance
Net sandVsh ≤ cutoff0.350default
Net reservoir+ PHIE ≥ cutoff0.100default
Net pay+ Sw ≤ cutoff0.500default

Cutoff values are engine parameters (never LLM-authored); the dominant net-pay uncertainty is Rw — see Uncertainty for the swing.


25. Data quality and validator objections

Curve provenance (canonical ← raw mnemonic): DCAL←DCAL, DRHO←RHOC, GR←GR, NPHI←CNLS, NPHI_DOL←CNDL, NPHI_SS←CNSS, PHID_SVC←DPOR, RHOB←RHOB, RMED←RILM, RT←RILD, RXO←RLL3, SP←SP.

QC edits applied before compute — degradation: 2, hard_range_mask: 4, range_warn: 2, spike_removal: 134, unit_conversion: 1.

ValidatorTypeDetail
vsh_phie_anticorrelationsupportVsh-PHIE Pearson 0.94 > 0.3 (dirty rock + high porosity)
rt_sw_consistencymechanical211 depths with Sw<0.4 but RT<5.0 ohm-m

26. Methodology (decision graph)

flowchart TD
    dec_1["decision: DETERMINISTIC DEFAULT (model empty): compute_vsh"]
    act_1["tool_call: compute_vsh"]
    dec_2["decision: step: depth_quality"]
    act_2["tool_call: depth_quality"]
    dec_3["decision: step: compare_methods"]
    act_3["tool_call: compare_methods"]
    dec_4["decision: step: interval_stats"]
    act_4["tool_call: interval_stats"]
    dec_5["decision: step: set_zone_of_interest"]
    act_5["tool_call: set_zone_of_interest"]
    dec_6["decision: step: compare_methods"]
    act_6["tool_call: compare_methods"]
    dec_7["decision: step: validate_choice"]
    act_7["tool_call: validate_choice"]
    dec_8["decision: step: compute_sw"]
    act_8["tool_call: compute_sw"]
    dec_9["decision: step: apply_cutoffs"]
    act_9["tool_call: apply_cutoffs"]
    dec_10["decision: step: run_uncertainty"]
    act_10["tool_call: run_uncertainty"]
    dec_11["decision: step: lithology"]
    act_11["tool_call: lithology"]
    dec_12["decision: step: derived_parameters"]
    act_12["tool_call: derived_parameters"]
    dec_13["decision: step: permeability"]
    act_13["tool_call: permeability"]
    dec_14["decision: step: electrofacies"]
    act_14["tool_call: electrofacies"]
    dec_15["decision: wasted no-op: compute_sw"]
    dec_16["decision: wasted no-op: permeability"]
    dec_17["decision: step: rw_evidence"]
    act_15["tool_call: rw_evidence"]
    dec_18["decision: wasted no-op: compute_sw"]
    dec_19["decision: wasted no-op: permeability"]
    dec_20["decision: step: rock_quality"]
    act_16["tool_call: rock_quality"]
    dec_21["decision: wasted no-op: lithology"]
    dec_22["decision: wasted no-op: permeability"]
    dec_23["decision: wasted no-op: lithology"]
    dec_24["decision: wasted no-op: compute_sw"]
    dec_25["decision: wasted no-op: permeability"]
    dec_26["decision: step: compare_methods"]
    act_17["tool_call: compare_methods"]

27. Data gaps for calibration

This is a LAS-only study. Data that would calibrate the interpretation is absent:


28. Limitations


29. Conclusions

This interpretation is reported at the BRACKETED confidence tier and did not converge; it carries 1 unresolved mechanical objection among 2 total validator objections. Within a 476.0 m gross interval (net-to-gross 0.104), the pay section averages effective porosity 0.210, water saturation 0.331, and shale volume 0.130. Net pay is 22.4 m at P10, 47.9 m at P50, and 97.9 m at P90. The dominant uncertainty is Rw, sourced as an uncalibrated regional default, with a 30.8 m swing in net pay. Because the run did not converge and Rw is uncalibrated, these numbers constitute a provisional range, not a defensible point estimate. No core, mud-log, pressure, production, or formation-top data were available from the LAS to calibrate or validate these results.


Appendix A — Ledger excerpt (traceability)

{
  "net_pay_total_m": 49.53000000000003,
  "net_pay_p10_p50_p90": [
    22.402800000000013,
    47.85360000000003,
    97.88652000000008
  ],
  "driving_params": {
    "a": 1.0,
    "m": 2.0,
    "n": 2.0,
    "Rw": 0.04
  },
  "claim_verifier": {
    "result": "PASS",
    "flags": [],
    "tone_flags": []
  }
}

Appendix B — Completeness gate

ItemPresent
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