Always use double, not float, for real type