V E S 1.3
FORWARD MODELLING AND INVERSION FOR
SCHLUMBERGER RESISTIVITY SOUNDINGS
(C) G.R.J.COOPER 1992
Department of Geophysics, University of the Witwatersrand
Johannesburg, South Africa
006grc@cosmos.wits.ac.za
C O N T E N T S
1. INTRODUCTION 1
2. PREPARING AND READING IN THE FIELD DATA 2
3. SAVING AND RECALLING MODELS 2
4. ENTERING AND CHANGING A MODEL 2
a) Entering a new model 2
b) Adding a layer 2
c) Deleting a layer 3
d) Changing a layer thickness 3
e) Changing a layer resistivity 3
f) Set minimum and maximum thickness values 3
g) Set minimum and maximum resistivity values 3
h) Changing the number of inversion iterations 3
i) Toggle a resistivity for inversion 3
j) Toggle a thickness for inversion 3
k) Invert a model 3
l) Displaying the parameter variances 4
m) Running a forward model4
5. PRODUCING A HARDCOPY OF THE MODEL 5
6. WRITING THE MODEL AND DATA TO DISK OR PRINTER 5
7. CONFIGURING THE PROGRAM TO THE COMPUTER 5
8. LEAVING THE PROGRAM 5
9. REFERENCES 6
1. INTRODUCTION
VES performs forward modelling and inversion of resistivity sounding data collected using a Schlumberger array {see Fig. 1 below}. The array as shown is expanded several times and the resistivity and AB/2 spacing are recorded each time. See Beck (1981) for further information. The program assumes a horizontally stratified earth made up of several layers, each of which being characterised by a thickness and resistivity. No allowance is made for lateral inhomogeneity ; if this is present in any great degree then other methods like the Offset Wenner technique {Barker 1978} may be more suitable.
VES runs on any IBM PC or close compatible. It needs 640K RAM, and takes up about 200K of disk space, although additional space will be required when the program is run, for temporary storage as screen and hardcopy plots are created. Because of this disk access it is reccomended that it is run from a hard disk rather than a floppy. Due to the considerable computations involved in the inversion process, a maths coprocessor is reccomended, although the program will run {albeit more slowly} without one. Screen output to VGA, EGA, CGA, and Hercules graphics cards is available. Hardcopy output is supported for a range of Epson compatible dot-matrix printers, HP laserjet compatible laser printers, and HP pen plotters.
VES allows the modelling of up to 10 horizontal layers, and any 10 parameters {Eg. a resistivity} may be inverted. The inversion process takes the observed data and the current model, and attempts to modify the model parameters in such a way to improve the fit {in a least-squares sense}. Any parameter may be inverted or held fixed as desired during the inversion process. The inversion process uses Singular Value Decomposition {Lines & Treitel 1984} and Ridge Regression {Inman 1975} techniques to ensure that it is always stable, and converges to a feasible solution. Note that all inversion techniques have their limitations however, and a reasonable first guess is a prerequisite to getting a reasonable model out.
VES is operated via a series of vertical menus from which options are chosen by moving a pointer {using the up/down cursor keys} until it points to the desired option, then pressing the Return key. These menus are designed to make the program as easy to use as possible. The initial menu that appears when the program is started will be referred to hereafter as the main menu. When any parameters such as resistivities or thickness' are to be entered, use the decimal point ie. enter a resistivity of 500 Ohm-M as 500.0
2. PREPARING AND READING IN THE FIELD DATA
VES will read in and plot a file of observed resistivities from a sounding. The data must be in an ASCII file with the following format :-
Three 1
Comment 2
Lines 3
AB1 Rho1
: :
: :
ABN RhoN
The comment lines may be used for details relating to the job, or may be left blank as desired. The field data need not lie in any fixed columns or be justified in any way. Up to 50 readings may be read in. This file may be created with any text editor {Eg. SideKick}, though if a commercial wordprocessor is used then care must be taken to ensure that it does not save any hidden characters into the file. Eg if using WordStar, use it in non-document mode, not document mode. If an incorrect filename is given then a warning message will be printed, and the input prompt will be repeated. Any filename may be used, though an extension of .DTA or .DAT is reccomended.
3. SAVING AND RECALLING MODELS
Once entered, a model may be saved to disk for later recall and editing. The file will contain the resistivities and thickness' of each layer, and is in binary format. It is reccomended that the file be given the extension .MOD, although this is not compulsory. A maximum of 20 characters may be used. Once a model is saved or recalled, return to the main menu to proceed.
4. ENTERING AND CHANGING A MODEL
Selection of this option from the main menu calls up a new screen that is subdivided into three areas ; a submenu, a data entry area, and a data display area. The latter shows the current model parameters, the data entry area is used for the entering of new parameters, and the submenu contains a range of options for changing the model parameters, as detailed below :-
a) Entering a new model :-
When this option is chosen any model current model information will be cleared, and prompts will appear for the resistivity and thickness of each layer. These parameters will be shown in the data display area as they are entered.
b) Adding a layer :-
This option is used to insert a new layer between two layers that already exist. Enter the layer number {as shown in the data display area} of the deeper of the two layers, followed by the thickness and resistivity. The deeper layers will then be shuffled down accordingly.
c) Deleting a layer :-
To remove a layer from the model, just enter the layer number and it will be deleted. All the deeper layers will be shuffled up to fit.
d) Changing a layer thickness :-
The thickness of any layer {excepting the half-space} may be altered as desired. Enter the layer number and the new thickness. If an invalid value is entered {Eg. a negative thickness} than the value will be displayed as a row of asterisks ********, and the input prompt will be repeated. The new thickness will be displayed after it has been sucessfully entered.
e) Changing a layer resistivity :-
This operates in an identical fashion to option d) above.
f) Set minimum and maximum thickness values :-
If desired, the inversion can be constrained such that the thickness of a layer may only vary between certain limits. Using this option the minimum and maximum values of a layer thickness can be set. If during the inversion process one of the limits is reached, then the appropriate thickness will be drawn in red.
g) Set minimum and maximum resistivity values :-
This option is identical to option f) above, only the value of the resistivity of a given layer will be constrained.
h) Changing the number of inversion iterations :-
The use of this option will be discussed in more detail below in option k). Any number from 1-100 may be entered. The default is 25 iterations.
i) Toggle a resistivity for inversion :-
To indicate that the resistivity of a layer is to be included in the inversion process, enter the layer number. The parameter display area will now show the resistivity shown in inverse text, indicating that it is ready for inversion. Conversely, if a layer is already selected for inversion then it can be removed from the inversion process with this option. In this case it will be displayed with the normal text style.
j) Toggle a thickness for inversion :-
This operates in the same manner as described above in option i). Obviously the 'thickness' of the half-space cannot be inverted.
k) Invert a model :-
Selection of this option will start the inversion of all the model parameters marked using options i) and j) above. As described in the introduction, it will cause these parameters to be varied in such a manner as to improve the fit between the observed and calculated curves. The current iteration and a parameter indicating the degree of fit between the two curves are displayed in the data entry area. As the fit improves, this parameter should decrease. After each iteration the new values of the parameters being inverted will be displayed. Inversion cannot be used blindly ; it requires skilful use if a sensible model is to be obtained. Some guidelines follow :-
i) Give a good starting model. The first layer resistivity can usually be modelled easily, so get it right. Try and get the general shape of the curve correct and the right no. of layers if possible. Make the starting model generally too high or too low compared to the field data, rather than high in some places and low in others ie. avoid having both curves crossing each other.
ii) Invert the minimum no. of parameters. The fewer parameters are being inverted, the faster the inversion will proceed. When a parameter is seen not to be changing under inversion, deselect it as described in i) and j) above.
iii) The inversion process may well diverge before it converges later {ie. the error parameter will increase rather than decrease}. If it keeps diverging and the model is far from the solution, then improve the starting model and try again. If the model is very close to a good fit then the inversion is probably thrashing around within the noise in the data ; further inversion is pointless.
iv) Remember the ambiguities inherent in the resistivity technique. It may well be possible to get a very good fit to the data with a range of different models, with different numbers of layers etc. In that situation it is generally best to accept the simplest model ie. that with the smallest number of layers.
l) Displaying the parameter variances :-
The inversion process can give some estimate of the variance in the model parameters that is possible without much {<10% in this case} variation in the model. Parameters that were not inverted will have a variance of zero displayed. The variances are not meaningful until a good fit between the observed and calculated curves has been obtained.
m) Running a forward model :
Selecting this option from the menu will cause a forward model to be calculated and displayed on the computer screen. If no observed data is present then the range of AB/2 values for which the model is to be calculated must be input. Any observed data present will plotted as asterisks * . The thickness and resistivities of the layers in the model will be drawn on the plot in a dashed linestyle. If the first layer has a thickness of less than a metre, then it will have a metre added to it to aid plotting on a logarithmic scale. This does not affect the forward modelling calculations in any way, and is purely for display purposes.
5. PRODUCING A HARDCOPY OF THE MODEL
This menu option calls up a submenu which offers a choice of printer or plotter output {see section 7. below}. The plot may have a title block appended to it if desired. The title block parameters that may be entered are Company name, Division, Project, Location, and Date. The title block may be enabled or disabled.
6. WRITING THE MODEL AND DATA TO DISK OR PRINTER
The model parameters, as well as the observed and calculated resistivities can be printed out or written to an ASCII diskfile. The printer is assumed to be on the computers first parallel port ie lpt1: . Note that this option does NOT produce a saved model - the output file cannot be loaded back into the program later. See section 3. above for information on saving a model.
7. CONFIGURING THE PROGRAM TO THE COMPUTER
Before the program can produce any graphical output, it must be configured. The three devices that must be set up are the screen, the printer, and the plotter. The screen may be set up as EGA, CGA, or Hercules. If the computer has a VGA card then the EGA card option is the best choice.
A range of printers are offered, including the HP laserjet series. Most available printers should be compatible with one or other of those available. The printer is assumed to be on the first parallel port, lpt1:
The plotter must be HP compatible, and may be connected on either COM1: or COM2: The plotter must be set up with the following comms parameters ; 9600 Baud, no parity, 8 data bits, and 1 stop bit. Alternatively, the plotter output may be sent to a diskfile instead. This enables it to be stored and plotted out at a later date.
Once all the devices have been set up then the configuration may be saved. The configuration will be stored into the file Ves.Cfg, which is read in when the program is started up initially.
8. LEAVING THE PROGRAM
Select the final menu option to leave the program and return to the operating system. Make sure that all models and data have been saved before quitting.
9. REFERENCES
Barker, R.D., The Reduction of Lateral Effects in Resistivity Soundings, Geophys. J.R. Astr. Soc. Vol 53, 1978, pp 143-4
Beck, A.E., Physical Principles of Exploration Methods, MacMillan Press 1981.
Inman, J.R., Resistivity Inversion with Ridge Regression, Geophysics Vol 40, 1975, pp 798-817
Lines, L.R., and Treitel, S., A Review of Least Squares Inversion and its Application to Geophysical Problems, Geophysical Prospecting Vol 32, 1984, pp 159-186