BHAtp.BHAJ
— TypeBHA(material, length, id, od, fc)
: Definition of a BHA type.
where:
ratio
::Float64, used to generate the FE mesh, in []
medium
::Symbol, currently only :mud is supported
maxiters
::Int, maximum number of FE up/down iterations
dlerrormax
::Float74, maximum dl difference between 2 iterations
drerrormax
::Float74, maximum dr difference between 2 iterations
segments
::Vector of Segments (see SegmentType)
surveys
::Vector of Survey records (see SurveyType)
BHAtp.Bentsub
— TypeBentsub(material, id, od, fc, angle)
: Definition of the Bentsub.
where:
angle
::Bentsub angle [degrees]
BHAtp.Bit
— TypeBit(material, id, od, fc)
: Definition of a Bit segment.
where:
material
::Symbol, e.g. :Steel or :Composite
length
::Float64, length of segment, in [m] or [ft]
id
::Float74, internal diameter, in [m] or [inch]
od
::Float74, external diameter, in [m] or [inch]
fc
::Float74, friction coefficient, in [-]
BHAtp.Collar
— TypeCollar(material, length, id, od, fc)
: Definition of a Collar segment.
where:
material
::Symbol, e.g. :Steel or :Composite
length
::Float64, length of segment, in [m] or [ft]
id
::Float74, internal diameter, in [m] or [inch]
od
::Float74, external diameter, in [m] or [inch]
fc
::Float74, friction coefficient, in [-]
BHAtp.Element
— TypeFinite Element object
Element: Finite element object
Tpe
Fe(length, id, od, radius, fc, inclination, heading, mass, ea, eix, eiy, gl)
Arguments
* `length` : Length of element
* `id` : Inside diameter
* `od` : Outside diameter
* `radius` : Radius
* `fc` : Friction coefficient
* `inclination` : Inclination [Radians]
* `heading` : Heading [Radians]
* `mass` : Element mass
Young moduli
* `ea` : E*A in z direction
* `er` : E*I in r direction
* `gj` : Shear modulus
* `nu` : Poisson constant
BHAtp.ExtForce
— TypeExtForce
ExtForce: Segment with no length that handles an external force applied to the assemby.
The forces fx and fy are assumed to be in the local coordinate system.
Tpe
ExtForce(depth, inclination, heading, Fx, Fy)
Arguments
* `fx` : Force in x direction
* `fy` : Force in y direction
BHAtp.Node
— TypeNode object
Node: Node object
Constructor
Node(z, x, y, tvd, xvert, dispew, dispns, inclination, deltainclination, dip,
heading, deltaheading, holeradius, stringradius, fc, clearance,
weight, mass, massinertia, axialinertia, radialinertia)
* dip : Angle [Radians] from horizon
* inclination : Angle [Radians] from vertical
Fields
* `x` : x coordinate
* `y` : y coordinate
* `z` : z coordinate
* `tvd` : Measured depth
* `xvert` : True vertical depth
* `dispew` : Angle from east to west [Radians]
* `dispns` : Angle from north to south [Radians]
* `inclination` : Inclination [Radians]
* `deltainclination` : Add'l inclinationination angle (bentsub) [Radians]
* `dip` : Dip at node [Radians]
* `heading` : Heading [Radians]
* `deltaheading` : Add'l heading angle (bentsub) [Radians]
* `holeradius` : Hole radius
* `stringradius` : String radius
* `fc` : Friction coefficient
* `clearance` : Clearance element in hole
* `weight` : Weight (force)
* `mass` : Mass
* `massinertia` : Second moment of inertia
* `axialinertia` : Moment of inertia
* `radialinertia` : Radial inertia
* `externalxforce` : External force in x direction applied at node
* `externalyforce` : External force in y direction applied at node
* `fixedxcoord` : Fixed location in x direction at node
* `fixedycoord` : Fixed location in y direction at node
* `fixedxtheta` : Fixed angle from z towards x direction at node
* `fixedytheta` : Fixed angle from z towards y direction at node
BHAtp.Pipe
— TypePipe(material, length, id, od, fc)
: Definition of a Pipe segment.
where:
material
::Symbol, e.g. :Steel or :Composite
length
::Float64, length of segment, in [m] or [ft]
id
::Float74, internal diameter, in [m] or [inch]
od
::Float74, external diameter, in [m] or [inch]
fc
::Float74, friction coefficient, in [-]
BHAtp.Rig
— TypeRig(id, od)
: Definition of a Rig segment. This element must be the topmost element of the BHA and will fix the position of the BHA in the center.
where:
material
::Symbol, e.g. :Steel or :Composite
length
::Float64, length of segment, in [m] or [ft]
id
::Float74, internal diameter, in [m] or [inch]
od
::Float74, external diameter, in [m] or [inch]
fc
::Float74, friction coefficient, in [-]
BHAtp.SegmentType
— TypeSegmentType
: Type of a segment in a Bottom Hole Assembly (BHA), currently defined:
Collar
, Pipe
, Stabilizer
, Bit
BHAtp.Stabilizer
— TypeStabilizer(material, id, od, fc)
: Definition of a Stabilizer segment.
where:
material
::Symbol, e.g. :Steel or :Composite
length
::Float64, length of segment, in [m] or [ft]
id
::Float74, internal diameter, in [m] or [inch]
od
::Float74, external diameter, in [m] or [inch]
fc
::Float74, friction coefficient, in [-]
BHAtp.SurveyType
— TypeSurveyType
: Type of a survey record, currently defined:
RigSurvey
, HoleSurvey
, BitSurvey
BHAtp.Trajectory
— TypeTrajectory(inclination, heading, diameter)
: Definition of the well trajectory.
where:
inclination
::Float64, inclination from vertical, in [radians]
heading
::Float64, direction from North, in [radians]
diameter
::Float74, internal diameter, in [inch]
BHAtp.checkinput!
— Methodcheckinput!(data)
: Check and/or initialize all fields in data dictionary.
where: data
::Dict{Symbol, Any}
BHAtp.checkratio!
— MethodThe checkratio! function
checkratio!(data)
: Check and/or set the ratio field in data.
where: data
::Dict{Symbol, Any}
BHAtp.checktrajectoryinput!
— Methodchecktrajectoryinput!(data)
: Check trajectory data in data dictionary.
where: data
::Dict{Symbol, Any}
BHAtp.tp!
— MethodTheoretical performance of a BHA
Function to compute the theoretical performance of a Bottom Hole Assembly (BHA) in terms of building or dropping rate.
Function
theoretical_performance!(data::Dict{Symbol, Any})
or
tp!(data::Dict{Symbol, Any})
Arguments
* `data` : Dictionary with input (and updated) data.
Results
* `params` : Object with all computational results.