Aircraft speeds are in Mph, this was confirmed from Matrix sources.
Thus, the speeds are correct.
Oh boy ... can we spell "pandora's box" ??
I guess I'll fast forward to the open question here - which is - does anyone know whether the stock map is in nautical miles or in statute miles ? Unfortunately, it matters.
The game material says the map is in nautical miles. At the very least ship speeds are in knots. The game material says aircraft speeds are in knots.
Now on to the example ( I'll do this example from stock ):
F4f-3
Endurance: 330 minutes
Cruising Speed: 155 MPH
1. Convert endurance to hours: 330/60 = 5.5 hours
2. Calculate maximum range by multiplying endurance times cruising speed: 155*5.5 (miles/hour * hours ) = 852.5 miles
3. Round down to nearest multiple of 60: 852.5 ~ 840 miles
4. Divide by 60 to obtain maximum range in hexes: 840/60 = 14
5. Multiply by 1/3 to obtain Extended range in miles and hexes: 840*.33333 = 280 and 280/60 = 4
6. Multiply by 1/4 to obtain Normal range in miles and hexes: 840*.25 = 210 and 210/60 = 3
So we taken the game data elements, endurance and cruising speed and calculated the player visible values, of maximum, extended and normal range. All is well ?
Nope. We made an ERROR here !!!
Step 4 is invalid - why ?
Because we divided by 60 NAUTICAL miles. And what we divided into was 840 STATUTE miles. Of course saying step 4 is invalid assumes the map is in nautical miles. We don't know that for sure, but continuing with that assumption to show what happens if we correct the ERROR.
Redoing from step 3.
3' Concert 852.5 statute miles to nautical miles: 852.5 / 1.1508 = 740 n.m.
4' Round down to nearest multiple of 60: 720 n.m.
5' Divide by 60 n.m. to obtain maximum range: 720 / 60 = 12 hexes
6' Calculate extended range: 720 * .3333 = 240 n.m. and 240/60 = 4 hexes
7' Calculate normal range: 720 * .25 = 180 n.m. and 180/60 = 3 hexes
So making the correction, changes the maximum ( ferry or transfer ) range, but does not change the extended or normal range IN THIS CASE. However, in general these ranges might change as well. Hence as I said at the top. It matters, as to whether these values as supposed to be in statute miles or nautical miles.
So this is the first issue. Restated, cruising speed in the database is in MPH however, if the map hexes are 60 nautical miles across, then cruising speed cannot be in MPH but must be converted to knots. Otherwise the ranges calculated by the game are invalid. Fortunately, this is easy to correct in theory, because all we have to do is divide all the cruising speeds by 1.1508 and we are done.
The second issue is Maximum Speed. Above, Lemurs is saying Matrix told us that told us that "aircraft speeds are in MPH" and that is true, we can look at the speeds in stock scenario 15 and compare them to multiple aircraft references and see that they are either dead on or very close if we interpret them in MPH.
We've shown above that cruising speed may need to be changed to knots. So what about maximum speed. If maximum speed is never used in a calculation involving nautical miles ... but only in calculations involving MPH .. then in theory it can stay in MPH ... though it will certainly be confusing for those looking at the data. It would be "nice" if they were in the same units. But in theory that is not required.
A follow on question then will be - are the game calculations which use maximum speed all assuming that maximum speed is MPH ?