7.3.2. In-Situ Adaptive Tabulation (ISAT)

ISAT is Ansys Fluent’s most powerful tool to accelerate detailed stiff chemistry. A speedup of two to three orders of magnitude is common, which is significant in that a simulation that would take months without ISAT can be run in days instead.

For kinetic mechanisms that are deterministic, the final reacted state is a unique function of the initial unreacted state and the time step. This reaction mapping can, in theory, be performed once and tabulated. The table can then be interpolated with run-time speedup as long as interpolation is more efficient than chemistry integration. In practice, pre-tabulation is prohibitive since the table dimensions are too large: the number of species (N), plus the temperature, pressure, and time step. However, in a reacting flow, only a very small sub-space of the full composition space is accessed. For example, it is unlikely that a state consisting of pure radical OH (mass fraction of one) at a temperature of 300 K will exist, and it is unnecessary to pre-tabulate this state. The chemistry is said to lie on a low-dimensional manifold. In fact, for steady-state, 3D, laminar simulations, the chemistry can be parameterized by the spatial position vector. Thus, mappings must lie on a three dimensional manifold within the N+3 dimensional composition space. It is, hence, sufficient to tabulate only this accessed region of the composition space. The accessed region, however, depends on the particular chemical mechanism, the thermodynamic and transport properties, the flow geometry, and the boundary conditions. For this reason, the accessed region is not known before the simulation and the table cannot be preprocessed. Instead, the table must be built during the simulation, and this is referred to as in-situ tabulation. Ansys Fluent employs ISAT [526] to dynamically tabulate the chemistry mappings and accelerate the time to solution. ISAT is a method to tabulate the accessed composition space region “on the fly” (in-situ) with error control (adaptive tabulation). It is important to understand how ISAT works in order to use it optimally.

Reaction over a time step from an initial composition to a final composition is calculated as:

(7–169)

where is the chemical source term.

At the start of an Ansys Fluent simulation using ISAT, the ISAT table is empty. For the first reaction step, Equation 7–169 is integrated with a stiff ODE solver. This is called Direct Integration (DI). The first table entry is created and consists of:

  • the initial composition (where the superscript 0 denotes the composition vector before the reaction)

  • the mapping (where the superscript 1 denotes the composition vector after the reaction)

  • the mapping gradient matrix

  • a hyper-ellipsoid of accuracy

The next reaction mapping is calculated as follows: The initial composition vector for this state is denoted by , where the subscript denotes a query. The existing table (consisting of one entry at this stage) is queried by interpolating the new mapping as

(7–170)

The mapping gradient is hence used to linearly interpolate the table when queried. The ellipsoid of accuracy (EOA) is the elliptical space around the table point where the linear approximation to the mapping is accurate to the specified tolerance, .

If the query point is within the EOA, then the linear interpolation by Equation 7–170 is sufficiently accurate, and the mapping is retrieved. Otherwise, a direct integration (DI) is performed and the mapping error is calculated (here, is a scaling matrix). If this error is smaller than the specified error tolerance (), then the original interpolation is accurate and the EOA is grown so as to include . If not, and if the table size is smaller than the user-specified maximum RAM (Max. Storage), a new table entry is added.

Table entries are stored as leaves in a binary tree. When a new table entry is added, the original leaf becomes a node with two leaves—the original leaf and the new entry. A cutting hyper-plane is created at the new node, so that the two leaves are on either side of this cutting plane. A composition vector will hence lie on either side of this hyper-plane.

The ISAT algorithm is summarized as follows:

  1. The ISAT table is queried for every composition vector during the reaction step.

  2. For each query the table is traversed to identify a leaf whose composition is close to .

  3. If the query composition lies within the EOA of the leaf, then the mapping is retrieved using interpolation by Equation 7–170. Otherwise, Direct Integration (DI) is performed and the error between the DI and the linear interpolation is measured.

  4. If the error is less than the tolerance, then the ellipsoid of accuracy is grown and the DI result is returned. Otherwise, a new table entry is added.

At the start of the simulation, most operations are adds and grows. Later, as more of the composition space is tabulated, retrieves become frequent. Since adds and grows are very slow whereas retrieves are relatively quick, initial Ansys Fluent iterations are slow but accelerate as the table is built.

There are two inputs to ISAT, namely the ISAT error tolerance () and the maximum ISAT table size (in Mbytes). Large values of provide faster run times, but larger error. For steady-state simulations, it is advised to start the simulation with a large and reduce as the solution stabilizes and nears convergence. For this reason, the default ISAT error tolerance of 0.001 is relatively large and should be decreased for unsteady simulations or when a steady-state simulation converges. It is recommended that you monitor the species of interest and re-converge with reduced until these species change in acceptably small increments. The maximum ISAT table size should be set to just below the available RAM memory on the computer.