Я программирую научное приложение на Python, и производительность моего алгоритма до сих пор ужасна.Я пытаюсь найти эффективный способ кодирования того, что я делаю.По сути, мне нужно умножить
def get_thing(self, chi, n):
return np.sum(self.an[n][j] * pow(chi, -j) for j in xrange(1, self.j))
, где self.an[i][j]
- это ранее сгенерированный массив.Тогда мне придется сделать это:
pot = np.sum(self.coeffs[n] * self.get_thing(chi, n) for n in xrange(0, self.n))
, где chi
изменяется и не может быть кэширован, так как это точка, которая генерируется вне этого класса.Конечно, это очень медленно и не очень ярко.Как я могу улучшить это?
Спасибо!