Epilepsy may be caused by very small functional changes in ion channels (Thomas et al. 2009)

 Download zip file 
Help downloading and running models
We used a previously published model of the dentate gyrus with varying degrees of mossy fibre sprouting.We preformed a sensitivity analysis where we systematically varied individual properties of ion channels. The results predict that genetic variations in the properties of sodium channels are likely to have the biggest impact on network excitability. Furthermore, these changes may be as small as 1mV, which is currently undetectable using standard experimental practices.
1 . Thomas EA, Reid CA, Berkovic SF, Petrou S (2009) Prediction by modeling that epilepsy may be caused by very small functional changes in ion channels. Arch Neurol 66:1225-32 [PubMed]
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Realistic Network;
Brain Region(s)/Organism:
Cell Type(s): Dentate gyrus granule cell; Dentate gyrus mossy cell; Dentate gyrus basket cell; Dentate gyrus hilar cell;
Channel(s): I A; I K; I K,leak; I Sodium; I Calcium;
Gap Junctions:
Receptor(s): GabaA; AMPA;
Transmitter(s): Gaba; Glutamate;
Simulation Environment: parplex;
Model Concept(s): Epilepsy;
Implementer(s): Thomas, Evan [evan at evan-thomas.net];
Search NeuronDB for information about:  Dentate gyrus granule cell; GabaA; AMPA; I A; I K; I K,leak; I Sodium; I Calcium; Gaba; Glutamate;
function raster(fn)
% RASTER(FN, N) make raster plot of (N randomly chosen) cells in the
% AP file FN

if nargin==1, numproc = 1; end

fd = fopen(fn);
ap = textscan(fd, '%n%n%q');

if isempty(ap)
	fprintf(1,'Empty input\n');
cells = unique(ap{1});
if nargin>=3
    indx = randperm(length(cells));
    indx = indx([1:N]);
    indx = 1:length(cells);

set(gcf,'Name','Spike Raster Plot', ...
    'NumberTitle','off', ...
    'toolbar', 'figure')

h = zeros(1,max(cells));
for i=1:length(indx)
    j = cells(indx(i));
    X = ap{2}(ap{1}==j);
    Y = j*ones(1,length(X));
	h(j+1) = line(X, Y, ...
		'marker', 'o', ...
		'linestyle', 'none', ...
		'markersize', 4, ...
		'markerfacecolor', 'black');
	xlabel('Time (s)')
	ylabel('cell number')
grid on

if length(ap)>=3 	  
	c = get(gcf, 'DefaultAxesColorOrder');
	maxc = size(c, 1);
	[cellnames cindx] = unique(ap{3});
	lstr = {};
	hf = [];
	for i=1:length(cindx)
		lstr{i} = cellnames{i};
		hf(i) = h(ap{1}(cindx(i))+1);
	indxx = find(hf~=0);
	legend(hf(indxx), lstr{indxx});
	for i=1:length(indxx)
		indzz = strcmp(ap{3},lstr{indxx(i)})==1;
		lcells = unique(ap{1}(indzz));
		col = c(mod(i-1, maxc)+1, :);
		set(h(lcells+1), 'Color', col);

uicontrol('style', 'push', ...
	'string', 'refresh', ...
	'FontSize',8, 'FontWeight', 'bold', ...
	'units', 'normal', ...
	'pos', [0.9 .01 0.08 .04], ...
	'backgroundcolor', 'black', ...
	'foregroundcolor', 'white', ...
	'call', ['raster(''', fn, ''',' num2str(numproc), ')']);