47 lines
1.0 KiB
Matlab
47 lines
1.0 KiB
Matlab
rates = 1:1:100;
|
|
avisi = [];
|
|
sdisi = [];
|
|
cvisi = [];
|
|
|
|
for rate = rates
|
|
spikes = hompoissonspikes( 10, rate, 100.0 );
|
|
isivec = isis( spikes );
|
|
av = mean( isivec );
|
|
sd = std( isivec );
|
|
cv = sd/av;
|
|
avisi = [ avisi av ];
|
|
sdisi = [ sdisi sd ];
|
|
cvisi = [ cvisi cv ];
|
|
end
|
|
|
|
f = figure;
|
|
subplot( 1, 3, 1 );
|
|
scatter( rates, 1000.0*avisi, 'b', 'filled' );
|
|
hold on;
|
|
plot( rates, 1000.0./rates, 'r' );
|
|
hold off;
|
|
xlabel( 'Rate \lambda [Hz]' );
|
|
ylim( [ 0 1000 ] );
|
|
title( 'Mean ISI [ms]' );
|
|
legend( 'simulation', 'theory 1/\lambda' );
|
|
|
|
subplot( 1, 3, 2 );
|
|
scatter( rates, 1000.0*sdisi, 'b', 'filled' );
|
|
hold on;
|
|
plot( rates, 1000.0./rates, 'r' );
|
|
hold off;
|
|
xlabel( 'Rate \lambda [Hz]' );
|
|
ylim( [ 0 1000 ] )
|
|
title( 'Standard deviation ISI [ms]' );
|
|
legend( 'simulation', 'theory 1/\lambda' );
|
|
|
|
subplot( 1, 3, 3 );
|
|
scatter( rates, cvisi, 'b', 'filled' );
|
|
hold on;
|
|
plot( rates, ones( size( rates ) ), 'r' );
|
|
hold off;
|
|
xlabel( 'Rate \lambda [Hz]' );
|
|
ylim( [ 0 2 ] )
|
|
title( 'CV' );
|
|
legend( 'simulation', 'theory' );
|