All data sources

Petroleum Calcs

Unknown authpetroleum-calcs

Petroleum-engineering calculations, pure compute, no data source, no auth. Deterministic correlations in field units (Rs scf/STB, pressure psia, temp °F, API °API). Pairs with production/well data connectors (rrc, enverus, welldatabase) to turn raw data into engineering answers. 550+ methods across: PVT, gas/oil/water properties, EOS (Peng-Robinson/SRK flash), decline-curve (Arps + SEDM/PLE/LGM/Duong), IPR (Vogel/Fetkovich/Joshi), VFP multiphase lift (Beggs-Brill/Hagedorn-Brown/Gray), material balance, well-test/PTA, SCAL, hydraulic fracturing, surface facilities, flow assurance, artificial lift (ESP/rod/gas-lift), petrophysics/log analysis (Archie), drilling hydraulics, geomechanics/pore pressure, reserves and economics (NPV/IRR), tubular design, and ~100 unit conversions.

Provenance

PublisherPetroleum Calcs

Freshness & coverage

FreshnessFreshness not declared
GeographicNot declared
TemporalNot declared
AuthenticationNo credentials required

Methods (552)

  • pvt_bubblePoint

    unknown

    Oil bubble-point pressure (Standing or Vasquez-Beggs).

    Inputs: Rs, gasGravity, apiGravity, tempF, correlation. -> pb_psia.

  • pvt_solutionGOR

    unknown

    Solution GOR Rs at pressure (Standing or Vasquez-Beggs).

    Inputs: P, gasGravity, apiGravity, tempF, correlation. -> rs_scf_stb.

  • pvt_oilFVF

    unknown

    Saturated oil FVF Bo (Standing or Vasquez-Beggs).

    Inputs: Rs, gasGravity, apiGravity, tempF, correlation. -> bo_rb_stb.

  • pvt_deadOilViscosity

    unknown

    Dead-oil viscosity, Beggs-Robinson (1975), cp.

    Inputs: apiGravity, tempF. Returns mu_od_cp.

  • pvt_oilViscosity

    unknown

    Live oil viscosity (Beggs-Robinson; undersaturated via Vasquez).

    Inputs: Rs, apiGravity, tempF; +pressure & bubblePoint for P>Pb.

  • pvt_gasPseudoCriticals

    unknown

    Gas pseudo-criticals Ppc/Tpc from gravity, Sutton (1985).

    Inputs: gasGravity. Returns ppc_psia, tpc_R.

  • pvt_gasZ

    unknown

    Gas Z-factor, Dranchuk-Abou-Kassem (1975) + Sutton criticals.

    Inputs: P, tempF, gasGravity. Returns z.

  • pvt_gasFVF

    unknown

    Gas formation volume factor Bg (rcf/scf) from DAK Z.

    Inputs: P, tempF, gasGravity. Returns bg_rcf_scf.

  • pvt_gasViscosity

    unknown

    Gas viscosity, Lee-Gonzalez-Eakin (1966), cp.

    Inputs: P, tempF, gasGravity. Returns mu_g_cp.

  • dca_arpsRate

    unknown

    Arps (1945) decline rate q(t): exponential/hyperbolic/harmonic.

    Inputs: qi, Di, b (0..1), t. b=0 exp, b=1 harmonic.

  • dca_arpsCum

    unknown

    Arps (1945) cumulative production Np(t).

    Inputs: qi, Di, b (0..1), t. Returns np.

  • dca_arpsEUR

    unknown

    Arps EUR to an economic-limit rate qLimit.

    Inputs: qi, Di, b, qLimit. Returns eur.

  • dca_arpsFit

    unknown

    Fit Arps qi/Di/b to rate-time data by least squares.

    Inputs: t[], q[] (>=3 pts). Returns qi, Di, b, rmse, r2.

  • dca_modHypRate

    unknown

    Modified-hyperbolic (Robertson) rate with terminal exponential.

    Inputs: qi, Di, b, Dlim (<Di), t. Returns q, segment, tLim.

  • dca_modHypEUR

    unknown

    Modified-hyperbolic EUR to an economic-limit rate qLimit.

    Inputs: qi, Di, b, Dlim, qLimit. Returns eur.

  • dca_duongRate

    unknown

    Duong (2011) rate for fracture-dominated shale decline.

    Inputs: q1, a, m, t. Returns q.

  • pvt_water_fvf_mccain

    unknown

    Water formation volume factor Bw (McCain 1990).

    Inputs: p, T.

  • pvt_water_rsw_mccain

    unknown

    Solution gas-water ratio Rsw (McCain 1990), scf/bbl.

    Inputs: p, T, salinity_wt?.

  • pvt_water_compressibility_undersaturated_mccain

    unknown

    Water isothermal compressibility - gas-free (undersaturated) (McCain 1990), 1/psi.

    Inputs: p, T, salinity_mgL?.

  • pvt_water_compressibility_saturated_mccain

    unknown

    Water isothermal compressibility - gas-saturated (McCain 1990), 1/psi.

    Inputs: cw_gasfree, Rsw.

  • pvt_water_viscosity_mccain

    unknown

    Brine (water) viscosity (McCain 1990), cp.

    Inputs: p, T, salinity_wt?.

  • pvt_water_density_mccain

    unknown

    Brine density at reservoir conditions (McCain 1990), lb/ft³.

    Inputs: salinity_wt, Bw.

  • pvt_ift_gas_oil_baker_swerdloff

    unknown

    Dead-oil gas-oil interfacial tension (Baker & Swerdloff, 1956), dynes/cm.

    Inputs: API, T, p.

  • pvt_ift_gas_oil_abdul_majeed

    unknown

    Gas-oil interfacial tension (Abdul-Majeed & Abu Al-Soof, 2000), dynes/cm.

    Inputs: API, T, Rs.

  • pvt_wichert_aziz_correction

    unknown

    Wichert-Aziz (1972) non-hydrocarbon (H2S/CO2) correction to pseudo-criticals.

    Inputs: Tpc, Ppc, yCO2?, yH2S?.

  • pvt_bubble_point_glaso

    unknown

    Glaso (1980) bubble-point pressure, psia.

    Inputs: Rs, gas_sg, API, T.

  • pvt_bubble_point_al_marhoun

    unknown

    Al-Marhoun (1988) bubble-point pressure, psia (Saudi/Middle-East crudes).

    Inputs: Rs, gas_sg, API, T.

  • pvt_bubble_point_petrosky_farshad

    unknown

    Petrosky-Farshad (1993) bubble-point pressure, psia (Gulf of Mexico).

    Inputs: Rs, gas_sg, API, T.

  • pvt_solution_gor_glaso

    unknown

    Glaso (1980) solution GOR Rs at p ≤ Pb, scf/STB (inverse of the Pb form).

    Inputs: p, gas_sg, API, T.

  • pvt_oil_fvf_glaso

    unknown

    Glaso (1980) oil formation volume factor Bo at/below Pb, rb/STB.

    Inputs: Rs, gas_sg, API, T.

  • pvt_oil_fvf_al_marhoun

    unknown

    Al-Marhoun (1988) oil formation volume factor Bo, rb/STB.

    Inputs: Rs, gas_sg, API, T.

  • pvt_oil_fvf_petrosky_farshad

    unknown

    Petrosky-Farshad (1993) oil formation volume factor Bo, rb/STB (GOM).

    Inputs: Rs, gas_sg, API, T.

  • pvt_bubble_point_dindoruk_christman

    unknown

    Dindoruk-Christman (2004) bubble-point pressure, psia (GOM crudes).

    Inputs: Rs, gas_sg, API, T.

  • pvt_oil_compressibility_undersaturated_vasquez_beggs

    unknown

    Undersaturated oil isothermal compressibility (Vasquez-Beggs, 1980), 1/psi.

    Inputs: Rsb, T, gas_sg, API, p.

  • pvt_oil_compressibility_saturated_villena_lanzi

    unknown

    Saturated (below-Pb) oil isothermal compressibility.

    Inputs: p, T, API, Rsb.

  • pvt_dead_oil_viscosity_glaso

    unknown

    Glaso (1980) dead-oil viscosity, cp.

    Inputs: API, T.

  • pvt_dead_oil_viscosity_egbogah

    unknown

    Egbogah-Jack (1990) dead-oil viscosity, cp (Egbogah-Ng modified Beggs-Robinson).

    Inputs: API, T.

  • mbe_pz

    unknown

    p/z plotting variable. p/z = p/z. [Craft & Hawkins Ch.6]

    Inputs: p, z.

  • mbe_ogip_from_pz

    unknown

    OGIP from p/z material balance: G = Gp/(1 - (p/z)/(p_i/z_i)). [Craft & Hawkins Ch.6]

    Inputs: p_i, z_i, p, z, Gp.

  • mbe_pz_geopressured

    unknown

    Modified p/z for geopressured gas (Ramagost & Farshad, SPE 10125).

    Inputs: p, z, p_i, c_w, c_f, S_wi.

  • mbe_gas_Gp_at_pressure

    unknown

    Predict Gp at pressure (volumetric gas): Gp = G*(1 - (p/z)/(p_i/z_i)).

    Inputs: G, p_i, z_i, p, z.

  • mbe_gas_pressure_at_Gp

    unknown

    Predict pressure at Gp (volumetric gas): p/z = (p_i/z_i)*(1 - Gp/G).

    Inputs: G, p_i, z_i, Gp, z?.

  • mbe_gas_recovery_factor

    unknown

    Ultimate gas recovery factor at abandonment: RF = 1 - (p_a/z_a)/(p_i/z_i).

    Inputs: p_i, z_i, p_a, z_a.

  • mbe_Bt

    unknown

    Two-phase FVF Bt = Bo + (Rs_i - Rs)*Bg.

    Inputs: Bo, Bg, Rs_i, Rs.

  • mbe_withdrawal_F

    unknown

    Underground withdrawal F (Havlena-Odeh): F = Np*[Bo+(Rp-Rs)*Bg]+Wp*Bw, Rp=Gp/Np.

    Inputs: Np, Gp, Bo, Bg, Rs, Wp?, Bw?.

  • mbe_Eo

    unknown

    Oil + dissolved-gas expansion Eo = (Bo-Bo_i)+(Rs_i-Rs)*Bg.

    Inputs: Bo, Bo_i, Bg, Rs_i, Rs.

  • mbe_Eg

    unknown

    Gas-cap expansion Eg = Bt_i*(Bg/Bg_i - 1).

    Inputs: Bt_i, Bg, Bg_i.

  • mbe_Efw

    unknown

    Formation+water expansion Efw = (1+m)*Bt_i*[(c_w*S_wi+c_f)/(1-S_wi)]*(p_i-p).

    Inputs: m, Bt_i, c_w, c_f, S_wi, p_i, p.

  • mbe_co_undersaturated

    unknown

    Undersaturated oil compressibility: c_o = -(Bo-Bo_i)/(Bo_i*(p-p_i)).

    Inputs: Bo_i, Bo, p_i, p.

  • mbe_cg

    unknown

    Real-gas compressibility: c_g = 1/p - (1/z)*(dz/dp) (or 1/p ideal).

    Inputs: p, z?, dz_dp?.

  • mbe_ct_total

    unknown

    Total system compressibility: c_t = c_o*S_o + c_w*S_w + c_g*S_g + c_f.

    Inputs: c_o, S_o, c_w, S_w, c_g?, S_g?, c_f.

  • mbe_ce_undersaturated

    unknown

    Effective undersaturated-oil compressibility: c_e = (c_o*S_o+c_w*S_wi+c_f)/(1-S_wi).

    Inputs: c_o, S_o, c_w, S_wi, c_f.

  • mbe_fetkovich_J_radial

    unknown

    Fetkovich radial J = 0.00708*k*h*f/(mu_w*(ln(r_aR)-0.75)).

    Inputs: k, h, mu_w, r_aR, f?.

  • mbe_fetkovich_J_linear

    unknown

    Fetkovich linear J = 0.001127*k*w*h/(mu_w*L).

    Inputs: k, w, h, mu_w, L.

  • mbe_fetkovich_Wei

    unknown

    Fetkovich max encroachable water Wei = c_t*W_i*p_i.

    Inputs: c_t, W_i, p_i.

  • mbe_fetkovich_Wi_radial

    unknown

    Fetkovich initial aquifer water volume (radial): W_i = (pi/5.615)*(r_a^2-r_o^2)*h*phi*f.

    Inputs: r_a, r_o, h, phi, f?.

  • mbe_fetkovich_avg_pressure

    unknown

    Fetkovich average aquifer pressure: p_aq = p_i*(1 - We/Wei).

    Inputs: p_i, We, Wei.

  • mbe_fetkovich_influx_step

    unknown

    Fetkovich incremental influx step: dWe = (Wei/p_i)*(p_a_prev - p_R)*[1-exp(-J*p_i*dt/Wei)].

    Inputs: Wei, p_i, p_a_prev, p_R, J, dt, We_prev?.

  • mbe_schilthuis_rate

    unknown

    Schilthuis steady-state rate: q_w = C*(p_i - p).

    Inputs: C, p_i, p.

  • mbe_schilthuis_We

    unknown

    Schilthuis cumulative influx: We = C*Σ(p_i - p_j)*dt_j.

    Inputs: C, p_i, pressures, dt.

  • mbe_veh_dimensionless

    unknown

    van Everdingen-Hurst dimensionless r_D, t_D (t in days), aquifer constant U.

    Inputs: r_a, r_o, k, t, phi, mu_w, c_t, h, f?.

  • mbe_veh_We

    unknown

    vEH water influx (single Δp step): We = U*Δp*Q(t_D).

    Inputs: U, dp, Q_tD.

  • mbe_pot_aquifer

    unknown

    Pot aquifer: pore volume W_aq and instantaneous influx We = (c_w+c_f)*W_aq*(p_i-p).

    Inputs: r_a, r_o, h, phi, c_w, c_f, p_i, p, f?.

  • scal_brooksCoreyPc

    unknown

    Brooks-Corey capillary pressure from water saturation (drainage).

    Inputs: Sw, Swi, Pd, lambda.

  • scal_brooksCoreySw

    unknown

    Brooks-Corey water saturation from capillary pressure (inverse).

    Inputs: Pc, Swi, Pd, lambda.

  • scal_vanGenuchtenPc

    unknown

    van Genuchten capillary pressure from water saturation.

    Inputs: Sw, Swr, alpha, n, m?.

  • scal_vanGenuchtenSw

    unknown

    van Genuchten water saturation from capillary pressure (inverse).

    Inputs: Pc, Swr, alpha, n, m?.

  • scal_leverettJ

    unknown

    Leverett J-function from capillary pressure.

    Inputs: Pc, sigma, theta, k, phi, constant?.

  • scal_leverettPc

    unknown

    Capillary pressure from Leverett J-function (inverse).

    Inputs: J, sigma, theta, k, phi, constant?.

  • scal_normalizedWaterSaturation

    unknown

    Normalized water saturation (Corey/effective saturation) for a water-oil system.

    Inputs: Sw, Swc, Sorw.

  • scal_coreyKrw

    unknown

    Corey water relative permeability (water-oil system).

    Inputs: Sw, Swc, Sorw, nw, krwMax?.

  • scal_coreyKro

    unknown

    Corey oil relative permeability (water-oil system).

    Inputs: Sw, Swc, Sorw, no, kroMax?.

  • scal_coreyKrg

    unknown

    Corey gas relative permeability (gas-oil / gas-liquid system, drainage).

    Inputs: Sg, Sgc, Sorg, Swc, ng, krgMax?.

  • scal_newmanCfSandstone

    unknown

    Newman (1973) pore-volume compressibility - consolidated sandstone correlation.

    Inputs: phi.

  • scal_newmanCfLimestone

    unknown

    Newman (1973) pore-volume compressibility - consolidated limestone correlation.

    Inputs: phi.

  • scal_hallCf

    unknown

    Hall (1953) pore-volume (formation) compressibility correlation.

    Inputs: phi.

  • scal_amottHarveyIndex

    unknown

    Amott-Harvey wettability index.

    Inputs: Vwsp, Vwf, Vosp, Vof.

  • scal_oilSaturation

    unknown

    Total saturation closure check / oil saturation helper.

    Inputs: Sw, Sg?.

  • frac_plane_strain_modulus

    unknown

    Plane-strain modulus E' = E/(1-nu^2). [Economides & Nolte, Reservoir Stimulation 3rd ed.]

    Inputs: E, nu.

  • frac_pkn_width_wellbore

    unknown

    PKN wellbore (max) fracture width.

    Inputs: q, mu, xf, Eprime.

  • frac_pkn_width_average

    unknown

    PKN average fracture width. w_avg = (pi/4)*(4/5)*w_w ≈ 0.628*w_w.

    Inputs: q, mu, xf, Eprime.

  • frac_pkn_net_pressure

    unknown

    PKN net (treating) pressure at wellbore.

    Inputs: Eprime, width_ft, hf.

  • frac_pkn_volume

    unknown

    PKN fracture volume (one wing pair, two wings, total) using ellipsoidal cross-section.

    Inputs: xf, hf, width_avg_ft.

  • frac_pkn_halflength_noleakoff

    unknown

    PKN fracture half-length WITHOUT leakoff (efficiency = 1): all injected fluid stored.

    Inputs: q, t, hf, width_avg_ft.

  • frac_pkn_halflength_leakoff

    unknown

    PKN fracture half-length WITH Carter leakoff (Carter 1957 area-balance, approximate).

    Inputs: q, t, hf, width_avg_ft, CL.

  • frac_kgd_width_wellbore

    unknown

    KGD wellbore (max) width.

    Inputs: q, mu, xf, hf, Eprime.

  • frac_kgd_width_average

    unknown

    KGD average width. w_avg = (pi/4)*w_w (elliptical horizontal cross-section).

    Inputs: q, mu, xf, hf, Eprime.

  • frac_kgd_net_pressure

    unknown

    KGD net pressure. p_net = E'*w_w/(2*x_f) (plane-strain in horizontal plane).

    Inputs: Eprime, width_ft, xf.

  • frac_kgd_volume

    unknown

    KGD fracture volume. V_f = 2*x_f*h_f*w_avg [ft^3]. [volume balance]

    Inputs: xf, hf, width_avg_ft.

  • frac_kgd_halflength_noleakoff

    unknown

    KGD half-length WITHOUT leakoff. x_f = q*t/(2*h_f*w_avg) [ft]. [volume balance]

    Inputs: q, t, hf, width_avg_ft.

  • frac_kgd_halflength_leakoff

    unknown

    KGD half-length WITH Carter leakoff (area balance, approximate).

    Inputs: q, t, hf, width_avg_ft, CL.

  • frac_radial_width_wellbore

    unknown

    Radial (penny-shaped) wellbore (max) width.

    Inputs: q, mu, R, Eprime.

  • frac_radial_width_average

    unknown

    Radial average width. w_avg = (8/(3*pi))*w_w ≈ 0.849*w_w (Sneddon penny crack).

    Inputs: q, mu, R, Eprime.

  • frac_radial_net_pressure

    unknown

    Radial net pressure. p_net = (pi/2)*E'*w_w/(4*R) ≈ Sneddon penny-crack relation.

    Inputs: Eprime, width_ft, R.

  • frac_radial_volume

    unknown

    Radial fracture volume. V_f = (2/3)*pi*R^2*w_w (penny-shaped, Sneddon ellipsoidal)

    Inputs: R, width_avg_ft.

  • frac_radial_radius_noleakoff

    unknown

    Radial fracture radius WITHOUT leakoff. q*t = pi*R^2*w_avg -> R = sqrt(q*t/(pi*w_avg)).

    Inputs: q, t, width_avg_ft.

  • frac_radial_radius_leakoff

    unknown

    Radial fracture radius WITH Carter leakoff (area balance, approximate).

    Inputs: q, t, width_avg_ft, CL.

  • frac_leakoff_Cv

    unknown

    Viscosity-controlled leakoff coefficient C_v (filtrate invasion, Carter region I).

    Inputs: k, phi, dp, mu.

  • frac_leakoff_Cc

    unknown

    Compressibility-controlled (reservoir) leakoff coefficient C_c (Carter region III).

    Inputs: dp, k, phi, ct, mu.

  • frac_leakoff_combined

    unknown

    Combined Carter leakoff coefficient from series resistances.

    Inputs: Cv, Cc, Cw?.

  • frac_leakoff_velocity

    unknown

    Carter leakoff velocity at exposure time tau: u_L = C_L / sqrt(tau) [ft/min].

    Inputs: CL, tau.

  • frac_leakoff_volume

    unknown

    Cumulative Carter leakoff volume per unit fracture area exposed for time t.

    Inputs: CL, t, area, Sp?, faces?.

  • frac_fluid_efficiency

    unknown

    Fluid efficiency eta = V_fracture / V_injected (stored fraction).

    Inputs: V_fracture, V_injected.

  • frac_proppant_stokes_velocity

    unknown

    Stokes terminal (single-particle) settling velocity in laminar regime (Re<1).

    Inputs: dp_in, rho_p, rho_f, mu.

  • frac_proppant_hindered_velocity

    unknown

    Hindered settling (Richardson & Zaki 1954): v_h = v_s * (1 - C)^n.

    Inputs: vs, C, n?.

  • frac_proppant_reynolds

    unknown

    Particle Reynolds number Re_p = rho_f * v * d_p / mu (dimensionless).

    Inputs: rho_f, v_ft_s, dp_in, mu.

  • frac_proppant_transport_ratio

    unknown

    Transport (placement) ratio = horizontal slurry velocity / settling velocity.

    Inputs: v_horizontal, v_settling.

  • frac_proppant_wall_correction

    unknown

    Wall (channel) correction factor for settling between parallel fracture faces.

    Inputs: dp_in, width_in.

  • frac_dimensionless_conductivity

    unknown

    Dimensionless fracture conductivity C_fd = (k_f * w) / (k * x_f).

    Inputs: kf, w_ft, k, xf.

  • frac_equivalent_skin

    unknown

    Equivalent skin factor of a fractured vertical well.

    Inputs: Cfd, xf, rw.

  • sf_chokeCriticalPressure

    unknown

    Critical-flow wellhead pressure upstream of a bean choke.

  • sf_chokeCriticalRate

    unknown

    Liquid rate through a bean in critical flow, inverted from.

  • sf_chokeCriticalBean

    unknown

    Bean size (64ths-inch) needed to pass a target rate at a given wellhead.

  • sf_sonicGasChokeRate

    unknown

    Sonic (critical) gas rate through a choke, field units. From the standard.

  • sf_subcriticalLiquidChoke

    unknown

    Subcritical (incompressible) liquid flow through a choke/bean using the.

  • sf_sachdevaCriticalBoundary

    unknown

    Sachdeva et al. (1986) two-phase critical pressure ratio y_c, solved by.

  • sf_sachdevaRate

    unknown

    Sachdeva et al. (1986) two-phase mass flux + rate through a choke (SPE 15657).

  • sf_gasPipelineRate

    unknown

    Gas pipeline flow rate from inlet & outlet pressures.

  • sf_gasPipelineOutletPressure

    unknown

    Gas pipeline outlet pressure from a known flow rate.

  • sf_gasDensity

    unknown

    Gas density at flowing pipeline conditions, real-gas law (field units)

  • sf_gasVelocity

    unknown

    Actual gas velocity in a pipe, field units. Convert standard rate to actual.

  • sf_gasReynolds

    unknown

    Gas Reynolds number, field units (dimensionless). Standard pipeline form.

  • sf_liquidVelocity

    unknown

    Liquid velocity in a pipe, field units.

  • sf_liquidReynolds

    unknown

    Liquid Reynolds number, field units (dimensionless)

  • sf_liquidPressureDrop

    write

    Single-phase liquid frictional pressure drop in a horizontal pipe via.

  • sf_liquidOutletPressure

    unknown

    Liquid pipeline outlet pressure = inlet - frictional ΔP.

  • sf_liquidInletPressure

    unknown

    Liquid pipeline inlet pressure = outlet + frictional ΔP.

  • sf_liquidRateFromPressureDrop

    write

    Liquid flow rate from a known frictional ΔP. Because the Moody friction.

  • ipr_vogel

    unknown

    Vogel (1968) two-phase IPR forward rate from pwf given qmax (or a test point).

    Inputs: pr, pwf, qmax?, qTest?, pwfTest?.

  • ipr_vogelQmax

    unknown

    Vogel (1968) qmax (AOF) from a single (q,pwf,pr) test point below bubble point.

    Inputs: pr, q, pwf.

  • ipr_productivityIndex

    unknown

    Straight-line productivity index J = q/(pr - pwf) (single-phase, pwf > pb).

    Inputs: q, pr, pwf.

  • ipr_straightLineRate

    unknown

    Straight-line rate q = J(pr - pwf) for undersaturated single-phase flow.

    Inputs: J, pr, pwf.

  • ipr_compositeIPR

    unknown

    Composite IPR: straight-line above pb + Vogel below pb, using J at bubble point.

    Inputs: J, pr, pb, pwf.

  • ipr_fetkovich

    unknown

    Fetkovich (1973) forward rate q = C(pr^2 - pwf^2)^n given C and n.

    Inputs: C, n, pr, pwf.

  • ipr_fetkovichCn

    unknown

    Fetkovich (1973) C,n fit from >=2 flow-after-flow test points (log-log regression).

    Inputs: pr, points, pwf.

  • ipr_standingModifiedVogel

    unknown

    Standing (1970) Vogel extension using flow efficiency FE (damaged/stimulated).

    Inputs: pr, pwf, FE, qmaxFE1.

  • ipr_wigginsThreePhase

    unknown

    Wiggins (1993) three-phase oil IPR (generalized Vogel coefficients).

    Inputs: pr, pwf, qmax.

  • ipr_jonesEquation

    unknown

    Jones (1976) quadratic IPR rate from pr - pwf = a*q + b*q^2 (Darcy + turbulence).

    Inputs: a, b, pr, pwf.

  • ipr_jonesFit

    unknown

    Jones (1976) a,b fit from >=2 test points: (pr - pwf)/q = a + b*q (linear).

    Inputs: pr, points, pwf.

  • ipr_darcyRadialOil

    unknown

    Darcy semi-steady-state radial oil rate (field units), STB/d.

    Inputs: k, h, pr, pwf, mu, Bo, re, rw, s?.

  • ipr_darcyRadialGas

    unknown

    Darcy pseudo-steady-state radial gas rate (field units), Mscf/d.

    Inputs: k, h, pr, pwf, mu, z, T, re, rw, s?.

  • ipr_joshiHorizontal

    unknown

    Joshi (1988) horizontal-well steady-state oil rate (field units), STB/d.

    Inputs: k, kv?, h, L, reH, pr, pwf, mu, Bo, rw.

  • ipr_absoluteOpenFlow

    unknown

    Absolute open flow (AOF) at pwf=0 for Vogel and Fetkovich IPR forms.

    Inputs: form, qmax?, C?, n?, pr?.

  • fa_co2PartialPressure

    unknown

    CO2 partial pressure from gas composition: pCO2 = y_CO2 * P_total.

  • fa_deWaardMilliams1991

    unknown

    de Waard-Milliams-Lotz (1991) CO2 corrosion rate (mm/yr) of carbon steel.

  • fa_deWaardMilliams1975

    unknown

    de Waard-Milliams (1975) ORIGINAL nomogram CO2 corrosion rate (mm/yr).

  • fa_co2Fugacity

    unknown

    CO2 fugacity correction for high pressure (de Waard et al.). Above ~250 bar.

  • fa_corrosionRiskCategory

    unknown

    Classify a corrosion rate (mm/yr) into NACE-style severity bands.

  • fa_apiRP14E_erosionalVelocity

    unknown

    API RP 14E erosional (limiting) velocity: Ve = C / sqrt(rho_mix) [ft/s].

  • fa_erosionalVelocityLimit

    unknown

    Check an operating velocity against the API RP 14E erosional limit. Reports.

  • fa_minPipeDiameterForErosion

    unknown

    Minimum pipe internal diameter (in) to keep the mixture velocity at or below.

  • fa_mixtureDensity

    unknown

    No-slip two-phase mixture density (lb/ft3)

  • fa_mixtureVelocity

    unknown

    Actual mixture (superficial) velocity in a pipe.

  • fa_hammerschmidtDepression

    unknown

    Hammerschmidt (1934) hydrate-temperature depression (deg F)

  • fa_hydrateInhibitorConcentration

    unknown

    Required inhibitor concentration (wt% in the aqueous phase) to achieve a.

  • fa_methanolInjectionRate

    unknown

    Required METHANOL injection rate (mass and volume) to dose the free water to.

  • fa_megInjectionRate

    unknown

    Required MEG (monoethylene glycol) injection rate (mass and volume) to dose.

  • fa_subcooling

    unknown

    Hydrate subcooling (driving force), deg F.

  • dca_sedmRate

    unknown

    SEDM rate q(t) = qi * exp(-(t/tau)^n). Field units.

    Inputs: qi, tau, n, t.

  • dca_sedmCum

    unknown

    SEDM cumulative Q(t) = (qi*tau/n) * gamma(1/n, (t/tau)^n), lower incomplete gamma.

    Inputs: qi, tau, n, t.

  • dca_sedmEUR

    unknown

    SEDM ultimate recovery (t -> infinity) = qi*tau*Gamma(1+1/n) = (qi*tau/n)*Gamma(1/n).

    Inputs: qi, tau, n.

  • dca_sedmFit

    unknown

    Fit SEDM (qi, tau, n) to rate-time data by least squares (grid then refine).

    Inputs: t, q.

  • dca_pleRate

    unknown

    PLE rate q(t) = qi * exp(-Dinf*t - D1*t^n). Field units.

    Inputs: qi, Dinf, D1, n, t.

  • dca_pleCum

    unknown

    PLE cumulative Q(t) = integral(0..t) qi*exp(-Dinf*s - D1*s^n) ds (Simpson, no closed form).

    Inputs: qi, Dinf, D1, n, t, panels?.

  • dca_pleFit

    unknown

    Fit PLE (qi, Dinf, D1, n) to rate-time data by least squares (grid then refine).

    Inputs: t, q.

  • dca_lgmCum

    unknown

    LGM cumulative Q(t) = K * t^n / (a + t^n). Field units; K = carrying capacity = EUR.

    Inputs: K, a, n, t.

  • dca_lgmRate

    unknown

    LGM rate q(t) = dQ/dt = K*a*n*t^(n-1) / (a + t^n)^2. Field units.

    Inputs: K, a, n, t.

  • dca_lgmRateFromCum

    unknown

    LGM instantaneous rate as the analytic derivative of cumulative q = dQ/dt (alias of dca_lgmRate).

    Inputs: K, a, n, t.

  • dca_lgmEUR

    unknown

    LGM EUR = K (the carrying capacity; cumulative as t -> infinity).

    Inputs: K.

  • dca_lgmFit

    unknown

    Fit LGM (K, a, n) to cumulative-time data by least squares (grid then refine).

    Inputs: t, Q.

  • dca_duongCum

    unknown

    Duong cumulative Q(t) = q(t) / (a * t^(-m)), the closed-form integral of the Duong rate.

    Inputs: q1, a, m, t.

  • dca_duongEUR

    unknown

    Duong EUR to an economic-limit rate qLimit: solve q(t)=qLimit for t.

    Inputs: q1, a, m, qLimit.

  • dca_duongFit

    unknown

    Fit Duong (a, m, q1) to rate-time data. For candidate (a,m) the points line up.

    Inputs: t, q.

  • dca_effectiveFromNominal

    unknown

    Effective (secant) decline from nominal (instantaneous) decline.

    Inputs: Dnom, b?.

  • dca_nominalFromEffective

    unknown

    Nominal (instantaneous) decline from effective (secant) decline.

    Inputs: Deff, b?.

  • dca_bFactorFromRates

    unknown

    Instantaneous Arps b-factor from three (t,q) points: b = d(1/D)/dt, with the.

    Inputs: t, number, number], q, number, number].

  • dca_betaDerivative

    unknown

    Beta-derivative diagnostic beta = t * (d ln q / d t), the log-log slope of rate.

    Inputs: t, q, at.

  • dca_eurFromArpsToHyperbolicSwitch

    unknown

    EUR for an Arps-hyperbolic that switches to terminal exponential at decline Dlim.

    Inputs: qi, Di, b, Dlim, qLimit.

  • eos_cubicAB

    unknown

    Calculates pure-component PR or SRK cubic EOS A, B, a, and b.

    Inputs: eos, Tc_degR, Pc_psia, omega, T_degR, P_psia.

  • eos_zFactor

    unknown

    Solves the PR or SRK cubic EOS compressibility-factor equation.

    Inputs: eos, A_dimless, B_dimless.

  • eos_fugacityCoefficient

    unknown

    Calculates pure-component fugacity coefficient from PR or SRK Z, A, and B.

    Inputs: eos, Z, A_dimless, B_dimless.

  • eos_molarVolume

    unknown

    Calculates gas or liquid molar volume from Z, T, and P in field units.

    Inputs: Z, T_degR, P_psia.

  • eos_massDensity

    unknown

    Calculates mass density from Z, T, P, and molar mass in field units.

    Inputs: Z, T_degR, P_psia, molarMass_lb_per_lbmol.

  • eos_departureEnthalpy

    unknown

    Calculates pure-component cubic-EOS residual enthalpy departure.

    Inputs: eos, Tc_degR, Pc_psia, omega, T_degR, P_psia, Z.

  • eos_departureEntropy

    unknown

    Calculates pure-component cubic-EOS residual entropy departure.

    Inputs: eos, Tc_degR, Pc_psia, omega, T_degR, P_psia, Z.

  • eos_isothermalCompressibility

    unknown

    Calculates isothermal compressibility from a cubic EOS Z root.

    Inputs: eos, Z, A_dimless, B_dimless, P_psia.

  • eos_wilsonK

    unknown

    Estimates Wilson K-values for a multicomponent feed.

    Inputs: Tc_degR, Pc_psia, omega, T_degR, P_psia, componentNames?.

  • eos_rachfordRice

    unknown

    Solves Rachford-Rice vapor fraction and phase compositions.

    Inputs: z, K, tolerance?, maxIter?.

  • eos_flashTwoPhase

    unknown

    Runs an approximate two-phase PR or SRK flash by successive substitution.

    Inputs: eos, z, Tc_degR, Pc_psia, omega, T_degR, P_psia, kij?, componentNames?,…

  • esp_totalDynamicHead

    unknown

    Computes ESP total dynamic head from lift, friction, and wellhead pressure.

    Inputs: netVerticalLift_ft, wellheadPressure_psia, fluidGradient_psiPerFt, refe…

  • esp_stagesRequired

    unknown

    Computes the integer ESP stage count required to develop a target head.

    Inputs: totalDynamicHead_ft, headPerStage_ft, stageSafetyFactor?.

  • esp_affinityLaws

    unknown

    Applies centrifugal-pump affinity laws for speed and impeller trim changes.

    Inputs: baseFlowRate_bpd, baseHead_ft, baseBrakeHorsepower_hp, baseSpeed, newSp…

  • esp_brakeHorsepower

    unknown

    Computes ESP brake horsepower by hydraulic power or stage horsepower.

    Inputs: flowRate_bpd?, totalDynamicHead_ft?, fluidSpecificGravity?, pumpEfficie…

  • esp_npshAvailable

    unknown

    Computes available NPSH at an ESP intake from pressure head above vapor.

    Inputs: intakePressure_psia, vaporPressure_psia, fluidGradient_psiPerFt, static…

  • esp_motorLoading

    unknown

    Computes ESP motor loading from required brake horsepower and nameplate hp.

    Inputs: requiredBrakeHorsepower_hp, motorNameplateHorsepower_hp, motorServiceFa…

  • rod_pumpDisplacement

    unknown

    Computes sucker-rod pump displacement from speed, plunger size, and stroke.

    Inputs: strokesPerMinute_spm, plungerDiameter_in, effectivePlungerStroke_in.

  • rod_plungerStroke

    unknown

    Computes effective plunger stroke from elastic stroke losses and overtravel.

    Inputs: polishedRodStroke_in, rodStretch_in, tubingStretch_in, overtravel_in?.

  • rod_rodStretch

    unknown

    Computes rod-string elastic stretch under fluid load by Hooke's law.

    Inputs: fluidLoad_lbf, rodLength_ft, rodDiameter_in?, rodArea_in2?, modulusElas…

  • rod_peakPolishedRodLoad

    unknown

    Computes peak polished-rod load using the Mills acceleration approximation.

    Inputs: fluidLoad_lbf, rodStringWeight_lbf, polishedRodStroke_in, pumpingSpeed_…

  • rod_minPolishedRodLoad

    unknown

    Computes minimum polished-rod load using the Mills acceleration approximation.

    Inputs: rodStringWeight_lbf, polishedRodStroke_in, pumpingSpeed_spm.

  • rod_counterbalanceEffect

    unknown

    Computes approximate ideal counterbalance effect from polished-rod loads.

    Inputs: peakPolishedRodLoad_lbf, minimumPolishedRodLoad_lbf.

  • rod_polishedRodHorsepower

    unknown

    Computes polished-rod horsepower from an approximate rectangular card area.

    Inputs: peakPolishedRodLoad_lbf, minimumPolishedRodLoad_lbf, polishedRodStroke_…

  • rod_pumpVolumetricEfficiency

    unknown

    Computes rod-pump volumetric efficiency from actual rate and displacement.

    Inputs: actualLiquidRate_bpd, pumpDisplacement_bpd.

  • gaslift_injectionGasGradient

    unknown

    Computes static injection-gas pressure gradient over a gas-lift annulus.

    Inputs: surfaceInjectionPressure_psia, depth_ft, gasSpecificGravity, averageTem…

  • gaslift_casingPressureAtDepth

    unknown

    Computes casing pressure at depth for a static gas-lift gas column.

    Inputs: surfaceCasingPressure_psia, depth_ft, gasSpecificGravity, averageTemper…

  • gaslift_valveOpeningPressure

    unknown

    Computes IPO gas-lift valve opening pressure from dome and tubing pressure.

    Inputs: domePressureAtDepth_psia, tubingPressureAtDepth_psia, portToBellowsArea…

  • gaslift_unloadingGradient

    unknown

    Computes a straight-line gas-lift unloading gradient between two pressures.

    Inputs: surfacePressure_psia, transferPressureAtDepth_psia, valveDepth_ft.

  • gaslift_requiredInjectionGLR

    unknown

    Computes required injected gas-liquid ratio from target and formation GLR.

    Inputs: targetTotalGLR_scfPerSTB, formationGLR_scfPerSTB, liquidRate_STBPerD?.

  • gaslift_powerForCompression

    unknown

    Computes gas-lift compression horsepower with a polytropic ideal-gas form.

    Inputs: injectionGasRate_MscfPerD, suctionPressure_psia, dischargePressure_psia…

  • pta_exponentialIntegral

    unknown

    Computes the line-source well function W(u) = -Ei(-u).

    Inputs: u.

  • pta_dimensionlessTime

    unknown

    Computes radial and drainage-area dimensionless time in field units.

    Inputs: kMd, tHours, phi, muCp, ctPerPsi, rwFt, rFt?, drainageAreaAcres?.

  • pta_dimensionlessPressure

    unknown

    Computes semilog line-source dimensionless pressure for tD above about 100.

    Inputs: tD.

  • pta_lineSourcePressure

    unknown

    Computes infinite-acting line-source pressure at radius and time.

    Inputs: initialPressurePsi, qStbd, muCp, BoRbPerStb, kMd, hFt, phi, ctPerPsi, r…

  • pta_drawdownSemilog

    unknown

    Computes permeability and skin from MDH drawdown semilog slope.

    Inputs: slopePsiPerCycle, qStbd, muCp, BoRbPerStb, hFt, p1hrPsi, pwf0Psi, phi,…

  • pta_hornerTime

    unknown

    Computes Horner buildup time ratio and its base-10 plotting coordinate.

    Inputs: producingTimeHours, shutInTimeHours.

  • pta_hornerBuildup

    unknown

    Computes permeability, skin, and p-star from a Horner buildup semilog line.

    Inputs: slopePsiPerCycle, qStbd, muCp, BoRbPerStb, hFt, p1hrPsi, pwfAtShutInPsi…

  • pta_skinFactor

    unknown

    Computes skin factor from the standard semilog 1-hour pressure relation.

    Inputs: p1hrPsi, referencePressurePsi, slopePsiPerCycle, kMd, phi, muCp, ctPerP…

  • pta_pressureDropDueToSkin

    write

    Computes pressure drop attributable to skin from semilog slope and skin.

    Inputs: slopePsiPerCycle, skin.

  • pta_flowEfficiency

    unknown

    Computes flow efficiency from total drawdown and skin pressure drop.

    Inputs: averageReservoirPressurePsi, flowingBottomholePressurePsi, pressureDrop…

  • pta_radiusOfInvestigation

    unknown

    Computes line-source radius of investigation in field units.

    Inputs: kMd, tHours, phi, muCp, ctPerPsi.

  • pta_wellboreStorageCoefficient

    unknown

    Computes wellbore storage coefficient from volume or unit-slope data.

    Inputs: volumeUnderCompressionBbl?, fluidDensityLbPerFt3?, qStbd?, BoRbPerStb?,…

  • pta_dimensionlessWellboreStorage

    unknown

    Computes dimensionless wellbore storage coefficient.

    Inputs: storageCoefficientBblPerPsi, phi, ctPerPsi, hFt, rwFt.

  • pta_endOfWellboreStorage

    unknown

    Estimates end of wellbore storage from the common semilog rule.

    Inputs: storageCoefficientBblPerPsi, kMd, hFt, muCp, skin.

  • pta_dietzShapeFactor

    unknown

    Looks up a Dietz shape factor for common closed drainage areas.

    Inputs: shape.

  • pta_pseudosteadyStatePressure

    unknown

    Computes pseudosteady-state pressure drop using Dietz shape factor CA.

    Inputs: initialPressurePsi, qStbd, muCp, BoRbPerStb, kMd, hFt, phi, ctPerPsi, r…

  • pta_bourdetDerivative

    unknown

    Computes Bourdet pressure derivative from time-pressure arrays.

    Inputs: timesHours, pressuresPsi, smoothingLogCycles?.

  • vfp_hydrostaticGradient

    unknown

    Computes hydrostatic pressure gradient from fluid density.

    Inputs: density_lbPerFt3.

  • vfp_frictionGradient

    unknown

    Computes Darcy-Weisbach friction gradient with Chen explicit friction factor.

    Inputs: density_lbPerFt3, velocity_ftPerS, pipeId_in, viscosity_cp, roughness_i…

  • vfp_reynolds

    unknown

    Computes Reynolds number in field units for internal pipe flow.

    Inputs: density_lbPerFt3, velocity_ftPerS, pipeId_in, viscosity_cp.

  • vfp_superficialVelocities

    unknown

    Computes liquid and gas superficial velocities from field rates.

    Inputs: liquidRate_STBPerD, gasRate_Mscfd, pipeId_in, pressure_psia, temperatur…

  • vfp_mixtureVelocity

    unknown

    Computes mixture superficial velocity as vsl plus vsg.

    Inputs: superficialLiquidVelocity_ftPerS, superficialGasVelocity_ftPerS.

  • vfp_noSlipHoldup

    unknown

    Computes no-slip liquid holdup from superficial velocities.

    Inputs: superficialLiquidVelocity_ftPerS, superficialGasVelocity_ftPerS.

  • vfp_gasStaticBHP

    unknown

    Computes static gas bottomhole pressure using average T and z.

    Inputs: wellheadPressure_psia, trueVerticalDepth_ft, gasSpecificGravity, averag…

  • vfp_gasFlowingBHP

    unknown

    Computes flowing gas bottomhole pressure with gas friction in tubing.

    Inputs: wellheadPressure_psia, measuredDepth_ft, trueVerticalDepth_ft?, gasSpec…

  • vfp_flowPatternBeggsBrill

    unknown

    Classifies Beggs-Brill horizontal flow pattern from lambda and Froude number.

    Inputs: noSlipLiquidHoldup_fraction, froudeNumber.

  • vfp_holdupBeggsBrill

    unknown

    Computes Beggs-Brill liquid holdup with inclination correction.

    Inputs: superficialLiquidVelocity_ftPerS, superficialGasVelocity_ftPerS, pipeId…

  • vfp_gradientBeggsBrill

    unknown

    Computes full Beggs-Brill pressure gradient with elevation, friction, acceleration.

    Inputs: superficialLiquidVelocity_ftPerS, superficialGasVelocity_ftPerS, pipeId…

  • vfp_holdupHagedornBrown

    unknown

    Computes Hagedorn-Brown holdup using digitized-chart polynomial fits.

    Inputs: superficialLiquidVelocity_ftPerS, superficialGasVelocity_ftPerS, pipeId…

  • vfp_gradientHagedornBrown

    unknown

    Computes Hagedorn-Brown pressure gradient with chart-fit holdup.

    Inputs: superficialLiquidVelocity_ftPerS, superficialGasVelocity_ftPerS, pipeId…

  • vfp_gradientGray

    unknown

    Computes Gray wet-gas vertical pressure gradient in closed form.

    Inputs: superficialLiquidVelocity_ftPerS, superficialGasVelocity_ftPerS, pipeId…

  • vfp_pressureTraverse

    unknown

    Marches a pressure traverse down the well using Beggs-Brill or Gray.

    Inputs: correlation, wellheadPressure_psia, measuredDepth_ft, trueVerticalDepth…

  • units_ftToM

    unknown

    Convert ft to m. Factor: 1 ft = 0.3048 m. Ref: NIST.

    Inputs: value.

  • units_mToFt

    unknown

    Convert m to ft. Factor: 1 m = 1/0.3048 ft. Ref: NIST.

    Inputs: value.

  • units_inToCm

    unknown

    Convert in to cm. Factor: 1 in = 2.54 cm. Ref: NIST.

    Inputs: value.

  • units_cmToIn

    unknown

    Convert cm to in. Factor: 1 cm = 1/2.54 in. Ref: NIST.

    Inputs: value.

  • units_miToKm

    unknown

    Convert mi to km. Factor: 1 mi = 1.609344 km. Ref: NIST.

    Inputs: value.

  • units_kmToMi

    unknown

    Convert km to mi. Factor: 1 km = 1/1.609344 mi. Ref: NIST.

    Inputs: value.

  • units_ftToIn

    unknown

    Convert ft to in. Factor: 1 ft = 12 in. Ref: NIST.

    Inputs: value.

  • units_inToFt

    unknown

    Convert in to ft. Factor: 1 in = 1/12 ft. Ref: NIST.

    Inputs: value.

  • units_acreToFt2

    unknown

    Convert acre to ft2. Factor: 1 acre = 43560 ft2. Ref: NIST.

    Inputs: value.

  • units_ft2ToAcre

    unknown

    Convert ft2 to acre. Factor: 1 ft2 = 1/43560 acre. Ref: NIST.

    Inputs: value.

  • units_acreToM2

    unknown

    Convert acre to m2. Factor: 1 acre = 4046.8564224 m2. Ref: NIST.

    Inputs: value.

  • units_m2ToAcre

    unknown

    Convert m2 to acre. Factor: 1 m2 = 1/4046.8564224 acre. Ref: NIST.

    Inputs: value.

  • units_ft2ToM2

    unknown

    Convert ft2 to m2. Factor: 1 ft2 = 0.09290304 m2. Ref: NIST.

    Inputs: value.

  • units_m2ToFt2

    unknown

    Convert m2 to ft2. Factor: 1 m2 = 1/0.09290304 ft2. Ref: NIST.

    Inputs: value.

  • units_mi2ToAcre

    unknown

    Convert mi2 to acre. Factor: 1 mi2 = 640 acre. Ref: NIST.

    Inputs: value.

  • units_acreToMi2

    unknown

    Convert acre to mi2. Factor: 1 acre = 1/640 mi2. Ref: NIST.

    Inputs: value.

  • units_bblToFt3

    unknown

    Convert bbl to ft3. Factor: 1 bbl = 5.614583 ft3. Ref: API.

    Inputs: value.

  • units_ft3ToBbl

    unknown

    Convert ft3 to bbl. Factor: 1 ft3 = 1/5.614583 bbl. Ref: API.

    Inputs: value.

  • units_bblToGal

    unknown

    Convert bbl to gal. Factor: 1 bbl = 42 gal. Ref: API.

    Inputs: value.

  • units_galToBbl

    unknown

    Convert gal to bbl. Factor: 1 gal = 1/42 bbl. Ref: API.

    Inputs: value.

  • units_bblToM3

    unknown

    Convert bbl to m3. Factor: 1 bbl = 0.158987 m3. Ref: API.

    Inputs: value.

  • units_m3ToBbl

    unknown

    Convert m3 to bbl. Factor: 1 m3 = 1/0.158987 bbl. Ref: API.

    Inputs: value.

  • units_ft3ToM3

    unknown

    Convert ft3 to m3. Factor: 1 ft3 = 0.028316846592 m3. Ref: NIST.

    Inputs: value.

  • units_m3ToFt3

    unknown

    Convert m3 to ft3. Factor: 1 m3 = 1/0.028316846592 ft3. Ref: NIST.

    Inputs: value.

  • units_mscfToMcf

    unknown

    Convert Mscf to Mcf. Factor: 1 Mscf = 1 Mcf. Ref: SPE.

    Inputs: value.

  • units_mcfToMscf

    unknown

    Convert Mcf to Mscf. Factor: 1 Mcf = 1 Mscf. Ref: SPE.

    Inputs: value.

  • units_mmscfToM3

    unknown

    Convert MMscf to m3. Factor: 1 MMscf = 28316.846592 m3. Ref: NIST.

    Inputs: value.

  • units_m3ToMmscf

    unknown

    Convert m3 to MMscf. Factor: 1 m3 = 1/28316.846592 MMscf. Ref: NIST.

    Inputs: value.

  • units_lbmToKg

    unknown

    Convert lbm to kg. Factor: 1 lbm = 0.45359237 kg. Ref: NIST.

    Inputs: value.

  • units_kgToLbm

    unknown

    Convert kg to lbm. Factor: 1 kg = 1/0.45359237 lbm. Ref: NIST.

    Inputs: value.

  • units_lbfToN

    unknown

    Convert lbf to N. Factor: 1 lbf = 4.4482216152605 N. Ref: NIST.

    Inputs: value.

  • units_nToLbf

    unknown

    Convert N to lbf. Factor: 1 N = 1/4.4482216152605 lbf. Ref: NIST.

    Inputs: value.

  • units_shortTonToKg

    unknown

    Convert short ton to kg. Factor: 1 short ton = 907.18474 kg. Ref: NIST.

    Inputs: value.

  • units_kgToShortTon

    unknown

    Convert kg to short ton. Factor: 1 kg = 1/907.18474 short ton. Ref: NIST.

    Inputs: value.

  • units_psiToKpa

    unknown

    Convert psi to kPa. Factor: 1 psi = 6.894757 kPa. Ref: NIST.

    Inputs: value.

  • units_kpaToPsi

    unknown

    Convert kPa to psi. Factor: 1 kPa = 1/6.894757 psi. Ref: NIST.

    Inputs: value.

  • units_psiToBar

    unknown

    Convert psi to bar. Factor: 1 psi = 0.06894757 bar. Ref: NIST.

    Inputs: value.

  • units_barToPsi

    unknown

    Convert bar to psi. Factor: 1 bar = 1/0.06894757 psi. Ref: NIST.

    Inputs: value.

  • units_psiToAtm

    unknown

    Convert psi to atm. Factor: 1 psi = 0.0680459639 atm. Ref: NIST.

    Inputs: value.

  • units_atmToPsi

    unknown

    Convert atm to psi. Factor: 1 atm = 1/0.0680459639 psi. Ref: NIST.

    Inputs: value.

  • units_psiToPa

    unknown

    Convert psi to Pa. Factor: 1 psi = 6894.757 Pa. Ref: NIST.

    Inputs: value.

  • units_paToPsi

    unknown

    Convert Pa to psi. Factor: 1 Pa = 1/6894.757 psi. Ref: NIST.

    Inputs: value.

  • units_psiToMpa

    unknown

    Convert psi to MPa. Factor: 1 psi = 0.006894757 MPa. Ref: NIST.

    Inputs: value.

  • units_mpaToPsi

    unknown

    Convert MPa to psi. Factor: 1 MPa = 1/0.006894757 psi. Ref: NIST.

    Inputs: value.

  • units_psiToKgCm2

    unknown

    Convert psi to kgf/cm2. Factor: 1 psi = 0.07030696 kgf/cm2. Ref: NIST.

    Inputs: value.

  • units_kgCm2ToPsi

    unknown

    Convert kgf/cm2 to psi. Factor: 1 kgf/cm2 = 1/0.07030696 psi. Ref: NIST.

    Inputs: value.

  • units_psiToInHg

    unknown

    Convert psi to inHg. Factor: 1 psi = 2.03602 inHg. Ref: NIST.

    Inputs: value.

  • units_inHgToPsi

    unknown

    Convert inHg to psi. Factor: 1 inHg = 1/2.03602 psi. Ref: NIST.

    Inputs: value.

  • units_psiToFtH2O

    unknown

    Convert psi to ftH2O. Factor: 1 psi = 2.30666 ftH2O. Ref: NIST.

    Inputs: value.

  • units_ftH2OToPsi

    unknown

    Convert ftH2O to psi. Factor: 1 ftH2O = 1/2.30666 psi. Ref: NIST.

    Inputs: value.

  • units_lbFt3ToKgM3

    unknown

    Convert lb/ft3 to kg/m3. Factor: 1 lb/ft3 = 16.01846337396 kg/m3. Ref: NIST.

    Inputs: value.

  • units_kgM3ToLbFt3

    unknown

    Convert kg/m3 to lb/ft3. Factor: 1 kg/m3 = 1/16.01846337396 lb/ft3. Ref: NIST.

    Inputs: value.

  • units_apiToSg

    unknown

    Convert API to SG. Factor: SG = 141.5/(131.5+API). Ref: API.

    Inputs: value.

  • units_sgToApi

    unknown

    Convert SG to API. Factor: API = 141.5/SG - 131.5. Ref: API.

    Inputs: value.

  • units_sgToLbGal

    unknown

    Convert SG to lb/gal. Factor: 1 SG = 8.345404 lb/gal. Ref: API.

    Inputs: value.

  • units_lbGalToSg

    unknown

    Convert lb/gal to SG. Factor: 1 lb/gal = 1/8.345404 SG. Ref: API.

    Inputs: value.

  • units_lbFt3ToLbGal

    unknown

    Convert lb/ft3 to lb/gal. Factor: 1 lb/ft3 = 0.13368055555555555 lb/gal. Ref: NIST.

    Inputs: value.

  • units_lbGalToLbFt3

    unknown

    Convert lb/gal to lb/ft3. Factor: 1 lb/gal = 7.48051948051948 lb/ft3. Ref: NIST.

    Inputs: value.

  • units_ppgToPsiFtGradient

    unknown

    Convert ppg to psi/ft. Factor: 1 ppg = 0.052 psi/ft. Ref: SPE.

    Inputs: value.

  • units_psiFtGradientToPpg

    unknown

    Convert psi/ft to ppg. Factor: 1 psi/ft = 1/0.052 ppg. Ref: SPE.

    Inputs: value.

  • units_fToC

    unknown

    Convert F to C. Factor: C = (F - 32)*5/9. Ref: NIST.

    Inputs: value.

  • units_cToF

    unknown

    Convert C to F. Factor: F = C*9/5 + 32. Ref: NIST.

    Inputs: value.

  • units_fToK

    unknown

    Convert F to K. Factor: K = (F + 459.67)*5/9. Ref: NIST.

    Inputs: value.

  • units_kToF

    unknown

    Convert K to F. Factor: F = K*9/5 - 459.67. Ref: NIST.

    Inputs: value.

  • units_cToK

    unknown

    Convert C to K. Factor: K = C + 273.15. Ref: NIST.

    Inputs: value.

  • units_kToC

    unknown

    Convert K to C. Factor: C = K - 273.15. Ref: NIST.

    Inputs: value.

  • units_fToR

    unknown

    Convert F to R. Factor: R = F + 459.67. Ref: NIST.

    Inputs: value.

  • units_rToF

    unknown

    Convert R to F. Factor: F = R - 459.67. Ref: NIST.

    Inputs: value.

  • units_cToR

    unknown

    Convert C to R. Factor: R = (C + 273.15)*9/5. Ref: NIST.

    Inputs: value.

  • units_rToC

    unknown

    Convert R to C. Factor: C = R*5/9 - 273.15. Ref: NIST.

    Inputs: value.

  • units_cpToPaS

    unknown

    Convert cP to Pa*s. Factor: 1 cP = 0.001 Pa*s. Ref: SI.

    Inputs: value.

  • units_paSToCp

    unknown

    Convert Pa*s to cP. Factor: 1 Pa*s = 1000 cP. Ref: SI.

    Inputs: value.

  • units_cpToLbFtS

    unknown

    Convert cP to lb/(ft*s). Factor: 1 cP = 0.000671968975 lb/(ft*s). Ref: SI.

    Inputs: value.

  • units_lbFtSToCp

    unknown

    Convert lb/(ft*s) to cP. Factor: 1 lb/(ft*s) = 1488.16394357 cP. Ref: SI.

    Inputs: value.

  • units_mdToM2

    unknown

    Convert md to m2. Factor: 1 md = 9.869233e-16 m2. Ref: SPE.

    Inputs: value.

  • units_m2ToMd

    unknown

    Convert m2 to md. Factor: 1 m2 = 1/9.869233e-16 md. Ref: SPE.

    Inputs: value.

  • units_mdToUm2

    unknown

    Convert md to um2. Factor: 1 md = 0.0009869233 um2. Ref: SPE.

    Inputs: value.

  • units_um2ToMd

    unknown

    Convert um2 to md. Factor: 1 um2 = 1/0.0009869233 md. Ref: SPE.

    Inputs: value.

  • units_darcyToMd

    unknown

    Convert darcy to md. Factor: 1 darcy = 1000 md. Ref: SPE.

    Inputs: value.

  • units_mdToDarcy

    unknown

    Convert md to darcy. Factor: 1 md = 1/1000 darcy. Ref: SPE.

    Inputs: value.

  • units_bblDToM3D

    unknown

    Convert bbl/d to m3/d. Factor: 1 bbl/d = 0.158987 m3/d. Ref: API.

    Inputs: value.

  • units_m3DToBblD

    unknown

    Convert m3/d to bbl/d. Factor: 1 m3/d = 1/0.158987 bbl/d. Ref: API.

    Inputs: value.

  • units_bblDToGalMin

    unknown

    Convert bbl/d to gal/min. Factor: 1 bbl/d = 0.029166666666666667 gal/min. Ref: API.

    Inputs: value.

  • units_galMinToBblD

    unknown

    Convert gal/min to bbl/d. Factor: 1 gal/min = 1/0.029166666666666667 bbl/d. Ref: API.

    Inputs: value.

  • units_mscfDToM3D

    unknown

    Convert Mscf/d to m3/d. Factor: 1 Mscf/d = 28.316846592 m3/d. Ref: NIST.

    Inputs: value.

  • units_m3DToMscfD

    unknown

    Convert m3/d to Mscf/d. Factor: 1 m3/d = 1/28.316846592 Mscf/d. Ref: NIST.

    Inputs: value.

  • units_stbDToBblD

    unknown

    Convert STB/d to bbl/d. Factor: 1 STB/d = 1 bbl/d. Ref: API.

    Inputs: value.

  • units_bblDToStbD

    unknown

    Convert bbl/d to STB/d. Factor: 1 bbl/d = 1 STB/d. Ref: API.

    Inputs: value.

  • units_scfStbToM3M3

    unknown

    Convert scf/STB to m3/m3. Factor: 1 scf/STB = 0.1781079371 m3/m3. Ref: API.

    Inputs: value.

  • units_m3M3ToScfStb

    unknown

    Convert m3/m3 to scf/STB. Factor: 1 m3/m3 = 1/0.1781079371 scf/STB. Ref: API.

    Inputs: value.

  • units_scfBblToM3M3

    unknown

    Convert scf/bbl to m3/m3. Factor: 1 scf/bbl = 0.1781079371 m3/m3. Ref: API.

    Inputs: value.

  • units_m3M3ToScfBbl

    unknown

    Convert m3/m3 to scf/bbl. Factor: 1 m3/m3 = 1/0.1781079371 scf/bbl. Ref: API.

    Inputs: value.

  • units_btuToKj

    unknown

    Convert Btu to kJ. Factor: 1 Btu = 1.05505585262 kJ. Ref: NIST.

    Inputs: value.

  • units_kjToBtu

    unknown

    Convert kJ to Btu. Factor: 1 kJ = 1/1.05505585262 Btu. Ref: NIST.

    Inputs: value.

  • units_hpToKw

    unknown

    Convert hp to kW. Factor: 1 hp = 0.745699871582 kW. Ref: NIST.

    Inputs: value.

  • units_kwToHp

    unknown

    Convert kW to hp. Factor: 1 kW = 1/0.745699871582 hp. Ref: NIST.

    Inputs: value.

  • units_btuScfToKjM3

    unknown

    Convert Btu/scf to kJ/m3. Factor: 1 Btu/scf = 37.258945807 kJ/m3. Ref: NIST.

    Inputs: value.

  • units_kjM3ToBtuScf

    unknown

    Convert kJ/m3 to Btu/scf. Factor: 1 kJ/m3 = 1/37.258945807 Btu/scf. Ref: NIST.

    Inputs: value.

  • units_bblToTonneByApi

    unknown

    Convert bbl to tonnes by API. Factor: t=bbl*0.158987*SG. Ref: API.

    Inputs: value, api.

  • units_tonneToBblByApi

    unknown

    Convert tonnes to bbl by API. Factor: bbl=t/(0.158987*SG). Ref: API.

    Inputs: value, api.

  • units_ppgToPsiFt

    unknown

    Convert ppg to psi/ft. Factor: 1 ppg = 0.052 psi/ft. Ref: SPE.

    Inputs: value.

  • units_psiFtToPpg

    unknown

    Convert psi/ft to ppg. Factor: 1 psi/ft = 1/0.052 ppg. Ref: SPE.

    Inputs: value.

  • units_mdFtAngleToTvdFt

    unknown

    Convert MD ft and angle to TVD ft. Factor: TVD=MD*cos(deg*pi/180). Ref: SPE.

    Inputs: value, angleDeg.

  • units_tvdFtAngleToMdFt

    unknown

    Convert TVD ft and angle to MD ft. Factor: MD=TVD/cos(deg*pi/180). Ref: SPE.

    Inputs: value, angleDeg.

  • units_densityKgM3ToApi

    unknown

    Convert kg/m3 to API. Factor: API = 141.5/(kg/m3/1000)-131.5. Ref: API.

    Inputs: value.

  • units_densityLbFt3ToApi

    unknown

    Convert lb/ft3 to API. Factor: API = 141.5/(lb/ft3*16.01846337396/1000)-131.5. Ref: API.

    Inputs: value.

  • units_apiToDensityKgM3

    unknown

    Convert API to kg/m3. Factor: kg/m3 = SG*1000. Ref: API.

    Inputs: value.

  • units_apiToDensityLbFt3

    unknown

    Convert API to lb/ft3. Factor: lb/ft3 = SG*1000/16.01846337396. Ref: API.

    Inputs: value.

  • comp_criticalProperties

    unknown

    Lookup component critical properties. Ref: GPSA Engineering Data Book; Katz et al.

    Inputs: component.

  • comp_listComponents

    read

    List component table keys. Ref: GPSA Engineering Data Book; Katz et al.

  • comp_apparentMolecularWeight

    unknown

    Compute apparent molecular weight. Ref: GPSA Engineering Data Book; Katz et al.

    Inputs: components, moleFractions.

  • comp_gasSpecificGravity

    unknown

    Compute gas specific gravity relative to air. Ref: GPSA Engineering Data Book.

    Inputs: apparentMW?, components?, moleFractions?.

  • comp_pseudoCriticalKay

    unknown

    Compute Kay pseudo-critical temperature and pressure. Ref: Katz et al.

    Inputs: components, moleFractions.

  • comp_pseudoCriticalSuttonFromSG

    unknown

    Compute Sutton pseudo-criticals from gas gravity. Ref: Sutton 1985.

    Inputs: gasGravity.

  • comp_pseudoReduced

    unknown

    Compute pseudo-reduced pressure and temperature. Ref: Katz et al.

    Inputs: P, T, Ppc, Tpc.

  • comp_wichertAzizCorrection

    unknown

    Correct sour-gas pseudo-critical properties. Ref: Wichert-Aziz 1972.

    Inputs: Tpc, Ppc, yCO2, yH2S.

  • comp_molarMassFromGravity

    unknown

    Convert gas gravity to molar mass. Ref: GPSA Engineering Data Book.

    Inputs: gasGravity.

  • comp_gasDensityIdeal

    unknown

    Compute ideal gas density in field units. Ref: GPSA Engineering Data Book.

    Inputs: P, T, MW.

  • comp_componentWeightFractions

    unknown

    Convert component mole fractions to weight fractions. Ref: Katz et al.

    Inputs: components, moleFractions.

  • comp_componentMoleFractions

    unknown

    Convert component weight fractions to mole fractions. Ref: Katz et al.

    Inputs: components, weightFractions.

  • comp_mixtureCriticalTemperature

    unknown

    Compute Kay mixture critical temperature. Ref: Katz et al.

    Inputs: components, moleFractions.

  • comp_mixturePseudoCriticalPressure

    unknown

    Compute Kay mixture pseudo-critical pressure. Ref: Katz et al.

    Inputs: components, moleFractions.

  • comp_standingKatzPseudoCriticals

    unknown

    Compute Standing-Katz pseudo-criticals from gas gravity. Ref: Katz et al.

    Inputs: gasGravity, type.

  • comp_criticalTemperature

    unknown

    Lookup component critical temperature. Ref: GPSA Engineering Data Book; Katz et al.

    Inputs: component.

  • comp_criticalPressure

    unknown

    Lookup component critical pressure. Ref: GPSA Engineering Data Book; Katz et al.

    Inputs: component.

  • comp_acentricFactor

    unknown

    Lookup component acentric factor. Ref: GPSA Engineering Data Book; Katz et al.

    Inputs: component.

  • comp_molecularWeight

    unknown

    Lookup component molecular weight. Ref: GPSA Engineering Data Book; Katz et al.

    Inputs: component.

  • comp_normalBoilingPoint

    unknown

    Lookup component normal boiling point. Ref: GPSA Engineering Data Book; Katz et al.

    Inputs: component.

  • pet_archieFormationFactor

    unknown

    Archie F, F=a/phi^m. Ref: Archie 1942.

    Inputs: a, m, phi_fraction.

  • pet_archieWaterSaturation

    unknown

    Archie Sw, Sw=((a*Rw)/(phi^m*Rt))^(1/n). Ref: Archie 1942.

    Inputs: a, m, n, rw_ohm_m, phi_fraction, rt_ohm_m.

  • pet_archieResistivityIndex

    unknown

    Archie RI, RI=Rt/Ro. Ref: Archie 1942.

    Inputs: rt_ohm_m, ro_ohm_m.

  • pet_resistivityIndexFromSaturation

    unknown

    Archie RI from Sw, RI=Sw^-n. Ref: Archie 1942.

    Inputs: sw_fraction, n.

  • pet_archieResistivityAtSaturation

    unknown

    Archie Rt, Rt=(a*Rw)/(phi^m*Sw^n). Ref: Archie 1942.

    Inputs: a, m, n, rw_ohm_m, phi_fraction, sw_fraction.

  • pet_archiePorosityFromRt

    unknown

    Archie phi, phi=((a*Rw)/(Rt*Sw^n))^(1/m). Ref: Archie 1942.

    Inputs: a, m, n, rw_ohm_m, rt_ohm_m, sw_fraction.

  • pet_archieSaturationExponent

    unknown

    Archie n, n=ln(aRw/(phi^m*Rt))/ln(Sw). Ref: Archie 1942.

    Inputs: a, m, rw_ohm_m, phi_fraction, rt_ohm_m, sw_fraction.

  • pet_archieCementationExponent

    unknown

    Archie m, m=ln(aRw/(Rt*Sw^n))/ln(phi). Ref: Archie 1942.

    Inputs: a, n, rw_ohm_m, phi_fraction, rt_ohm_m, sw_fraction.

  • pet_porosityDensity

    unknown

    Density porosity, phi=(rhoma-rhob)/(rhoma-rhofl). Ref: Schlumberger.

    Inputs: rhoma_g_cm3, rhofl_g_cm3, rhob_g_cm3.

  • pet_porosityDensityShaleCorrected

    unknown

    Density shale correction, phiE=phiD-Vsh*phiDsh. Ref: Schlumberger.

    Inputs: rhoma_g_cm3, rhofl_g_cm3, rhob_g_cm3, rhosh_g_cm3, vsh_fraction.

  • pet_matrixDensityFromDensityPorosity

    unknown

    Matrix density, rhoma=(rhob-phi*rhofl)/(1-phi). Ref: Schlumberger.

    Inputs: rhob_g_cm3, rhofl_g_cm3, phi_fraction.

  • pet_porosityNeutronDensity

    unknown

    Neutron-density porosity, phi=sqrt((phiN^2+phiD^2)/2). Ref: Schlumberger.

    Inputs: phi_neutron_fraction, phi_density_fraction.

  • pet_porosityNeutronShaleCorrected

    unknown

    Neutron shale correction, phiE=phiN-Vsh*phiNsh. Ref: Schlumberger.

    Inputs: phi_neutron_fraction, vsh_fraction, phi_neutron_shale_fraction.

  • pet_porositySonicWyllie

    unknown

    Sonic Wyllie porosity, phi=(dt-dtma)/(dtfl-dtma). Ref: Schlumberger.

    Inputs: dt_us_ft, dtma_us_ft, dtfl_us_ft.

  • pet_porositySonicRaymerHuntGardner

    unknown

    Sonic RHG porosity, 1/dt=(1-phi)^2/dtma+phi/dtfl. Ref: Schlumberger.

    Inputs: dt_us_ft, dtma_us_ft, dtfl_us_ft.

  • pet_porositySonic

    unknown

    Sonic porosity pair, phiW=(dt-dtma)/(dtfl-dtma). Ref: Schlumberger.

    Inputs: dt_us_ft, dtma_us_ft, dtfl_us_ft.

  • pet_secondaryPorosityIndex

    unknown

    Secondary porosity index, SPI=phiND-phiS. Ref: Schlumberger.

    Inputs: phi_neutron_density_fraction, phi_sonic_fraction.

  • pet_totalPorosity

    unknown

    Total porosity, phiT=phiE+Vsh*phiSh. Ref: Schlumberger.

    Inputs: phi_effective_fraction, vsh_fraction, phi_shale_fraction.

  • pet_effectivePorosity

    unknown

    Effective porosity, phiE=phiT-Vsh*phiSh. Ref: Schlumberger.

    Inputs: phi_total_fraction, vsh_fraction, phi_shale_fraction.

  • pet_gammaRayIndex

    unknown

    Gamma-ray index, IGR=(GR-GRmin)/(GRmax-GRmin). Ref: Asquith-Krygowski.

    Inputs: gr_api, gr_min_api, gr_max_api.

  • pet_vshaleLinear

    unknown

    Linear shale volume, Vsh=IGR. Ref: Asquith-Krygowski.

    Inputs: igr_fraction.

  • pet_vshaleLarionovTertiary

    unknown

    Larionov Tertiary Vsh, Vsh=0.083*(2^(3.7*IGR)-1). Ref: Schlumberger.

    Inputs: igr_fraction.

  • pet_vshaleLarionovOlder

    unknown

    Larionov older Vsh, Vsh=0.33*(2^(2*IGR)-1). Ref: Schlumberger.

    Inputs: igr_fraction.

  • pet_vshaleClavier

    unknown

    Clavier shale volume, Vsh=1.7-sqrt(3.38-(IGR+0.7)^2). Ref: Schlumberger.

    Inputs: igr_fraction.

  • pet_vshaleSteiber

    unknown

    Steiber shale volume, Vsh=IGR/(3-2*IGR). Ref: Schlumberger.

    Inputs: igr_fraction.

  • pet_rwTemperatureCorrection

    unknown

    Arps resistivity correction, R2=R1*(T1+6.77)/(T2+6.77). Ref: Arps.

    Inputs: r1_ohm_m, t1_f, t2_f.

  • pet_rmfAtFormationTemp

    unknown

    Rmf at formation temp, Rmf2=Rmf1*(T1+6.77)/(Tf+6.77). Ref: Arps.

    Inputs: rmf1_ohm_m, measured_temp_f, formation_temp_f.

  • pet_rwFromSp

    unknown

    SP water resistivity, Rw=Rmf/10^(-SSP/K). Ref: Asquith-Krygowski.

    Inputs: ssp_mv, rmf_ohm_m, formation_temp_f.

  • pet_staticSpFromRw

    unknown

    Static SP, SSP=-K*log10(Rmf/Rw). Ref: Asquith-Krygowski.

    Inputs: rw_ohm_m, rmf_ohm_m, formation_temp_f.

  • pet_formationTemperature

    unknown

    Formation temperature, Tf=Ts+grad*depth/100. Ref: Asquith-Krygowski.

    Inputs: surface_temp_f, gradient_f_per_100ft, tvd_ft.

  • pet_bulkVolumeWater

    unknown

    Bulk volume water, BVW=phi*Sw. Ref: Schlumberger.

    Inputs: phi_fraction, sw_fraction.

  • pet_bulkVolumeWaterFlushed

    unknown

    Flushed BVW, BVWxo=phi*Sxo. Ref: Schlumberger.

    Inputs: phi_fraction, sxo_fraction.

  • pet_moveableHydrocarbons

    unknown

    Moveable hydrocarbons, BVHmov=phi*(Sxo-Sw). Ref: Schlumberger.

    Inputs: phi_fraction, sw_fraction, sxo_fraction.

  • pet_hydrocarbonSaturation

    unknown

    Hydrocarbon saturation, Sh=1-Sw. Ref: Schlumberger.

    Inputs: sw_fraction.

  • pet_residualHydrocarbonSaturation

    unknown

    Residual hydrocarbon saturation, Shr=1-Sxo. Ref: Schlumberger.

    Inputs: sxo_fraction.

  • pet_waterFilledPorosity

    unknown

    Water-filled porosity, WFP=phi*Sw. Ref: Schlumberger.

    Inputs: phi_fraction, sw_fraction.

  • pet_swSimandoux

    unknown

    Simandoux Sw, Ct=A*Sw^n+B*Sw. Ref: Schlumberger.

    Inputs: a, m, n, rw_ohm_m, phi_fraction, rt_ohm_m, vsh_fraction, rsh_ohm_m.

  • pet_swIndonesia

    unknown

    Indonesia Sw, 1/sqrt(Rt)=A*Sw^(n/2). Ref: Poupon-Leveaux.

    Inputs: a, m, n, rw_ohm_m, phi_fraction, rt_ohm_m, vsh_fraction, rsh_ohm_m.

  • pet_swWaxmanSmits

    unknown

    Waxman-Smits Sw, Ct=A(Cw*Sw^n+BQv*Sw^(n-1)). Ref: Waxman-Smits.

    Inputs: a, m, n, rw_ohm_m, phi_fraction, rt_ohm_m, bqv_s_per_m.

  • pet_permeabilityTimur

    unknown

    Timur permeability, k=8581*phi^4.4/Swirr^2. Ref: Asquith-Krygowski.

    Inputs: phi_fraction, swirr_fraction.

  • pet_permeabilityCoatesDumanoir

    unknown

    Coates-Dumanoir k, k=(C*phi^2*((1-Swirr)/Swirr))^2. Ref: Schlumberger.

    Inputs: phi_fraction, swirr_fraction, c_factor?.

  • pet_permeabilityWyllieRose

    unknown

    Wyllie-Rose permeability, k=C*phi^3/Swirr^2. Ref: Asquith-Krygowski.

    Inputs: phi_fraction, swirr_fraction, coefficient_md?.

  • pet_permeabilityMorris

    unknown

    Morris-Biggs permeability, k=C*phi^6/Swirr^2. Ref: Asquith-Krygowski.

    Inputs: phi_fraction, swirr_fraction, fluid?.

  • pet_netPayFlag

    unknown

    Net pay flag, pay=phi>=cutoff && Sw<=cutoff && Vsh<=cutoff. Ref: Schlumberger.

    Inputs: phi_fraction, sw_fraction, vsh_fraction, phi_cutoff_fraction, sw_cutoff…

  • pet_netToGross

    unknown

    Net-to-gross, NTG=net/gross. Ref: Schlumberger.

    Inputs: net_pay_ft, gross_thickness_ft.

  • pet_hydrocarbonPoreVolume

    unknown

    Hydrocarbon pore volume, HCPV=phi*(1-Sw)*h*area. Ref: Schlumberger.

    Inputs: phi_fraction, sw_fraction, thickness_ft, area_acres.

  • pet_pickettSlope

    unknown

    Pickett slope, m=-dlog(Rt)/dlog(phi). Ref: Archie 1942.

    Inputs: phi1_fraction, rt1_ohm_m, phi2_fraction, rt2_ohm_m.

  • pet_pickettSwFromPoint

    unknown

    Pickett Sw, Sw=((a*Rw)/(phi^m*Rt))^(1/n). Ref: Archie 1942.

    Inputs: a, m, n, rw_ohm_m, phi_fraction, rt_ohm_m.

  • pet_apparentWaterResistivity

    unknown

    Apparent water resistivity, Rwa=phi^m*Rt/a. Ref: Archie 1942.

    Inputs: a, m, phi_fraction, rt_ohm_m.

  • pet_flushedZoneWaterSaturation

    unknown

    Flushed-zone Sw, Sxo=((a*Rmf)/(phi^m*Rxo))^(1/n). Ref: Archie 1942.

    Inputs: a, m, n, rmf_ohm_m, phi_fraction, rxo_ohm_m.

  • drill_hydrostaticPressure

    unknown

    Hydrostatic pressure psi: P=0.052*MW*TVD. Ref: Bourgoyne/API13D.

    Inputs: mudWeight_ppg, tvd_ft.

  • drill_mudWeightFromGradient

    unknown

    Mud weight ppg: MW=gradient/0.052. Ref: Bourgoyne/API13D.

    Inputs: pressureGradient_psi_per_ft.

  • drill_pressureGradientFromMudWeight

    unknown

    Pressure gradient psi/ft: G=0.052*MW. Ref: Bourgoyne/API13D.

    Inputs: mudWeight_ppg.

  • drill_equivalentMudWeight

    unknown

    Equivalent mud weight ppg: EMW=P/(0.052*TVD). Ref: Bourgoyne/API13D.

    Inputs: pressure_psi, tvd_ft.

  • drill_ecd

    unknown

    Equivalent circulating density ppg: ECD=MW+dP/(0.052*TVD). Ref: API13D.

    Inputs: mudWeight_ppg, annularPressureLoss_psi, tvd_ft.

  • drill_annularVelocity

    unknown

    Annular velocity ft/min: AV=24.51*q/(Dh^2-Dp^2). Ref: API13D.

    Inputs: flowRate_gpm, holeDiameter_in, pipeOuterDiameter_in.

  • drill_pipeVelocity

    unknown

    Pipe velocity ft/min: V=24.51*q/ID^2. Ref: API13D.

    Inputs: flowRate_gpm, pipeInnerDiameter_in.

  • drill_criticalVelocity

    unknown

    Critical velocity ft/s: Vc=Re*mu/(928*MW*D). Ref: API13D.

    Inputs: mudWeight_ppg, viscosity_cp, hydraulicDiameter_in, criticalReynoldsNumb…

  • drill_pumpOutputTriplex

    unknown

    Triplex pump output bbl/stk: O=0.000243*D^2*S*E. Ref: Bourgoyne.

    Inputs: linerDiameter_in, strokeLength_in, pumpEfficiency_fraction, pumpSpeed_s…

  • drill_pumpOutputDuplex

    unknown

    Duplex pump output bbl/stk: O=0.000162*S*(2D^2-r^2)*E. Ref: Bourgoyne.

    Inputs: linerDiameter_in, rodDiameter_in, strokeLength_in, pumpEfficiency_fract…

  • drill_pumpPressureFromHHP

    unknown

    Pump pressure psi: P=HHP*1714/q. Ref: Bourgoyne/API13D.

    Inputs: hydraulicHorsepower_hp, flowRate_gpm.

  • drill_strokesToBottomsUp

    unknown

    Bottoms-up strokes: strokes=annularVolume/pumpOutput. Ref: Bourgoyne/API13D.

    Inputs: holeDiameter_in, pipeOuterDiameter_in, measuredDepth_ft, pumpOutput_bbl…

  • drill_annularCapacity

    unknown

    Annular capacity bbl/ft: C=(Dh^2-Dp^2)/1029.4. Ref: Bourgoyne.

    Inputs: holeDiameter_in, pipeOuterDiameter_in.

  • drill_pipeCapacity

    unknown

    Pipe capacity bbl/ft: C=ID^2/1029.4. Ref: Bourgoyne.

    Inputs: pipeInnerDiameter_in.

  • drill_annularVolume

    unknown

    Annular volume bbl: V=L*(Dh^2-Dp^2)/1029.4. Ref: Bourgoyne.

    Inputs: holeDiameter_in, pipeOuterDiameter_in, length_ft.

  • drill_pipeDisplacement

    unknown

    Pipe displacement bbl: V=L*(OD^2-ID^2)/1029.4. Ref: Bourgoyne.

    Inputs: pipeOuterDiameter_in, pipeInnerDiameter_in, length_ft.

  • drill_holeVolume

    unknown

    Hole volume bbl: V=L*Dh^2/1029.4. Ref: Bourgoyne.

    Inputs: holeDiameter_in, length_ft.

  • drill_lagTime

    unknown

    Lag time min: t=annularVolume/(q/42). Ref: Bourgoyne/API13D.

    Inputs: holeDiameter_in, pipeOuterDiameter_in, measuredDepth_ft, flowRate_gpm.

  • drill_bitNozzleArea

    unknown

    Bit nozzle TFA in2: A=sum(pi/4*(n/32)^2). Ref: Bourgoyne/API13D.

    Inputs: nozzleDiameters_32nds.

  • drill_jetVelocity

    unknown

    Jet velocity ft/s: Vj=0.32086*q/TFA. Ref: Bourgoyne/API13D.

    Inputs: flowRate_gpm, totalFlowArea_in2.

  • drill_bitPressureDrop

    write

    Bit dP psi: dP=156.5*MW*q^2/(sum d32^2)^2. Ref: Bourgoyne/API13D.

    Inputs: mudWeight_ppg, flowRate_gpm, totalFlowArea_in2.

  • drill_hydraulicHorsepower

    unknown

    Hydraulic horsepower hp: HHP=q*dP/1714. Ref: Bourgoyne/API13D.

    Inputs: flowRate_gpm, pressureDrop_psi.

  • drill_bitArea

    unknown

    Bit area in2: A=pi*D^2/4. Ref: Bourgoyne/API13D.

    Inputs: bitDiameter_in.

  • drill_hsi

    unknown

    HSI hp/in2: HSI=(q*dP/1714)/(pi*Db^2/4). Ref: Bourgoyne/API13D.

    Inputs: flowRate_gpm, bitPressureDrop_psi, bitDiameter_in.

  • drill_jetImpactForce

    unknown

    Jet impact force lbf: JIF=0.01823*q*sqrt(MW*dP). Ref: Bourgoyne/API13D.

    Inputs: flowRate_gpm, mudWeight_ppg, bitPressureDrop_psi.

  • drill_pressureDropAtBitFraction

    write

    Bit pressure fraction: f=dPbit/Ppump. Ref: Bourgoyne/API13D.

    Inputs: bitPressureDrop_psi, pumpPressure_psi.

  • drill_optimumFlowExponent

    unknown

    Flow exponent: m=ln(dP2/dP1)/ln(q2/q1). Ref: Bourgoyne/API13D.

    Inputs: flowRate1_gpm, pressureDrop1_psi, flowRate2_gpm, pressureDrop2_psi.

  • drill_plasticViscosity

    unknown

    Plastic viscosity cp: PV=theta600-theta300. Ref: API13D.

    Inputs: theta600, theta300.

  • drill_yieldPoint

    unknown

    Yield point lbf/100ft2: YP=theta300-PV. Ref: API13D.

    Inputs: theta300, plasticViscosity_cp.

  • drill_apparentViscosity

    unknown

    Apparent viscosity cp: AV=theta600/2. Ref: API13D.

    Inputs: theta600.

  • drill_powerLawN

    unknown

    Power-law n: n=3.32*log10(theta600/theta300). Ref: API13D.

    Inputs: theta600, theta300.

  • drill_powerLawK

    unknown

    Power-law K: K=theta300/(511^n). Ref: API13D.

    Inputs: theta600, theta300.

  • drill_gelStrength

    unknown

    Gel strength lbf/100ft2: G=theta3 after static time. Ref: API13D.

    Inputs: theta3, staticTime_min.

  • drill_reynoldsPipe

    unknown

    Pipe Reynolds: Re=928*MW*V*D/mu_eff. Ref: Bourgoyne/API13D.

    Inputs: flowRate_gpm, pipeInnerDiameter_in, mudWeight_ppg, rheologyModel?, plas…

  • drill_cuttingSlipVelocity

    unknown

    Cutting slip ft/s: Vs=sqrt(4*g*d*(rhos-rhom)/(3*Cd*rhom)). Ref: API13D.

    Inputs: cuttingDiameter_in, cuttingsDensity_ppg, mudWeight_ppg, fluidViscosity_…

  • drill_cuttingsCarryingCapacity

    unknown

    Cuttings carrying fraction: C=max(0,(AV-Vs)/AV). Ref: Bourgoyne/API13D.

    Inputs: annularVelocity_ft_min, slipVelocity_ft_min.

  • drill_killMudWeight

    unknown

    Kill mud weight ppg: KMW=MW+SIDPP/(0.052*TVD). Ref: Bourgoyne.

    Inputs: currentMudWeight_ppg, shutInDrillPipePressure_psi, tvd_ft.

  • drill_maaspMaximumAllowableMudWeight

    unknown

    MAASP psi: MAASP=(FG/0.052-MW)*0.052*TVDshoe. Ref: Bourgoyne.

    Inputs: fractureGradient_psi_per_ft, currentMudWeight_ppg, shoeTVD_ft.

  • drill_kickTolerance

    unknown

    Kick tolerance ppg: KT=FG/0.052-MW-margin. Ref: Bourgoyne.

    Inputs: fractureGradient_psi_per_ft, mudWeight_ppg, shoeTVD_ft, safetyMargin_pp…

  • drill_formationPressureFromKick

    unknown

    Formation pressure psi: Pf=0.052*MW*TVD+SIDPP. Ref: Bourgoyne.

    Inputs: mudWeight_ppg, tvd_ft, shutInDrillPipePressure_psi.

  • econ_ooipVolumetric

    unknown

    Calculate OOIP; OOIP=7758*A*h*phi*(1-Sw)/Boi. Ref: SPE PRMS.

    Inputs: area_acres, netPay_ft, porosity_fraction, waterSaturation_fraction, oil…

  • econ_ogipVolumetric

    unknown

    Calculate OGIP; OGIP=43560*A*h*phi*(1-Sw)/Bgi. Ref: SPE PRMS.

    Inputs: area_acres, netPay_ft, porosity_fraction, waterSaturation_fraction, gas…

  • econ_recoverableOil

    unknown

    Calculate recoverable oil; R=OOIP*RF. Ref: SPE PRMS.

    Inputs: originalOilInPlace_STB, recoveryFactor_fraction.

  • econ_recoveryFactor

    unknown

    Calculate recovery factor; RF=recoverable/original. Ref: SPE PRMS.

    Inputs: recoverableVolume_STB, originalVolume_STB.

  • econ_reservesFromDecline

    unknown

    Calculate decline reserves; R=EUR-Np using Arps qi,Di,b,qab. Ref: Arps 1945.

    Inputs: initialRate_STBPerDay, nominalDeclineRate_perDay, declineExponent, aban…

  • econ_drainageVolume

    unknown

    Calculate drainage volume; V=A*h. Ref: SPE PRMS.

    Inputs: drainageArea_acres, netPay_ft.

  • econ_netRockVolume

    unknown

    Calculate net rock volume; NRV=A*Hgross*NTG. Ref: SPE PRMS.

    Inputs: area_acres, grossThickness_ft, netToGross_fraction.

  • econ_presentValue

    unknown

    Calculate present value; PV=FV/(1+i)^n. Ref: standard DCF.

    Inputs: futureValue_USD, discountRate_fraction, periods.

  • econ_futureValue

    unknown

    Calculate future value; FV=PV*(1+i)^n. Ref: standard DCF.

    Inputs: presentValue_USD, discountRate_fraction, periods.

  • econ_npv

    unknown

    Calculate NPV; NPV=sum(CFt/(1+i)^t). Ref: standard DCF.

    Inputs: discountRate_fraction.

  • econ_discountFactor

    unknown

    Calculate discount factor; DF=1/(1+i)^n. Ref: standard DCF.

    Inputs: discountRate_fraction, periods.

  • econ_pvAnnuity

    unknown

    Calculate PV of annuity; PV=P*(1-(1+i)^-n)/i. Ref: standard DCF.

    Inputs: payment_USD, discountRate_fraction, periods.

  • econ_irr

    unknown

    Calculate IRR; sum(CFt/(1+r)^t)=0. Ref: standard DCF.

    Inputs: guess_fraction?, tolerance?, maxIterations?.

  • econ_paybackPeriod

    unknown

    Calculate payback period; cumulative CF reaches zero. Ref: standard DCF.

  • econ_discountedPayback

    unknown

    Calculate discounted payback; cum discounted CF reaches zero. Ref: standard DCF.

    Inputs: discountRate_fraction.

  • econ_profitabilityIndex

    unknown

    Calculate profitability index; PI=PV future CF/investment. Ref: standard DCF.

    Inputs: discountRate_fraction, initialInvestment_USD?.

  • econ_growthRateOfReturn

    unknown

    Calculate CAGR; g=(ending/beginning)^(1/n)-1. Ref: standard DCF.

    Inputs: beginningValue_USD, endingValue_USD, periods.

  • econ_grossRevenue

    unknown

    Calculate gross revenue; GR=q*price. Ref: standard DCF.

    Inputs: salesRate_bblPerDay, price_USDPerBbl.

  • econ_netRevenueInterest

    unknown

    Calculate NRI; NRI=WI*(1-royalty). Ref: standard DCF.

    Inputs: workingInterest_fraction, royalty_fraction.

  • econ_workingInterestRevenue

    unknown

    Calculate WI revenue; WIR=grossRevenue*WI. Ref: standard DCF.

    Inputs: grossRevenue_USD, workingInterest_fraction.

  • econ_royaltyValue

    unknown

    Calculate royalty value; royalty=grossRevenue*royaltyRate. Ref: standard DCF.

    Inputs: grossRevenue_USD, royalty_fraction.

  • econ_netRevenue

    unknown

    Calculate net revenue; NR=grossRevenue*NRI. Ref: standard DCF.

    Inputs: grossRevenue_USD, netRevenueInterest_fraction.

  • econ_severanceTax

    unknown

    Calculate severance tax; tax=taxableRevenue*taxRate. Ref: standard DCF.

    Inputs: taxableRevenue_USD, taxRate_fraction.

  • econ_operatingCashFlow

    unknown

    Calculate operating cash flow; OCF=NR-opex-tax. Ref: standard DCF.

    Inputs: netRevenue_USD, operatingExpense_USD, tax_USD.

  • econ_netCashFlow

    unknown

    Calculate net cash flow; NCF=rev-opex-capex-tax. Ref: standard DCF.

    Inputs: revenue_USD, operatingExpense_USD, capitalExpense_USD, tax_USD.

  • econ_breakevenPrice

    unknown

    Calculate breakeven price; P=cost/(volume*NRI). Ref: standard DCF.

    Inputs: totalCost_USD, salesVolume_bbl, netRevenueInterest_fraction.

  • econ_breakevenVolume

    unknown

    Calculate breakeven volume; V=cost/(price*NRI). Ref: standard DCF.

    Inputs: totalCost_USD, price_USDPerBbl, netRevenueInterest_fraction.

  • econ_unitTechnicalCost

    unknown

    Calculate unit technical cost; UTC=(capex+opex+abex)/volume. Ref: SPE PRMS.

    Inputs: capitalCost_USD, operatingCost_USD, abandonmentCost_USD?, recoverableVo…

  • econ_returnOnInvestment

    unknown

    Calculate ROI; ROI=netProfit/investment. Ref: standard DCF.

    Inputs: netProfit_USD, investment_USD.

  • econ_capitalEfficiency

    unknown

    Calculate capital efficiency; CE=NPV/capex. Ref: standard DCF.

    Inputs: npv_USD, capex_USD.

  • econ_findingDevelopmentCost

    unknown

    Calculate F&D cost; FDC=cost/reservesAdded. Ref: SPE PRMS.

    Inputs: findingDevelopmentCost_USD, reservesAdded_STB.

  • econ_economicLimitRate

    unknown

    Calculate economic limit rate; q=opex/(price*NRI*conv). Ref: standard DCF.

    Inputs: operatingExpense_USDPerDay, price_USDPerBbl, netRevenueInterest_fractio…

  • geo_overburdenGradient

    unknown

    Integrate density to OBG; OBG=sum(rho/144 dz)/sum(dz); Ref: Zoback.

  • geo_overburdenStress

    unknown

    Convert OBG to overburden stress; Sv=OBG*z; Ref: Zoback.

  • geo_verticalStressFromDensityLog

    unknown

    Integrate density log to vertical stress; Sv=sum(rho/144 dz); Ref: Zoback.

  • geo_porePressureEatonResistivity

    unknown

    Eaton resistivity PP; PPg=OBG-(OBG-Pn)(Robs/Rn)^1.2; Ref: Eaton 1975.

  • geo_porePressureEatonSonic

    unknown

    Eaton sonic PP; PPg=OBG-(OBG-Pn)(DTn/DTo)^3; Ref: Eaton 1975.

  • geo_porePressureBowers

    unknown

    Bowers PP from velocity; Pp=Sv-((Vp-V0)/A)^(1/B); Ref: Bowers 1995.

  • geo_normalPorePressure

    unknown

    Normal hydrostatic PP; Pn=rho_fluid*z/144; Ref: Zoback.

  • geo_fractureGradientEaton

    unknown

    Eaton fracture gradient; FG=nu/(1-nu)(OBG-PP)+PP; Ref: Eaton 1975.

  • geo_fractureGradientMatthewsKelly

    unknown

    Matthews-Kelly FG; FG=Ki(OBG-PP)+PP; Ref: Matthews-Kelly 1967.

  • geo_fractureGradientHubbertWillis

    unknown

    Hubbert-Willis FG; FG=(OBG-PP)/3+PP; Ref: Hubbert-Willis 1957.

  • geo_fractureGradientDaines

    unknown

    Daines fracture gradient; FG=nu/(1-nu)(OBG-aPP)+aPP+T; Ref: Daines.

  • geo_leakOffPressure

    unknown

    Leak-off pressure from FG; P=FG*z; Ref: Zoback.

  • geo_effectiveStress

    unknown

    Terzaghi effective stress; sigma_eff=sigma-alpha Pp; Ref: Zoback.

  • geo_biotCoefficient

    unknown

    Biot coefficient; alpha=1-Kdry/Kgrain; Ref: Zoback.

  • geo_sonicVelocityFromSlowness

    unknown

    Convert sonic slowness to velocity; V=1e6/DT; Ref: log unit definition.

  • geo_dynamicYoungsModulus

    unknown

    Dynamic Young modulus; E=2G(1+nu); Ref: Zoback log mechanics.

  • geo_dynamicPoissonsRatio

    unknown

    Dynamic Poisson ratio; nu=(R^2-2)/(2(R^2-1)); Ref: Zoback.

  • geo_shearModulus

    unknown

    Dynamic shear modulus; G=C rho Vs^2; Ref: Zoback log mechanics.

  • geo_bulkModulus

    unknown

    Dynamic bulk modulus; K=C rho(Vp^2-4Vs^2/3); Ref: Zoback.

  • geo_compressibilityFromModulus

    unknown

    Compressibility from modulus; c=1/M; Ref: Zoback.

  • geo_vpvsRatio

    unknown

    Velocity ratio; R=Vp/Vs; Ref: sonic log unit definition.

  • geo_pWaveModulus

    unknown

    P-wave modulus; M=C rho Vp^2; Ref: Zoback log mechanics.

  • geo_staticFromDynamicModulus

    unknown

    Static modulus correlation; Est=a Edyn+b; Ref: Zoback empirical.

  • geo_ucsFromSonic

    unknown

    Empirical UCS from sonic; UCS=f(Vp or DT); Ref: Horsrud/McNally/Freyburg.

  • geo_frictionAngleFromUCS

    unknown

    Friction angle from UCS; phi=a+b log10(UCS/1000); Ref: Zoback empirical.

  • geo_mohrCoulombShearStrength

    unknown

    Mohr-Coulomb shear strength; tau=c+sigma_n tan(phi); Ref: Zoback.

  • geo_principalStressAtFailure

    unknown

    Principal failure stress; sigma1=UCS+q sigma3; Ref: Zoback.

  • geo_minimumHorizontalStress

    unknown

    Minimum horizontal stress; Sh=nu/(1-nu)(Sv-aPp)+aPp+T; Ref: Zoback.

  • geo_breakdownPressure

    unknown

    Breakdown pressure; Pb=3Shmin-SHmax-aPp+T0; Ref: Hubbert-Willis.

  • geo_collapsePressure

    unknown

    Collapse pressure; Pw=(3SH-Sh-UCS+aPp(q-1))/(1+q); Ref: Zoback.

  • geo_horizontalStressPoroelastic

    unknown

    Poroelastic horizontal stresses; Sh=base+E strain/(1-nu^2); Ref: Zoback.

  • geo_stressPolygonBounds

    unknown

    Stress polygon bounds; S1e/S3e<=Q(mu); Ref: Zoback Reservoir Geomechanics.

  • tub_barlowBurstPressure

    unknown

    Barlow burst pressure, Pb = 2*Yp*t*f/D. Ref API 5C3.

    Inputs: od_in, t_in, Yp_psi, wallFactor?.

  • tub_internalYieldPressure

    unknown

    Internal yield pressure, Piy = 2*Yp*t*f/D. Ref API 5C3.

    Inputs: od_in, t_in, Yp_psi, wallFactor?.

  • tub_burstSafetyFactor

    unknown

    Burst safety factor, SF = Pb/Papplied. Ref Bourgoyne/API 5C3.

    Inputs: burstPressure_psi, appliedPressure_psi.

  • tub_collapsePressureYield

    unknown

    Yield collapse pressure, Pyp = 2*Yp*(D/t-1)/(D/t)^2. Ref API 5C3.

    Inputs: od_in, t_in, Yp_psi.

  • tub_collapsePlasticElastic

    unknown

    Collapse selector, Pc = API 5C3 four-regime D/t model. Ref API 5C3.

    Inputs: od_in, t_in, Yp_psi.

  • tub_collapseSafetyFactor

    unknown

    Collapse safety factor, SF = Pc/Papplied. Ref Bourgoyne/API 5C3.

    Inputs: collapsePressure_psi, appliedPressure_psi.

  • tub_pipeBodyYieldStrength

    unknown

    Pipe body yield strength, T = Yp*A. Ref API 5C3/Bourgoyne.

    Inputs: od_in, id_in, Yp_psi.

  • tub_jointStrength

    unknown

    Approx joint strength, Tj = efficiency*Yp*A. Ref API 5C2.

    Inputs: od_in, id_in, Yp_psi, jointEfficiency?.

  • tub_tensionSafetyFactor

    unknown

    Tension safety factor, SF = Trating/Fapplied. Ref Bourgoyne.

    Inputs: tensileRating_lbf, appliedLoad_lbf.

  • tub_axialStressFromLoad

    unknown

    Axial stress from load, Sa = F/A. Ref Bourgoyne/API 5C3.

    Inputs: load_lbf, area_in2.

  • tub_pipeCrossSectionalArea

    unknown

    Pipe steel area, A = pi/4*(OD^2-ID^2). Ref Bourgoyne.

    Inputs: od_in, id_in.

  • tub_pipeWeightPerFoot

    unknown

    Pipe air weight, W = A/144*rhoSteel. Ref Bourgoyne.

    Inputs: od_in, id_in.

  • tub_buoyantWeight

    unknown

    Buoyant pipe weight, Wb = Wair*(1-MW/65.4). Ref Bourgoyne.

    Inputs: weight_lb_per_ft, mudWeight_ppg.

  • tub_buoyancyFactor

    unknown

    Buoyancy factor, BF = 1-MW/65.4. Ref Bourgoyne.

    Inputs: mudWeight_ppg.

  • tub_airWeightOfString

    unknown

    Air string weight, W = w*L. Ref Bourgoyne.

    Inputs: weight_lb_per_ft, length_ft.

  • tub_hookLoad

    unknown

    Hook load, H = w*L*(1-MW/65.4)+overpull. Ref Bourgoyne.

    Inputs: weight_lb_per_ft, length_ft, mudWeight_ppg, overpull_lbf?.

  • tub_pipeCapacity

    unknown

    Pipe capacity, C = pi/4*ID^2*12/9702. Ref Bourgoyne.

    Inputs: id_in.

  • tub_pipeDisplacement

    unknown

    Pipe displacement, V = pi/4*(OD^2-ID^2)*12. Ref Bourgoyne.

    Inputs: od_in, id_in.

  • tub_annularCapacityBetweenStrings

    unknown

    Annular capacity, C = pi/4*(outerID^2-innerOD^2)*12/9702. Ref Bourgoyne.

    Inputs: outerId_in, innerOd_in.

  • tub_internalVolume

    unknown

    Internal volume, V = capacity*L. Ref Bourgoyne.

    Inputs: id_in, length_ft.

  • tub_pipeStretchHookesLaw

    unknown

    Hooke stretch, e = F*L/(A*E). Ref Bourgoyne.

    Inputs: load_lbf, length_ft, area_in2, E_psi?.

  • tub_stretchDueToWeight

    unknown

    Stretch due to weight, e = w*BF*L*(12L)/(2AE). Ref Bourgoyne.

    Inputs: weight_lb_per_ft, length_ft, area_in2, buoyancyFactor?, E_psi?.

  • tub_thermalElongation

    unknown

    Thermal elongation, dL = alpha*dT*L. Ref Bourgoyne.

    Inputs: length_ft, temperatureChange_F, coefficient_per_F?.

  • tub_ballooningStretch

    unknown

    Ballooning stretch, e = -2*nu*L*(dPi*Ai-dPo*Ao)/(E*As). Ref Bourgoyne.

    Inputs: od_in, id_in, length_ft, internalPressureChange_psi, externalPressureCh…

  • tub_driftDiameter

    unknown

    Drift diameter, Ddrift = ID-allowance. Ref API 5C2.

    Inputs: id_in, driftAllowance_in?.

  • tub_makeupTorque

    unknown

    Approx makeup torque, T = K*F*D/12. Ref API 5C2.

    Inputs: axialPreload_lbf, diameter_in, torqueFactor?.

  • tub_vonMisesEquivalentStress

    unknown

    Von Mises triaxial stress, seq = sqrt(J2 form). Ref API 5C3.

    Inputs: axialStress_psi, hoopStress_psi, radialStress_psi.

  • tub_biaxialCollapseDerating

    unknown

    Biaxial collapse derating, Ypa = Yp*(sqrt(1-.75*r^2)-.5*r). Ref API 5C3.

    Inputs: Yp_psi, axialStress_psi, internalPressure_psi?.

  • tub_minYieldFromGrade

    unknown

    Minimum yield from OCTG grade lookup, Yp = table[grade]. Ref API 5CT/5C3.

    Inputs: grade.