ERP#
DC-1D Resistivty drilling location Auto-detecting
Notes
This module is one of the earlier module designed for predicting flow rate by
computing the electrical parameters. Originaly the idea was to automate
everything to ease the task for the users. All things, the users need to do,
is to arrange the electrical data according to the arrangement proposed
by the library in watex.property.P such as:
*pk
*x
*y
*rho
sloc
shape
type
0
790210
1093010
230
low
10
790214
1093016
93
se
V
CP
20
790218 …
1093026
93
up
140
790255
1093116
138
where headers with * means compulsory data and optional otherwise. x and y are utm easting and northing coordinates respectively, while rho is the apparent resistivity at each measurement point(pk). sloc is the column of anomaly boundaries definition. The optional column names such as sloc, shape and type can be None. Inside the table:
low means the lower boundary of the selected anomaly, can also be ‘1’
up means the uper boundary of selected anomaly, can be 2
se means the sounding location on the survey area. can be ves or 0.
V anomaly-shape and can be ‘W’, ‘K’, ‘U’, ‘H’, ‘C’ and ‘M’
CP anomaly type and can be ‘CB2P’, ‘NC’ or ‘EC’
The main interesting part of this module is the collection of ERP where the module can rewrite the data and arrange it following the aforementioned disposal (above proposed by the library). If data is given in a separate sheets (from excel files), the parser exports each sheet and rewrite accordingly. The limit of this approach is that the parser only read the excel format.
Warning
Thus, once the data is well organized, the module is able to compute all the
parameters and select the best location for drilling after analyzing all the
different points in dataset.
However, this seems too much perfect (not realistic) and far from the practice
since in DC - resistivity, the low resistivity does not mean there is a water
at that place thereby leading to a misinsterpretationin the choice of locating
of the drilling points. To handle this issue, we recommended to use the module
watex.method.electrical instead. To force use ERP module, be sure you
are a background of the geology of the area and whether you are not in marshes
or a complex geological area which unfortunately is something difficult
to know in advance.
To well organize the watex API and remediate to the problem of automation, it
is recommended to use the watex.methods.electrical.DCProfiling. The
latter provides fast and efficient way to compute the electrical
parameters with a few margin of errors. The module will be deprecated in the
future and should be rewritten. The automation of parameter computation from
the erp parser sheets such as shape and type of anomaly will henceforth use
the deep neural networks.
- class watex.methods.erp.ERP(erp_fn=None, dipole_length=None, auto=False, posMinMax=None, **kwargs)[source]#
Bases:
objectElectrical resistivity profiling class . Define anomalies and compute its features. Can select multiples anomalies on ERP and give their features values.
- Parameters:
erp_fn (*) – Path to electrical resistivity profile
dipole_length (*) – Measurement electrodes. Distance between two electrodes in meters.
auto (*) – Trigger the automatic computation . If the auto is set to
True, dont need to provide the posMinMax argument otherwise posMinMax must be given.posMinMax (*) – Selected anomaly boundary. The boundaries matches the startpoint as the begining of anomaly position and the endpoint as the end of anomaly position. If provided , auto will be turn off at
FalseevenTrue.
Notes
Provide the posMinMax is strongly recommended for accurate geo-electrical features computation. If not given, the best anomaly will be selected automatically and probably could not match what you expect.
Hold others informations:
Attributes
Type
Description
lat
float
sation latitude
lon
float
station longitude
elev
float
station elevantion in m or ft
east
float
station easting coordinate (m)
north
float
station northing coordinate (m)
azim
float
station azimuth in meter (m)
utm_zone
str
UTM location zone
resistivity
dict
resistivity value at each station (ohm.m)
name
str
survey location name
turn_on
bool
turn on/off the displaying computa- tion parameters.
best_point
float/int
position of the selected anomaly
best_rhoa
float
selected anomaly app.resistivity
display_autoinfos
bool
display the selected three best anomaly points selected automatic- cally.
To get the geo-electrical-features, create an erp object by calling:
>>> from watex.methods.erp import ERP >>> anomaly_obj =ERP(erp_fn = '~/location_filename')
The call of the following erp properties attributes:
properties
Type
Description
float
Best anomaly position points
float
Best anomaly app.resistivity value.
best_points
float
Best positions points selected automatically.
best_sfi
float
Best anomaly standart fracturation index value.
best_anr
float
Best
best_power
float
Best anomaly power in meter(m).
best_magnitude
float
Best anomlay magnitude in ohm.m
best_shape
str
Best anomaly shape. can be
V,W,``K``,H,C,M.best_type
str
Best anomaly type. Can be : -
ECfor Extensive conductive. -NCfor narrow conductive. -CPfor conductive plane. -CB2Pfor contact between two planes.Examples
>>> from watex.methods.erp import ERP >>> anom_obj= ERP(erp_fn = 'data/l10_gbalo.xlsx', auto=False, ... posMinMax= (90, 130),turn_off=True) >>> anom_obj.name ... l10_gbalo >>> anom_obj.select_best_point_ ...110 >>> anom_obj.select_best_value_ ...132 >>> anom_obj.best_magnitude ...5 >>> nom_obj.best_power ..40 >>> anom_obj.best_sfi ...1.9394488747363936 >>> anom_obj.best_anr ...0.5076113145430543
- property best_east#
Get the easting coordinates of selected anomaly
- property best_index#
Keeop the index of selected best anomaly
- property best_lat#
Get the latitude coordinates of selected anomaly
- property best_lon#
Get the longitude coordinates of selected anomaly
- property best_magnitude#
Get the magnitude of the select
select_best_point.
- property best_north#
Get the northing coordinates of selected anomaly
- property best_points#
Get the best points from auto computation
- property best_power#
Get the power from the select
select_best_point.
- property best_rhoaRange#
Collect the resistivity values range from selected anomaly boundaries.
- property best_sfi#
Get the standard fraturation index from
select_best_point_
- property best_shape#
Find the selected anomaly shape
- property best_type#
Get the select best anomaly type
- dataType = {'.csv': <function read_csv>, '.html': <function read_json>, '.json': <function read_json>, '.sql': <function read_sql>, '.xlsx': <function read_excel>}#
- property dipoleLength#
Get the dipole length i.e the distance between two measurement.
- erpLabels = ['pk', 'east', 'north', 'rhoa']#
- property fn#
erpfile type
- property posi_max#
select_best_point_ boundaries using the station locations of unarbitrary positions got from :attr:`~.ERP.dipoleLength.
- Type:
Get the right position of
- Type:
attr
- property posi_min#
select_best_point_ boundaries using the station locations of unarbitrary positions got from :attr:`~.ERP.dipoleLength.
- Type:
Get the left position of
- Type:
attr
- property rhoa_max#
select_best_point_ boundaries using the magnitude got from :attr:`~.ERP.abest_magnitude.
- Type:
Get the top position of
- Type:
attr
- property rhoa_min#
select_best_point_ boundaries using the magnitude got from :attr:`~.ERP.abest_magnitude.
- Type:
Get the buttom position of
- Type:
attr
- sanitize_columns()[source]#
Get the columns of electrical resistivity profiling dataframe and set new names according to
ERP.erpLabels.
- property select_best_point_#
Select the best anomaly points.
- property select_best_value_#
Select the best anomaly points.
- class watex.methods.erp.ERPCollection(listOferpfn=None, listOfposMinMax=None, erpObjs=None, **kws)[source]#
Bases:
objectCollection objects. The class collects all erp survey lines. Each erp is an singleton class object with their corresponding attributes. The goal is to build a container geao-elecricals to straigthforwardly given to
watex.bases.features.GeoFeaturesclass.- Parameters:
listOferpfn (list, ndarray) – list of different erp files.
listOfposMinMax (list) –
collection of different selected anomaly boundaries. If not provided, the
autowill triggered. It’s recommanded to provided for all erp your convenient anomaly boundaries like:listOfposMinMax=[(90, 130), (10, 70), ...]
where
(90,130)``is boundaries of selected anomaly on the first `erp` line and ``(10,70)is the boundaries of the second erp survey line and so on.erpObjs (list, ndarray) – Collection of objects from
ERP. If objects are alread created. Gather them on a list and pass though the argument erpObjs.arguments. (Holds others optionals infos passed as keyword) –
=================================== (====================== =============) –
Description (Attributes Type) –
=================================== –
User (list_of_dipole_lengths list Collection of dipoleLength.) – can provide the distance between sites measurements as performed on investigations site. If given, the automaticall dipoleLength computation will be turned off.
name. (fnames array_like Array of erp survey lines) – If each survey name is the location name then will keep it.
numbers (id array_like Each erp obj reference) –
geo-electrical (erps_data nd.array Array composed of) – parameters. ndarray(nerp, 8) where num is the number of `erp`obj collected.
line (erpdf pd.DataFrame A dataFrame of collected erp) – and the number of lines correspond to the number of collected erp.
=================================== –
of (It's posible to get from each erp collection the singular array) –
properties:: (different parameters considered as) –
>>> from watex.methods.erp import ERP_collection as ERPC >>> erpcol = ERPC(listOferpfn='list|path|filename') >>> erpcol.survey_ids >>> erpcol.selectedPoints
:param List of the
ERP_collectionattribute properties: :param ==================== ============== ===================================: :param Properties Type Description: :param ==================== ============== ===================================: :param selectedPoints array_like Collection of Best anomaly: position points. :param survey_ids array_like Collection of all erp survey: survey ids. Note that each ids isfollowing by the prefix e.
- Parameters:
standard (sfis array_like Collection of best anomaly) – fracturation index value.
power (powers array_like Collection of best anomaly) –
anomaly (magnitudes array_like Colection of best) – magnitude in ohm.m.
shape. (shapes array_like Collection of best anomaly) – For more details please refer to ERP.
type. (types array_like Collection of best anomaly) – Refer to ERP for more details.
=================================== (==================== ==============) –
Examples
>>> from watex.methods.erp import ERP_collection >>> erpObjs =ERP_collection(listOferpfn= 'data/erp') >>> erpObjs.erpdf >>> erpObjs.survey_ids ... ['e2059734331848' 'e2059734099144' 'e2059734345608']
- property easts#
Collect the utm_easting value from erp survey line.
- erpColums = ['id', 'east', 'north', 'power', 'magnitude', 'shape', 'type', 'sfi']#
- exportErp(extension_file=None, savepath=None, **kwargs)[source]#
Export erp data after computing different geo_electrical features.
- Parameters:
extension_file (str) – Extension type to export the files. Can be
xlsxorcsv. The default extension_file iscsv.savepath (str) – Path like string to save the output file.
- get_property_infos(attr_name, objslist=None)[source]#
From each obj erp ,get the attribute infos and set on data array
- Parameters:
attr_name – Name of attribute to get the informations of the properties.
objslist (list) – list of collection objects.
- Example:
>>> from watex.methods.erp.ERP_collection as ERPcol >>> erpObjs =ERPcol(listOferpfn= 'data/erp', ... export_erpFeatures=True, ... filename='ykroS')
- property magnitudes#
Get the magnitudes of select anomaly from erp
- property norths#
Collect the utm_northing value from erp survey line.
- property powers#
Get the power of select anomaly from erp
- property selectedPoints#
Keep on array the best selected anomaly points
- property sfis#
Collect sfi for selected anomaly points
- property shapes#
Get the shape of the selected anomaly.
- property survey_ids#
Get the erp filenames
- property types#
Collect selected anomalies types from erp.