rmeddis@33
|
1 function plotProfile(fgName, bgName)
|
rmeddis@33
|
2
|
rmeddis@33
|
3 addpath (['..' filesep 'profiles'])
|
rmeddis@28
|
4
|
rmeddis@28
|
5 %% plot profile
|
rmeddis@28
|
6 if nargin<1
|
rmeddis@33
|
7 fgName = myFile;
|
rmeddis@33
|
8 bgName = '';
|
rmeddis@28
|
9 end
|
rmeddis@28
|
10
|
rmeddis@33
|
11 cmd=['foreground = ' fgName ';'];
|
rmeddis@33
|
12 eval(cmd)
|
rmeddis@28
|
13
|
rmeddis@33
|
14 if nargin==2
|
rmeddis@33
|
15 cmd=['background = ' bgName ';'];
|
rmeddis@33
|
16 eval(cmd)
|
rmeddis@33
|
17 else
|
rmeddis@33
|
18 bgName='';
|
rmeddis@33
|
19 end
|
rmeddis@28
|
20
|
rmeddis@28
|
21 % absolute thresholds
|
rmeddis@28
|
22 figure(90), clf
|
rmeddis@28
|
23 subplot(2,1,2)
|
rmeddis@33
|
24 semilogx(foreground.BFs,foreground.LongTone,'ko-','lineWidth',2); hold on
|
rmeddis@33
|
25 semilogx(foreground.BFs,foreground.ShortTone,'bo-','lineWidth',2); hold on
|
rmeddis@33
|
26 if ~isempty(bgName)
|
rmeddis@33
|
27 semilogx(background.BFs,background.LongTone,'ko:'); hold on
|
rmeddis@33
|
28 semilogx(background.BFs,background.ShortTone,'bo:'); hold on
|
rmeddis@33
|
29 end
|
rmeddis@28
|
30 ylim([0 100])
|
rmeddis@28
|
31
|
rmeddis@28
|
32 % TMC
|
rmeddis@33
|
33 for BFno=1:length(foreground.TMCFreq)
|
rmeddis@28
|
34 subplot(2,6,BFno)
|
rmeddis@33
|
35 plot(foreground.Gaps,foreground.TMC(BFno,:)-foreground.LongTone(BFno),'r','lineWidth',3), hold on
|
rmeddis@33
|
36 plot(foreground.Gaps,foreground.TMC(BFno,:),'b','lineWidth',3), hold on
|
rmeddis@29
|
37 ylim([-10 110])
|
rmeddis@28
|
38 xlim([0.01 0.1])
|
rmeddis@29
|
39 grid on
|
rmeddis@28
|
40 if BFno==1
|
rmeddis@28
|
41 ylabel('masker dB SL')
|
rmeddis@28
|
42 xlabel('gap')
|
rmeddis@28
|
43 end
|
rmeddis@33
|
44 title([num2str(foreground.TMCFreq(BFno)) ' Hz'])
|
rmeddis@29
|
45 set(gca,'XTick',[ 0.1],'xTickLabel', { '0.1'})
|
rmeddis@28
|
46 end
|
rmeddis@28
|
47
|
rmeddis@33
|
48 if ~isempty(bgName)
|
rmeddis@33
|
49 for BFno=1:length(background.TMCFreq)
|
rmeddis@33
|
50 BF = background.TMCFreq(BFno);
|
rmeddis@33
|
51 idx = find(BF == foreground.TMCFreq);
|
rmeddis@33
|
52 if ~isempty(idx);
|
rmeddis@33
|
53
|
rmeddis@33
|
54 subplot(2,6,idx)
|
rmeddis@33
|
55 plot(background.Gaps,background.TMC(BFno,:)-background.LongTone(BFno),'k:')
|
rmeddis@33
|
56 plot(background.Gaps,background.TMC(BFno,:),'k:')
|
rmeddis@33
|
57 ylim([-10 110])
|
rmeddis@33
|
58 xlim([0.01 0.1])
|
rmeddis@33
|
59 end
|
rmeddis@33
|
60 end
|
rmeddis@33
|
61 end
|
rmeddis@33
|
62
|
rmeddis@28
|
63 % IFMCs
|
rmeddis@33
|
64 for BFno=1:length(foreground.IFMCFreq)
|
rmeddis@33
|
65 freq=foreground.MaskerRatio'*foreground.IFMCFreq(BFno);
|
rmeddis@28
|
66 subplot(2,1,2)
|
rmeddis@33
|
67 semilogx(freq,foreground.IFMCs(BFno,:),'r','lineWidth',3), hold on
|
rmeddis@28
|
68 ylim([0 100])
|
rmeddis@28
|
69 xlim([100 12000])
|
rmeddis@28
|
70 grid on
|
rmeddis@28
|
71 end
|
rmeddis@28
|
72 xlabel('frequency (Hz)')
|
rmeddis@28
|
73 ylabel('masker dB / probe dB')
|
rmeddis@33
|
74 set(gca,'XTick',foreground.IFMCFreq)
|
rmeddis@29
|
75
|
rmeddis@33
|
76 if ~isempty(bgName)
|
rmeddis@33
|
77 for BFno=1:length(background.IFMCFreq)
|
rmeddis@33
|
78 freq=background.MaskerRatio'*background.IFMCFreq(BFno);
|
rmeddis@33
|
79 subplot(2,1,2)
|
rmeddis@33
|
80 semilogx(freq,background.IFMCs(BFno,:),'k:')
|
rmeddis@33
|
81 ylim([0 100])
|
rmeddis@33
|
82 xlim([100 12000])
|
rmeddis@29
|
83 end
|
rmeddis@29
|
84 end
|
rmeddis@32
|
85 mydate=datestr(now); idx=findstr(':',mydate); mydate(idx)='_';
|
rmeddis@32
|
86
|
rmeddis@32
|
87 fileName= ['savedData/' mydate ];
|
rmeddis@32
|
88
|
rmeddis@32
|
89 save (fileName)
|
rmeddis@32
|
90 set(gcf,'name', mydate)
|
rmeddis@32
|
91 disp(fileName)
|