As of 6/2015, the formula for unit maintenance as defined in all versions CvGameCoreDLL is calculated as follows:
b = Base unit cost (INITIAL_GOLD_PER_UNIT_TIMES_100)
f = Free units from handicap (GoldFreeUnits), specific unit types, or policies
u = Total paid units
n = max(0, u-f) = Number of actual paid units (if u-f is less than 0 then n = 0)
m = Multiplier (UNIT_MAINTENANCE_GAME_MULTIPLIER)
d = Divisor (UNIT_MAINTENANCE_GAME_EXPONENT_DIVISOR)
t = Current turn
e = Estimated end turn (based on all entries for the current GameSpeed in GameSpeed_Turns)
g = t/e = Game progress factor
final cost = (nb(1+gm)/100)hoch(1+(g/d))