WO2016115004A1 - Ajustement automatique d'intervalles de temps pour une simulation de réservoir - Google Patents
Ajustement automatique d'intervalles de temps pour une simulation de réservoir Download PDFInfo
- Publication number
- WO2016115004A1 WO2016115004A1 PCT/US2016/012790 US2016012790W WO2016115004A1 WO 2016115004 A1 WO2016115004 A1 WO 2016115004A1 US 2016012790 W US2016012790 W US 2016012790W WO 2016115004 A1 WO2016115004 A1 WO 2016115004A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- timestep
- reservoir
- measurements
- length
- iterations
- Prior art date
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 102
- 238000005259 measurement Methods 0.000 claims abstract description 73
- 238000000034 method Methods 0.000 claims abstract description 58
- 238000000605 extraction Methods 0.000 claims description 15
- 239000012530 fluid Substances 0.000 claims description 7
- 230000006399 behavior Effects 0.000 claims description 6
- 230000015654 memory Effects 0.000 claims description 6
- 239000000203 mixture Substances 0.000 claims description 6
- 238000012545 processing Methods 0.000 description 16
- 238000003860 storage Methods 0.000 description 13
- 230000003247 decreasing effect Effects 0.000 description 12
- 238000007726 management method Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 241001415846 Procellariidae Species 0.000 description 8
- 239000010410 layer Substances 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000000670 limiting effect Effects 0.000 description 5
- 238000012800 visualization Methods 0.000 description 5
- 230000002829 reductive effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000010796 Steam-assisted gravity drainage Methods 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005553 drilling Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000004549 pulsed laser deposition Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013517 stratification Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- E—FIXED CONSTRUCTIONS
- E21—EARTH OR ROCK DRILLING; MINING
- E21B—EARTH OR ROCK DRILLING; OBTAINING OIL, GAS, WATER, SOLUBLE OR MELTABLE MATERIALS OR A SLURRY OF MINERALS FROM WELLS
- E21B49/00—Testing the nature of borehole walls; Formation testing; Methods or apparatus for obtaining samples of soil or well fluids, specially adapted to earth drilling or wells
-
- E—FIXED CONSTRUCTIONS
- E21—EARTH OR ROCK DRILLING; MINING
- E21B—EARTH OR ROCK DRILLING; OBTAINING OIL, GAS, WATER, SOLUBLE OR MELTABLE MATERIALS OR A SLURRY OF MINERALS FROM WELLS
- E21B43/00—Methods or apparatus for obtaining oil, gas, water, soluble or meltable materials or a slurry of minerals from wells
Definitions
- timesteps In the numerical simulation of time-dependent problems, such as, for example, reservoir simulation, the simulation can run in multiple iterations or steps (hereinafter, "timesteps"), where a timestep starts with values (estimated or actual) at a first time and estimates new values at a second time. The difference in time between the first time and the second time is the timestep length. For example, if a timestep length is one hour, then the simulation will use determined values from a previous timestep to determine the expected values one hour later, the expected values can then be used for the next timestep of the simulation.
- timestep length For example, if a timestep length is one hour, then the simulation will use determined values from a previous timestep to determine the expected values one hour later, the expected values can then be used for the next timestep of the simulation.
- timestep length can affect the time it takes to process a timestep, the processing resources needed to perform the entire simulation, and/or the total amount of time to perform the entire simulation.
- Small timestep lengths may be inefficient due to there being a minimum amount of work needed to perform a timestep of a simulation, regardless of the timestep length.
- the total amount of time to perform multiple timesteps of the simulation using small timestep lengths may not be efficient.
- Large timestep lengths could result in a lesser total amount of time, but can be computationally expensive and, thus, use more processing resources and/or can result in a simulation failure that results in repeated attempts to perform a timestep.
- timestep lengths may result in a greater total amount of time to perform multiple iterations due to overburdened processing resources, processing inefficacies, and/or simulation failures due to failures to converge to the root when calculating or solving a system of non-linear equations. Accordingly, selection of an appropriate timestep length is a useful step in performing simulations.
- the conditions that affect the efficiency of a given timestep length can vary between timesteps in the simulation. For instance, a first timestep length may be efficient for some values, but may result in a simulation failure with other values.
- Variable timesteps can be selected using certain parameters. However, the parameters can have similar drawbacks to the timestep lengths, and the parameters that may result in choosing efficient timesteps in certain situations, may result in inappropriate timesteps in other situations, which can impact the performance of the simulation
- Systems, apparatus, computer-readable media, and methods are disclosed for performing a reservoir simulation by obtaining initial reservoir measurements and performing a reservoir simulation in multiple timesteps using the reservoir measurements. Based on the reservoir simulation, projected reservoir measurements can be determined and output.
- a timestep can be performed by obtaining, at a start of the timestep, reservoir measurements, a timestep length, a parameter selection rate, and an iteration target and then performing the reservoir simulation for the timestep to determine projected reservoir measurements at an end of the timestep.
- the parameter selection rate can be adjusted based on a difference between an amount of iterations used to determine the projected reservoir measurements and the iteration target.
- a timestep length of the next timestep can be determined based on timestep length selection parameters.
- the timestep length selection parameters can be adjusted based on the parameter selection rate and the difference between the amount of iterations and the iteration target.
- Figure 1 illustrates an example of a system that includes various management components to manage various aspects of a geologic environment, according to an embodiment.
- Figure 2 illustrates an example of a method for performing a reservoir simulation, according to an embodiment.
- Figure 3 illustrates an example of a method for performing a reservoir simulation in multiple timesteps, according to an embodiment.
- Figure 4 illustrates an example showing variable parameter values during multiple timesteps of a simulation, according to an embodiment.
- Figure 5 illustrates a computing system, according to an embodiment. Detailed Description
- first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are used to distinguish one element from another. For example, a first object or step could be termed a second object or step, and, similarly, a second object or step could be termed a first object or step, without departing from the scope of the disclosure.
- the first object or step, and the second object or step are both, objects or steps, respectively, but they are not to be considered the same object or step.
- FIG 1 illustrates an example of a system 100 that includes various management components 1 10 to manage various aspects of a geologic environment 150 (e.g., an environment that includes a sedimentary basin, a reservoir 151, one or more faults 153-1, one or more geobodies 153-2, etc.).
- the management components 110 may allow for direct or indirect management of sensing, drilling, injecting, extracting, etc., with respect to the geologic environment 150.
- further information about the geologic environment 150 may become available as feedback 160 (e.g., optionally as input to one or more of the management components 110).
- the management components 110 include a seismic data component 112, an additional information component 1 14 (e.g., well/logging data), a processing component 116, a simulation component 120, an attribute component 130, an analysis/visualization component 142 and a workflow component 144.
- seismic data and other information provided per the components 112 and 114 may be input to the simulation component 120.
- the simulation component 120 may rely on entities 122.
- Entities 122 may include earth entities or geological objects such as wells, surfaces, bodies, reservoirs, etc.
- 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).
- An entity may be characterized by one or more properties (e.g., a geometrical pillar grid entity of an earth model may be characterized by a porosity property). Such properties may represent one or more measurements (e.g., acquired data), calculations, etc.
- the simulation component 120 may operate in conjunction with a software framework such as an object-based framework.
- entities may include entities based on pre-defined classes to facilitate modeling and simulation.
- object-based framework is the MICROSOFT ® .NET ® framework (Redmond, Washington), which provides a set of extensible object classes.
- .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.
- borehole classes may define objects for representing boreholes based on well data.
- the simulation component 120 may process information to conform to one or more attributes specified by the attribute component 130, which may include a library of attributes. Such processing may occur prior to input to the simulation component 120 (e.g., consider the processing component 116). As an example, the simulation component 120 may perform operations on input information based on one or more attributes specified by the attribute component 130. In an example embodiment, the simulation component 120 may construct one or more models of the geologic environment 150, which may be relied on to simulate behavior of the geologic environment 150 (e.g., responsive to one or more acts, whether natural or artificial). In the example of Figure 1, the analysis/visualization component 142 may allow for interaction with a model or model-based results (e.g., simulation results, etc.). As an example, output from the simulation component 120 may be input to one or more other workflows, as indicated by a workflow component 144.
- the simulation component 120 may include one or more features of a simulator such as the ECLIPSETM reservoir simulator (Schlumberger Limited, Houston Texas), the INTERSECTTM reservoir simulator (Schlumberger Limited, Houston Texas), etc.
- a simulation component, a simulator, etc. may include features to implement one or more meshless techniques (e.g., to solve one or more equations, etc.).
- a reservoir or reservoirs may be simulated with respect to one or more enhanced recovery techniques (e.g., consider a thermal process such as SAGD, etc.).
- the management components 110 may include features of a commercially available framework such as the PETREL ® seismic to simulation software framework (Schlumberger Limited, Houston, Texas).
- 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.
- various professionals e.g., geophysicists, geologists, and reservoir engineers
- 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 modeling, simulating, etc.).
- various aspects of the management components 110 may include add-ons or plug-ins that operate according to specifications of a framework environment.
- a framework environment e.g., a commercially available framework environment marketed as the OCEAN ® framework environment (Schlumberger Limited, Houston, Texas) allows for integration of addons (or plug-ins) into a PETREL ® framework workflow.
- the OCEAN ® framework environment leverages .NET ® tools (Microsoft Corporation, Redmond, Washington) and offers stable, user- friendly interfaces for efficient development.
- 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.).
- API application programming interface
- Figure 1 also shows an example of a framework 170 that includes a model simulation layer 180 along with a framework services layer 190, a framework core layer 195 and a modules layer 175.
- the framework 170 may include the commercially available OCEAN ® framework where the model simulation layer 180 is the commercially available PETREL ® model-centric software package that hosts OCEAN ® framework applications.
- the PETREL ® software may be considered a data-driven application.
- the PETREL ® software can include a framework for model building and visualization.
- a framework may include features for implementing one or more mesh generation techniques.
- a framework may include an input component for receipt of information from interpretation of seismic data, one or more attributes based at least in part on seismic data, log data, image data, etc.
- Such a framework may include a mesh generation component that processes input information, optionally in conjunction with other information, to generate a mesh.
- 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.
- the domain objects 182 can include entity objects, property objects and optionally other objects.
- Entity objects may be used to geometrically represent wells, surfaces, bodies, reservoirs, etc.
- property objects may be used to provide property values as well as data versions and display parameters.
- an entity object may represent a well where a property object provides log information as well as version information and display information (e.g., to display the well as part of a model).
- data may be stored in one or more data sources (or data stores, generally physical data storage devices), which may be at the same or different physical sites and accessible via one or more networks.
- the model simulation layer 180 may be configured to model projects. As such, a particular project may be stored where stored project information may include inputs, models, results and cases. Thus, upon completion of a modeling session, a user may store a project. At a later time, the project can be accessed and restored using the model simulation layer 180, which can recreate instances of the relevant domain objects.
- the geologic environment 150 may include layers (e.g., stratification) that include a reservoir 151 and one or more other features such as the fault 153-1, the geobody 153-2, etc.
- the geologic environment 150 may be outfitted with any of a variety of sensors, detectors, actuators, etc.
- equipment 152 may include communication circuitry to receive and to transmit information with respect to one or more networks 155.
- Such information may include information associated with downhole equipment 154, which may be equipment to acquire information, to assist with resource recovery, etc.
- Other equipment 156 may be located remote from a well site and include sensing, detecting, emitting or other circuitry.
- Such equipment may include storage and communication circuitry to store and to communicate data, instructions, etc.
- one or more satellites may be provided for purposes of communications, data acquisition, etc.
- Figure 1 shows a satellite in communication with the network 155 that may be configured for communications, noting that the satellite may additionally or alternatively include circuitry for imagery (e.g., spatial, spectral, temporal, radiometric, etc.).
- imagery e.g., spatial, spectral, temporal, radiometric, etc.
- Figure 1 also shows the geologic environment 150 as optionally including equipment 157 and 158 associated with a well that includes a substantially horizontal portion that may intersect with one or more fractures 159.
- equipment 157 and 158 associated with a well that includes a substantially horizontal portion that may intersect with one or more fractures 159.
- a well in a shale formation may include natural fractures, artificial fractures (e.g., hydraulic fractures) or a combination of natural and artificial fractures.
- a well may be drilled for a reservoir that is laterally extensive.
- lateral variations in properties, stresses, etc. may exist where an assessment of such variations may assist with planning, operations, etc. to develop a laterally extensive reservoir (e.g., via fracturing, injecting, extracting, etc.).
- the equipment 157 and/or 158 may include components, a system, systems, etc. for fracturing, seismic sensing, analysis of seismic data, assessment of one or more fractures, etc.
- a workflow may be a process that includes a number of worksteps.
- a workstep may operate on data, for example, to create new data, to update existing data, etc.
- a workstep may operate on one or more inputs and create one or more results, for example, based on one or more algorithms.
- a system may include a workflow editor for creation, editing, executing, etc. of a workflow. In such an example, the workflow editor may provide for selection of one or more pre-defined worksteps, one or more customized worksteps, etc.
- a workflow may be a workflow implementable in the PETREL ® software, for example, that operates on seismic data, seismic attribute(s), etc.
- a workflow may be a process implementable in the OCEAN ® framework.
- a workflow may include one or more worksteps that access a module such as a plug-in (e.g., external executable code, etc.).
- system 100 and/or simulation component 120 may be used for reservoir simulation.
- current measurements of a reservoir e.g., measurements extracted during a well test of an oil, gas, or water reservoir
- system 100 and/or simulation component 120 can perform a simulation to determine expected measurements in the future.
- the expected measurements can be used to, for example, determine well extraction rates, determine which reservoirs to expend resources on, determine well locations, determine when to terminate reservoir extraction, etc.
- reservoir measurements include well extraction rates, volumetric flow rates, well pressure, gas/oil ratio, composition of fluid in reservoir, etc.
- Embodiments of the disclosure may provide systems, methods, and computer-readable media for performing reservoir simulation using dynamic timestep lengths determined using dynamic timestep length selection parameters.
- the method may adjust the timestep lengths and/or parameters in order to make the simulation run more efficiently, even if the nature of the problem changes during the simulation.
- inefficiencies caused by using inappropriate default timestep lengths and/or timestep length selection parameters can be avoided, and the simulation can be efficiently performed using the processing resources available, even if the nature of the problem changes during the simulation.
- Figure 2 illustrates an example of a method for performing a reservoir simulation.
- the example method illustrated in Figure 2 can be performed using a computing device that includes the framework (e.g., framework 170) and the management components (e.g., management components 110) described above with reference to Figure 1.
- framework e.g., framework 170
- management components e.g., management components 110
- the example method can begin in 200, when the computing device receives or obtains current measurements of the reservoir.
- the measurements can be input manually by a user or received via one or more measurement devices.
- Example measurements include a current well extraction rate(s), a current volumetric flow rate(s), well pressure(s), gas/oil ratio(s), composition of fluid(s) in reservoir, etc.
- the computing device can receive or obtain a simulation length.
- the simulation length can be received from a user or can be a predetermined default value. Shorter simulation lengths can be measured in, for example, seconds, minutes, and/or hours, while longer simulation lengths can be measured in, for example, years, decades, and beyond.
- the simulation length can be selected based on an expected remaining lifetime of the reservoir, which can vary based on when extraction began at the reservoir, the size of the reservoir, the amount of fluid in the reservoir, the extraction rate of the reservoir, etc. Often, reservoirs have an expected total lifetime of between 10 to 40 years.
- the computing device can receive or obtain a starting timestep length. In some embodiments, the starting timestep length can be received from a user. In other embodiments, the starting timestep length can be a predetermined default value.
- the computing device can perform the reservoir simulation in multiple timesteps using variable timestep lengths, variable timestep length selection parameters, variable parameter selection rates, and/or variable iteration targets, as discussed in further detail below with regard to Figure 3.
- the computing device may construct one or more models of the reservoir, which may be relied on to simulate behavior of the reservoir and/or determine expected measurements within the reservoir at a timestep.
- the computing device can determine projected measurements of the reservoir based on the simulation.
- the reservoir simulation can be used to determine expected well extraction rates at the end of a timestep and at the end of the simulation based on changing expected well pressures and/or volumetric flow rates.
- the reservoir simulation can be used to determine expected gas/oil ratios and compositions of fluids at the end of a timestep and at the end of the simulation based on changing well extraction rates.
- the computing device can output the projected measurements.
- the projected measurements can be output using the analysis/visualization component 142 described with reference to Figure 1, and the analysis/visualization component 142 may allow for interaction with a model and/or the projected measurements.
- the projected measurements may be input into one or more other workflows (e.g., as indicated by a workflow component 144 in Figure 1).
- the projected measurements can be used to, for example, determine well extraction rates, determine which reservoirs to expend resources on, determine well locations, determine when to terminate reservoir extraction, etc.
- Figure 3 illustrates an example of a method for performing a reservoir simulation in multiple timesteps using variable timestep lengths, variable timestep length selection parameters, variable parameter selection rates, and/or variable iteration targets.
- the example method illustrated in Figure 3 can be performed using a computing device that includes the framework (e.g., framework 170) and the management components (e.g., management components 110) described above with reference to Figure 1.
- the method described with regard to Figure 3 can represent the process performed in 230 as described with regard to Figure 2.
- the example method can begin in 300, when the computing device obtains measurements, a timestep length, a parameter selection rate, and an iteration target number to perform a new timestep of a reservoir simulation.
- the obtained measurements can represent the measurements at the start of the timestep.
- the obtained measurements can be current measurements of the reservoir (e.g., as obtained in 200 as described with regard to Figure 2).
- the timestep of the reservoir simulation can be the first timestep of the reservoir simulation.
- the obtained measurements can be projected measurements determined in the previous timestep of the simulation.
- the parameter selection rate and the iteration target number can be default values or can be received from a user.
- the parameter selection rate and the iteration target number can be the same values from a previous timestep or can be adjusted values based on results of the timestep.
- Example measurements that can be obtained include a well extraction rate(s), a volumetric flow rate(s), well pressure(s), gas/oil ratio(s), composition of fluid(s) in reservoir, etc.
- the computing device can perform the reservoir simulation for the timestep using the measurements obtained in 300 to attempt to determine projected measurements at the end of the timestep.
- the computing device may construct one or more models of the reservoir, which may be relied on to simulate behavior of the reservoir and/or determine expected measurements within the reservoir at the end of the timestep.
- non-linear equations may be produced and solved.
- the non-linear equations may be solved using Newton's method in a first Newton iteration, which can produce additional non-linear equations to be solved in a second Newton iteration.
- the additional non-linear equations can be solved in the second Newton iteration, and may produce additional linear equations to be solved in a third Newton iteration, etc.
- the larger the timestep the greater the number of Newton iterations needed to converge to the root.
- the number of Newton iterations can be used to determine the efficiency of the timestep, as discussed in further detail below.
- the iteration target can represent a number of Newton iterations that is considered efficient for the simulation and/or the iteration target number can be an indication of how well the simulation is performing. For example, a user can set the iteration target number at five and/or the default value can be five.
- the iteration target number can be a dynamic value that can be changed based on various factors during the simulation, as described below.
- the computing device can determine whether there was a failure to converge to the root. If there is a failure to converge to the root (Yes in 320), the timestep length is too large and the method proceeds to 330, where a new timestep length is determined.
- the new timestep length can be determined using one or more parameters.
- a parameter can be a chop parameter, which determines a factor by which the timestep length is reduced in the event of a failure to converge to the root.
- the chop parameter can be set at a value of 0.1 and the current timestep length can be one hour. Accordingly, in the event of a failure, the timestep length can be adjusted based on the chop parameter to 0.1 hours.
- the parameter(s) used to determine the new timestep length can also be adjusted using a parameter selection rate, which can be a dynamic value.
- the rate can increased or decreased, as described below. For example, the rate can be increased if there is a failure to converge to the root (e.g., Yes in 320).
- the parameters can be adjusted based on the rate, the actual number of Newton iterations, the iteration target and the current value of the parameter.
- the parameters can be adjusted based on the following formula:
- New parameter old parameter (1 + rate(target— actual)).
- a maximum value can be used as the actual number of Newton iterations (e.g., ten).
- the process can return to 310 and the computing device can perform the reservoir simulation for the timestep using the measurements obtained in 300 to attempt to determine projected measurements at the end of the new, smaller, timestep. [0064] If there is no failure to converge to the root in 320 (No in 320), the method can proceed to 340 where the number of iterations is determined based on the number of Newton iterations performed to converge to the root.
- the computing device can determine the difference between the actual number of Newton iterations performed and the iteration target.
- the difference between the actual number of Newton iterations performed and the iteration target can be used to determine whether to adjust the parameter selection rate, to determine whether to adjust the timestep length, and to adjust parameters.
- the computing device can determine whether to adjust the parameter selection rate. For example, the rate can be increased if the difference between the number of Newton iterations performed and the iteration target is greater than a threshold amount, the rate can be increased if the last two timesteps were performed in a number of Newton iterations that were both above or both below the iteration target, the rate can be decreased if the last two timesteps were performed in a number of Newton iterations that were at or near (e.g.
- a difference of one) the iteration target, and/or the rate can be decreased if, in the last two timesteps, one was performed in a number of Newton iterations that was less than the iteration target number and the other was performed in a number of Newton iterations that was greater than the iteration target number.
- a single rate can be used for the parameters, while, in further embodiments, multiple rates can be used, and multiple the rates can be used to adjust one or more parameters.
- the examples described below may refer to a single rate, but similar principles can be applied to implementations where multiple rates are used.
- the computing device can determine whether to adjust the timestep length.
- the computing device can determine whether to adjust the timestep length based on a parameter or parameters.
- a parameter can be a time truncation error parameter, which determines a factor by which the timestep length is reduced or increased. For example, if the rate that measurements are changing is increasing between timesteps, the timestep length can be reduced based on the time truncation error parameter. Otherwise, if the rate that measurements are changing is decreasing between timesteps, the timestep length can be increased based on the time truncation error parameter.
- the time truncation error parameter can be set at a value of 0.1 and the current timestep length can be one hour. Accordingly, in the event of measurements changing at an increasing rate, the timestep length can be adjusted based on the time truncation error parameter to 0.1 hours. Alternatively, in the event of measurements changing at a decreasing rate, the timestep length can be adjusted based on the time truncation error parameter to 10 hours.
- the computing device can determine whether to adjust the iteration target.
- the computing device can determine the efficiency of previously performed timesteps.
- the determined efficiency of a timestep can be determined based on cost of the timestep divided by the timestep length.
- the cost can be the amount of time the computing device spent calculating that timestep (processing time).
- the cost can be determined using proxies for the processing time.
- the number of Newton iterations used can be a proxy for the processing time.
- the efficiency of the timestep can be the number of Newton iterations taken divided by the timestep length.
- other types of proxies can be used, such as proxies that take in to account the total amount of linear iterations used.
- the efficiency of timesteps that are performed in a number of iterations that are above the iteration target can be compared to the efficiency of timesteps that are performed in a number of iterations that are below the iteration target. If either the timesteps that are performed in a number of iterations that are above the iteration target or the timesteps that are performed in a number of iterations that are below the iteration target are determined to be more efficient, then the iteration target number can be increased or decreased, respectively.
- the computing device can determine the amount of resources used by the current timestep and the previous timestep. If the current timestep used fewer resources than the previous timestep or the previous timesteps, the iteration target can be increased.
- the computing device can adjust the parameters based on the rate, the actual number of iterations, the iteration target, and the current value of the parameter, as discussed above. [0073]
- the process can return to 300 and proceed with the next timestep.
- the timestep can have an adjusted timestep length if the timestep length was adjusted in 370 or can have the same timestep length of the previous timestep if the timestep length was not adjusted in 370.
- Figure 4 illustrates an example showing variable parameter values during multiple timesteps of a simulation with variable timestep lengths, variable parameter selection rates, and variable iteration targets.
- the first and second columns of table 400 represent the time that a timestep starts and the time that a timestep ends, respectively. As shown in Figure 4, for the sake of example, the time is represented using Unix timestamps.
- the third column of table 400 represents the timestep length, which, in this example, ranges from .5 hours to 2.1 hours.
- the time ranges are merely an example and are not intended to be limiting.
- the fourth and fifth columns of table 400 represent timestep length selection parameters such as, for example, a chop parameter and a time truncation error parameter. Additional or fewer parameters can be used, consistent with disclosed embodiments.
- the sixth column of table 400 represents the parameter selection rate, which, in this example, ranges from .1 to .4.
- the parameter selection rates are merely an example and are not intended to be limiting.
- the seventh column of table 400 represents the current iteration target, and the eighth column of table 400 represents the actual number of iterations performed for the timestep (e.g., Newton iterations).
- the iteration target and the actual number of iterations performed are merely examples and are not intended to be limiting.
- the ninth, tenth, and eleventh columns of table 400 indicate whether the timestep results in an adjusted timestep length, an adjusted parameter selection rate, and/or an adjusted iteration target, respectively.
- the first row of table 400 depicts a timestep that is one hour in length.
- the timestep takes one iteration, which is four iterations below the current iteration target of five.
- a computing device can determine to adjust the timestep length and the parameter selection rate based on the difference between the current iteration target and the actual number of iterations being greater than predetermined thresholds. Additionally, the computing device may determine to not adjust the current iteration target.
- the second row of table 400 depicts a timestep where the timestep length has been increased to two hours and the parameter selection rate has been increased to 0.2, based on the difference between the current iteration target and the actual number of iterations in the previous timestep.
- the timestep takes three iterations, which is two iterations below the current iteration target of five. Accordingly, consistent with certain disclosed embodiments, a computing device can determine to adjust the timestep length based on the difference between the current iteration target and the actual number of iterations being greater than a predetermined threshold (e.g., one).
- the computing device can determine to adjust the parameter selection rate based on two consecutive timesteps (first row and second row) where the actual number of iterations is less than the current iteration target. Additionally, the computing device may determine to not adjust the current iteration target.
- the third row of table 400 depicts a timestep where the timestep length has been increased to 2.1 hours and the parameter selection rate has been increased to 0.3.
- the timestep takes five iterations, which is the current iteration target. Accordingly, consistent with certain disclosed embodiments, a computing device can determine not to adjust the timestep length, the parameter section rate, or the current iteration target.
- the fourth row of table 400 depicts a timestep where the timestep length remains at 2.1 hours and the parameter selection rate remains at 0.3.
- the timestep takes five iterations, which is the current iteration target.
- a computing device can determine not to adjust the timestep length or the current iteration target.
- the computing device can determine to adjust the parameter selection rate based on two consecutive timesteps (third row and fourth row) where the actual number of iterations is at or near the current iteration target.
- the fifth row of table 400 depicts a timestep where the timestep length remains at 2.1 hours and the parameter selection rate has decreased to 0.2.
- the timestep takes six iterations, which is one more than the current iteration target.
- a computing device can determine not to adjust the timestep length or the current iteration target.
- the computing device can determine to adjust the parameter selection rate based on two consecutive timesteps (fourth row and fifth row) where the actual number of iterations is at or near the current iteration target.
- the sixth row of table 400 depicts a timestep where the timestep length remains at 2.1 hours and the parameter selection rate has decreased to 0.1.
- the timestep takes seven iterations, which is two more than the current iteration target.
- a computing device can determine to adjust the timestep length. Additionally, consistent with certain disclosed embodiments, the computing device can determine to adjust the parameter selection rate based on two consecutive timesteps (fifth row and sixth row) where the actual number of iterations is greater than the current iteration target. However, the computing device may determine to not adjust the current iteration target.
- the seventh row of table 400 depicts a timestep where the timestep length has decreased to two hours and the parameter selection rate has increased to 0.3.
- the timestep takes five iterations, which is the current iteration target. Accordingly, consistent with certain disclosed embodiments, the computing device can determine not to adjust the timestep length, the parameter section rate, or the current iteration target.
- the eighth row of table 400 depicts a timestep where the timestep length remains at two hours and the parameter selection rate remains at 0.3.
- the timestep fails because, for example, there is a failure in converging to the root when solving or calculating a system of non-linear equations.
- a computing device can determine to adjust the timestep length and the parameter selection rate based on the failure. For example, the computing device can use a chop parameter to adjust the timestep length (e.g., parameter 1). However, the computing device may determine to not adjust the current iteration target.
- the ninth row of table 400 depicts a timestep where the timestep length has been decreased to 1.1 hours and the parameter selection rate has been increased to 0.4.
- the timestep can represent a new attempt to perform a simulation in place of the timestep depicted in the eighth row in response to the failure.
- the timestep takes two iterations, which is three less than the current iteration target. Accordingly, consistent with certain disclosed embodiments, a computing device can determine to adjust the timestep length.
- the efficiency of timesteps that are performed in a number of iterations that are above the iteration target can be compared to the efficiency of timesteps that are performed in a number of iterations that are below the iteration target (e.g., row two and row nine).
- the computing device can determine to adjust the current iteration target. However, the computing device may determine to not adjust the parameter selection rate.
- the tenth row of table 400 depicts a timestep where the timestep length has been decreased to 0.5 hours and the parameter selection rate remains at 0.4. Additionally, the current iteration target has been decreased to four. The timestep takes three iterations, which is one less than the current iteration target. Accordingly, consistent with certain disclosed embodiments, a computing device can determine to adjust the parameter selection rate. However, the computing device may determine to not adjust the timestep length or the current iteration target.
- the methods of the present disclosure may be executed by a computing system.
- Figure 5 illustrates an example of such a computing system 500, in accordance with some embodiments.
- the computing system 500 may include a computer or computer system 501 A, which may be an individual computer system 501 A or an arrangement of distributed computer systems.
- the computer system 501A includes one or more analysis modules 502 that are configured to perform various tasks according to some embodiments, such as one or more methods disclosed herein. To perform these various tasks, the analysis module 502 executes independently, or in coordination with, one or more processors 504, which is (or are) connected to one or more storage media 506.
- the processor(s) 504 is (or are) also connected to a network interface 507 to allow the computer system 501 A to communicate over a data network 509 with one or more additional computer systems and/or computing systems, such as 501B, 501C, and/or 501D (note that computer systems 501B, 501C and/or 501D may or may not share the same architecture as computer system 501A, and may be located in different physical locations, e.g., computer systems 501A and 501B may be located in a processing facility, while in communication with one or more computer systems such as 501C and/or 501D that are located in one or more data centers, and/or located in varying countries on different continents).
- a processor may include a microprocessor, microcontroller, processor module or subsystem, programmable integrated circuit, programmable gate array, or another control or computing device.
- the storage media 506 may be implemented as one or more computer-readable or machine-readable storage media. Note that while in the example embodiment of Figure 5 storage media 506 is depicted as within computer system 501A, in some embodiments, storage media 506 may be distributed within and/or across multiple internal and/or external enclosures of computing system 501 A and/or additional computing systems.
- Storage media 506 may include one or more different forms of memory including semiconductor memory devices such as dynamic or static random access memories (DRAMs or SRAMs), erasable and programmable read-only memories (EPROMs), electrically erasable and programmable read-only memories (EEPROMs) and flash memories, magnetic disks such as fixed, floppy and removable disks, other magnetic media including tape, optical media such as compact disks (CDs) or digital video disks (DVDs), BLURAY ® disks, or other types of optical storage, or other types of storage devices.
- semiconductor memory devices such as dynamic or static random access memories (DRAMs or SRAMs), erasable and programmable read-only memories (EPROMs), electrically erasable and programmable read-only memories (EEPROMs) and flash memories
- magnetic disks such as fixed, floppy and removable disks, other magnetic media including tape
- optical media such as compact disks (CDs) or digital video disks (DVDs)
- DVDs digital video disks
- Such computer-readable or machine-readable storage medium or media is (are) considered to be part of an article (or article of manufacture).
- An article or article of manufacture may refer to any manufactured single component or multiple components.
- the storage medium or media may be located either in the machine running the machine-readable instructions, or located at a remote site from which machine-readable instructions may be downloaded over a network for execution.
- computing system 500 contains timestep length adjustment module(s) 508 for adjusting timestep lengths, parameters, parameter selection rates, iteration targets, etc.
- computer system 501A includes the timestep length adjustment module 508.
- a single timestep length adjustment module may be used to perform aspects of one or more embodiments of the methods disclosed herein.
- a plurality of timestep length adjustment modules may be used to perform aspects of methods disclosed herein.
- computing system 500 is one example of a computing system, and that computing system 500 may have more or fewer components than shown, may combine additional components not depicted in the example embodiment of Figure 5, and/or computing system 500 may have a different configuration or arrangement of the components depicted in Figure 5.
- the various components shown in Figure 5 may be implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing and/or application specific integrated circuits.
- 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.
- ASICs general purpose processors or application specific chips, such as ASICs, FPGAs, PLDs, or other appropriate devices.
- Geologic interpretations, models, and/or other interpretation aids may be refined in an iterative fashion; this concept is applicable to the methods discussed herein. This may include use of feedback loops executed on an algorithmic basis, such as at a computing device (e.g., computing system 500, Figure 5), and/or through manual control by a user who may make determinations regarding whether a given step, action, template, model, or set of curves has become sufficiently accurate for the evaluation of the subsurface three-dimensional geologic formation under consideration.
- a computing device e.g., computing system 500, Figure 5
Landscapes
- Life Sciences & Earth Sciences (AREA)
- Engineering & Computer Science (AREA)
- Geology (AREA)
- Mining & Mineral Resources (AREA)
- Physics & Mathematics (AREA)
- Environmental & Geological Engineering (AREA)
- Fluid Mechanics (AREA)
- General Life Sciences & Earth Sciences (AREA)
- Geochemistry & Mineralogy (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
La présente invention concerne des systèmes et des procédés permettant de mettre en œuvre une simulation de réservoir par obtention de mesures de réservoir initiales et par mise en œuvre d'une simulation de réservoir dans de multiples intervalles de temps à l'aide desdites mesures de réservoir. Les intervalles de temps utilisés peuvent être réalisés par obtention, au niveau d'un début de l'intervalle de temps, de mesures de réservoir, d'une longueur d'intervalle de temps, d'un taux de sélection de paramètres, et d'une cible d'itération, par mise en œuvre de la simulation de réservoir pour l'intervalle de temps en vue de déterminer des mesures de réservoir projetées au niveau d'une fin de l'intervalle de temps, par détermination de l'opportunité d'ajuster le taux de sélection de paramètres sur la base d'une différence entre une quantité d'itérations utilisée pour déterminer les mesures de réservoir projetées et la cible d'itération, par détermination de l'opportunité d'ajuster la longueur de temps d'intervalle sur la base des paramètres de sélection de longueur de temps d'intervalle, et par ajustement des paramètres de sélection de longueur d'intervalle de temps sur la base du taux de sélection de paramètres et de la différence entre la quantité d'itérations et la cible d'itération. La simulation de réservoir peut permettre de produire des mesures de réservoir projetées.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562102159P | 2015-01-12 | 2015-01-12 | |
US62/102,159 | 2015-01-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016115004A1 true WO2016115004A1 (fr) | 2016-07-21 |
Family
ID=56406248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2016/012790 WO2016115004A1 (fr) | 2015-01-12 | 2016-01-11 | Ajustement automatique d'intervalles de temps pour une simulation de réservoir |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2016115004A1 (fr) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023098482A1 (fr) * | 2021-11-30 | 2023-06-08 | 北京灵汐科技有限公司 | Procédé et appareil de traitement d'événements, dispositif électronique et support lisible par ordinateur |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100305866A1 (en) * | 2009-06-01 | 2010-12-02 | Schlumberger Technology Corporation | Estimating fluid flow in a reservoir |
US20110077922A1 (en) * | 2006-09-22 | 2011-03-31 | Schlumberger Technology Corporaton | System and method for performing oilfield simulation operations |
US20120143577A1 (en) * | 2010-12-02 | 2012-06-07 | Matthew Szyndel | Prioritizing well drilling propositions |
US8401832B2 (en) * | 2002-11-23 | 2013-03-19 | Schlumberger Technology Corporation | Method and system for integrated reservoir and surface facility networks simulations |
US20130338985A1 (en) * | 2010-11-30 | 2013-12-19 | Landmark Graphics Corporation | Systems and Methods for Reducing Reservoir Simulator Model Run Time |
-
2016
- 2016-01-11 WO PCT/US2016/012790 patent/WO2016115004A1/fr active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8401832B2 (en) * | 2002-11-23 | 2013-03-19 | Schlumberger Technology Corporation | Method and system for integrated reservoir and surface facility networks simulations |
US20110077922A1 (en) * | 2006-09-22 | 2011-03-31 | Schlumberger Technology Corporaton | System and method for performing oilfield simulation operations |
US20100305866A1 (en) * | 2009-06-01 | 2010-12-02 | Schlumberger Technology Corporation | Estimating fluid flow in a reservoir |
US20130338985A1 (en) * | 2010-11-30 | 2013-12-19 | Landmark Graphics Corporation | Systems and Methods for Reducing Reservoir Simulator Model Run Time |
US20120143577A1 (en) * | 2010-12-02 | 2012-06-07 | Matthew Szyndel | Prioritizing well drilling propositions |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023098482A1 (fr) * | 2021-11-30 | 2023-06-08 | 北京灵汐科技有限公司 | Procédé et appareil de traitement d'événements, dispositif électronique et support lisible par ordinateur |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11371333B2 (en) | Visualizations of reservoir simulations with fracture networks | |
EP3347567B1 (fr) | Mise à jour automatique de modèles de production de puits | |
US11294095B2 (en) | Reservoir simulations with fracture networks | |
US20210248500A1 (en) | Hybrid modeling process for forecasting physical system parameters | |
US11402540B2 (en) | Coupled reservoir-geomechanical models using compaction tables | |
WO2016164507A1 (fr) | Modélisation de la saturation et de la perméabilité d'un réservoir de champ pétrolifère | |
WO2016196421A1 (fr) | Modélisation de la saturation et de la perméabilité d'un réservoir de champ pétrolifère | |
EP3338115A1 (fr) | Simulations de réservoir incluant des réseaux de fracture | |
EP2975438B1 (fr) | Procédé multi-échelle pour des modèles de réservoir | |
CA3150928A1 (fr) | Analyse de puits de limite utilisant une similarite de trajectoire de puits | |
US11209572B2 (en) | Meshless and mesh-based technique for modeling subterranean volumes | |
WO2017206157A1 (fr) | Systèmes, procédés et supports lisibles par ordinateur permettant une simulation améliorée de dynamique de forage | |
US20200333505A1 (en) | Pore Pressure Prediction | |
WO2016115004A1 (fr) | Ajustement automatique d'intervalles de temps pour une simulation de réservoir | |
EP4069939A1 (fr) | Système et procédé de prédiction de saccades | |
US11795793B2 (en) | Drilling measurement valuation | |
US20220236447A1 (en) | System and Method for Reducing Uncertainties in Thermal Histories | |
WO2022067320A1 (fr) | Étalonnage d'apprentissage machine pour modélisation de système pétrolier | |
WO2022104324A1 (fr) | Système et procédé de décision de forage à agents multiples | |
WO2016089835A1 (fr) | Dégroupement spatial de données de champ pétrolifère utilisant une estimation de densité de noyau |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16737656 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 16737656 Country of ref document: EP Kind code of ref document: A1 |