Izhikevich神经元的MATLAB实现

在神经元模型中,Izhikevich模型相较于HH模型和IF模型,具有准确度高(相比IF),计算简单(相比HH)等优点,其数学表达式如下:

v‘ =0.04v^2 + 5v + 140 - u + I
u’ =a(bv - u)

if v > 30 mV;
then
v=c
u=u + d:
现在网络上和各大论坛所有的大部分都是多神经元模型,有关于单个神经元模型的代码很少,这不利于我们对于其特性的探索。
因此,我将附上Izhikevich的单神经元matlab代码
具体代码如下:

a=0.02;
b=0.2;
r=rand(1);
c=-50+15*r^2;
d=8-6*r^2;
V=-65;
u=b*V;
VV=[];
uu=[];
tau=0.25;
tspan=200:tau:1000;
T1=30;
for t=tspan
 if(t>T1)
  I=10+(0.015*(t-T1));
 else
  I=10;
 end
 V=V+tau*(0.04*V^2+5*V+140-u+I);
 u=u+tau*a*(b*V-u)
 if V>30
  VV(end+1)=30;
  V=c;
  u=u+d;
 else
  VV(end+1)=V;
    end
    
    
end
plot(tspan,VV);
set(gca,'FontSize',25);
xlabel('Time/ms','FontSize',25);ylabel('Time/ms','FontSize',25);


你可能感兴趣的:(Izhikevich神经元,matlab)