работает экспоненциальный распад с добавлением? - PullRequest
0 голосов
/ 26 апреля 2020

Формула экспоненциального затухания:

 np.exp(-(t/n))

, где t - шаг по времени, а n - это коэффициент, определяющий скорость затухания. Мне нужна функция running , где я вычисляю значение на каждом шаге вручную, а также возможность добавлять значения во время затухания.

Как бы я это сделал?

Я также нашел другую формулу: (1-percent)^t


 def decay(val, rate): return val * np.exp(-rate)

In [84]: decay(1,1/10.)
Out[84]: 0.905

In [85]: decay(0.905,1/10.)
Out[85]: 0.819

In [86]: decay(0.819,1/10.)
Out[86]: 0.741

In [88]: np.exp(-1/10.)
Out[88]: 0.905

In [89]: np.exp(-2/10.)
Out[89]: 0.819

In [90]: np.exp(-3/10.)
Out[90]: 0.741

1 Ответ

0 голосов
/ 26 апреля 2020

Могу ли я предложить использовать массив для оценки на каждом временном шаге t ? Вам нужно будет отредактировать вашу функцию, включив в нее постоянную затухания n .

def decay(t, A, n):
    return A*np.exp(-t/n)

t = np.linspace(0, 10, 256)

initial = 1
rate = 10

value = decay(t, initial, rate)

значение будет тогда массивом для значения вашей затухающей функции на каждом т .

...