Gas Settings
settings reference for the dynamic drainage volume (ddv) model on gas wells every field on the gas ddv settings input is documented here, in the order a typical review would consider them defaults are tuned to work across a wide range of wells — most wells never need any of these changed, but understanding them helps you diagnose an average reservoir pressure result that looks wrong what this model does the ddv model uses each well's daily rates and pressures to answer two questions how much reservoir volume is this well actually draining , and how has average reservoir pressure declined over time? it does this by matching the well's flowing behavior — fitting the relationship between production and pressure decline, then solving for the drainage volume and pressure history that best explain the observed data the outputs (connected volume, average reservoir pressure over time, remaining pressure support) feed the pi based forecast and downstream optimization because everything is inferred from daily data, data quality drives result quality several settings below exist purely to keep bad days (shut ins, allocation errors, uptime problems) out of the match reservoir pressure initial reservoir pressure tolerance ( initialreservoirpressuretolerance , default 0 02) — how far the model may move initial reservoir pressure away from your configured value while matching history, as a decimal fraction (0 02 = 2%) the match treats your initial pressure as a strong anchor, not an absolute one within the tolerance, the solver will trade a small pressure shift for a better overall match example your initial pressure comes from a recent buildup and you trust it — tighten to 0 01 so the match can't drift from it conversely, if initial pressure was estimated from a regional gradient years ago, opening to 0 05 lets the data speak reservoir pressure fit settings ( reservoirpressurefitsettings ) — starting guess and allowed range (min / base / max for magnitude, early decline, and curvature) for the fitted average reservoir pressure trend all fields default to 0, which means unset the model picks its own starting point from the data only set these when the automatic pressure trend converges somewhere unphysical — for instance, if the fitted pressure declines far faster than offset wells in the same block suggest, you can bound the decline terms to keep the trend in the plausible band fluid handling ignore gas in downhole rate ( perrineignoregas , default off) — the match works on the total downhole hydrocarbon withdrawal, which normally includes the gas phase turning this on removes gas from that calculation entirely for a gas well this is almost never right; the switch exists for unusual fluid systems and diagnostic runs where you suspect the gas contribution is distorting the material balance ignore gas when undersaturated ( perrineignoregasundersaturated , default off) — the conditional version gas is excluded from the downhole rate only on days when the well is above saturation pressure, where no free gas should exist in the reservoir this is the more physically defensible switch when produced gas above the saturation point (for example, gas breaking out in the wellbore rather than the reservoir) is inflating the apparent withdrawal use constant compressibility ( useconstantcompressibility , default on) — with the default, total system compressibility is evaluated once at initial pressure and held constant through the match turned off, compressibility is re evaluated every day from the fluid properties as pressure declines constant compressibility is more stable and accurate enough for modest depletion example a well that has blown down from 6,000 to 2,500 psi — gas compressibility has changed severalfold over that history, so daily re evaluation gives a materially better volume estimate accept the longer run time and switch it off saturation bounds water saturation min / max ( watersaturationmin / watersaturationmax , defaults 0 1 / 0 9) — the range the solver may consider for water saturation when resolving the drainage volume the defaults are deliberately wide they exclude only the non physical extremes example petrophysics puts water saturation at 25–35% in this zone narrowing to 0 2–0 4 removes a family of wrong but well fitting solutions and typically makes the volume answer both faster and more repeatable well to well data quality material balance time filter threshold ( materialbalancetimefilterthreshold , default 5) — screens out days where the well's cumulative production to rate ratio (material balance time) is wildly inconsistent with how long the well has actually been producing when that ratio exceeds the threshold, the day is excluded from the match in practice these are days poisoned by long shut ins, allocation errors, or bad uptime records — exactly the days that drag a match toward the wrong volume example a well with chronic intermittent operation shows a scattered, drifting match — lower the threshold to 3 to discard more of the suspect days if instead the match is starving (too few days surviving the filter on a well with honest but choppy data), raise it fit tuning rate normalized pressure fit settings ( rnpfitsettings ) — the bounds and starting guesses for the core fit of the rate normalized pressure vs material balance time trend each parameter has a min / base (starting guess) / max field what it bounds yimin / yibase / yimax magnitude of the fitted trend at time zero dimin / dibase / dimax how quickly the trend changes early in the history bmin / bbase / bmax curvature of the trend over time the base values are where the solver starts; the min/max are hard walls it cannot cross if a match keeps landing on a bound (the fitted parameter equals its min or max exactly), that's the signal the wall is binding — widen that one bound slightly and re run rather than moving several at once caution the defaults in this group have been finely tuned against a large well population treat them as last resort levers for an individual problem well, not as field wide knobs