📄 spike.m
字号:
function spike
taum=10; %时间常数
taur=15; %相对不应期时间常数
T=0.1; %每一步长为0.1ms
alpha=3.07; %alpha常数
ei=0.88; %兴奋性和抑制性神经元的概率:88%和12%
time=5000; %给定时间段5000ms
time=time./T;taum=taum./T;taur=taur./T; %换算步长
psc=ones(1,900);rp=ones(1,900);h=1;
for t=0:0.1:89.9
psc(h) =0.15*t.*exp(-1*alpha*t);rp(h)=1-exp(-t*10/taur);h=h+1;
end %计算psc和相对不应期变化系数
ep=time/10000.*2*150000*ei; %兴奋性神经元的个数
ip=time/10000.*12*150000*(1-ei); %抑制性神经元的个数
v=zeros(1,(time+1800)); %生成一个V数组
loc= fix(rand(1,fix(ip))*time); %随机生成ip个数
for j=1:ip
for k=1:900
v(loc(j)+k)=v(loc(j)+k)-psc(k);
end
end %对神经元加抑制性spike
loc= fix(rand(1,fix(ep))*time); %随机生成ep个数
for j=1:ip
for k=1:900
v(loc(j)+k)=v(loc(j)+k)+psc(k);
end
end %对神经元加兴奋性spike
v(1)=0;i=2;
while i < time
v(i)=v(i-1).*exp(-1/taum)+v(i); %使用预先计算的PSP,线性叠加,以降低运算成本
if v(i)>=15 %达到发放条件
v(i:(i+9))=0;v(i:(i+899))=v(i:(i+899)).*rp;
v(i)=70;
i=i+10;
else
i=i+1;
end
end
%for n=0:time-1
plot(v(1:time));
%hold on;
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -