ISSN: 2381-8719
+44 1478 350008
Research Article - (2023)Volume 12, Issue 6
Geophysical modeling was used to identify subsurface structures that correspond to data from measurements. Although freeware inversion algorithms are not commonly used in the geophysical community, several open-source modeling and inversion algorithms have been developed in recent years. This study assesses the applicability of an open-source inversion software on a real earth model. A synthetic model based on a homogeneous layer was used to create a buried target with contrast resistivity. A real data survey was conducted using the same input criteria. The dipole-dipole array of 42 electrodes, with 1 m spacing for profile and 1 m spacing electrodes was used for the subsurface resistivity probe. The analysis showed a positive correlation between the synthetic and the real earth model. The flexibility of the source code has made the results more realistic. This study can also show how to use free inversion software for repeatable geophysical research, specifically geophysical modeling and inversion.
Resistivity; Modelling; Inversion; Freeware; Algorithm; Synthetic
A reliable and tested technique for characterizing and monitoring the subsurface distribution of bulk electrical conductivity is direct current Electrical Resistivity Tomography (ERT) [1,2]. Due to the fact that electrical conductivity is controlled by pore fluid chemistry, porosity, pore connectivity, saturation, mineralogy, and grain size distribution, it is a useful metric for analyzing environmentally significant characteristics and processes [3]. When only one of these properties changes significantly in space or time, the ERT-derived bulk conductivity can be used to characterize the property or process in a novel way.
Inversion and data acquisition techniques for the electrical resistivity method have advanced significantly in recent years. In order to recover complicated geological formations that would be hard to recover with a one-dimensional (1D) survey, modern resistivity acquisition collects a significant amount of data in two dimensions (2D) and three dimensions (3D) [4]. The observed apparent resistivity data can be reversed to reproduce the subsurface spatial resistivity distribution using inversion methods.
While commercial inversion programs for geoelectric data are available, they are less flexible and difficult to use for independent researchers. Technically adept users frequently reduce the reproducibility of scientific research by connecting various existing, potentially profitable software via scripts to create custom solutions [5]. This drives and sustains demand for modern freeware architectures for numerical tasks in geophysical studies.
With open-source projects, inversion freeware algorithms are created utilizing various interpretative languages such as Python and SciPy. The most flexible and interpretative opensource programming language is Python, which makes it perfect for creating a variety of geoscientific software applications. Furthermore, it combines numerical computation performance with premium graphical outputs and user interfaces. Furthermore, by improving the source code with feedback from various users, Python code can assist any scientific community in solving a scientific problem [6]. Python is thus primarily used to develop geoelectric inversion freeware packages because it can examine source code and, if necessary, pertain and customize it for specific applications.
Several authors have made advances in addressing the application of open-source inversion packages to solve geoelectrical problems [7,8]. Such open-source inversion packages include ResIPy [8], pyGIMLi [6], and BERT [9]. Boyd et al. [7], described the success in the application of ResIPy, for a 3D a geoelectrical data processing in detecting landslides with a complex geology and topography, where they described its effectiveness in terms of forward modelling and inversion.
ResIPy, a geoelectric data inversion tool built into the Python interface, is the subject of this paper. ResIPy is an acronym that stands for Resistivity and Induced Polarization with Python. In this study, we considered code structures, mesh designs, package dependencies, and real-world data applications. This article focuses on the use of the ResIPY open-source software to facilitate a two-dimensional static electrical resistivity tomography inversion on an earth model located within the Ahmadu Bello University Geophysical Test Site (ABUGTS) in Nigeria. This is so as to see its effectiveness as compared to conventional software packages. Comparison are been made in terms of the data preprocessing, mesh design, forward modelling and inversion. Despite the fact that numerous studies use inversion freeware for a variety of applications, no studies have evaluated the efficacy of this freeware package for geoelectric data inversion in terms of establishing a geophysical test site. This study may persuade the geoscientific community to use freeware more frequently for modeling and inversion of geoelectrical datasets.
ResIPy freeware framework
The modeling and inversion of geoelectric datasets is also possible with ResIPy. It is built using the Python interface, and a GitLab repository hosts its source code. Free open-source programs like R2, R3t, and cR2 are used by ResIPy. In order to address direct current resistivity in 2D and 3D, the R2 and R3t codes were created [8]. On the contrary, the cR2 code is designed to solve the induced polarization problem [10]. These codes require formatted text files for input, forward and inverse model setting, and mesh construction. Figure 1 shows the internal operating layers of ResIPy.
Figure 1: Internal ResIPy operating with three primary layers.
The Python API is object-oriented and contains numerous classes. The main class, R2 (R2.py), controls data processing and inversion. When a new inversion/modeling task is launched, the GUI generates an R2 object. The Survey (Survey.py) class manages a single dataset for a single survey. Using the R2 surveys attribute, you can manage multiple surveys (from a time-lapse experiment, for example) within a single R2 object. Last but not least is the Mesh class (meshTools.py), which manages the tasks involved in creating the finite element mesh (e.g., mesh generation, mesh refinement, electrode positioning, etc.). An R2 mesh is represented by a Mesh class instance, which is present in every R2 object.
For resistivity calculations, ResIPy uses unstructured and structured quadrilateral and triangular finite element meshes. It can also import intricate mesh from Gmsh [11]. The application of the triangular meshes to more intricate geometry (topography and geometrical features within the region of study). The triangular-mesh function in ResIPy creates the mesh by invoking Gmsh.exe to carry out the meshing operation. The triangular- mesh function gives gmsh (.geo) an input file and parses the output (.msh). We recommend Blanchy et al. [8], for more information on ResIPy's design aspects.
Forward problem formulation can be used to measure the geoelectric data artificially. The error data points or electrodes can be imported from the field data or synthetic data. Sending the filtered data and the created mesh to the inversion pipeline is an option. A weighted least- squares objective function can be used to perform inversion, along with a variety of regularizations. An inverted geoelectric section completes the process. A diagnostic pseudo- section of the normalized inversion error can also be created [10].
Numerical experiments
Methodology: To put the ResIPy Python-based inversion freeware to the test, we created a synthetic resistivity model by assuming a homogenous earth surface. ResIPy 3.4.2, the most recent freeware version used in this study, may perform differently in future inversions due to different advancements of the tested freeware codes. We employ a conceptual model that depicts an archaeological target layer buried in a homogeneous host medium and a horizontally stratified basement layer.
Forward resistivity modelling is performed for a layered geologic model that consists of a sand layer with a resistivity value of 70 Ωm, and a gravel layer with a resistivity value of 100 Ωm, respectively, from top to bottom (Figure 2).
Figure 2: Sand and slightly fractured gravel make up the layers of the conceptual model from top to bottom.
Additionally, we performed a finite difference forward simulation for an archaeological model (Figure 3), that included a relatively resistive target (shown in the middle) with a resistivity value of 300 m buried in a sandy and gravel host medium, respectively, with resistivity values of 70 m and 100 m. The inversion performance was assessed using a body with a radius of 5 m and a depth of 3 m. We used this modeling method because we thought the layer would be uniform.
Figure 3: The layered conceptual model with buried target of contrast resistivity.
We used the dipole-dipole array for surface resistivity probing with 42 electrodes spaced at 1 m because it offers high resolution for buried targets [12]. Figure 4 illustrates how we use ResIPy's finite element triangular unstructured mesh for model discretization.
Figure 4: Model discretization.
We integrate the acquisition error by perturbing 3% Gaussian noise, where the random value noises are generated for each data point with zero mean and 3% standard deviation, as measurement error does not manifest in the synthetic data.
Forward resistivity data are inverted using the inversion algorithm covered in the freeware package. Initialized at 20, the regularization value is gradually decreased. The initial homogeneous model can be altered through iterative inversion up until a satisfactory convergence between the model response and the actual apparent resistivity is attained. To assess the freeware's ability to recover, the inverted models are compared to the original model.
Synthetic modelling result
The accuracy of the inversion software and the calibrated measured datasets determine the resolution of the obtained resistivity model. For horizontally layered geologic conditions and archaeological target sets in a homogeneous medium, we looked at the ResIPy inversion freeware. The forward resistivity problem was resolved using the freeware ResIPy algorithm.
We assessed the inversion freeware's performance for a model of a basement complex with horizontal layers. The model result for the evaluated freeware package is shown in Figure 5. The center of the profile is clearly resolved, and the inverted model picked up both the sandy and gravel layers. Both the sand layer and the gravel layer were accurately detected by the freeware package. The model profile's center is clearly resolved. However, smearing is seen at the profile's conclusion, which is probably due to a lack of data coverage or a lack of data points.
Figure 5: Shows the inverted layered model results.
Additionally, the freeware program Inversion was checked for archaeological targets hosted in a uniform host medium. The inversion results for the target scenario with a 5 m target radius set at 3 m depth are shown in Figure 6. The base is slightly extended beyond the actual model, but the result shows a moderate level of resolution and a correctly resolved upper boundary of the target anomaly. The inverted resistivity values are overestimated in the conductive target zone and underestimated in the resistive target when compared to the initial target resistivities.
Figure 6: Inverted model with the buried archeological target (unstructured triangular mesh is implemented).
Case study: Geophysics test site, Ahmadu Bello university
This research was carried out at the Ahmadu Bello University Geophysics Test Site (ABUGTS), which form part of the Ahmadu Bello University farm. It is located north of Ahmadu Bello University's main campus in Shika, on the Zaria-Funtua Road. It is situated between latitudes 11° 12′ 12′′ N and 11° 11′ 28′′ N and longitudes 7° 35′ 42′′ E and 7° 35′ 34′′E. This study area is part of the Nigeria Basement Complex, which is made up of four different types of rocks, according to McCurry [13]. The typical types of rocks in the basement complex are gneisses, migmatites, metasediments, and some amphibolite intercalation (Figure 7). The basement complexes accommodate the metasediments and are made up of gneisses. Exposures are scanty and highly weathered. The rock types are biotite, gneisses, granite gneisses and in parts with subordinate migmatites. The contact between the gneisses and metasediments are gradational, Dahomeyan- Birrimian in age [13]. The Zaria crystalline rocks are part of the Nigerian Basement Complex. Oyawoye [14], has shown that there is a structural relationship between this Basement Complex and the rest of the West African basement. This is partly due to the fact that the whole region was involved in a single set of the orogenic episode, the Pan African orogeny, which left an imprint of structural similarity upon the rock units [15-18].
Figure 7: Geological map showing the study site and environs.
Survey layout
In this study, we take into account a geoelectrical survey made up of Forty-two (42) parallel 2D tomography along a single plane (Figure 8). Forty-two (42) electrodes were positioned along each survey line at a fixed distance of one meter (a=1 m, a: basic electrode separation). The basic electrode distance was the same as the inter-line spacing. The area of interest was covered by a total of 676 electrodes. The Dipole-Dipole electrode array measurement protocol was used, this is because it offers high lateral resolution for buried targets. The ABEM SAS terrameter was used for the data acquisition, and the data format imported into the ResIPy program was .Dat. The 2D profiles were taken with the assumption that the earth is homogeneous, as a result topography data was not included. This was done so as to assume the same conditions as used in creating the synthetic model [19- 23].
Figure 8: Study area location indicating the 2D profile layout.
The data set for each 2D profile was imported into the ResIPy freeware, and data pre-processing was first carried out so as to check for reciprocal errors. The triangular mesh was used to generate the mesh elements, just as was used in generating the synthetic model. The characteristic length, which is the distance between each triangle to an electrode, was set to be coarse. The growth factor which tells how the elements from the surface to the bottom of the mesh will grow, was set to be high. As a result, we had a coarse mesh with a large growth factor (Figure 9).
Figure 9: Model discretization.
The inversion process was then carried out using the regularized inversion with linear filtering. The data type was logarithmic and both the a_wgt and b_wgt were set at 0.01 Ω and 0.02 (roughly equivalent to 2% error). The value for tolerance was set at 1.0 and the regularization mode was set at normal. The inversion converged after 8 iterations for all profiles.
A resistivity profile was taken prior to earth materials been buried and Figure 10 shows the profile of the 2D inversion image. This profile converges after the 8th iteration and some resistivity contrast and good layering of the earth’s subsurface, indicating both sand and gravel layer.
Figure 10: The inversed 2D resistivity profile before inserting the earth model.
At a depth of 3 m, materials with a distinct resistivity contrast were buried, and 2D surface profiles were conducted.
Figure 11 shows the 2D inversion model of the survey area, the inversions also converged after seven iterations, also indicating a good fit between the measured and calculated apparent resistivity. It can be seen that the buried materials show high resistivity contrast at a horizontal distance of 18-23 m, with a depth of about 3 m along all profiles. Two distinct layers can be observed; the top layer, which comprises of sand, and the weathered basement which comprises of gravels (Figures 12 and 13).
Figure 11: The inversed 2D resistivity profile one after inserting the earth model.
Figure 12: The inversed 2D resistivity of profile two after inserting the earth model.
Figure 13: The inversed 2D resistivity profile three after inserting the earth model.
The ResIPy freeware was compared with the conventional RES2DINV, in terms of inversion of the model at the Geophysics test site. The pre-processing done using the conventional software, involved the extermination of bad data points. Finer mesh setting was chosen because it gives more accurate apparent resistivity values, even though it requires more computer time and memory. The finite-difference forward modelling method was also chosen, this was as a result of the fact that topography data was not used as the Earth was assumed to be homogeneous. The models all converged at the 8th iteration, and the inversion model using the RES2DINV software is as shown in Figures 14-16.
Figure 14: The inversed 2D resistivity profile after inserting the earth model (RES2DINV).
Figure 15: The inversed 2D resistivity profile after inserting the earth model (RES2DINV).
Figure 16: The inversed 2D resistivity profile after inserting the earth model (RES2DINV).
Provenance and origin
Because no algorithm can recover complete realism, the performance of the ResIPy Inversion freeware is solely focused on how well the inverted model can estimate the subsurface features. The capabilities of inversion freeware may vary depending on the mesh design, type of dependency, and code structure. In this study, the same input models are inverted for both the numerical experiment and the real dataset to assess the recovering capabilities of the ResIPy freeware. A conceptual model with a high resistive target positioned at a depth in a homogeneous host medium was used for numerical experiments and model inversion.
The real survey was then taken with the same parameters of the buried body similar with that of the synthetic model and using the same measurement parameter (number of electrode and electrode spacing). Considering the inverted synthetic model, it was observed that the buried target seems to have a more defined shape as compared to the real data inversion. This may be attributed to the inhomogeneity of the earth subsurface, creating more variation in resistivity. ResIPy implements both structured and unstructured meshes using the finite element method. It was however discovered from this study that the structured mesh is less flexible for numerical formulation in the gradient direction than the unstructured mesh and consumes less memory and computational time. The unstructured mesh expands the grid size toward the computational boundaries to account for the numerical calculation of the low sensitive zone, and it refines the grid size near the electrode location and target zone, where the high contrast of the simulated electric potential necessitates enhanced numerical accuracy.
Compared with a conventional 2D resistivity software (RES2DINV), it was observed that the ResIPy open-source freeware showed its competence. For both, the buried archeological body that was buried was discovered at the same horizontal distance and at the same depth of about 3 m. It was observed that using the ResIPy open-source freeware, it was more flexible due to the fact that it could be used using the API option.
The study has shown the success of inversion of 2D electrical resistivity tomography data using an open source rather than the conventional specified software package for 2D electrical resistivity inversion. This has also proved the possibility of the application in a case study for modeling and inversion in a geoelectrical survey. The ability of manipulation of the source codes for the ResIPy software (open source), makes it more flexible to handle various problems that suit any specific region where geophysical survey can be conducted. Low reliability measurements can be easily removed and more realistic inverted models can be produced using the ResIPy's advanced filtering and error modelling options which are of great advantage. It is therefore obvious that a more realistic and reliable solutions on inversion can be obtained for real earth models. The ResIPy is very useful for conducting geoelectrical inversions and modeling based on the positive correlation of the synthetic model and real model.
The authors wish to thank TETFUND through the Institution Based Research (IBR) project (TETF/DR&D/UNI/ZARIA/IBR/2020/VOL.1/39) based at the Ahmadu Bello University for funding this entire project. Also, we thank the Ahmadu Bello University for providing an enabling environment for this project to be executed.
The authors declare no conflict of interest.
Supporting data can only be provided to legitimate researchers who sign a non-disclosure agreement because of confidentiality agreements. The corresponding author at Ahmadu Bello University in Nigeria can provide you more information about the data and tell you how to seek access.
Citation: Osumeje JO, Eshimiakhe D, Bello Y, Lawal KM (2023) Assessment of Open-Software Resources in Python using Real Two-Dimensional Geophysical Model. J Geol Geophys. 12:1112.
Received: 17-Jun-2023, Manuscript No. JGG-23-25187; Editor assigned: 19-Jun-2023, Pre QC No. JGG-23-25187 (PQ); Reviewed: 03-Jul-2023, QC No. JGG-23-25187; Revised: 10-Jul-2023, Manuscript No. JGG-23-25187 (R); Published: 17-Jul-2023 , DOI: 10.35248/2381-8719.23.12.1112
Copyright: © 2023 Osumeje JO, et al. This is an open-access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.