神経モデルの発火を試しにpythonで描画したく,以下のような関数を定義し,さらに引数を具体的に与えて動作を確認しようとしました.
すると,以下のような指示(エラー)をもらいました.
[エラーコード]
/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:4: RuntimeWarning: invalid value encountered in log after removing the cwd from sys.path. --------------------------------------------------------------------------- IndexError Traceback (most recent call last) <ipython-input-7-01559d672cf5> in <module>() 5 6 ----> 7 trial1 = leaky_int(I_0, t_array, tau, v_th) 8 plt.plot(t_array, trial1) 9 plt.xlabel('Time') <ipython-input-6-22594fce75bd> in leaky_int(I_0, t_array, tau, v_th) 10 if v >= v_th: 11 a = a + c ---> 12 v_array[t] = v 13 return v_array IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices
また,もともとのソースコードは以下になります.
[ソース]
import numpy as np import matplotlib.pyplot as plt # Leaky Integrator def leaky_int(I_0, t_array, tau,v_th): T = tau*np.log((tau*I_0)/tau*I_0-v_th) v_array = 0*t_array a = 0 for t in t_array: c = t - a v = (tau*I_0*(1-np.exp(-c/tau))) if v >= v_th: a = a + c v_array[t] = v return v_array I_0 = 0.13 #V t_array = np.linspace(0,0.1, 10000) tau = 0.0083 #s v_th = 1 #V trial1 = leaky_int(I_0, t_array, tau, v_th) plt.plot(t_array, trial1) plt.xlabel('Time') plt.ylabel('Voltage') #check T T = tau*np.log((tau*I_0)/tau*I_0-v_th) print(T)
どうぞよろしくお願いいたします.
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/06 05:08
2020/11/06 05:10