This repository has been archived on 2021-05-17. You can view files and clone it, but cannot push or open issues or pull requests.
scientificComputing/pointprocesses/code/lifficurves.m
2014-11-12 18:39:02 +01:00

37 lines
1000 B
Matlab

% lif:
noises = [ 1e-5 1e-4 1e-3 1e-2 1e-1 ];
inputs = 0:0.1:20;
duration = 50.0;
% pif:
% noises = [ 1e-1 1 1e1 1e2 1e3 ];
% inputs = -5:0.1:10;
% duration = 100.0;
f = figure;
hold all;
for noise = noises
fprintf( 'noise=%.0e\n', noise );
rates = [];
for input = inputs
spikes = lifspikes( 10, input, duration, noise );
% spikes = pifspikes( 50, input, duration, noise );
nspikes = 0;
for k = 1:length( spikes )
nspikes = nspikes + length( spikes{k} );
end
rate = nspikes/duration/length( spikes );
%fprintf( 'I=%g N=%d rate=%g\n', input, length( spikes ), rate )
rates = [ rates rate ];
end
plot( inputs, rates, 'LineWidth', 2, 'DisplayName', sprintf( 'D=%.0e', noise ) );
end
xlabel( 'Input' );
xlim( [ inputs(1) inputs(end) ] )
ylabel( 'Firing rate [Hz]' );
%title( 'Leaky integrate-and-fire' )
title( 'Perfect integrate-and-fire' )
legend( '-DynamicLegend', 'Location', 'NorthWest' )
hold off