我有以下瓶頸,想知道是否有人可以建議加速它的方法。爲python循環加速求和
我有三個列表x,y,z
長度爲N
。我申請以下summation。
def abs_val_diff(x1, x2, x3, y1, y2, y3):
""" Find the absolute value of the difference between x and y """
return py.sqrt((x1 - y1) ** 2.0 + (x2 - y2) ** 2.0 + (x3 - y3) ** 2.0)
R = 0.1
sumV = 0.0
for i in xrange(N):
for j in xrange(i + 1, N):
if R > abs_val_diff(x[i], y[i], z[i],
x[j], y[j], z[j]):
sumV += 1.0
我一直在使用numpy的陣列試過,但無論是我做錯了什麼或有大約一個任何想法,將不勝感激的2.
因素的速度降低。
我沒有看到與Cython的關係。我刪除標籤... –
我曾考慮過使用Cython來加速計算。無論哪種方式都沒有關係。 – Greg