Прошу прощения, если это очень глупый вопрос. Я пытаюсь моделировать нейрон в шумной сети с использованием Python, и я надеюсь вычислить время между нейронами (например, интервал между интервалами). Соответствующая часть моего кода является следующий (постдки помогла мне код этого):Печать определенных значений из массива после интеграции ODE
def dALLdt(X, t):
V, m, h, n = X
dVdt = (I_app(t)+I_syn(spks,t)-I_Na(V, m, h) - I_K(V, n) - I_L(V))/C_m
dmdt = alpha_m(V)*(1.0-m) - beta_m(V)*m
dhdt = alpha_h(V)*(1.0-h) - beta_h(V)*h
dndt = alpha_n(V)*(1.0-n) - beta_n(V)*n
return np.array([dVdt, dmdt, dhdt, dndt])
X = [ic]
for i in t[1:]:
dx = dALLdt(X[-1],i)
x = X[-1]+dt*(dx)
X.append(x)
X = np.array(X)
V = X[:,0]
m = X[:,1]
h = X[:,2]
n = X[:,3]
Когда я создал фигуру из этого, используя стандартный «plt.plot (т, V,„к“)», Я создаю следующее изображение:
то, что я хотел бы сделать, и, казалось бы, не могу понять, как это сделать, это выяснить, значение т, когда нейрон спайки (конечно, сам шип имеет ширину, поэтому, насколько я согласен в том, как я ее измеряю, эта ширина не имеет большого значения). Для согласованности я хотел бы сказать, что нейронные шипы, когда V находится на пике. Моя мысль о том, как это сделать, состоит в основном в том, чтобы сказать, что когда V достигает определенного значения (например, 30), пусть python напечатает время, когда это произойдет (так как это произойдет дважды за шип, когда-то на пути вверх и один раз в пути вниз, то я могу просто усреднить два, чтобы получить приблизительное время всплеска). Проблема в том, что я понятия не имею, как на самом деле говорить Python, чтобы печатать все время, когда V выше 30 и не смог найти какой-либо пример кода, который это делает. Кто-нибудь может помочь с этим? Спасибо! :)
О, это фантастика, спасибо! Я провел с ним образец моделирования, и когда я напечатал idx, он напечатал: «[23012 23013 23014 ..., 178172 178173 178174]», который соответствует сюжету. Мне любопытно, как вы видите значения, где есть ...? – Brenton
t [idx]: Время V [idx]: Значение – Hun
Просто попробовал, но я получаю «[23.012 23.013 23.014 ..., 178.172 178.173 178.174]», что приятно, потому что он говорит мне время, но он не учитывает ряд значений между «...», которые я хочу знать. – Brenton