Reservoir Grid Skeleton Computation Under Memory Constraints

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for computing skeletons of large reservoir grids face memory constraints, making them difficult to apply when dealing with very large reservoirs or high-resolution micro computed tomography images.

Innovation Solution

A method that splits the reservoir grid into multiple blocks and performs front-propagation and back-propagation within a limited block distance to reduce memory requirements, allowing for efficient computation of skeletons.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the whole reservoir grid is stored in RAM for skeleton computation, then the skeleton can be computed with complete data access, but the memory constraints make it difficult to apply to very large reservoir grids

Engineering Contradiction:
Improveskeleton computation accuracyVSAvoidmemory footprint
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The reservoir grid is divided into multiple blocks, where each block contains a subset of cells. The skeleton computation is performed block-by-block, processing only the current block and its neighbors in RAM at any given time. This segmentation allows large reservoir grids to be analyzed without requiring the entire grid to be loaded into memory, thus resolving the contradiction between computation accuracy and memory footprint.

Inventive Principle:
Principle #1Segmentation

2Productivity

If skeleton computation is performed on the entire reservoir grid at once, then the computation can be completed in a single pass, but the processing time becomes excessively long for very large grids

Engineering Contradiction:
Improvecomputation speedVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The computation is segmented into multiple passes, each handling a specific block of the reservoir grid. While this requires multiple passes compared to a single-pass approach, each pass processes a much smaller subset of data, reducing the computational burden per pass. The overall processing time is reduced because the smaller block-sized computations can be executed more efficiently and potentially parallelized, resolving the contradiction between productivity and processing time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Before performing the full skeleton computation, the method performs a preliminary front-propagation pass to identify downstream blocks and establish computation dependencies. This preliminary action allows the main computation to proceed efficiently by pre-organizing the block processing order and minimizing redundant calculations, thus improving overall computation speed despite the multi-pass approach.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250355132A1Method and system for analyzing a reservoir geological formation by skeleton computation on a large reservoir grid
Publication Date: 2025.11.20 TOTALENERGIES ONETECH
  • US20250355132A1 patent drawing
  • US20250355132A1 patent drawing

AI summary

A computer implemented method for analyzing a reservoir geological formation uses a reservoir grid corresponding to a 3D grid of cells wherein each cell represents a respective portion of the reservoir geological formation. The method includes determining a skeleton of the reservoir grid and analyzing the reservoir geological formation based on the skeleton. The skeleton is determined by front-propagating from an initial seed cell to determine front propagation paths in the reservoir grid, by determining flux values for cells of the reservoir grid by back-propagating along the front propagation paths, and by filtering the flux values. The method further includes splitting the reservoir grid into NB≥3 blocks, and back-propagating along the front propagation paths, up to any processed block, only from downstream blocks which are within a block distance DB≤NB−2 from the processed block.