A typical 2D lookup table may look like this:
Code: Select all
double const aeroLookup6_x[] = { 0.0, 0.2, 0.4, 0.6, 0.8, 0.95 };
double const aeroLookup6_y[] = { 2, 10 };
double const aeroLookup6_s[] = {
1.0, 1.005, 1.01, 1.02, 1.035, 1.06,
1.0, 1.015, 1.06, 1.145, 1.325, 1.64
};
Lookup2D const aeroLookup6 = { // @0072F228
6, 2,
aeroLookup6_x, aeroLookup6_y,
aeroLookup6_s
};
The first array defines the samples on the X axis; the other the samples on the Y axis. The third array is the actual 6×2 values at the sample positions.
In this specific example, the X axis may be the Mach Number and Y may be Angle of Attack or something else.
What I’m trying to say: If you look at the values, they are
very regular and you’ll find numbers like
0.2,
0.4, … more often than usual. I will just search for the double-precision floating-point values of
0.2,
0.4,
0.5 and if there are more than three hits in a specific place of the executable, I’ll most likely have found the tables.