A large earth model may be used for imaging and inversion disciplines such as initial model building, Kirchhoff depth migration, and tomography. This is particularly helpful as structures become more complex (e.g., more and more thin singularities such as salt overhang, thin lithology beds are being added) and more property details are added (e.g., finer property resolution). The approach may include partitioning the space into volumes using various surfaces (e.g., horizons, faults, geobody), and then filling those volumes with various properties (e.g., velocities, structure tensors). In the computer aided design (CAD) domain, this approach is known as volume or solid modeling and can be achieved by different technologies such as constructive solid geometry, boundary representation, and/or cellular partitioning. In recent years, due to the increasing demand in the size of the model and the corresponding amount of surface and property data to process, a model can no longer fit on a single work machine.
A method is disclosed herein. The method includes assembling a model including a plurality of independent objects. The independent objects include surfaces, properties, and zones. The method also includes decomposing the model into vertical columns, tiles, or both. The method also includes discretizing an incoming request into the vertical columns, the tiles, or both. In response to the discretized request, the method also includes performing a vertical pin analysis on the model to retrieve a portion of the surfaces, a portion of the properties, or both that are geo-located in the vertical columns, the tiles, or both. The method also includes modelling the retrieved portions to produce an output. The method also includes comparing the output with subsurface data. The method also includes modifying the model based at least partially upon the comparison.
A computing system is also disclosed. The computing system includes one or more processors and a memory system. The memory system includes one or more non-transitory computer-readable media storing instructions that, when executed by at least one of the one or more processors, cause the computing system to perform operations. The operations include assembling a model having a plurality of independent objects that participate in the model based at least partially upon a set of instructions governing assembly of the model. The independent objects include surfaces, properties, and zones. The operations also include decomposing the model into vertical columns, tiles, or both. A smallest unit of the vertical columns is a vertical stack of single 3D grid cells. Each tile includes a 3D volume. The operations also include discretizing an incoming request into the vertical columns, the tiles, or both that cover a zone of interest of the request to drive assembly of a portion of the model. The operations also include formulating the request by assembling the model using the set of instructions and performing a vertical pin analysis on the model to retrieve a portion of the surfaces and a portion of the properties that are geo-located in the vertical columns, the tiles, or both. The operations also include processing the request by localizing the 3D volume and applying an operator to model data that is geo-located in the vertical columns, the tiles, or both to produce an output. The operations also include comparing the output with subsurface data measured at a wellsite. The operations also include modifying the model based at least partially upon the comparison.
A non-transitory computer-readable medium is also disclosed. The medium stores instructions that, when executed by at least one processor of a computing system, cause the computing system to perform operations. The operations include assembling a model having a plurality of independent objects that participate in the model based at least partially upon a set of instructions governing assembly of the model. The independent objects include surfaces, properties, and zones. The surfaces include 2D grid surfaces, mesh surfaces, or both. The properties include a 3D grid of values, a 1D property value profile, a constant value, or a combination thereof. The zones are each bounded by a portion of the surfaces and have a portion of the properties therein. The operations also include decomposing the model into vertical columns, tiles, or both. A smallest unit of the vertical columns is a vertical stack of single 3D grid cells. Each tile includes a 3D volume. Each tile is interpreted with the set of instructions as a self-contained model. The decomposition of the model allows the model to have any size and to switch between the vertical columns and the 3D volume, thereby providing scalability. The operations also include discretizing an incoming request into the vertical columns, the tiles, or both that cover a zone of interest of the request to drive assembly of a portion of the model. The operations also include formulating the request by assembling the model on-the-fly using the set of instructions and performing a vertical pin analysis on the model to retrieve a portion of the surfaces and a portion of the properties that are geo-located in the vertical columns, the tiles, or both. The operations also include processing the request by localizing the 3D volume and applying an operator to model data that is geo-located in the vertical columns, the tiles, or both to produce an output. Localizing the 3D volume includes identifying relationships between the request and the vertical columns, the tiles, or both. The operator includes a mathematical function. The operations also include comparing the output with subsurface data measured at a wellsite. The operations also include modifying the model based at least partially upon the comparison. The operations also include transmitting a signal to cause a wellsite action to be performed based at least partially upon the modified model.
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.
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments of the present teachings and together with the description, serve to explain the principles of the present teachings. In the figures:
Reference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings and figures. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of embodiments of the invention. However, it will be apparent to one of ordinary skill in the art that embodiments of the invention may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits and networks have not been described in detail so as not to unnecessarily obscure aspects of the embodiments.
It will also be understood that, although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first object could be termed a second object, and, similarly, a second object could be termed a first object, without departing from the scope of the embodiments of the invention. The first object and the second object are both objects, respectively, but they are not to be considered the same object.
The terminology used in the description of the invention herein is for the purpose of describing particular embodiments only and is not intended to be limiting of embodiments of the invention. As used in the description and the appended claims, the singular forms “a,” “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term “and/or” as used herein refers to and encompasses any possible combinations of one or more of the associated listed items. It will be further understood that the terms “includes,” “including,” “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. Further, as used herein, the term “if” may be construed to mean “when” or “upon” or “in response to determining” or “in response to detecting,” depending on the context.
Attention is now directed to processing procedures, methods, techniques and workflows that are in accordance with some embodiments. Some operations in the processing procedures, methods, techniques and workflows disclosed herein may be combined and/or the order of some operations may be changed.
Computer facilities may be positioned at various locations about the oilfield 100 (e.g., the surface unit 134) and/or at remote locations. Surface unit 134 may be used to communicate with the drilling tools and/or offsite operations, as well as with other surface or downhole sensors. Surface unit 134 is capable of communicating with the drilling tools to send commands to the drilling tools, and to receive data therefrom. Surface unit 134 may also collect data generated during the drilling operation and produce data output 135, which may then be stored or transmitted.
Sensors (S), such as gauges, may be positioned about oilfield 100 to collect data relating to various oilfield operations as described previously. As shown, sensor (S) is positioned in one or more locations in the drilling tools and/or at rig 128 to measure drilling parameters, such as weight on bit, torque on bit, pressures, temperatures, flow rates, compositions, rotary speed, and/or other parameters of the field operation. Sensors (S) may also be positioned in one or more locations in the circulating system.
Drilling tools 106.2 may include a bottom hole assembly (BHA) (not shown), generally referenced, near the drill bit (e.g., within several drill collar lengths from the drill bit). The bottom hole assembly includes capabilities for measuring, processing, and storing information, as well as communicating with surface unit 134. The bottom hole assembly further includes drill collars for performing various other measurement functions.
The bottom hole assembly may include a communication subassembly that communicates with surface unit 134. The communication subassembly is adapted to send signals to and receive signals from the surface using a communications channel such as mud pulse telemetry, electro-magnetic telemetry, or wired drill pipe communications. The communication subassembly may include, for example, a transmitter that generates a signal, such as an acoustic or electromagnetic signal, which is representative of the measured drilling parameters. It will be appreciated by one of skill in the art that a variety of telemetry systems may be employed, such as wired drill pipe, electromagnetic or other known telemetry systems.
Typically, the wellbore is drilled according to a drilling plan that is established prior to drilling. The drilling plan typically sets forth equipment, pressures, trajectories and/or other parameters that define the drilling process for the wellsite. The drilling operation may then be performed according to the drilling plan. However, as information is gathered, the drilling operation may need to deviate from the drilling plan. Additionally, as drilling or other operations are performed, the subsurface conditions may change. The earth model may also need adjustment as new information is collected
The data gathered by sensors (S) may be collected by surface unit 134 and/or other data collection sources for analysis or other processing. The data collected by sensors (S) may be used alone or in combination with other data. The data may be collected in one or more databases and/or transmitted on or offsite. The data may be historical data, real time data, or combinations thereof. The real time data may be used in real time, or stored for later use. The data may also be combined with historical data or other inputs for further analysis. The data may be stored in separate databases, or combined into a single database.
Surface unit 134 may include transceiver 137 to allow communications between surface unit 134 and various portions of the oilfield 100 or other locations. Surface unit 134 may also be provided with or functionally connected to one or more controllers (not shown) for actuating mechanisms at oilfield 100. Surface unit 134 may then send command signals to oilfield 100 in response to data received. Surface unit 134 may receive commands via transceiver 137 or may itself execute commands to the controller. A processor may be provided to analyze the data (locally or remotely), make the decisions and/or actuate the controller. In this manner, oilfield 100 may be selectively adjusted based on the data collected. This technique may be used to optimize (or improve) portions of the field operation, such as controlling drilling, weight on bit, pump rates, or other parameters. These adjustments may be made automatically based on computer protocol, and/or manually by an operator. In some cases, well plans may be adjusted to select optimum (or improved) operating conditions, or to avoid problems.
Wireline tool 106.3 may be operatively connected to, for example, geophones 118 and a computer 122.1 of a seismic truck 106.1 of
Sensors (S), such as gauges, may be positioned about oilfield 100 to collect data relating to various field operations as described previously. As shown, sensor S is positioned in wireline tool 106.3 to measure downhole parameters which relate to, for example porosity, permeability, fluid composition and/or other parameters of the field operation.
Sensors (S), such as gauges, may be positioned about oilfield 100 to collect data relating to various field operations as described previously. As shown, the sensor (S) may be positioned in production tool 106.4 or associated equipment, such as Christmas tree 129, gathering network 146, surface facility 142, and/or the production facility, to measure fluid parameters, such as fluid composition, flow rates, pressures, temperatures, and/or other parameters of the production operation.
Production may also include injection wells for added recovery. One or more gathering facilities may be operatively connected to one or more of the wellsites for selectively collecting downhole fluids from the wellsite(s).
While
The field configurations of
Data plots 208.1-208.3 are examples of static data plots that may be generated by data acquisition tools 202.1-202.3, respectively; however, it should be understood that data plots 208.1-208.3 may also be data plots that are updated in real time. These measurements may be analyzed to better define the properties of the formation(s) and/or determine the accuracy of the measurements and/or for checking for errors. The plots of each of the respective measurements may be aligned and scaled for comparison and verification of the properties.
Static data plot 208.1 is a seismic two-way response over a period of time. Static plot 208.2 is core sample data measured from a core sample of the formation 204. The core sample may be used to provide data, such as a graph of the density, porosity, permeability, or some other physical property of the core sample over the length of the core. Tests for density and viscosity may be performed on the fluids in the core at varying pressures and temperatures. Static data plot 208.3 is a logging trace that typically provides a resistivity or other measurement of the formation at various depths.
A production decline curve or graph 208.4 is a dynamic data plot of the fluid flow rate over time. The production decline curve typically provides the production rate as a function of time. As the fluid flows through the wellbore, measurements are taken of fluid properties, such as flow rates, pressures, composition, etc.
Other data may also be collected, such as historical data, user inputs, economic information, and/or other measurement data and other parameters of interest. As described below, the static and dynamic measurements may be analyzed and used to generate models of the subterranean formation to determine characteristics thereof. Similar measurements may also be used to measure changes in formation aspects over time.
The subterranean structure 204 has a plurality of geological formations 206.1-206.4. As shown, this structure has several formations or layers, including a shale layer 206.1, a carbonate layer 206.2, a shale layer 206.3 and a sand layer 206.4. A fault 207 extends through the shale layer 206.1 and the carbonate layer 206.2. The static data acquisition tools are adapted to take measurements and detect characteristics of the formations.
While a specific subterranean formation with specific geological structures is depicted, it will be appreciated that oilfield 200 may contain a variety of geological structures and/or formations, sometimes having extreme complexity. In some locations, typically below the water line, fluid may occupy pore spaces of the formations. Each of the measurement devices may be used to measure properties of the formations and/or its geological features. While each acquisition tool is shown as being in specific locations in oilfield 200, it will be appreciated that one or more types of measurement may be taken at one or more locations across one or more fields or other locations for comparison and/or analysis.
The data collected from various sources, such as the data acquisition tools of
Each wellsite 302 has equipment that forms wellbore 336 into the earth. The wellbores extend through subterranean formations 306 including reservoirs 304. These reservoirs 304 contain fluids, such as hydrocarbons. The wellsites draw fluid from the reservoirs and pass them to the processing facilities via surface networks 344. The surface networks 344 have tubing and control mechanisms for controlling the flow of fluids from the wellsite to processing facility 354.
Attention is now directed to
The component(s) of the seismic waves 368 may be reflected and converted by seafloor surface 364 (i.e., reflector), and seismic wave reflections 370 may be received by a plurality of seismic receivers 372. Seismic receivers 372 may be disposed on a plurality of streamers (i.e., streamer array 374). The seismic receivers 372 may generate electrical signals representative of the received seismic wave reflections 370. The electrical signals may be embedded with information regarding the subsurface 362 and captured as a record of seismic data.
In one implementation, each streamer may include streamer steering devices such as a bird, a deflector, a tail buoy and the like, which are not illustrated in this application. The streamer steering devices may be used to control the position of the streamers in accordance with the techniques described herein.
In one implementation, seismic wave reflections 370 may travel upward and reach the water/air interface at the water surface 376, a portion of reflections 370 may then reflect downward again (i.e., sea-surface ghost waves 378) and be received by the plurality of seismic receivers 372. The sea-surface ghost waves 378 may be referred to as surface multiples. The point on the water surface 376 at which the wave is reflected downward is generally referred to as the downward reflection point.
The electrical signals may be transmitted to a vessel 380 via transmission cables, wireless communication or the like. The vessel 380 may then transmit the electrical signals to a data processing center. Alternatively, the vessel 380 may include an onboard computer capable of processing the electrical signals (i.e., seismic data). Those skilled in the art having the benefit of this disclosure will appreciate that this illustration is highly idealized. For instance, surveys may be of formations deep beneath the surface. The formations may typically include multiple reflectors, some of which may include dipping events, and may generate multiple reflections (including wave conversion) for receipt by the seismic receivers 372. In one implementation, the seismic data may be processed to generate a seismic image of the subsurface 362.
Marine seismic acquisition systems tow each streamer in streamer array 374 at the same depth (e.g., 5-10 m). However, marine based survey 360 may tow each streamer in streamer array 374 at different depths such that seismic data may be acquired and processed in a manner that avoids the effects of destructive interference due to sea-surface ghost waves. For instance, marine-based survey 360 of
The system and method described herein can include a hybrid approach that is based on a boundary representation technique and a meshless model construction technique. The system and method can include solving construction queries (e.g., localization) on-demand by combining the usage of vertical pins and geological meta-information and/or instructions. As a result, the system and method can provide a distributed, scalable, geophysical ray-traceable earth model that can be constructed on-the-fly. As used herein, distributed refers to the capacity of parallelizing operations and/or data to multiple computer nodes. As used herein, scalable refers to the capacity to treat and/or process a model of any size and to treat and/or process any number of (e.g., simultaneous) requests. As used herein, trace-based and/or ray-traceable refer to suited to the application of geophysical techniques to simulate the propagation of a seismic wave in the earth medium (e.g., using ray approximation). As used herein, on-the-fly refers to preparing the assembled model on-demand and/or in real-time at the geo-locality of the requests with no prior notice.
The assembly of the distributed scalable trace-based imaging earth model representation on-the-fly can include defining a data model where multiple independent objects are participating in the model based on a set of instructions governing its assembly. As used herein, participate refers to defining the model structure, the model boundaries, the model change of medium, the model rock-physics behavior, or a combination thereof. The objects can include surfaces (e.g., 2D grid surface, mesh surface), properties (e.g., regular 3D grid, 1D property profile, constant), zones, or a combination thereof. The model can be decomposed into smaller vertical columns or tiles, where each tile is itself considered to be a self-contained model. As used herein, a self-contained model refers to each representative unit being self-sufficient such that it is able to be used (e.g., run) on its own. The smallest possible representative unit for a column can be a vertical stack of single 3D grid cells. Queries can be constructed (e.g., localization) on-the-fly by combining the usage of vertical pins and a set of geological meta-information instructions. The data queries can drive of the model assembly. The query can be viewed as the decision maker for the determination of how much data to make available and/or as a definer of the model aperture to be readily available.
Each contributing object to the model (e.g., surface, property) can be independent but can participate in one or multiple models. The earth model can be defined as a collection of surfaces, properties, and/or zones. The surfaces and properties can be represented and stored as independent, self-contained objects. Each composing object can be one or more distinct dataset(s) in storage that can be accessed independently of any other objects. The objects can be self-contained in the sense that the corresponding datasets fully describe the object by providing both the meta-data and bulk data for the object.
Properties and surfaces can be represented by values fields and a geo-localization lattice. Those representations can include, for example, surface grid/high field, triangular mesh, and for property regular 3D grid, irregular 3D. Each object can have its own grid definition and orientation. Different objects can have a different grid definition and/or value resolution and yet be part of the same model. The data model can allow and promote sharing objects between different models. For example, a given surface in storage can belong to any number of different models. The model representation in storage can contain a set of instructions that specify which objects (e.g., surfaces, properties) contribute to this model and how (e.g., zone classification).
Traditionally, model building can be error prone and time-consuming. For example, when a model 400 is represented as a single monolithic object, the entire model may be re-created with every error. The distributed object representation makes the model building process faster because model creation is merely setting meta data (e.g., instructions on how to assemble the model). In addition, the model 400 can be composed from objects of different resolutions. This also provides economical use of storage. More particularly, objects can be shared between models, so they don't have to be duplicated with every model.
Large models may not fit into a single computer's RAM. To enable the representation of such large models, the data model can allow splitting the model into tiles. A tile is a square cuboid with the same depth (e.g., height) as the model. The data model for one tile is the same as for a model. In other words, the same software components can operate on either a tile, or on a model, which is a collection of tiles. The tiles can be distributed over multiple computers, for example, in a cloud compute engine. This enables unbound horizontal scalability.
The representations in
The model assembly can be decomposed as described below. The meta-information can be defined as a set of instructions describing the role and participation of objects to the model. This may include information such as the number of zones, surfaces, and/or properties to include in the model, and their relationships.
An object can be described by a meta-information section. The section can contain the object name, type (e.g., surface, property, zone), geo-localization in space (e.g., a 3D lattice-3D non-aligned axis geometry box), additional attributes (e.g., how many nodes, vertices), or a combination thereof. The meta-information can be self-describing, support basic geo-localization (e.g., for a given (x,y,z) point to determine if the object is affected), and occupy very small memory consumption (e.g., 5 kilobytes or less).
The object can also or instead be described by a bulk-data section. The section can be or include a collection of core data that defines the object. For example, a grid surface can be made up of n grid points, and each grid point can carry information such as z altitude and/or diagonal orientation. In another example, a 3D grid property can be made up of an 3D array of values (e.g., float) for simple scalar property (e.g., compressional velocity, shear velocity), or can be a 3D array of two float values for a structure tensor (e.g., dip/azimuth).
The surface data and property data corresponding to each instruction can be added together. Data can include a URL address on where to retrieve on the cloud the meta-information and bulk data that corresponds to the object.
The query can then be performed. The query can include a single action request for a given (x,y,z) point or (e.g., inline/crossline/depth interval) location. The query can also instead include a collection of action requests regularly or irregularly distributed that are covering part or the entirety of the model. The request can include determining the model zone at the requested location (e.g., zone classification). The request can also or instead include evaluating the property value and/or its gradient using different interpolation scheme (e.g., barycentric, tri-linear, tri-cubic). The request can also or instead include evaluating the surface normal direction a zone transition (e.g., lying on surface boundary between two zones) to determine the change of direction of the ray (e.g., reflection, refraction) to apply the Snell's law.
Meta-information of a model can be described as follows:
To determine which zone a point belongs to, a vertical pin may be passed/shot through the point, and intersections with the surfaces may be determined. The zone sequence that contains the point may then be located. This can be done by using an interval pair containment defined by the start-end z intersection of the zone sequence. This may be iterated on the zones of the selected zone sequence using the logical-priority order. This may also or instead be iterated on the zone intervals of the selected zone. The zone interval that contains the point can then be located. This can be done by using an interval pair containment defined by the start-end z intersection of the zone interval. Once zone interval containment is found, the zone may be assigned to this point.
Meta-information for the model 1100 can be defined as follows:
The point is lying inside the zone sequence definition range because the point is located between the volume of interest top and volume of interest base z intersections. The first available zone listed in the zone sequence is the zone water. The user may determine whether the point is lying inside the zone water. The point is located between the volume of interest top and water bottom z intersections, and therefore, the point can be classified as being part of the zone water.
The point Pt2 (see
The point is lying inside the zone sequence definition range because the point is located between the volume of interest top and volume of interest base z intersections. The first available zone listed in the zone sequence is the zone water. The user may determine whether the point is lying inside the zone water. The point is outside the interval defined by the intersection [volume of interest top, water bottom], and therefore, the point does not belong to the zone water. The next available zone to check is the zone geobody, iterating on the different zone intervals of the zone geobody. The first zone interval (geobody top1, geobody base1) is well defined as z intersections can be found for the geobody top1 and the geobody base1. However, the point is not lying within this intersection interval range. The second zone interval (geobody top2, geobody base2) is well defined as z intersections can be found for the geobody top2 and the geobody base2. Also, the point is found lying within this intersection interval range. Therefore, the point is classified as being part of the zone geobody
The point Pt3 (see
The point is lying inside the zone sequence definition range because the point is located between the volume of interest top and volume of interest base z intersections. The first available zone listed in the zone sequence is the zone water. The user may determine whether the point is lying inside the zone water. The point is outside the interval defined by the intersection [volume of interest top, water bottom], and therefore, the point does not belong to the zone water. The next available zone to check is the zone geobody, iterating on the different zone intervals of the zone geobody. The first zone interval (geobody top1, geobody base1) is well defined as z intersections can be found for the geobody top1 and the geobody base1. However, the point is not lying within this intersection interval range. The second zone interval (geobody top2, geobody base2) is well defined as z intersections can be found for the geobody top2 and the geobody base2. Also, the point is not lying within this intersection interval range. There are no more zone intervals for the zone geobody. Therefore, the point does not belong to this zone. The user may look for the next available zone. The next available zone to check is the zone sediment, iterating on the different zone intervals of the zone sediment. The point is located between the water bottom and volume of interest base z intersections and therefore the point is classified as being part of the zone sediment.
Once the zone has been determined for a given point location, evaluating the property value at this location can be done by selecting the appropriate property within the zone (e.g., using the meta-information description), localizing the grid cells containing this point, and/or applying an interpolation technique (e.g., tri-linear, barycentric, tri-cubic). The simplicity of this approach may enable ease of parallelism and decomposition. In essence, a vertical trace of data can be used to classify a point and evaluate its property value. The bulk data representation of a surface/property can be decoupled from the model. The model itself is a set of instructions, and therefore, it can be easily modified. Construction occurs when a query is submitted. In other words, classification and property estimation can be done on-the-fly and on-demand. In case of failure, failure is localized to the size of the construction unit, which is a vertical trace
The ability to load any tile of the model on-the-fly allows for tailoring the amount of model data assembled for the purpose of responding to the model query. These data requests can span over localized, small areas of the model (i.e., property value at a point) or over the full model area (i.e., fulfilling the data requests of a seismic data processing algorithm). As the set of instructions used to create the full model can be used to load any tile of the model on-the-fly, both large and small portions of the model can be loaded to fulfill requests. This ability to tailor the size of the model in memory allows for gathering the portions of the model which are relevant to any given query or set of queries. In this way, queries which are localized to a small portion of the model can be fulfilled quickly as a small amount of the model's data is used, and queries spanning larger sections of the model can be decomposed into queries on a collection of smaller pieces of the model allowing for parallel processing of the query.
Models loaded into memory may not be constrained by the orientation of the full model geometry (i.e., size or rotation). Model tiles can be defined by a 3D lattice and/or volume of interest, which can be as small as a single column or larger than the size of the model's definition. This volume of interest (or queried area) can also be rotated by any angle about the vertical axis, as shown in
Two performance aspects for enabling the on-the-fly assembly of model tiles are parallel I/O (e.g., data input/output) and the localized storage of object data. The transfer of object data from storage into memory may be able to take place in parallel, with multiple objects (e.g., surfaces or property) having their data transferred at once. As the objects participating in the model can be self-contained and independent of one another, this can be achieved through multi-threading. Object data may not be stored as a monolith, but rather objects can be decomposed into geo-localized blocks for storage to ensure that data local to queries is brought over the network to the machine's memory. For example, a property consisting of a 3D grid of values can be decomposed into a set of hexahedrons of a specified length, width, and depth, converting the single property into n 3D grid blocks. As data is requested by the model, the blocks covering the requested area can be transferred to fill the model. The size of the decomposition of the blocks is tuned for optimal performance for transferring data over the network. By combining these two features, model data can be assembled quickly and in parallel. The relevant data from each participating object's blocks can be transferred in parallel over the network to be loaded into the model tile in memory.
Models, surfaces, and/or properties can be equipped with a geo-localization lattice as part of their meta-data. This shared means of spatial description allows for the same decomposition algorithms to be applied to models, surfaces, and properties. The discretization of a model into tiles can be applied similarly to a property (e.g., for visualizing data quickly in the same distributed manner used for a model). Additionally, this discretization is used for splitting property and surfaces into blocks for storage, taking the full object and tiling it in a geo-localized manner to determine the composition of each storage block.
The system and method described herein may also or instead be extended to other domains in the field of computed aided design (CAD) including, but not limited to, computer graphics and animation, product visualization and visualization of scientific research (e.g., medicine, car construction, space/aeronautic, mining . . . ), and water reservoir characterization or monitoring. Other possible uses could be extending (or integrating with) GOOGLE® maps to provide information at surface (X, Y) and also at depth, (X, Y, Depth).
The method 1600 may include assembling (or generating or receiving) a model, as at 1602. The model may be or include the model 400 in
The method 1600 may also include decomposing the model into vertical columns, tiles, or both, as at 1604. The vertical columns may be or include the columns 600A-600D shown in
The method 1600 may also include discretizing an incoming request into the vertical columns, the tiles, or both, as at 1606. The vertical columns, the tiles, or both may cover a zone of interest of the incoming request to drive assembly of at least a portion of the model. The zone of interest refers to a particular portion of the model that corresponds to a particular portion of the subterranean formation.
The method 1600 may also include formulating the request, as at 1608. The request may be formulated by assembling the model (e.g., on-the-fly) using the set of instructions (e.g., dynamically). The request may also or instead be formulated by performing a vertical pin analysis on the model to retrieve a portion of the surfaces and/or a portion of the properties that are geo-located in the vertical columns, the tiles, or both.
The method 1600 may also include determining that the vertical columns, the tiles, or both are distributed across the plurality of computer nodes, as at 1610.
The method 1600 may also include processing the request, as at 1612. The request may be processed by localizing the 3D cuboid and/or applying an operator (e.g., a trace-based operator) to model data (e.g., the portion of the surfaces and/or the portion of the properties) that is geo-located in the vertical columns, the tiles, or both to produce an output. Localizing the 3D cuboid may include identifying relationships (e.g., mapping) between (1) the request and (2) the vertical columns, the tiles, or both. The operator may be or include a mathematical function.
The method 1600 may also include comparing the output with subsurface data, as at 1614. The subsurface data may be measured or acquired at a wellsite using ray tracing, full waveform inversion (FWI)), or the like.
The method 1600 may also include modifying the model based at least partially upon the comparison, as at 1616.
The method 1600 may also include performing a wellsite action, as at 1618. The wellsite action may be performed based at least partially upon and/or at least partially in response to the output, the subsurface data, the modified model, or a combination thereof. The wellsite action may be or include selecting a location at a wellsite to drill a wellbore into a subterranean formation, drilling the wellbore, varying a trajectory of the wellbore, varying a rate of penetration of a bottom hole assembly (BHA) that is drilling the wellbore, varying a weight on the drill bit (WOB) in the BHA, varying a flow rate and/or composition of a fluid pumped into the wellbore, or a combination thereof. In one embodiment, the computing system may transmit a signal (e.g., to a user or equipment) to instruct a user or equipment to perform the wellsite action.
In some embodiments, any of the methods of the present disclosure may be executed by a computing system.
A processor can include a microprocessor, microcontroller, processor module or subsystem, programmable integrated circuit, programmable gate array, or another control or computing device.
The storage media 1706 can be implemented as one or more computer-readable or machine-readable storage media. Note that while in the example embodiment of
In some embodiments, computing system 1700 contains one or more earth model representation module(s) 1708 that may perform at least a portion of one or more of the method(s) described above. It should be appreciated that computing system 1700 is only one example of a computing system, and that computing system 1700 may have more or fewer components than shown, may combine additional components not depicted in the example embodiment of
Further, the steps in the processing methods described herein may be implemented by running one or more functional modules in information processing apparatus such as general purpose processors or application specific chips, such as ASICs, FPGAs, PLDs, or other appropriate devices. These modules, combinations of these modules, and/or their combination with general hardware are all included within the scope of protection of the invention.
Geologic interpretations, models and/or other interpretation aids may be refined in an iterative fashion; this concept is applicable to embodiments of the present methods discussed herein. This can include use of feedback loops executed on an algorithmic basis, such as at a computing device (e.g., computing system 1700,
The foregoing description, for purpose of explanation, has been described with reference to specific embodiments. However, the illustrative discussions above are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in view of the above teachings. Moreover, the order in which the elements of the methods are illustrated and described may be re-arranged, and/or two or more elements may occur simultaneously. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications, to thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated.
This application claims priority to U.S. Provisional Patent Application having Ser. No. 63/364,209, which was filed on May 5, 2022 and is incorporated herein by reference in its entirety.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2023/020998 | 5/4/2023 | WO |
Number | Date | Country | |
---|---|---|---|
63364209 | May 2022 | US |