Data Types¶
Three basic Data types in pyGeoPressure are Well for well,
Log for well log and SeiSEGY for seismic data.
Well¶
-
class
pygeopressure.basic.well.Well(json_file, hdf_path=None)[source] A class representing a well with information and log curve data.
Initializer:¶
-
Well.__init__(json_file, hdf_path=None)[source] - Parameters
json_file (str) – path to parameter file
hdf_path (str, optional) – path to hdf5 file used to override the one written in json_file
Properties¶
-
Well.depth() depth values of the well
- Returns
- Return type
numpy.ndarray
-
Well.logs() logs stored in this well
- Returns
- Return type
-
Well.unit_dict() properties and their units
-
Well.hydrostatic() Hydrostatic Pressure
- Returns
- Return type
numpy.ndarray
-
Well.lithostatic() Overburden Pressure (Lithostatic)
- Returns
- Return type
numpy.ndarray
-
Well.normal_velocity() Normal Velocity calculated using NCT stored in well
- Returns
- Return type
numpy.ndarray
log curve data manipulation¶
-
Well.get_log(logs, ref=None)[source] Retreive one or several logs in well
- Parameters
logs (str or list str) – names of logs to be retrieved
ref ({‘sea’, ‘kb’}) – depth reference, ‘sea’ references to sea level, ‘kb’ references to Kelly Bushing
- Returns
one or a list of Log objects
- Return type
-
Well.add_log(log, name=None, unit=None)[source] Add new Log to current well
- Parameters
log (Log) – log to be added
name (str, optional) – name for the newly added log, None, use log.name
unit (str, optional) – unit for the newly added log, None, use log.unit
-
Well.drop_log(log_name)[source] delete a Log in current Well
- Parameters
log_name (str) – name of the log to be deleted
-
Well.rename_log(log_name, new_log_name)[source] - Parameters
log_name (str) – log name to be replaced
new_log_name (str)
-
Well.update_log(log_name, log)[source] Update well log already in current well with a new Log
- Parameters
log_name (str) – name of the log to be replaced in current well
log (Log) – Log to replace
-
Well.to_las(file_path, logs_to_export=None, full_las=False, null_value=1e+30)[source] Export logs to LAS or pseudo-LAS file
- Parameters
file_path (str) – output file path
logs_to_export (list of str) – Log names to be exported, None export all logs
full_las (bool) – True, export LAS header; False export only data hence psuedo-LAS
null_value (scalar) – Null Value representation in output file.
-
Well.save_well_logs()[source] Save current well logs to file
Get Meassured pyGeoPressure¶
-
Well.get_pressure(pres_key, ref=None, hydrodynamic=0, coef=False)[source] Get Pressure Values or Pressure Coefficients
- Parameters
pres_key (str) – Pressure data name
ref ({‘sea’, ‘kb’}) – depth reference, ‘sea’ references to sea level, ‘kb’ references to Kelly Bushing
hydrodynamic (float) – return Pressure at depth deeper than this value
coef (bool) – True - get pressure coefficient else get pressure value
- Returns
Log object containing Pressure or Pressure coefficients
- Return type
Pressure Prediction¶
-
Well.eaton(vel_log, obp_log=None, n=None, a=None, b=None)[source] Predict pore pressure using Eaton method
- Parameters
vel_log (Log) – velocity log
obp_log (Log) – overburden pressure log
n (scalar) – Eaton exponent
- Returns
a Log object containing calculated pressure.
- Return type
-
Well.bowers(vel_log, obp_log=None, a=None, b=None, u=1, vmax=4600, start_depth=None, buf=20, end_depth=None, end_buffer=10)[source] Predict pore pressure using Eaton method
- Parameters
vel_log (Log) – velocity log
obp_log (Log) – overburden pressure log
a, b, u (float) – bowers model coefficients
- Returns
a Log object containing calculated pressure.
- Return type
-
Well.multivariate(vel_log, por_log, vsh_log, obp_log=None, a0=None, a1=None, a2=None, a3=None, b=None)[source]
Log¶
-
class
pygeopressure.basic.well_log.Log(file_name=None, log_name='unk')[source] class for well log data
Initializer:¶
-
Log.__init__(file_name=None, log_name='unk')[source] - Parameters
file_name (str) – pseudo las file path
log_name (str) – log name to create
Alternative initializer:
-
classmethod
Log.from_scratch(depth, data, name=None, units=None, descr=None, prop_type=None)[source]
Data interfaces:¶
-
Log.depth() depth data of the log
-
Log.data() property data of the log
-
Log.start() start depth of available property data
-
Log.stop() end depth of available property data
-
Log.start_idx() start index of available property data
-
Log.stop_idx() end index of available property data
-
Log.top() top depth of this log
-
Log.bottom() bottom depth of this log
SeiSEGY¶
-
class
pygeopressure.basic.seisegy.SeiSEGY(segy_file, like=None)[source]
Initializers:¶
The default initializer takes a segy file path:
-
SeiSEGY.__init__(segy_file, like=None)[source] - Parameters
segy_file (str) – segy file path
like (str, optional) – created segy file has the same dimesions as like.
The alternative initilizer from_json takes a info file in json.
-
classmethod
SeiSEGY.from_json(json_file, segy_file=None)[source] Initialize SeiSEGY from an json file containing information
- Parameters
json_file (str) – json file path
segy_file (str) – segy file path for overriding information in json file.
Iterators:¶
-
SeiSEGY.inlines()[source] Iterator for inline numbers
- Yields
int – inline number
-
SeiSEGY.crlines()[source] Iterator for crline numbers
- Yields
int – cross-line number
-
SeiSEGY.inline_crlines()[source] Iterator for both inline and crline numbers
- Yields
tuple of int – (inline number, crossline number)
-
SeiSEGY.depths()[source] Iterator for z coordinate
- Yields
float – depth value
Data interface:¶
-
SeiSEGY.data(indexes)[source] Retrieve Data according to the index provided.
- Parameters
indexes ({InlineIndex, CrlineIndex, DepthIndex, CdpIndex}) – index of data to retrieve
- Returns
- Return type
numpy.ndarray
Plots Data Sections:¶
-
SeiSEGY.plot(index, ax, kind='vawt', cm='seismic', ptype='seis')[source] Plot seismic section according to index provided.
- Parameters
index ({InlineIndex, CrlineIndex, DepthIndex, CdpIndex}) – index of data to plot
ax (matplotlib.axes._subplots.AxesSubplot) – axis to plot on
kind ({‘vawt’, ‘img’}) – ‘vawt’ for variable area wiggle trace plot ‘img’ for variable density plot
cm (str) – colormap for plotting
ptype (str, optional) – property type
- Returns
- Return type
matplotlib.image.AxesImage
