Как можно оптимизировать?
Это узкое место в вашей программе? Что-то не верится. Оптимизация не нужна.
Оптимизация не нужна, т.к. деление чисел с плавающей точкой на 2 - это всего лишь уменьшение мантиссы на 1.