Abstract:
The invention relates to the method, device, and a machine-readable data carrier used for building a geological model of oil or other mineral deposit. In particular, the invention refers to the method, device, and machine-readable data carrier used for determining the position of marker depth coordinates in wells W from a reference group of wells at the building of a geological model. A technical result is the improved accuracy of the evaluation of parameters used in the building of a geological model describing the location of oil or other deposits. The invention makes it possible, for markers chosen as an initial solution, to calculate the marker depth in each well to maximize the total correlation. For each marker in the set, a functional is defined as the sum of correlation coefficients of a set of well-logging methods for pairs of wells located within a specified distance from one another.

Description:
CROSS-REFERENCE TO RELATED PATENT APPLICATIONS 
       [0001]    This U.S. patent application is related to the following U.S. patent applications filed on the same day: U.S. patent application Ser. No. ______ entitled “SYSTEMS AND METHODS FOR DETERMINING POSITION OF MARKER DEPTH COORDINATES FOR CONSTRUCTION OF GEOLOGICAL MODEL OF DEPOSIT,” attorney docket No. 10052.1, U.S. patent application Ser. No. ______ entitled “SYSTEM FOR DETERMINING POSITION OF MARKER DEPTH COORDINATES FOR CONSTRUCTION OF GEOLOGICAL MODEL OF DEPOSIT,” attorney docket No. 10052.3, and U.S. patent application Ser. No. ______ entitled “SYSTEM FOR DETERMINING POSITION OF MARKER DEPTH COORDINATES FOR CONSTRUCTION OF GEOLOGICAL MODEL OF DEPOSIT,” attorney docket No. 10052.4, all of which are incorporated by reference herein in their entirety. 
     
    
     BACKGROUND OF THE INVENTION 
       [0002]    1. Technical Field 
         [0003]    The invention relates to the method, device, and a machine-readable data carrier used for building a geological model of oil or other mineral deposit. In particular, the invention refers to the method, device, and machine-readable data carrier used to determine position of marker depth coordinates in wells W from a reference group of wells when building a geological model. 
         [0004]    2. Description of the Related Art 
         [0005]    Patent Publication No. EA 200600036 A1, E21B 7/04, 30.12.2008 describes a program package to be stored in computer memory in a workstation or other computer system, designed for constructing a single-well model of a mineral deposit. 
         [0006]    U.S. Patent Application Publication US 2007/0276604 A1, G01V 1/00, 29.11.2007 presents a method for visualization and organization of data on oil and gas deposits. The method enables the processing of well log data with the use of raster images of well log records, which are digitized for the further placement of a marker on them. 
         [0007]    U.S. Patent Application Publication No. US 2010/0004864 A1, G01V 9/00, 07.01.2010 presents a method of correlation of well logs, involving automatically correlating data from a set of well log records, describing information in different land areas. 
         [0008]    All publications mentioned above reveal, to certain extent, the general principles of building a geological model of a mineral deposit; however, none of the above publications provides for or implies the generation of a high-accuracy geological model based on correlation coefficients between large well groups with respect to the positions of deep markers, allowing the accuracy of locating of the mineral deposits to be improved. Therefore, new and improved techniques for generating of high-accuracy geological models are needed. 
       SUMMARY OF THE INVENTION 
       [0009]    The embodiments described herein are directed to methods and systems that substantially obviate one or more of the above and other problems associated with conventional systems and methods for constructing of geological models. 
         [0010]    The problem to be solved with the use of the suggested invention is the building of a geological model with precisely determining the position of oil or other deposits. 
         [0011]    An engineering result is the improvement of the accuracy of evaluating the parameters that are used to build a geological model of location of oil or other deposits. 
         [0012]    The problem of correlating sets of well log records implies the presence of a group of wells surveyed by logging methods to an extent sufficient for stratigraphic and lithological analysis. Without loss of generality, it is assumed that such surveys result in a set of well log curves, containing a curve for each well in the group and for each method. An important step in the building of a geological model of a deposit is the tracing of boundaries of stratigraphic complexes or lithological features. Such boundaries can be identified along wells and extended to the area under study by interpolation. Those boundaries, referred to as markers, have depth markers in wells at sites where well log curves show joint singularities. 
         [0013]    In one variant of implementation of the invention, the method incorporates evaluating the coefficients of correlation for a set of well log records for pairs of wells, situated within the given distance from one another, and identifying the marker depth at which this coefficient is maximal. The marker depths are sought for wells that are not in the reference group for which those depths have been specified in advance. The method also includes the multiple repetition of such search with inclusion of the newly found wells into the reference group at each iteration. The search is filtered by a set of tests designed to improve the computation accuracy. The method can use trend markers, thus improving its efficiency. 
         [0014]    The method makes it possible to calculate the depths of a marker in a group of wells, given the depths to this marker in another well group used as a reference set. For any well W where the marker depth is to be determined, wells from the reference group are chosen lying within the specified distance from the well W and the well with the maximal correlation coefficient is chosen among them. The point in well W at which this maximum is attained is taken as the required marker position. With the result of the above algorithm assumed an iteration of a generalized algorithm and its result for a well added to the reference group after each iteration, the process is iterated until a blank result is obtained, i.e., the algorithm finds all wells where marker marks are available having been analyzed and identified in the given domain. Such looping of the main algorithm allows the solution to be obtained for many wells. To improve the reliability of calculations, a series of tests is added to the method to prevent the placing of markers in inappropriate points. The tests include correlation threshold, correlation quality, transitivity level, and limitations on the values of functions on a well. 
         [0015]    The second variant of the implementation of the invention involves calculating functionals, equal to the sum of correlation coefficients for a set of well log curves at the marker points that are an initial approximation, for pairs of wells located within a given distance from one another, and finding their maximums with the use of gradient descent method adapted to the problem. 
         [0016]    This approach makes it possible, with the markers chosen as the initial solution, to calculate the depth of marker in each well to ensure the best total correlation. For each marker in the set under consideration, a functional is defined as the sum of correlation coefficients for a set of well logging methods for pairs of wells located within the given distance from one another. Partial derivatives are evaluated for the functional, and the vector thus obtained is smoothed and used to find a larger value of the functional within a straight-line segment along the vector. If no larger value can be found, the last position of the marker is taken as the solution of the problem, otherwise the solution point is smoothed and the process is reiterated. Marker depths are sorted at each iteration of the algorithm. 
         [0017]    In the third variant, this invention provides a device for determining the marker depth in wells W at the building of a geological model of a deposit. The device can be represented, but not limited to a supercomputer, personal computer, portable computer, tablet computer, hand-held computer, smartphone, etc. The device necessarily contains one or a plurality of processors intended for executing computer commands or codes, which are stored in the memory of the device with the aim to implement methods corresponding to the first or second variant of this invention, a machine-readable data carrier (memory) and input/output moduli (I/O). The I/O moduli are represented by, but not limited to control means, standard and known from the technical level, for the device: mouse, keyboard, joystick, touchpad, trackball, beam pen, stylus, sensor display, etc. The I/O moduli also include, but are not limited to the means, typical and known from the technical level, for displaying information: monitor, projector, printer, graph-plotter, etc. As an example, but not a limitation, the machine-readable data carrier may comprise random-access memory (RAM); read-only memory (ROM); electronically erasable programmable read-only memory (EEPROM); flash-memory, or other memory technologies; CDROM, digital versatile disk (DVD), or other optical or holographic data carriers; magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic memory devices, carrying waves or other data carriers, which can be used for coding the required data and accessed by the device described above. 
         [0018]    In the fourth variant, this invention provides a machine-readable data carrier, containing a program code, which induces processor and/or processors to act in accordance with the method described in the first or second variant of implementation of the invention, which, accordingly, are not described in more detail. As an example, but not limitation, the machine-readable data carrier may comprise random-access memory (RAM); read-only memory (ROM); electronically erasable programmable read-only memory (EEPROM); flash-memory, or other memory technologies; CDROM, digital versatile disk (DVD), or other optical or holographic data carriers; magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic memory devices, carrying waves or other data carriers, which can be used for coding the required data and accessed by the device described in the third variant of implementation of the invention, and which, accordingly, is not described in more detail. 
         [0019]    Additional aspects related to the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. Aspects of the invention may be realized and attained by means of the elements and combinations of various elements and aspects particularly pointed out in the following detailed description and the appended claims. 
         [0020]    It is to be understood that both the foregoing and the following descriptions are exemplary and explanatory only and are not intended to limit the claimed invention or application thereof in any manner whatsoever. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0021]    The accompanying drawings, which are incorporated in and constitute a part of this specification exemplify the embodiments of the present invention and, together with the description, serve to explain and illustrate principles of the inventive technique. Specifically: 
           [0022]      FIG. 1  gives a general scheme of implementing the method by the first variant of implementation of the invention. 
           [0023]      FIG. 2  gives curves of well-logging method in wells W and W 0 , respectively, and a correlation function of the well-logging method. 
           [0024]      FIG. 3  illustrates the step of determining the distance between well groups. 
           [0025]      FIG. 4  illustrates the step of determining the depth z max , corresponding to the maximal value of correlation. 
           [0026]      FIG. 5  illustrates the step of adding wells, whose depth was determined at the step of determining the depth z max , to the reference well group. 
           [0027]      FIG. 6  gives a general scheme of implementation of the method by the second variant of implementation of the invention. 
           [0028]      FIG. 7  illustrates the step of formation of gradient vector for the current point of solution. 
           [0029]      FIG. 8  illustrates the step of searching for a value of the functional in excess of its previous value along the direction of the gradient vector. 
           [0030]      FIG. 9  illustrates the step of smoothing the obtained solution. 
           [0031]      FIG. 10  illustrates an exemplary embodiment of a computer platform upon which the invention may be implemented. 
       
    
    
     DETAILED DESCRIPTION 
       [0032]    In the following detailed description, reference will be made to the accompanying drawing(s), in which identical functional elements are designated with like numerals. The aforementioned accompanying drawings show by way of illustration, and not by way of limitation, specific embodiments and implementations consistent with principles of the present invention. These implementations are described in sufficient detail to enable those skilled in the art to practice the invention and it is to be understood that other implementations may be utilized and that structural changes and/or substitutions of various elements may be made without departing from the scope and spirit of present invention. The following detailed description is, therefore, not to be construed in a limited sense. Additionally, the various embodiments of the invention as described may be implemented in the form of a software running on a general purpose computer, in the form of a specialized hardware, or combination of software and hardware. 
         [0033]    The problem solving method, which is further described as applied to the first variant of implementation of the invention consists in finding the depth of the marker by calculating the correlation coefficient of well-logging curves for pairs of wells, such that the problem has been already solved for one well in the pair. Namely, suppose that the depths of markers are known for a subgroup of wells, which are referred to as reference group. Then, choosing a reference well W 0  with marker depth z 0 , we calculate for any well W, not in the reference group, the correlation function C(z), whose values are coefficients of correlation of a set of well log curves for well W in point z and for well W 0  in point z 0 . Let us denote the maximum of this function by z max . If for well W, wells in the reference group have been found, lying within its specified neighborhood, the depth z max  corresponding to the reference well with the largest value of the maximum of function C(z), is taken as a possible depth of marker in well W. The correlation function varies from −1 to 1; for one method of well log, F is defined as 
         [0000]    
       
         
           
             
               
                 C 
                  
                 
                   ( 
                   z 
                   ) 
                 
               
               = 
               
                 
                   ∫ 
                   
                     
                       
                         F 
                         W 
                       
                        
                       
                         ( 
                         
                           T 
                            
                           
                             ( 
                             
                               z 
                               + 
                               x 
                             
                             ) 
                           
                         
                         ) 
                       
                     
                      
                     
                       
                         F 
                         
                           W 
                           0 
                         
                       
                        
                       
                         ( 
                         
                           
                             z 
                             0 
                           
                           + 
                           x 
                         
                         ) 
                       
                     
                      
                     
                        
                       x 
                     
                   
                 
                 
                   
                     
                       ∫ 
                       
                         
                           
                             F 
                             W 
                             2 
                           
                            
                           
                             ( 
                             
                               T 
                                
                               
                                 ( 
                                 
                                   z 
                                   + 
                                   x 
                                 
                                 ) 
                               
                             
                             ) 
                           
                         
                          
                         
                            
                           x 
                         
                       
                     
                   
                    
                   
                     
                       ∫ 
                       
                         
                           
                             F 
                             
                               W 
                               0 
                             
                             2 
                           
                            
                           
                             ( 
                             
                               
                                 z 
                                 0 
                               
                               + 
                               x 
                             
                             ) 
                           
                         
                          
                         
                            
                           x 
                         
                       
                     
                   
                 
               
             
             , 
           
         
       
     
         [0034]    where F W  and F W     0    are curves of method F at wells W and W 0 , respectively. 
         [0035]    Function T has the form T(z)=az+b, where a is not equal to 1 and b is nonzero only when one or two trend markers are specified, respectively. In such cases, a and b are calculated as the solution of a system of obvious linear equations. For a set of methods {F i }, i=0, . . . , n, the correlation function is defined as 
         [0000]    
       
         
           
             
               
                 C 
                  
                 
                   ( 
                   z 
                   ) 
                 
               
               = 
               
                 
                   
                     ∑ 
                     
                       i 
                       = 
                       0 
                     
                     n 
                   
                    
                   
                     
                       w 
                       i 
                     
                      
                     
                       
                         C 
                         i 
                       
                        
                       
                         ( 
                         z 
                         ) 
                       
                     
                   
                 
                 
                   
                     ∑ 
                     
                       i 
                       = 
                       0 
                     
                     n 
                   
                    
                   
                     w 
                     i 
                   
                 
               
             
             , 
           
         
       
     
         [0000]    where C i  (z) is the correlation function for method F i , and w i  are weight coefficients ( FIG. 2 ). 
         [0036]    In accordance with  FIG. 1 , the implementation stages of the method will be described in detail below. 
         [0037]    At the first stage of the method, wells are to be found, lying within a specified neighborhood of the reference well group, i.e., located within distance R from a well from the reference group. The distance between the wells can be determined in several ways: as the distance between points of the wells at a certain depth, as the distance between points of the given marker, or as the distance between the points where the wells intersect a specified plane ( FIG. 3 ). 
         [0038]    The second stage of the method consists in calculating correlation functions and the choice for each well W identified at the first stage of a corresponding well W 0  from the reference group with maximal correlation coefficient and a corresponding point z max  in well W. 
         [0039]    At the third stage, each well W, chosen at the second stage, is subjected to a series of tests, and, if the tests are successful, the choice of the well is approved and the depth z max , corresponding to the maximal correlation, is taken as the depth of marker in well W ( FIG. 4 ). 
         [0040]    At the fourth stage of the method, wells with the choice approved at the third stage are added to the reference group and the procedure returns to the first stage ( FIG. 5 ). 
         [0041]    The process is reiterated until no wells are found at the first, second, or third stage. The tests used at the third stage include 
         [0042]    1. The correlation function in point z max  is to be in excess of a specified threshold value. Higher threshold values improve the accuracy of the algorithm but reduce the number of wells found. For example, with the threshold value of 0.9 and at the maximum correlation in point z max  equal to 0.88, the well is classified as not meeting the test conditions. 
         [0043]    2. The coefficient of the quality of correlation in the point is to be in excess of the specified threshold value. The coefficient of the quality of correlation is defined as a coefficient of deviation of the local maximum of correlation function, nearest in terms of value, from its largest local maximum in point z max . Larger values of this coefficient imply that the found maximum of correlation coefficient is appreciably higher than other local maximums of the correlation function. For example, if the maximal value of the correlation function is 0.9 and the maximum nearest by its value is 0.89, the value of the coefficient of the quality of correlation will be (0.9−0.89)/0.9, which is about 0.01. In this case, with the threshold value of the quality coefficient taken equal, for example, to 0.5, the well will be classified as not meeting the test conditions. 
         [0044]    3. The degree of transitivity is to be in excess of a specified threshold value. The degree of transitivity is defined as the number of previous iterations of the algorithm for which the maximum of the correlation function between the chosen reference well and the well of the current iteration satisfies the conditions of test  1 . This test improves the reliability of the method. For example, if the threshold for the correlation function from test  1  has been taken equal to 0.9 and well A has passed the test for the correlation with well B from the reference group, and well B, in its turn, was approved by the correlation with well C at the previous iteration, then the value of transitivity threshold equal 2 requires that the maximum of correlation function between well A and well C, as a reference well for A, be not less than 0.9. The threshold value of the degree of transitivity is taken equal to the number of previous iterations of the algorithm, if this number is less than the specified threshold value. 
         [0045]    4. The values of the specified function at a well in the point of maximal correlation are to fall within a specified interval. This test allows the certainly poor sites to be rejected based on the values of some function containing appropriate information. As such function, the method can use, for example, the coherence function or the function of deviation of extremums of wavelet transform with increasing period. 
         [0046]    The method of solving the problem, which is described below with respect to the second variant of implementation of the invention, consists in determining the depths of markers by evaluating the maximums of functionals, which characterize the degree of similarity of sets of well-logging curves in marker points at wells. Namely, let {z i }, i=0, . . . , n be depth marks at wells W i . We define a functional in n-dimensional space as 
         [0000]    
       
         
           
             
               
                 C 
                  
                 
                   ( 
                   
                     
                       z 
                       0 
                     
                     , 
                     … 
                      
                     
                         
                     
                     , 
                     
                       z 
                       n 
                     
                   
                   ) 
                 
               
               = 
               
                 
                   ∑ 
                   
                     i 
                     = 
                     0 
                   
                   n 
                 
                  
                 
                   
                     ∑ 
                     
                       j 
                       = 
                       
                         i 
                         + 
                         1 
                       
                     
                     n 
                   
                    
                   
                     
                       B 
                        
                       
                         ( 
                         
                           i 
                           , 
                           j 
                         
                         ) 
                       
                     
                     · 
                     
                       C 
                        
                       
                         ( 
                         
                           
                             z 
                             i 
                           
                           , 
                           
                             z 
                             j 
                           
                         
                         ) 
                       
                     
                   
                 
               
             
             , 
           
         
       
     
         [0000]    where C k (z i ,z j ) is the coefficient of correlation for the kth well-logging method in points z i  and z j  at wells i and j, respectively. This coefficient takes values between −1 and 1 and can be calculated as 
         [0000]    
       
         
           
             
               
                 
                   C 
                   k 
                 
                  
                 
                   ( 
                   
                     
                       z 
                       i 
                     
                     , 
                     
                       z 
                       j 
                     
                   
                   ) 
                 
               
               = 
               
                 
                   ∫ 
                   
                     
                       
                         F 
                         
                           k 
                           , 
                           l 
                         
                       
                        
                       
                         ( 
                         
                           
                             z 
                             i 
                           
                           + 
                           x 
                         
                         ) 
                       
                     
                      
                     
                       
                         F 
                         
                           k 
                           , 
                           j 
                         
                       
                        
                       
                         ( 
                         
                           
                             z 
                             j 
                           
                           + 
                           x 
                         
                         ) 
                       
                     
                      
                     
                        
                       x 
                     
                   
                 
                 
                   
                     
                       ∫ 
                       
                         
                           
                             F 
                             
                               k 
                               , 
                               i 
                             
                             2 
                           
                            
                           
                             ( 
                             
                               
                                 z 
                                 i 
                               
                               + 
                               x 
                             
                             ) 
                           
                         
                          
                         
                            
                           x 
                         
                       
                     
                   
                    
                   
                     
                       ∫ 
                       
                         
                           
                             F 
                             
                               k 
                               , 
                               j 
                             
                             2 
                           
                            
                           
                             ( 
                             
                               
                                 z 
                                 j 
                               
                               + 
                               x 
                             
                             ) 
                           
                         
                          
                         
                            
                           x 
                         
                       
                     
                   
                 
               
             
             , 
           
         
       
     
         [0047]    Maximums of those functionals are sought for with the use of gradient descent method (in this case, this is ascent), including the calculation of the gradient vector, whose coordinates are partial derivatives of the functional, and the search for maximal values along the direction of this vector. To neutralize the typical problems in the application of gradient descent method, “shaking” procedure is applied to intermediate solutions of the algorithm; this procedure consists in smoothing the current point of solution and the current gradient vector. Such smoothing is carried out with a specified coefficient, which decreases with the number of iteration and nearly disappears at the last iterations of the algorithm. The smoothing can be carried out, for example by moving average, with the smoothing coefficient in this case being the size of window. Since changes in the current point can be accompanied by a considerable deviation of its depth solutions at some wells from depths at other wells, resulting in that they can become closer to other markers of the set in terms of depth, markers of the set were sorted at each well. The result of this sorting is that the depths corresponding to one marker can be assigned to another one. This simple procedure reduces the scatter of marker depths in different wells. 
         [0048]    At the first stage, the value of functional C is calculated in the initial point of solution {z i }. 
         [0049]    At the second state of the method, partial derivatives of the functional are calculated and gradient vector is composed for the current point of solution {z i }. ( FIG. 7 ). 
         [0050]    At the third stage, the gradient vector is smoothed, i.e., each component of the vector at well W is replaced by the mean value of components at wells lying within distance R from well W. 
         [0051]    At the fourth stage, a value of the functional greater than the previous one is sought for in the segment with a specified length, originating from point {z i } and directed along the gradient vector. Once such value is not found, the algorithm ceases its work and the current solution {z i } is taken as the final solution. ( FIG. 8 ). 
         [0052]    At the fifth stage, the obtained solution is improved by searching for a larger value with a smaller step within the previous step where the maximum was found. 
         [0053]    At the sixth stage, the current solution {z i } is taken to be the point where the maximum of the functional was found and this point is smoothed by the same procedure as that applied to the gradient vector at the third stage, and the smoothing radius R is reduced by a specified value. ( FIG. 9 ) 
         [0054]    At the seventh stage, the marker marks of the set are sorted by the depth and the procedure is reiterated starting from the second stage of the algorithm. 
         [0055]      FIG. 10  is a block diagram that illustrates an embodiment of a computer system  1000  upon which various embodiments of the inventive concepts described herein may be implemented. The system  1000  includes a computer platform  1001 , peripheral devices  1002  and network resources  1003 . 
         [0056]    The computer platform  1001  may include a data bus  1004  or other communication mechanism for communicating information across and among various parts of the computer platform  1001 , and a processor  1005  coupled with bus  1004  for processing information and performing other computational and control tasks. Computer platform  1001  also includes a volatile storage  1006 , such as a random access memory (RAM) or other dynamic storage device, coupled to bus  1004  for storing various information as well as instructions to be executed by processor  1005 , including the software application for proxy detection described above. The volatile storage  1006  also may be used for storing temporary variables or other intermediate information during execution of instructions by processor  1005 . Computer platform  1001  may further include a read only memory (ROM or EPROM)  1007  or other static storage device coupled to bus  1004  for storing static information and instructions for processor  1005 , such as basic input-output system (BIOS), as well as various system configuration parameters. A persistent storage device  1008 , such as a magnetic disk, optical disk, or solid-state flash memory device is provided and coupled to bus  1004  for storing information and instructions. 
         [0057]    Computer platform  1001  may be coupled via bus  1004  to a touch-sensitive display  1009 , such as a cathode ray tube (CRT), plasma display, or a liquid crystal display (LCD), for displaying information to a system administrator or user of the computer platform  1001 . An input device  1010 , including alphanumeric and other keys, is coupled to bus  1004  for communicating information and command selections to processor  1005 . Another type of user input device is cursor control device  1011 , such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to processor  1005  and for controlling cursor movement on touch-sensitive display  1009 . This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the device to specify positions in a plane. To detect user&#39;s gestures, the display  1009  may incorporate a touchscreen interface configured to detect user&#39;s tactile events and send information on the detected events to the processor  1005  via the bus  1004 . 
         [0058]    An external storage device  1012  may be coupled to the computer platform  1001  via bus  1004  to provide an extra or removable storage capacity for the computer platform  1001 . In an embodiment of the computer system  1000 , the external removable storage device  1012  may be used to facilitate exchange of data with other computer systems. 
         [0059]    The invention is related to the use of computer system  1000  for implementing the techniques described herein. In an embodiment, the inventive system may reside on a machine such as computer platform  1001 . According to one embodiment of the invention, the techniques described herein are performed by computer system  1000  in response to processor  1005  executing one or more sequences of one or more instructions contained in the volatile memory  1006 . Such instructions may be read into volatile memory  1006  from another computer-readable medium, such as persistent storage device  1008 . Execution of the sequences of instructions contained in the volatile memory  1006  causes processor  1005  to perform the process steps described herein. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and software. 
         [0060]    The term “computer-readable medium” as used herein refers to any medium that participates in providing instructions to processor  1005  for execution. The computer-readable medium is just one example of a machine-readable medium, which may carry instructions for implementing any of the methods and/or techniques described herein. Such a medium may take many forms, including but not limited to, non-volatile media and volatile media. Non-volatile media includes, for example, optical or magnetic disks, such as the persistent storage device  1008 . Volatile media includes dynamic memory, such as volatile storage  1006 . 
         [0061]    Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CDROM, any other optical medium, punchcards, papertape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EPROM, a flash drive, a memory card, any other memory chip or cartridge, or any other medium from which a computer can read. 
         [0062]    Various forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to processor  1005  for execution. For example, the instructions may initially be carried on a magnetic disk from a remote computer. Alternatively, a remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to computer system can receive the data on the telephone line and use an infra-red transmitter to convert the data to an infra-red signal. An infra-red detector can receive the data carried in the infra-red signal and appropriate circuitry can place the data on the data bus  1004 . The bus  1004  carries the data to the volatile storage  1006 , from which processor  1005  retrieves and executes the instructions. The instructions received by the volatile memory  1006  may optionally be stored on persistent storage device  1008  either before or after execution by processor  1005 . The instructions may also be downloaded into the computer platform  1001  via Internet using a variety of network data communication protocols well known in the art. 
         [0063]    The computer platform  1001  also includes a communication interface, such as network interface card  1013  coupled to the data bus  1004 . Communication interface  1013  provides a two-way data communication coupling to a network link  1014  that is coupled to a local network  1015 . For example, communication interface  1013  may be an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, communication interface  1013  may be a local area network interface card (LAN NIC) to provide a data communication connection to a compatible LAN. Wireless links, such as well-known 802.11a, 802.11b, 802.11g and Bluetooth may also used for network implementation. In any such implementation, communication interface  1013  sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information. 
         [0064]    Network link  1014  typically provides data communication through one or more networks to other network resources. For example, network link  1014  may provide a connection through local network  1015  to a host computer  1016 , or a network storage/server  1022 . Additionally or alternatively, the network link  1014  may connect through gateway/firewall  1017  to the wide-area or global network  1018 , such as an Internet. Thus, the computer platform  1001  can access network resources located anywhere on the Internet  1018 , such as a remote network storage/server  1019 . On the other hand, the computer platform  1001  may also be accessed by clients located anywhere on the local area network  1015  and/or the Internet  1018 . The network clients  1020  and  1021  may themselves be implemented based on the computer platform similar to the platform  1001 . 
         [0065]    Local network  1015  and the Internet  1018  both use electrical, electromagnetic or optical signals that carry digital data streams. The signals through the various networks and the signals on network link  1014  and through communication interface  1013 , which carry the digital data to and from computer platform  1001 , are exemplary forms of carrier waves transporting the information. 
         [0066]    Computer platform  1001  can send messages and receive data, including program code, through the variety of network(s) including Internet  1018  and LAN  1015 , network link  1015  and communication interface  1013 . In the Internet example, when the system  1001  acts as a network server, it might transmit a requested code or data for an application program running on client(s)  1020  and/or  1021  through the Internet  1018 , gateway/firewall  1017 , local area network  1015  and communication interface  1013 . Similarly, it may receive code from other network resources. 
         [0067]    The received code may be executed by processor  1005  as it is received, and/or stored in persistent or volatile storage devices  1008  and  1006 , respectively, or other non-volatile storage for later execution. 
         [0068]    Finally, it should be understood that processes and techniques described herein are not inherently related to any particular apparatus and may be implemented by any suitable combination of components. Further, various types of general purpose devices may be used in accordance with the teachings described herein. It may also prove advantageous to construct specialized apparatus to perform the method steps described herein. The present invention has been described in relation to particular examples, which are intended in all respects to be illustrative rather than restrictive. Those skilled in the art will appreciate that many different combinations of hardware, software, and firmware will be suitable for practicing the present invention. For example, the described software may be implemented in a wide variety of programming or scripting languages, such as Assembler, C/C++, Objective-C, perl, shell, PHP, Java, as well as any now known or later developed programming or scripting language. 
         [0069]    Moreover, other implementations of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. Various aspects and/or components of the described embodiments may be used singly or in any combination in the systems and methods for constructing of geological models. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims.