In [18]:
import sys
sys.path.insert(0, '..')
import time
import matplotlib.pyplot as plt
%matplotlib inline
import numpy as np
from Configuration import Configuration
from InterneuronPool import InterneuronPool
from SynapsesFactory import SynapsesFactory
In [19]:
conf = Configuration('confInjectedCurrentRenshawCellPool.rmto')
conf.simDuration_ms = 100 # Here I change simulation duration without changing the Configuration file.
In [20]:
# Time vector for the simulation
t = np.arange(0.0, conf.simDuration_ms, conf.timeStep_ms)
membPotential = np.zeros_like(t, dtype = 'd')
In [21]:
pools = dict()
pools[0] = InterneuronPool(conf, 'RC', 'ext')
Syn = SynapsesFactory(conf, pools)
In [22]:
# The simulation itself
tic = time.time()
for i in xrange(0,len(t)-1):
# Here you can change the injected current in the Resnhaw cell during the simulation
for j in xrange(len(pools[0].unit)):
pools[0].iInjected[j] = 5
pools[1].atualizePool(t[i])
pools[0].atualizeInterneuronPool(t[i])
membPotential[i] = pools[0].unit[175].v_mV # This command records the membrane potential of the RC with index 175.
toc = time.time()
print str(toc - tic) + ' seconds'
In [23]:
pools[0].listSpikes()
plt.plot(pools[0].poolSomaSpikes[:, 0],
pools[0].poolSomaSpikes[:, 1]+1, '.')
plt.xlabel('t (ms)')
plt.ylabel('RC index')
plt.show()
In [24]:
pools[1].listSpikes()
plt.plot(pools[1].poolTerminalSpikes[:, 0],
pools[1].poolTerminalSpikes[:, 1]+1, '.')
plt.xlabel('t (ms)')
plt.ylabel('RC noise index')
plt.show()
In [25]:
plt.figure()
plt.plot(t, membPotential, '-')
plt.xlabel('t (ms)')
plt.ylabel('Soma potential (mV)')
plt.show()
In [ ]:
In [ ]: