In this section, we present a brief description of tNavigator simulation engine.
Equations of fluid flow in porous media. Molar densities and pressure are set to the state variables that allow a general compositional model formulation, where the black oil model is a special case.
The model takes into account the following physical aspects:
- Darcy’s law for fluid flow;
- networks and gas gathering systems
- PVT\EOS, hysteresis;
- dual porosity, dual permeability;
- streamline, aquifers, tracers;
- vertical, horizontal, multisegment wells, drilling queue;
- coal bed methane model (CBM);
- molecular diffusion, adsorption, desorption;
- enhanced oil recovery (surfactants, polymers, alkaline, foam, CO2 injection);
- steam injection, Steam Assisted Gravity Drainage technology (SAGD);
- and other.
The following aspects are supported:
- block-centered geometry, corner-point geometry, grid specification via blocks tops;
- unstructured grids;
- local grid refinement and coarsening;
- non-neighbor connections, faults, pinchouts;
- multireservoir option;
- reservoir coupling, master-slave;
- sector modeling (automatic split and merge, boundary conditions).
The following schemes are available to solve systems of differential equations: fully implicit time scheme or AIM (adaptive implicit).
Finite-volume method with finite-difference approximation of the differential operators is utilized. It assumes upstream approximation.
Non-linear system of equations.
We use the Newton method with full Jacobian with analytic derivatives for solving the non-linear system of equations.
Linear systems with Jacobian and matrix operations.
We use BCGS (BiConjugate Gradient Stabilized) algorithm to solve the system of linear equations. This is a novel method that gets automatically adjusted to the problem at hand. We employ ILU(0) as a preconditioner for the linear system solver. This method is a variation of LU-dcomposition that is designed specially for the tNavigator package.
When solving a linear system with Jacobian one has to store both the sparse matrix and the preconditioner. tNavigator contains a block-oriented modification of the widely used MSR (Modified Sparse Row) method yielding improvement both in memory volume and speed.
Interactive operations and data handling in tNavigator. In order to optimize hard disk operations during the simulation runs, tNavigator treats only state variables of the model. Since the simulation core and the visualizer are in fact one application, the rest of the information can be immediately recovered by the user request. This approach allows operations with the model during the run and quick visualization with no time spent on writing and reading data from the disk.