Я пытаюсь использовать код из этого вопроса SO (https://stackoverflow.com/a/13849249), чтобы вычислить угол между двумя векторами. Однако я не могу получить угол для печати / показа
Я пробовал печатать (angle_between) как из отступа, так и без отступа. Я также попытался вернуть (angle_between) из отступа и без отступа позиции. Я, однако, не включил то, что я, хотя, было только объяснением для кода.
import numpy as np
def unit_vector(vector):
np.linalg.norm(vector)
def angle_between(p_Sun, p_Titan):
v1_u = unit_vector(p_Sun)
v2_u = unit_vector(p_Titan)
return np.arccos(np.clip(np.dot(v1_u, v2_u), -1.0, 1.0))
print(angle_between(p_Sun, p_Titan))
Я ожидаю, что он напечатает угол в радианах, однако вместо этого я получаю ошибку.
"TypeError: unsupported operand type(s) for *: 'NoneType' and 'NoneType'"
Когда я вычисляю угол другим способом (из того же поста просто другой комментарий, https://stackoverflow.com/a/2827475), я могу использовать print() function
и получить угол. Однако мне этот метод не нравится, так как не удается для некоторых пар векторов.