6.3 From 3D geological grids to 3D flow simulation grids
Transferring information from the 3D geological grid into the 3D flow simulation grid is a two-step process. Firstly, the simulation grid is created. Secondly, the properties modeled in the geological grid are transferred into the flow simulation grid.
A flow simulation grid might be as simple as an upscaled version of the geological grid; the same dimension and same mesh orientation, but larger cells. For example, a geological grid of 25m*25m (Figure 1A) is upscaled to a flow simulation grid of cell size 50m*50m (Figure 1B, green mesh is the mesh of the flow simulation grid). In many projects, the flow simulation grid has larger cells than the geological grid. It’s a way to limit the total number of cells, and so to limit the computation time. Because of this, engineers might ask why we build the geological 3D grid at a smaller scale if, ultimately, the grid will be upscaled to larger cells. Following the same approach than was developed in the end of the first part, the simplest is to explain that the physical phenomena we are modeling (facies, deposition, erosion…) require a high-resolution grid to be properly modeled; as shown by the average length of the facies along the input wells.
Knowing from the start of the project that the flow simulation grid will be simply an upscaled version of the geological grid has one benefit – it allows picking more appropriate dimensions for the area to model. Let’s imagine a project in which the geomodeler knows he will create a geological grid of cell size 50m*50m. Let’s assume the area to model is a square of 10,550m by 10,550m. This dimension can be split into 211 cells of exactly 50m. It works. But let’s imagine now that the engineer explains, after months of geomodeling work, that he will need a simulation grid of cell size 100m. At this point, there is a problem – 10,500m can be split into 105 cells; 10,600m can be split into 106 cells; but 10,550m doesn’t work. It would give 105 cells and a half. Had the geomodeler known the engineer’s request from the start, he might have modeled a square of 10,600m instead of 10,550m.
Sometimes, the engineer knows he will use an upscaled version of the geological grid as flow simulation grid, but he doesn’t know yet the exact cell size he will need. In such a case, the geomodeler should, at least, pick a number of cells that is a multiple of 2, 3, 4 and even 5, if possible. It will give some flexibility to the engineer at a later point.
In the previous example, 10,600m is split into 212 cells of 50m. As we have seen, 212 can be divided by 2, giving a simulation grid of 100m. But 10,600m can’t be split into cells of 3*50m (150m, it gives 70 cells and 2/3 of a cell) nor into cells of 5*50m (250m, it gives 42.4 cells). It can be split into cells of 4*50m though (200m, it gives 53 cells). Not bad, but we can easily improve on it. Indeed, a square of 10,500m instead of 10,600m works well for each possible level of merge. If the 100m we remove were of no real importance, then it would make sense to decrease the modeled area slightly. At a negligible cost (losing 100m of modeled area), the geomodeler has now a grid that, very likely, will be good when the engineer decides what cell size he really needs.
The lateral extent of a model is never really well constrained. The modeled zone must at least cover the zone of interest to the team, but beyond that, it can be as large as needs be. For that reason, adjusting it based on the criteria discussed in the previous paragraph is often easy to do. Vertically though, the model is extremely well constrained by the geometry of the horizons delimiting the reservoir. We can’t really “add” anything to allow for a perfect match when the grid is upscaled for flow simulation.
The flow simulation grid can be more complex than being just an upscaled version of the geological grid. Occasionally, it is necessary to add some LGR (Local Grid Refinement, see Figure 2A). An LGR is a zone in which the reservoir engineer needs a resolution higher than that of the geological grid. A zone in a model of 50m*50m cell size might need to be split into cells of 1m by 1m. It is needed when the physical phenomena to be modeled in flow simulation is expected to change quickly over short distances. It is the case for the behavior of fluids around induced fractures for example. When this is needed, it is usually not just for one area. Often, multiple small zones will each need its LGR (for example to capture multiple zones of induced fractures along a multi-fracked horizontal well). If such small cells are needed, why not build the whole geological grid at this level of detail to start with? We could, but we would face two problems. Firstly, it would transform multi-million cell models into multi-billion cell models. Hardware and software might not be able to handle such large grids. Secondly, we have limited to no information on how the reservoir can change at a very fine scale. Even at a resolution of 50m*50m, a geological grid has a good deal of uncertainty in it; we don’t know precisely what the facies distribution between the wells should be. With this in mind, what trust could we have in facies and petrophysical 3D distributions in a geological grid of 1m*1m? Probably little to none. We might as well stick to a resolution (50m*50m) at which we feel comfortable defending our results rather to adventure ourselves to a level of details (1m*1m) at which we know nothing about. LGR are examples of flow simulation grids in which the properties are not upscaled but downscaled. This process is described at the end of this part.
At last, a flow simulation might be rotated compared to the orientation of the geological grid (Figure 3, left). If nothing really constrained the geological grid to be aligned North-South and East-West, while the simulation grid will need to be rotated, it is recommended to build the geological grid directly rotated. In so doing, we are back to the illustration of Figure 1. Such a situation happens, for example, in naturally fractured reservoirs in which the rotation will correspond to the average direction of general stress or to the average direction of the natural fractures.
It is also common that multiple flow simulation grids are generated from a unique geological grid (Figure 3, two flow simulation grids are represented). This is the case for reservoirs with multiple horizontal wells. A local simulation grid might be needed around each one.
Once the flow simulation grid(s) are created, the properties from the geological grid must be transferred into it (them). Two techniques are used. When the simulation grid has larger cells than the geological grid, property upscaling is used (Figure 4 and Figure 5); and secondly, when the simulation grid has smaller cells than the geological grid, property downscaling is used (Figure 6).
Let’s imagine a geological model of cell size 50m by 50m horizontally and 1m vertically. The engineer asks for a simulation grid of cell size 100m by 100m horizontally and 3m vertically. We have now a single large cell where there were 12 small ones before. Each small, original cell has its own values of porosity and water saturation. What values should be stored in the corresponding large cells of the simulation grid? These are the questions that property upscaling has to answer. Fundamentally, it is the same problem as upscaling well logs into the cells of the geological grid (chapter 4). We apply some mathematical averaging technique that will compute a value in the simulation grid which will respect the characteristics of the 12 original cells.
For porosity, the upscaled value must respect the cumulated porous volumes of the 12 original cells. Arithmetic average weighted by cell size is usually applied. Upscaling water saturation follows a similar approach. We upscale it by arithmetic average weighted porosity to ensure that the hydrocarbon porous volume of the upscaled cell is equal to the sum of the hydrocarbon porous volumes of the original 12 cells.
One question remains– should we worry about upscaling facies?
Two approaches are used. In the first one (Figure 4, method A), the facies property is being upscaled first, and then the upscaled facies guides the upscaling of the petrophysical properties. The approach is again equivalent to the one used to upscaled facies description from the well into the cells of the geological 3D grid. The upscaled facies is the preponderant one in the original cells. In Figure 4, the upscaled upper cell is the combination of 4 cells of sand and 2 of shale; the upscaled facies takes the value sand. In a similar way, the 2 cells of sand and 4 cells of shale below are replaced by a single cell of shale. For the porosity, upscaling is done by arithmetic average, as explained previously. Only the cells with the same facies than the upscaled one are used. For the upper upscaled cell, it means that the averaging is done using the porosity of the 4 original sand cells. Similarly, the porosity in the lower cell is the average of the porosity in the associated 4 original shale cells. The same filtering technique is applied to compute the average water saturation values. In the second approach (Figure 4, method B), the facies is ignored. The 6 original values of porosity and water saturation are used to compute the average values in each upscaled cell.
The two methods give some significantly different results in situation, such as the one described here where the original cells belong to two different facies. When filtering by the facies, the resulting upscaled porosity and water saturation are characteristic to what is expected for the respective upscaled facies. The upper upscaled cell is sand and its associated upscaled porosity is around 30%, which is coherent with the values of porosity found on the logs and modeled in the sand facies in the geological grid. The same can be said for the lower upscaled shale cell. On the contrary, with the second method in which facies is ignored, the upscaled values are average of original numbers associated with shale and sand. The upscale cells are not really a sand, nor a shale, anymore. It is an “average facies” of some sort.
Which method is best? It will depend of the reservoirs and the decision should be made by the whole team. The key underlying question is to know which of the two methods creates an upscaled grid which behaves similarly to what would have been observed if flow simulation was run on the original, not-upscaled, geological grid. If time and resources allow, it might good to run flow simulation in a portion of the geological grid (so that flow simulation runs fast). Simulation is done in the original geological grid and it is also run in the flow simulation grid with properties upscaled with the first method, and then with the second method. The method associated to the flow simulation grid behaving the closest to the original geological grid is the one to keep.
Property upscaling is also the time to validate the cell size for the flow simulation grid. We must ensure that the global geological characteristics stored in the geological grid are respected by the flow simulation grid.
For example, imagine an original geological grid showing a sandbar in the middle of a shale geological unit (Figure 5A). If we create a flow simulation grid with very large cells, the sandbar is split in two parts in the simulation grid (Figure 5B). The simulation grid is too coarse to respect the continuity of the sandbar. This would influence greatly the results of flow simulation. If a flow simulation grid with smaller cells is used (Figure 5C), the continuity is respected. This second simulation grid is more appropriate for this reservoir.
When asked about the cell size for the simulation grid, engineers often answer that they want a grid with as few cells as possible. The geomodeler should help his team to balance this constraint with another important one – the simulation grid must be detailed enough to respect the continuity of the geology of the reservoir.
Not every flow simulation grid is coarser than the geological grid. Sometimes, it is more refined and the properties must be transferred by downscaling instead of upscaling. Upscaling here means finding a single value to replace several original ones efficiently. Downscaling is the opposite – where the geological model is a single cell (50m*50m by 1m vertically for example), we now need values for multiple cells (for example, each of 10m*10m*1m). To do this, two approaches exist (Figure 6).
The first approach is probably the main one used in the industry and it is a very straightforward one. All the small cells of the simulation grid, which fall inside a large cell from the geological grid, are getting the value stored in that large cell. For example, with a sand-shale facies model (Figure 6A), the cells of the rotated flow simulation grid are assigned the facies sand if their center is falling in a sand cell of the original geological grid (Figure 6B, all the cells falling inside the black shape, delimiting the sand zone of the geological grid).
This approach causes one problem though. Imagine a 50m*50m cell of the original geological grid with a porosity value of 22.4%. Does it really mean that we have a block of rock in the ground of 50m by 50m with a homogenous porosity of 22.4%? If the next cell of the geological grid has a stored porosity value of 30%, does it mean that we have a block of 50m by 50m of 30% porosity in direct contact with the block of 50m by 50m of porosity 22.4%? Obviously not. We believe instead that the porosity is gradually changing from 22.4% to 30%. And yet, downscaling with the approach described in the previous paragraph means that we believe our reservoir to be really made of “homogeneous blocks”. Will the results of flow simulation in such a “blocky” simulation grid be close enough to what is really going to happen during production? If your team answers ‘no’ to this question, a second downscaling approach should be considered. It is a more time-consuming one, but it will allow seeing a different value inside each small cell of the flow simulation grid.
The second approach is based on one observation. When we use geostatistics to populate facies in the geological grid, we are not populating the volume of each cell with facies values. What geostatistical algorithms are really doing is computing a facies value at the XYZ point located at the center of each cell (Figure 6C). We don’t say anything about what should be the facies values in the remaining volume of the 50m by 50m cells.
This fact can be used to our advantage when doing property downscaling. The facies values from the geological grid are painted only in the cells of the flow simulation which contain the center of each original cell (Figure 6D). It leaves a lot of cells with no facies value assigned to them. In a second step, geostatistics are used to populate these cells, using each of the painted cells as a hard data. With this process, facies, and then petrophysical properties such as porosity and water saturation can be downscaled and still show variation from one small cell of the simulation grid to the next. It gives a more realistic tone to the model than the blocky aspect that the first downscaling approach creates.