Creating a wellbore trajectory
- well_profile.get(mdt, profile='V', build_angle=1, kop=0, eob=0, sod=0, eod=0, kop2=0, eob2=0, **kwargs)[source]
Generate a wellpath.
- Parameters
mdt (num) – target depth, m or ft
profile (str) – ‘V’ for vertical, ‘J’ for J-type, ‘S’ for S-type, ‘H1’ for Horizontal single curve and ‘H2’ for Horizontal double curve
build_angle (num) – building angle, °
kop (num) – kick-off point, m or ft
eob (num) – end of build, m or ft
sod (num) – start of drop, m or ft
eod (num) – end of drop, m or ft
kop2 (num) – kick-off point 2, m or ft
eob2 (num) – end of build 2, m or ft
- Keyword Arguments
points (int) – number of points
set_start (dict, None) – set initial point in m {‘north’: 0, ‘east’: 0}.
change_azimuth (float, int, None) – add specific degrees to azimuth values along the entire well.
set_info (dict, None) – dict, {‘dlsResolution’, ‘wellType’: ‘onshore’|’offshore’, ‘units’: ‘metric’|’english’}.
- Returns
well – A wellpath object with 3D position
- Return type
well object
Vertical well
>>> import well_profile as wp
>>> well = wp.get(3000, # define target depth (md) in m or ft
>>> profile='V', # set Vertical well profile
>>> set_info={'dlsResolution': 30, 'wellType': 'offshore', 'units': 'metric'},
>>> # (optional) define the resolution for dls calculation, well type and system of units 'metric'
>>> # for meters or 'english' for feet
>>> set_start={'north': 0, 'east': 0, 'depth': 0}) # (optional) set the location of initial point
>>> points=100, # (optional) define number of points
>>> well.plot(names=['Wellbore ID']).show()
J-type well
>>> import well_profile as wp
>>> well = wp.get(3000, # define target depth (md) in m or ft
>>> profile='J', # set J-type well profile
>>> kop=800, # set kick off point in m or ft
>>> eob=2000, # set end of build in m or ft
>>> build_angle=78, # set build angle in °
>>> set_info={'dlsResolution': 30, 'wellType': 'offshore', 'units': 'metric'},
>>> # (optional) define the resolution for dls calculation, well type and system of units 'metric'
>>> # for meters or 'english' for feet
>>> set_start={'north': 0, 'east': 0, 'depth': 0}) # (optional) set the location of initial point
>>> points=100, # (optional) define number of points
>>> well.plot(names=['Wellbore ID']).show()
S-type well
>>> import well_profile as wp
>>> well = wp.get(3000, # define target depth (md) in m or ft
>>> profile='S', # set S-type well profile
>>> kop=800, # set kick off point in m or ft
>>> eob=1500, # set end of build in m or ft
>>> build_angle=45, # set build angle in °
>>> sod=1800, # set start of drop in m or ft
>>> eod=2800, # set end of drop in m or ft
>>> set_info={'dlsResolution': 30, 'wellType': 'offshore', 'units': 'metric'},
>>> # (optional) define the resolution for dls calculation, well type and system of units 'metric'
>>> # for meters or 'english' for feet
>>> set_start={'north': 0, 'east': 0, 'depth': 0}) # (optional) set the location of initial point
>>> points=100, # (optional) define number of points
>>> well.plot(names=['Wellbore ID']).show()
Horizontal single curve well
>>> import well_profile as wp
>>> well = wp.get(3000, # define target depth (md) in m or ft
>>> profile='H1', # set horizontal single curve well profile
>>> kop=800, # set kick off point in m or ft
>>> eob=1500, # set end of build in m or ft
>>> build_angle=45, # set build angle in °
>>> set_info={'dlsResolution': 30, 'wellType': 'offshore', 'units': 'metric'},
>>> # (optional) define the resolution for dls calculation, well type and system of units 'metric'
>>> # for meters or 'english' for feet
>>> set_start={'north': 0, 'east': 0, 'depth': 0}) # (optional) set the location of initial point
>>> points=100, # (optional) define number of points
>>> well.plot(names=['Wellbore ID']).show()
Horizontal double curve well
>>> import well_profile as wp
>>> well = wp.get(3000, # define target depth (md) in m or ft
>>> profile='H2', # set horizontal double curve well profile
>>> kop=800, # set kick off point in m or ft
>>> eob=1500, # set end of build in m or ft
>>> build_angle=45, # set build angle in °
>>> set_info={'dlsResolution': 30, 'wellType': 'offshore', 'units': 'metric'},
>>> # (optional) define the resolution for dls calculation, well type and system of units 'metric'
>>> # for meters or 'english' for feet
>>> set_start={'north': 0, 'east': 0, 'depth': 0}) # (optional) set the location of initial point
>>> points=100, # (optional) define number of points
>>> well.plot(names=['Wellbore ID']).show()
Using two points
This function allows to generate a wellbore trajectory by seeting kick-off point (KOP) and target.
- well_profile.two_points(points, inner_points=20)[source]
- Parameters
points – {‘kickoff’:{‘north’: num, ‘east’: num, ‘tvd’: num}, ‘target’: {‘north’: num, ‘east’: num, ‘tvd’: num}}
inner_points – number of points between curved zone
- Returns
a wellpath object with 3D position
>>> import well_profile as wp
>>> well = wp.two_points({'kickoff': {'north': 0, 'east': 0, 'tvd': 100},
>>> 'target': {'north': 500, 'east': 800, 'tvd': 800}})