У меня есть следующий массив:
propensity = [32. 0. 0.]
Я вычислил сумму массива следующим образом:
a0 = sum(propensity)
Я пытаюсь вычислить дробь для каждого элемента массива над суммой массива и написал следующую функцию:
def prob_rxn_fires(propensity, a0):
for x in propensity:
print("propensity:\n", x)
prob = x/a0
print("Prob reaction fires:\n", prob)
return prob
Я хочу, чтобы функция возвращала три дроби для каждого элемента массива, в данный момент она возвращает только 0. Я думаю, это потому, что когда он перебирает массив и достигает оператора return, он возвращает только последнее вычисленное значение, равное 0/32 = 0,0. Мне нужно также вернуть первые 2 значения, но я не уверен, как это исправить?
Cheers