⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 spike.m

📁 神经元信息传递的同步发放链matlab程序。此程序可以用来计算当神经元个数达到多少时
💻 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 + -