Human tactile FA1 neurons (Hay and Pruszynski 2020)

 Download zip file 
Help downloading and running models
"... we show that synaptic integration across the complex signals from the first-order neuronal population could underlie human ability to accurately (< 3°) and rapidly process the orientation of edges moving across the fingertip. We first derive spiking models of human first-order tactile neurons that fit and predict responses to moving edges with high accuracy. We then use the model neurons in simulating the peripheral neuronal population that innervates a fingertip. We train classifiers performing synaptic integration across the neuronal population activity, and show that synaptic integration across first-order neurons can process edge orientations with high acuity and speed. ... our models suggest that integration of fast-decaying (AMPA-like) synaptic inputs within short timescales is critical for discriminating fine orientations, whereas integration of slow-decaying (NMDA-like) synaptic inputs supports discrimination of coarser orientations and maintains robustness over longer timescales"
1 . Hay E, Pruszynski JA (2020) Orientation processing by synaptic integration across first-order tactile neurons. PLoS Comput Biol 16:e1008303 [PubMed]
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Neuron or other electrically excitable cell; Axon; Realistic Network;
Brain Region(s)/Organism: Human;
Cell Type(s):
Gap Junctions:
Receptor(s): AMPA; NMDA;
Simulation Environment: MATLAB;
Model Concept(s): Sensory coding; Synaptic Integration; Receptive field;
Search NeuronDB for information about:  AMPA; NMDA;
% Author: Etay Hay
% Orientation processing by synaptic integration across first-order tactile neurons (Hay and Pruszynski 2020)

function innervation = get_innervation(models)
	d_mr = models{1}.d_mr;
	mr_loc = models{1}.mr_loc;
	win_size = round(sqrt(size(mr_loc,1)));
	innervation = zeros(size(mr_loc));
	for i=1:size(mr_loc,1)
		for j=1:size(mr_loc,2)
			for k=1:length(models)
				for k2 = 1:size(models{k}.mr_subset,1)
					i1 = models{k}.mr_subset(k2,1);
					j1 = models{k}.mr_subset(k2,2);
					if ((i1 >= (i-win_size/2)) && (i1 <= (i + win_size/2))) && ((j1 >= (j-win_size/2)) && (j1 <= (j + win_size/2)))
						innervation(i,j) = innervation(i,j) + 1;