Ejemplo n.º 1
0
# Set the random set for reproducibility
seed = 31255433
np.random.seed(seed)

# Create indexes
signal_indexes, delay_indexes, stimuli_indexes = create_standar_indexes(
    dt, dt_kernel, dt_stimuli, kernel_size, Nt_simulation)
working_indexes, kernel_times = create_extra_indexes(kernel_size,
                                                     Nt_simulation)

# Initialize the signal array to be filled
firing_rate = np.zeros(Nt_simulation)

# Create the stimuli
stimuli = sine_grating(dx, lx, dy, ly, A, K, Phi, Theta, dt_stimuli, N_stimuli,
                       w)

# Chose the particular cell
xc = 0
yc = 0

# Create the kernel
kernel = create_kernel(dx,
                       lx,
                       dy,
                       ly,
                       sigma_surround,
                       sigma_center,
                       dt_kernel,
                       kernel_size,
                       inverse=1,
seed = 1053
np.random.seed(seed)

# Create indexes 
signal_indexes, delay_indexes, stimuli_indexes = create_standar_indexes(dt, dt_kernel, dt_stimuli, kernel_size, Nt_simulation)
working_indexes, kernel_times = create_extra_indexes(kernel_size, Nt_simulation)

# Initialize the signal array to be filled 
firing_rate_on1 = np.zeros(Nt_simulation)
firing_rate_off1 = np.zeros(Nt_simulation)

firing_rate_on2 = np.zeros(Nt_simulation)
firing_rate_off2 = np.zeros(Nt_simulation)

# Create the stimuli
stimuli1 = sine_grating(dx, lx, dy, ly, A1, K, Phi, Theta, dt_stimuli, N_stimuli, w)
stimuli2 = sine_grating(dx, lx, dy, ly, A2, K, Phi, Theta, dt_stimuli, N_stimuli, w)

# Chose the particular cell
xc = 0
yc = 0 

# Create the kernels
kernel_on = create_kernel(dx, lx, dy, ly, sigma_surround, sigma_center,
                          dt_kernel, kernel_size, inverse=1, x_tra=0, y_tra=0)
kernel_off = create_kernel(dx, lx, dy, ly, sigma_surround, sigma_center,
                           dt_kernel, kernel_size, inverse=-1, x_tra=0, y_tra=0)

# Calculate the firing rate through convolution

for index in signal_indexes:
# Space parameters 
dx = 0.05
dy = 0.05
lx = 5.0 # In degrees 
ly = 5.0 # In degrees

# sine grating spatial parameters 
K = 1.0 # cycles per degree 
Phi = 0 * np.pi
Theta = 0 * np.pi
A = 1.0
# Temporal frequency of sine grating 
w = 3 # Hz 

stimuli = sine_grating(dx, lx, dy, ly, A, K, Phi, Theta, dt_stimuli, N_stimuli, w)

Z = stimuli[0,...]

plt.imshow(Z, extent=[-lx/2,lx/2,ly/2,-ly/2])
plt.colorbar()
plt.show()

# x = np.arange(-lx/2,lx/2,dx)
# y = Z[0,:]
# plt.plot(x,y)
# plt.show()
# 
# t = np.arange(0, N_stimuli * dt_stimuli, dt_stimuli)
# y = stimuli[:,0,0]
# plt.plot(t,y)
Ejemplo n.º 4
0
# Create indexes
signal_indexes, delay_indexes, stimuli_indexes = create_standar_indexes(
    dt, dt_kernel, dt_stimuli, kernel_size, Nt_simulation)
working_indexes, kernel_times = create_extra_indexes(kernel_size,
                                                     Nt_simulation)

# Initialize the signal array to be filled
firing_rate_on1 = np.zeros(Nt_simulation)
firing_rate_off1 = np.zeros(Nt_simulation)

firing_rate_on2 = np.zeros(Nt_simulation)
firing_rate_off2 = np.zeros(Nt_simulation)

# Create the stimuli
stimuli1 = sine_grating(dx, lx, dy, ly, A1, K, Phi, Theta, dt_stimuli,
                        N_stimuli, w)
stimuli2 = sine_grating(dx, lx, dy, ly, A2, K, Phi, Theta, dt_stimuli,
                        N_stimuli, w)

# Chose the particular cell
xc = 0
yc = 0

# Create the kernels
kernel_on = create_kernel(dx,
                          lx,
                          dy,
                          ly,
                          sigma_surround,
                          sigma_center,
                          dt_kernel,