Sedimentary basins can be modeled using numerical techniques such as the finite element method. Such basins can include one or more faults. Various issues arise when modeling basin faults. For example, finite elements may not be properly oriented with respect to a fault. Where petroleum systems modeling is desired, for example, to model migration of fluid near or at a fault, improper orientation of finite elements can give rise to inaccuracies. Various technologies, techniques, etc., described herein can provide for finite element adjustment for basin faults.
A method can include adjusting finite elements of a basin model to account for one or more faults. Such a method can include identifying particular finite elements with respect to a fault and adjusting an identified finite element by, for example, moving one or more of its nodes, subdividing the finite element, moving one or more of its nodes and subdividing the finite element or subdividing the finite element and moving one or more shared nodes of the resulting finite elements. Various other apparatuses, systems, methods, etc., are also disclosed.
This summary is provided to introduce a selection of concepts that are further described below in the detailed description. This summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used as an aid in limiting the scope of the claimed subject matter.
Features and advantages of the described implementations can be more readily understood by reference to the following description taken in conjunction with the accompanying drawings.
The following description includes the best mode presently contemplated for practicing the described implementations. This description is not to be taken in a limiting sense, but rather is made merely for the purpose of describing the general principles of the implementations. The scope of the described implementations should be ascertained with reference to the issued claims.
In basin and petroleum systems modeling quantities such as pore pressure and temperature distributions within the sediments may be modeled by solving partial differential equations (PDEs) using a finite element method. In an example embodiment, a method can generate a grid for finite elements (e.g., finite element nodes) with alignment to a fault to refine a local grid in the vicinity of the fault. Such a method may be automated to occur during a particular point within a modeling process and such a method may occur one or more times, for example, where a model is updated or revised in an iterative manner.
Basin and petroleum systems modeling may assess generation, migration and accumulation of hydrocarbons. Quantities such as pore pressure, geomechanical stresses and strains, temperature, and fluid potentials can assist understanding of a sedimentary basin and provide for an estimation of hydrocarbon generation, migration, and accumulation. These quantities may be described via formulations of equations that include PDEs. A spatial distribution and evolution through geological time of such processes may be a goal of basin modeling.
As analytical solutions seldom exist for PDEs, numerical simulation may be employed using a computing device, a computing system, etc. Various numerical techniques may include discretization of a space to form a model. For example, a finite element model may include many finite elements (e.g., a few million elements) where each element has an associated set of properties, for example, lithology (e.g., type of the material), porosity, temperatures, pore pressure, etc. Alignment of a grid for finite elements with geological features such as layer horizons and faults can help to provide an accurate and efficient simulation.
In an example embodiment, a method can create a grid that is suitably aligned with one or more geological features while allowing an efficient implementation and simulation on a computing device or computing system. Such a method can include providing a basic grid construction so that it is suitably aligned with global features of a model (e.g., layer horizons for a basin) followed by improving the description of local features (e.g., faults) by locally altering the grid by splitting an existing finite element into two (or possibly more) smaller finite elements and by shifting the position of one or more nodes of the smaller finite elements. In such a manner, an improved grid and finite elements can be generated.
In a modeling process for a basin, layer horizons may be considered to construct a grid for finite elements. After consideration of the layer horizons, faults may be projected on surfaces (e.g., boundaries) between two adjacent finite elements. Such a process can result in fault geometries that may possess a zigzag shape, which may limit their use for purposes of performing simulations. To improve the grid, finite elements that are crossed by the fault (e.g., in a “diagonal manner”) can be split into two (or more) smaller finite elements. After splitting, the faults can be re-projected or adjusted onto surfaces (e.g., boundaries) between adjacent finite elements. In such an example, where finite elements have been locally refined, representation of a fault tends to be more accurate.
Additionally, or alternatively, node movement may occur. For example, local movement of one or more nodes may occur to improve representation of a fault. Such movement may be conditioned to ensure that shifting of a node does not misalign geometry of a horizon. Further, a condition may be imposed such that a shift may be restricted to be smaller than the size of a finite element, for example, to avoid global topology changes to a grid by movement of a node or nodes.
The finite element method can include mapping (e.g., spatial transformations), for example, where a finite element is mapped from a physical space to a unit space to facilitate integration. Such an approach allows for various finite element shapes in the physical space (or physical domain being modeled). In contrast, other techniques for spatial modeling such as finite difference or finite volume methods can exhibit numerical problems when considering deformed grids. In certain cases, these numerical problems may be severe. While mapping or transforms may be applied to these other techniques, they might not be inherent to these other techniques and may act to increase computational demands.
In an example embodiment, a method to more accurately represent a fault in a finite element model can be incorporated into an existing simulator program. In such an example, basic topology as well as the general geometry of a grid may be preserved, which may allow for usage of many types of analysis techniques in addition to finite element analysis.
For a finite element, material properties (e.g., rock or other material) may be uniformly defined. A grid for the finite elements (e.g., to define node positions for finite elements) can be aligned to geological features to describe geological volumes. A model may represent geological volumes in one or more dimensions in space (e.g., 1D, 2D, or 3D). For example, for a 2D model, two-dimensional finite elements may represent volumes that interact with neighboring two-dimensional finite elements (e.g., for rectangular elements, an interior element may have four neighbors with shared boundaries and four additional neighbors with a shared node). For a 3D model, an interior cuboid element can have six neighbors with shared surfaces and up to an additional twenty four neighbors with a shared node (e.g., eight nodes with three additional neighbors per node, noting that the number can differ for collapsed surfaces, etc.). While boundary conditions may be limited to the six shared surfaces, where a node is shifted, the finite elements that share the shifted node will be affected. In an example embodiment, a method can operate on a 2D spatial finite element model or a 3D spatial finite element model. Further, an additional temporal dimension may make such models 3D and 4D overall.
Various issues exist for modeling and simulation of hydrocarbon generation amounts and trap sizes with captured hydrocarbons. In particular, model accuracy with respect to physical geometry of a geologic formation can impact accuracy as hydrocarbon migration pathways often follow small scale structures. Where mismatches exist between physical geometry and model geometry, inaccuracies related to migration may result. Such inaccuracies can impact exploration and appraisal of a basin and resources therein, for example, as to pressure prediction and well placement.
In the example of
In an example embodiment, the simulation component 120 may rely on entities 122. Entities 122 may include earth entities or geological objects such as wells, surfaces, reservoirs, etc. In the system 100, the entities 122 can include virtual representations of actual physical entities that are reconstructed for purposes of simulation. The entities 122 may include entities based on data acquired via sensing, observation, etc. (e.g., the seismic data 112 and other information 114).
In an example embodiment, the simulation component 120 may rely on a software framework such as an object-based framework. In such a framework, entities may include entities based on pre-defined classes to facilitate modeling and simulation. A commercially available example of an object-based framework is the MICROSOFT® .NET™ framework (Redmond, Wash.), which provides a set of extensible object classes. In the .NET™ framework, an object class encapsulates a module of reusable code and associated data structures. Object classes can be used to instantiate object instances for use in by a program, script, etc. For example, borehole classes may define objects for representing boreholes based on well data.
In the example of
In an example embodiment, the management components 110 may include features of a commercially available simulation framework such as the PETREL® seismic to simulation software framework (Schlumberger Limited, Houston, Tex.). The PETREL® framework provides components that allow for optimization of exploration and development operations. The PETREL® framework includes seismic to simulation software components that can output information for use in increasing reservoir performance, for example, by improving asset team productivity. Through use of such a framework, various professionals (e.g., geophysicists, geologists and reservoir engineers) can develop collaborative workflows and integrate operations to streamline processes. Such a framework may be considered an application and may be considered a data-driven application (e.g., where data is input for purposes of simulating a geologic environment).
In an example embodiment, the management components 110 may include or interact with features of a commercially available simulation framework such as the PETROMOD® petroleum systems modeling software framework (Schlumberger Limited, Houston, Tex.). The PETROMOD® framework includes 1D, 2D, and 3D packages as well as add-ons and PETREL® framework plug-ins. A particular plug-in allows PETREL® to import data from the PETROMOD® framework. The PETROMOD® framework provides for petroleum systems modeling via input of various data such as seismic data, well data and other geological data, for example, to model evolution of a sedimentary basin. The PETROMOD® framework may predict if, and how, a reservoir has been charged with hydrocarbons, including the source and timing of hydrocarbon generation, migration routes, quantities, pore pressure and hydrocarbon type in the subsurface or at surface conditions. In combination with a framework such as the PETREL® framework, workflows may be constructed to provide basin-to-prospect scale exploration solutions. Data exchange between frameworks can facilitate construction of models, analysis of data (e.g., PETROMOD® framework data analyzed using PETREL® framework capabilities), and coupling of workflows.
In an example embodiment, various aspects of the management components 110 may include add-ons or plug-ins that operate according to specifications of a framework environment. For example, a commercially available framework environment marketed as the OCEAN® framework environment (Schlumberger Limited, Houston, Tex.) allows for seamless integration of add-ons (or plug-ins) into a PETREL® framework workflow. The OCEAN® framework environment leverages .NET® tools (Microsoft Corporation, Redmond, Wash.) and offers stable, user-friendly interfaces for efficient development. In an example embodiment, various components may be implemented as add-ons (or plug-ins) that conform to and operate according to specifications of a framework environment (e.g., according to application programming interface (API) specifications, etc.).
The model simulation layer 180 may provide domain objects 182, act as a data source 184, provide for rendering 186 and provide for various user interfaces 188. Rendering 186 may provide a graphical environment in which applications can display their data while the user interfaces 188 may provide a common look and feel for application user interface components.
In the example of
In the example of
In the example of
In
To proceed to modeling of the geological processes 230, data is provided, for example, data such as geochemical data (e.g., temperature, kerogen type, organic richness, etc.), timing data (e.g., from paleontology, radiometric dating, magnetic reversals, rock and fluid properties, etc.) and boundary condition data (e.g., heat-flow history, surface temperature, paleowater depth, etc.).
The geological processes 230 may be part of a forward modeling process that performs calculations to simulate phenomena such as sediment burial, pressure and temperature changes, kerogen maturation and hydrocarbon expulsion, migration and accumulation. For example, a deposition block may account for sedimentation, erosion, salt doming, geologic event assignment; a pressure calculation block may account for pressure calculation and compaction; a heat flow analysis block may account for kinetics of thermal calibration parameters and calculate temperatures; a petroleum generation block may account for generation, adsorption and expulsion; a fluid analysis block may account for phase and compositions of fluid(s); a petroleum migration block may account for Darcy flow, diffusion, invasion percolation, and flowpath analysis; and a reservoir volumetrics block may account for column height of an accumulation, capillary entry pressure of a seal, leakage, break through, secondary cracking, and biodegradation.
With respect to simulation processes 250, one or more loops may be implemented, for example, according to time scales for various phenomena. In the example of
As to transport processes (e.g., heat flow, pore pressure and compaction, Darcy flow migration processes and diffusion), a model can aim to account for a flow variable acting from a first location onto another location. For example, given temperature as a state variable and heat flow as a corresponding flow variable, a difference in temperature with respect to space (e.g., a temperature gradient) causes heat flow, which generally acts to decrease a temperature difference (e.g., drive toward an equilibrium temperature). As mentioned, boundary conditions may be provided to formulate a boundary value problem guided by an energy or mass balance to provide state and flow variable values with respect to time.
A formulated boundary value problem may be solved for state and flow variable values with respect to time using one or more numerical techniques. For example, the finite element method may include defining finite elements that fill a geological space (e.g., in 1D, 2D or 3D) where time steps occur using a finite difference technique. In such an example, at each time step, a finite element model may be solved (e.g., in a linear or non-linear manner) and, once solved, a finite difference technique may act to “perturb” or “estimate” state values for a forward time (e.g., which may be in the future or past) or reverse time (backward time, e.g., which may be in the future or past), where these values are used as an initial guess to solve the finite element model at the iterated time (e.g., finite element method for spatial modeling and finite difference for temporal modeling).
In an example embodiment, neighboring finite elements may be linked at a shared boundary (e.g., a point, a line or a surface) where the boundary conditions for two or more neighboring finite elements may be matched (e.g., energy-wise, material-wise, etc.). As an example, consider a mass of fluid exiting one finite element and entering a neighboring finite element (e.g., adjacent finite element). Where the porosity of the two finite elements differs, fluid velocity may differ for each finite element while mass and momentum are conserved across their shared boundary. Similar types of examples exist for other phenomena such as temperature and heat energy.
With respect to solving a finite element model using the finite element method (e.g., or finite element analysis), inversion of a matrix can provide for a solution vector (e.g., for state variables of various finite elements). As an example, a finite element model may include many finite elements (e.g., thousands) with many unknowns (e.g., thousands). Larger finite element models can include more than a million finite elements with over a million unknowns. Solution time or resources requirements may depend on the number of unknowns, number of linked equations, linearity or nonlinearity of a formulation of equations, property dependence on one or more state variables, etc. Solution time or resource requirements may be determined on the basis of a relationship between matrix inversion and number of unknowns as well as knowledge of other factors such as matrix diagonality. In general, solution time or resource requirements may scale nonlinearly (e.g., exponentially) with respect to number of finite elements (e.g., number of unknowns). As an example, doubling the number of finite elements along one dimension can increase computing effort by an order of magnitude. Accordingly, some trade-offs may exist as to solution accuracy (e.g., more finite elements) and solution timing (e.g., for fixed computing resources) or solution requirements (e.g., ability to increase number of cores, memory, etc.).
As indicated, one or more variables may be anisotropic. For example, a tensor variable may differ depending on direction. Orientation of material with respect to gravity may also be a factor, for example, a material type (e.g., facies) may be compactable in a particular direction when acted upon by a load due to gravity. In such an example, permeability of the material may likewise be impacted due to its orientation with respect to gravity. As shown in the flow/migration equations 370, gravity (G) may be included in an equation for pressure or buoyancy (e.g., water flow may depend on a difference between a pressure and a head pressure determined on the basis of a water density (ρw), gravity (G) and depth (z)).
The equations 300 of
Given equations such as those of
The finite element method is suitable for modeling phenomena that can be formulated via partial differential equations as well as other types of equations. The aforementioned PETROMOD® framework includes features for finite element models to be solved using the finite element method, optionally with time discretization achieved via a finite difference approach.
In an example finite element model, each finite element includes properties to match the finite element to some physical space (e.g., line, surface or volume, noting that dimensional reductions may be applied via symmetry or other bases). As an example, consider a finite element that include facies-related properties for a particular location as well as information (e.g., coordinates, index, indexes, etc.) to define its location. Given a location and facies related properties, for example, compaction and pressure determinations may be made for the finite element using the finite element method.
In an example geologic layer disposed between or defined by an upper horizon and a lower horizon, adjacent finite elements may differ, for example, based on their respective facies. Where a fault exists in a layer, the fault may mark a discontinuity between facies (e.g., rock facies, organic facies, etc.). For example, on one side of the fault, a finite element may be assigned facies set A while on the other side of the fault, an adjacent, neighboring finite element may be assigned facies set B, hence, a discontinuity exists in properties of the neighboring finite elements (e.g., which may affect flow, etc., at or across a fault).
According to an example embodiment, locating a fault directly at the boundaries between two adjacent finite elements represents an optimal scenario. In practice, however, a fault may run directly through a finite element and may be discretely represented as a zigzag, for example, due to computational and other costs increasing with an increasing number of finite elements, which could allow for finer discretization. In certain embodiments, finer modeling of a fault by merely increasing finite element number (e.g., by decreasing finite element size) at the fault can come with certain costs. Accordingly, an example approach may aim to increase model accuracy without overly increasing computational demands.
In general, a relationship exists between size of a finite element and the phenomenon or phenomena being modeled. Various scales may exist within a geologic environment, for example, a molecular scale may be on the order of 10−9 to 10−8 meters, a pore scale may be on the order of 10−6 to 10−3 meters, bulk continuum may be on the order of 10−3 to 10−2 meters, and a basin scale on the order of 103 to 105 meters. Given such scales, a finite element model may include finite elements having sizes on the order of 1 to 102 meters (e.g., smaller than a basin scale and larger than a pore scale). In a finite element model, a continuous crossover within a finite element can, for example, dictate a comparison between a bulk continuum scale and a basin scale rather than the finite element size and the basin scale as for some other types of numerical discretization techniques. Implicitly, finite elements can provide for higher resolution than some other types of numerical discretization techniques given the same “discretization” dimension (e.g., comparing a finite element to a “cell” of another technique). A finite element model may include multiple finite element sizes, optionally where a size corresponds to a phenomenon or phenomena to be modeled. As an example, heat flow may be modeled using finite elements having sizes less than 100 meters whereas finite elements to model migration of hydrocarbons may be smaller.
As mentioned, the number of finite elements can determine the number of unknowns and solution time or resource requirements. A finite element model of a basin may span, for example, hundreds of kilometers or a few kilometers. Model resolution may aim to approximate geological structures of interest while allowing for suitable simulation run times on available computing resources. A finite element model may include over a million finite elements, for example, with several thousand finite elements along a horizontal dimension. For example, a two-dimensional finite element model may include about 3,000 finite elements along a horizontal dimension and about 300 finite elements along a vertical dimension.
In petroleum systems modeling, finite elements may be stacked vertically such that finite element columns exist, optionally according to a surface map (see, e.g., Col. N, Col. N+1, and Col. N+2). In the example of
Per the application block 620, the finite element 601 may be identified. Once identified, a subdivide block 630 subdivides the finite element 601 into finite elements 604 and 606. In the two-dimensional example of
In the example of
The method 600 is shown in
In an example embodiment, a method can include providing finite elements described with respect to a horizontal coordinate axis and a vertical coordinate axis to model a sedimentary basin; identifying a finite element having a horizontal boundary intersected by a fault; subdividing the finite element into two finite elements; and representing the fault along a boundary between the two finite elements. In such an example, identifying can include identifying a horizontal coordinate axis intersection point of the fault with respect to the horizontal boundary of the finite element where the method may further include shifting a shared node of the two finite elements to the intersection point. Where a sedimentary basin includes multiple faults, a method can include repeating various actions for one or more of the multiple faults.
In the example of
According to the method 700, once an element has been identified, a subdivide block 720 acts to subdivide the identified element. In the example of
According to the method 800, once an element has been identified, a subdivide block 830 acts to subdivide the identified element. In the example of
The method 800 is shown in
Side/side configurations tend to be less common, however, these may occur when modeling listric faults. In an example embodiment, modeling of a listric fault (e.g., where the fault passes through opposing vertical boundaries (e.g., sides) of a finite element), may include shifting nodes of a top or a bottom boundary of the element vertically (e.g., both up or both down). As an alternative, such modeling may project the model fault line upward or downward without moving any nodes. Determinations as to moving nodes or projecting a model fault line upward or downward may depend on a horizon or facies analysis. For example, if the moving or projecting acts to alter facies of an element, that moving or projecting may be prohibited or redirected (or chosen) to preserve the facies of the element.
In a scenario 910, a fault passes from an upper left to lower right direction through various finite elements. In the scenario 910, finite elements 911 and 913 may be identified, subdivided and one or more nodes of each finite element moved.
In a scenario 930, a fault passes from an upper right to lower left direction through various finite elements. In the scenario 930, the false trap type of inaccuracy may not occur, however, inaccuracies may still arise where a model fault line has a slope that deviates from that of the fault. In the scenario 930, finite elements 931 and 933 may be identified. For the element 931, nodes of the lower boundary may be raised vertically to meet the fault. Such action has consequences for the element 933, as its upper right node is shared (in common) with the element 931. However, the element 933 may still be subdivided and, for example, its lower left node may be moved toward the right to meet the fault. Accordingly, a method may start from the top or the bottom and proceed where action on one finite element alters an adjacent (shared corner or shared boundary) finite element. Such action may simplify actions for the adjacent finite element. Thus, such a method can be synergistic for a region where a fault traverses multiple vertical columns of elements.
In the scenario 910, the fault traverses two columns of elements while in the scenario 930, the fault traverses three columns. As mentioned, for a basin model, a “horizontal” element size may be on the order of about 1 to about 100 meters. Thus, three columns may span about 3 meters to about 300 meters, which may provide some perspective (e.g., an estimate) as to how many columns a fault may traverse (e.g., as a function of finite element size). In general, as finite element size decreases, the number of columns a fault may traverse can be expected to increase. However, as size decreases, finite element dimension may approach that of a fault, which can act to increase accuracy. Whether large finite elements or small finite elements are employed to model a basin, a method that identifies elements with respect to a fault and adjusts the identified elements (e.g., by subdivision and node movement or node movement alone) can apply to diminish errors.
In the example of
The method 1000 is shown in
An example embodiment may include one or more computer-readable media comprising computer-executable instructions to instruct a computing device or computing system to: provide finite elements described with respect to a horizontal coordinate axis and a vertical coordinate axis to model a sedimentary basin; identify intersection points of a fault with respect to boundaries of the finite elements; for each identified intersection point, determine if shifting a node of a corresponding boundary to the intersection point violates one or more properties of a finite element; and to shift a node of a corresponding boundary to the intersection point where a violation of the one or more properties of the finite element does not occur.
In such an example, instructions may be provided to calculate a property hash value for at least some of the finite elements. For example, to calculate a property hash value for finite elements within a number of columns from the fault. In an example embodiment, instructions may be provided to select the one or more properties, for example, where the properties affect migration of fluid.
In an example embodiment, a method can include providing a model fault line where, in an identification block, intersection points are identified for a fault with respect to horizontal grid lines (e.g., “horizontal” boundary lines for finite elements), in a shift block, for each intersection point identified, a shift occurs for the next horizontal grid node to the intersection point (e.g., along the horizontal direction). Such a method may terminate after application of the shift block or it may proceed to a diagonalization block that diagonalizes elements (e.g., subdivides elements).
In an embodiment, when a fault is deemed “too horizontal,” the foregoing method can optionally either move one or more nodes vertically or project a fault to a nearest horizontal grid line.
In an example embodiment, a method can include simulating physical phenomena in a sedimentary basin with respect to time, for example, such as simulating migration of fluid in the sedimentary basin. In such an example, simulating migration of fluid can include simulating migration of fluid adjacent to the fault.
In an example embodiment, a method can include repeating an identification process for another, different fault. Such a method can proceed until any number of faults has been accounted for.
In an example embodiment, finite elements are two-dimensional spatial finite elements or three-dimensional spatial finite elements. A method may include modeling evolution of a sedimentary basin using finite elements with a finite element technique for spatial modeling and a finite difference discretization of time with a finite difference technique for temporal modeling.
In an example embodiment, finite elements can include properties where each finite element includes property values based at least in part on measured values (e.g., measured for an actual basin).
The method 1100 is shown in
As an example, one or more computer-readable media can include computer-executable instructions to instruct a computing device to: provide finite elements described with respect to a horizontal coordinate axis and a vertical coordinate axis to model a sedimentary basin (see, e.g., CRM 1111); identify a horizontal coordinate axis intersection point of a fault with respect to a boundary of one of the finite elements (see, e.g., CRM 1121); and shift a finite element node, that defines the boundary, to the intersection point (see, e.g., CRM 1131). In an example embodiment, instructions such as those of CRM 1141 may follow, for example, to instruct a computing device to subdivide the finite element to form two finite elements.
In an example embodiment, components may be distributed, such as in the network system 1210. The network system 1210 includes components 1222-1, 1222-2, 1222-3, . . . 1222-N. For example, the components 1222-1 may include the processor(s) 1202 while the component(s) 1222-3 may include memory accessible by the processor(s) 1202. Further, the component(s) 1202-2 may include an I/O device for display and optionally interaction with a method. The network may be or include the Internet, an intranet, a cellular network, a satellite network, etc.
Although various methods, devices, systems, etc., have been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described. Rather, the specific features and acts are disclosed as examples of forms of implementing the claimed methods, devices, systems, etc.
This application claims the benefit of U.S. Provisional Patent Application Ser. No. 61/417,312, filed on Nov. 26, 2010, which is incorporated by reference herein.
Number | Date | Country | |
---|---|---|---|
61417312 | Nov 2010 | US |