Примеры¶
Задача 1¶
Посчитаем расстояние от центра (0, 0) до какойто точки (0, 2)
point = array([0, 2])
center = array([0, 0])
distance = point - center
# array([0, 2])
einsum('i,i', distance, distance)
# 4
Задача 2¶
Посчитаем квадраты рсстояний до точек
points = array([[0, 2], [0, 4], [2, 2], [4, 4]])
center = array([0, 0])
diffs = points - center
# array([[0, 2], [0, 4], [2, 2], [4, 4]])
diffs.shape
# (4, 2)
einsum('...i,...i', diffs, diffs)
# array([4, 16, 8, 32])
einsum('ij,ij->i', diffs, diffs)
# array([4, 16, 8, 32])