Skip to content

Latest commit

 

History

History
214 lines (170 loc) · 12.8 KB

pipes-code.md

File metadata and controls

214 lines (170 loc) · 12.8 KB

Pipes Functions

Plugins

Pipes Functions

Pressure Map (Annular and Tube)

Computes a map of total pressures

og.model.hydraulics.pressureMap(
         newmap("wellId", "{well_id}",  
                "bitDepth", value_m,
                "fluidFlow", value_m3/s,
                "entryPressure", value_Pa, 
                "startAnnular", boolean, 
                "isAnnular",boolean)
)

ECD and ESD (Annular)

Computes a map of equivalent densities

og.model.hydraulics.equivalentDensityMap(
         newmap("wellId", "{well_id}",  
                "bitDepth", value_m,
                "fluidFlow", value_m3/s,
                "entryPressure", value_Pa, 
                "startAnnular", boolean, 
                "isAnnular",boolean)
)

Frictional Pressure Loss (Annular and Tube)

Computes a map of frictional pressure losses.

og.model.hydraulics.frictionalPressureLossMap(
         newmap("wellId", "{well_id}",  
                "bitDepth", value_m,
                "fluidFlow", value_m3/s,
                "entryPressure", value_Pa, 
                "startAnnular", boolean, 
                "isAnnular",boolean)
)

Pressure at specific MD (Annular and Tube)

These methods calculate the pressure at a given depth, eg. when it is set the depth=0.0m and isAnnular = False the method returns the standpipe pressure. Normally this functionality is useful to compare pressure (at specific position) on Time Charts.

Computes the pressure at a given depth.

og.model.hydraulics.pressure(
         newmap("wellId", "{well_id}",  
                "bitDepth", value_m,
                "fluidFlow", value_m3/s,
                "entryPressure", value_Pa, 
                "startAnnular", boolean, 
                "isAnnular",boolean,
                "depth", value_m)
)

ECD or ESD at specific MD (Annular and Tube)

These methods calculate the ECD at a given depth, eg. when it is set the depth=bitdepth and isAnnular = True the method returns the Bottom ECD or ESD. Normally this functionality is useful to compare ECD and ESD (at specific position) on Time Charts.

Computes the equivalent density at a given depth

og.model.hydraulics.equivalentDensity(
         newmap("wellId", "{well_id}",  
                "bitDepth", value_m,
                "fluidFlow", value_m3/s,
                "entryPressure", value_Pa, 
                "startAnnular", boolean, 
                "isAnnular",boolean,
                "depth", value_m)
)

Frictional Pressure Loss by Components

Maps components into their respective pressure drops.

og.model.hydraulics.lossByComponent(
         newmap("wellId", "{well_id}",  
                "bitDepth", value_m,
                "fluidFlow", value_m3/s)
)

Computes a specific component pressure drop

og.model.hydraulics.componentLoss(
         newmap("wellId", "{well_id}",  
                "bitDepth", value_m,
                "fluidFlow", value_m3/s),
                "type", "type_component", 
                "name", "name_component")
)

Choke Pressure

Calculates the choke pressure based on a set point and measured depth of the set point

og.model.hydraulics.chokePressure(
         newmap("wellId", "{well_id}",  
                "bitDepth", value_m,
                "fluidFlow", value_m3/s,
                "equivalentDensitySetPoint", value_kg/m3, 
                "measuredDepthSetPoint", value_m)
)

Calibration

Calibrates frictional pressure loss on BHA from the linear and exponential parameters on adjustable components.

og.model.hydraulics.chokePressure(
         newmap("wellId", "{well_id}",  
                "bitDepth", value_m,
                seq points. Each point being: 
                   {fluidFlow (/s), entryPressure (Pa), exitPressure (Pa)})
)

Optimization

Calculates the maximum flow rate for given pump characteristics

og.model.hydraulics.maximumFlowRate(
         newmap("wellId", "{well_id}",  
                "maximumPressure", value_Pa,
                "hydraulicPower", value_J/s,
                "efficiency", value_kg/m3)
)

Bit Hydraulic Power

Calculates the optimum flow rate for maximum bit hydraulic power

og.model.hydraulics.optimizeFlowRateWithMaximumBitHydraulicPower(
         newmap("wellId", "{well_id}",  
                "maximumPressure", value_Pa,
                "minimumFlowRate", value_m3/s,
                "maximumFlowRate", value_m3/s)
)

Calculates the flow x bit jet impact force considering maximum system pressure

og.model.hydraulics.bitJetImpactForce(
         newmap("wellId", "{well_id}",  
                "maximumPressure", value_Pa,
                "minimumFlowRate", value_m3/s,
                "maximumFlowRate", value_m3/s)
)

Calculates the optimum flow rate for maximum bit jet impact force

og.model.hydraulics.optimizeFlowRateWithMaximumBitJetImpactForce(
         newmap("wellId", "{well_id}",  
                "maximumPressure", value_Pa,
                "minimumFlowRate", value_m3/s,
                "maximumFlowRate", value_m3/s,
                "fluidDensity", value_kg/m3)
)

Input Parameters Description

Input Parameters on Hydraulic Pipes Functions

Parameters Description unit
wellId Well Id String
drillingSectionIndex Drilling Section Index String
runPosIndex Run Pos Index String
bitDepth bit depth measured depth. Default is length of drill string meters
fluidFlow Flow Rate or pump flow in. Default is zero m3/s
isAnnular

The pressure at the start of the portion specified at the {@link Hydraulics} creation, which determines the ({@link #integrationPath}). If startAnnular at {@link Hydraulics} construction is true, the portion is the annular one, tubular otherwise.

Boolean
entryPressure

The pressure at the integration path starts. Default zero.

Pa
startAnnular This is MD of start annular (default = 0). When is the ‘return to seabed’ scenario this value is the water depth. m
cuttingsDensity Density of Cuttings. (Kg/m³)
tubularPressureMap Pressure along of tubular (m, Pa)
annularPressureMap Pressure along of annular (m, Pa)
tubularTemperatureMap Temperature along the tubular. Important for compressibility (m, degK)
annularTemperatureMap Temperature along of annular (m, degK)
cuttingsConcentrationMap Solid concentration along of annular (m, m3/m3)
boosterDepth Depth (MD) of pump booster (m),
boosterFluidFlow Flow rate of pump booster (m³/s),
useCalibrationData Used to calibrate the standpipe pressure. Default is False boolean
linearCalibratableParameter Calibratable parameter (on BHA) -
exponentialCalibratableParameter Calibratable parameter (on BHA) -