Нахождение подписанного угла между векторами

Как бы вы нашли подписанный угол тета от вектора а до б?

И да, я знаю, что theta = arccos ((a.b) / (| a || b |)).

Тем не менее, это не содержит знак (то есть он неt различать вращение по часовой стрелке или против часовой стрелки).

Мне нужно что-то, что может сказать мне минимальный угол поворота от а до б. Положительный знак указывает на поворот от оси + x к оси + y. И наоборот, отрицательный знак указывает на поворот от оси + x к оси -y.

assert angle((1,0),(0,1)) == pi/2.
assert angle((0,1),(1,0)) == -pi/2.

Ответы на вопрос(2)

Ваш ответ на вопрос