突触模拟
突触是指一个神经元的冲动传到另一个神经元或传到另一细胞间的相互接触的结构,突触具备权重,表示两个神经元之间的连接强度。代码示例如下,其完成的功能是前神经元不断接受电流刺激,然后产生脉冲影响后神经元。
代码实现如下:
from brian2 import *
import matplotlib.pyplot as plt
# Starts a new scope for magic functions
start_scope()
eqs = '''
dv/dt = (I-v)/tau : 1
I : 1
tau : second
'''
G = NeuronGroup(2, eqs, threshold='v>1', reset='v=0', method='exact')
# 两个神经元的初始电流值,时间常数值
G.I = [2, 0]
G.tau = [10, 100]*ms
# 建立突触,突触是两个神经元之间连接的枢纽,具有权重
# on_pre这句的含义是当前神经元发出脉冲尖峰时,后神经元膜电压增加0.2
S = Synapses(G, G, on_pre='v_post += 0.2')
# 建立连接, 前神经元0与后神经元1连接
S.connect(i=0, j=1)
M = StateMonitor(G, 'v', record=True)
# 仿真100ms
run(100*ms)
plot(M.t/ms, M.v[0], label='Neuron 0')
plot(M.t/ms, M.v[1], label='Neuron 1')
xlabel('Time (ms)')
ylabel('v')
legend()
plt.savefig(r'C:\Users\wzc\Documents\自学技术笔记\img\demo_synapse.png')
plt.show()
结果如下:

Brian2库还具备引入delay等功能,细节可见于官方文档。
该代码示例展示了如何使用Python的Brian2库模拟神经元之间的突触连接。通过定义神经元的动态方程,设置电流刺激和时间常数,以及创建具有权重的突触,模拟前神经元对后神经元的影响。突触在前神经元触发脉冲时调整后神经元的膜电位。结果以图形形式展示,显示了两个神经元的膜电位变化。
1589

被折叠的 条评论
为什么被折叠?



