rmeddis@9
|
1 function demoTwisterProbability
|
rmeddis@9
|
2
|
rmeddis@9
|
3 % MAPdemo runs the MATLAB auditory periphery model (MAP1_14) as far as
|
rmeddis@9
|
4 % the AN (probabilities) or IC (spikes) with graphical output
|
rmeddis@9
|
5
|
rmeddis@25
|
6 dbstop if error
|
rmeddis@24
|
7 restorePath=path;
|
rmeddis@24
|
8 addpath (['..' filesep 'MAP'], ['..' filesep 'wavFileStore'], ...
|
rmeddis@24
|
9 ['..' filesep 'utilities'])
|
rmeddis@9
|
10
|
rmeddis@9
|
11 %% #1 parameter file name
|
rmeddis@9
|
12 MAPparamsName='Normal';
|
rmeddis@9
|
13
|
rmeddis@9
|
14
|
rmeddis@24
|
15 %% #2 probability (fast)
|
rmeddis@9
|
16 AN_spikesOrProbability='probability';
|
rmeddis@9
|
17
|
rmeddis@9
|
18
|
rmeddis@24
|
19 %% #3 speech file input
|
rmeddis@9
|
20 fileName='twister_44kHz';
|
rmeddis@9
|
21
|
rmeddis@9
|
22
|
rmeddis@9
|
23 %% #4 rms level
|
rmeddis@24
|
24 leveldBSPL=60; % dB SPL
|
rmeddis@9
|
25
|
rmeddis@9
|
26
|
rmeddis@9
|
27 %% #5 number of channels in the model
|
rmeddis@9
|
28 % 21-channel model (log spacing)
|
rmeddis@9
|
29 numChannels=21;
|
rmeddis@24
|
30 lowestBF=250; highestBF= 8000;
|
rmeddis@9
|
31 BFlist=round(logspace(log10(lowestBF), log10(highestBF), numChannels));
|
rmeddis@9
|
32
|
rmeddis@35
|
33
|
rmeddis@24
|
34 %% #6 no change to model parameters
|
rmeddis@9
|
35 paramChanges=[];
|
rmeddis@9
|
36
|
rmeddis@9
|
37 %% Generate stimuli
|
rmeddis@24
|
38 [inputSignal sampleRate]=wavread(fileName);
|
rmeddis@9
|
39 inputSignal(:,1);
|
rmeddis@9
|
40 targetRMS=20e-6*10^(leveldBSPL/20);
|
rmeddis@9
|
41 rms=(mean(inputSignal.^2))^0.5;
|
rmeddis@9
|
42 amp=targetRMS/rms;
|
rmeddis@9
|
43 inputSignal=inputSignal*amp;
|
rmeddis@9
|
44
|
rmeddis@9
|
45
|
rmeddis@9
|
46 %% run the model
|
rmeddis@9
|
47 tic
|
rmeddis@9
|
48
|
rmeddis@26
|
49 fprintf('\n')
|
rmeddis@26
|
50 disp(['Signal duration= ' num2str(length(inputSignal)/sampleRate)])
|
rmeddis@26
|
51 disp([num2str(numChannels) ' channel model'])
|
rmeddis@26
|
52 disp('Computing ...')
|
rmeddis@26
|
53
|
rmeddis@9
|
54 MAP1_14(inputSignal, sampleRate, BFlist, ...
|
rmeddis@9
|
55 MAPparamsName, AN_spikesOrProbability, paramChanges);
|
rmeddis@24
|
56
|
rmeddis@9
|
57
|
rmeddis@32
|
58 %% the model run is finished. Now display the results
|
rmeddis@32
|
59
|
rmeddis@32
|
60 %% delare showMap options
|
rmeddis@32
|
61 showMapOptions.printModelParameters=1;
|
rmeddis@32
|
62 showMapOptions.showModelOutput=1;
|
rmeddis@32
|
63 showMapOptions.printFiringRates=1;
|
rmeddis@32
|
64 showMapOptions.showACF=0;
|
rmeddis@32
|
65 showMapOptions.showEfferent=0;
|
rmeddis@38
|
66 showMapOptions.surfAN=1; % 3D plot of HSR response
|
rmeddis@38
|
67 showMapOptions.PSTHbinwidth=0.002; % 3D plot of HSR response
|
rmeddis@38
|
68 showMapOptions.view=[-14 76]; % 3D plot of HSR response
|
rmeddis@32
|
69
|
rmeddis@38
|
70
|
rmeddis@38
|
71 UTIL_showMAP(showMapOptions)
|
rmeddis@9
|
72
|
rmeddis@9
|
73 toc
|
rmeddis@9
|
74 path(restorePath)
|
rmeddis@9
|
75
|