Мало того что

неизвестно откуда, арктангенс тоже не безгрешен. Лучше попытаться обойтись без него:

и по желанию дополнительные ограничения.
В CS вот вообще используют

двух аргументов, определённый аккуратно так, чтобы диапазон его значений был равен

и был собственно полярным углом точки с переданными координатами;

— но с выражениями с такой функцией вряд ли удобно работать(?)