tomwalters@0: tomwalters@0: % tomwalters@0: % Calculation of all of AIMI: NAP-SAI-MI tomwalters@0: % IRINO T tomwalters@0: % 9 Oct 2002 tomwalters@0: % tomwalters@0: % function [MI3d, StrobeInfo, NAPparam, STBparam, SAIparam, MIparam] = ... tomwalters@0: % CalAIMIall(Snd,fs,NAPparam,STBparam,SAIparam,MIparam,SwSave); tomwalters@0: % tomwalters@0: % INPUT: Snd : sound for MI tomwalters@0: % fs: sampling rate tomwalters@0: % NAPparam,STBparam,SAIparam,MIparam : parameters tomwalters@0: % NameMI: Name of save file. if empty : No save tomwalters@0: % tomwalters@0: function [MI3d, StrobeInfo, NAPparam, STBparam, SAIparam, MIparam] = ... tomwalters@0: CalAIMIall(Snd,fs,NAPparam,STBparam,SAIparam,MIparam,NameMI); tomwalters@0: tomwalters@0: if nargin < 3, NAPparam = []; end; tomwalters@0: if nargin < 4, STBparam = []; end; tomwalters@0: if nargin < 5, SAIparam = []; end; tomwalters@0: if nargin < 6, MIparam = []; end; tomwalters@0: if nargin < 7, NameMI = []; end; tomwalters@0: tomwalters@0: if isfield(NAPparam,'fs') == 0, NAPparam.fs = []; end; tomwalters@0: if length(NAPparam.fs) == 0, NAPparam.fs = fs; end; tomwalters@0: if NAPparam.fs ~= fs, error('Sampling rate is inconsistent.'); end; tomwalters@0: tomwalters@0: % NAPparam = []; tomwalters@0: % NAPparam.fs = fs; tomwalters@0: tomwalters@0: %%%%%%%%%%%%% CHANGED FROM COMMENTED OUT %%%%%%%%%%%%%% tomwalters@0: NAPparam.NumCh = 75; % default was 75 tomwalters@0: tomwalters@0: % NAPparam.cf_afb = [100 6000]; % default tomwalters@0: NAPparam.SubBase = 0.5; tomwalters@0: tomwalters@0: if isfield(STBparam,'StInfo_EventLoc') == 0, tomwalters@0: STBparam.StInfo_EventLoc = []; tomwalters@0: end; tomwalters@0: tomwalters@0: % SAIparam.Nwidth = -5; % default tomwalters@0: % SAIparam.Pwidth = 15; % default tomwalters@0: SAIparam.FrstepAID = 0; % Event Synchronous tomwalters@0: % SAIparam.ImageDecay = 10; % SAI image decay / Switch of window function tomwalters@0: SAIparam.ImageDecay = 0; % using Window function tomwalters@0: SAIparam.SwSmthWin = 1; % Window shape #1 tomwalters@0: tomwalters@0: % MIparam.F0mode = 300; % default tomwalters@0: % MIparam.TFval = [0:0.25:5]; % default tomwalters@0: % MIparam.c_2pi = [0:0.25:20]; % default tomwalters@0: MIparam.Mu = -0.5; % pre-emphasis of high freq. tomwalters@0: tomwalters@0: LenSnd = length(Snd); tomwalters@0: % disp([NameFile ' : T= ' num2str(LenSnd/NAPparam.fs, 4) ' (sec)']); tomwalters@0: tomwalters@0: [NAP, NAPparam] = CalNAPghll(Snd,NAPparam); tomwalters@0: % PlaySound(Snd,NAPparam.fs); tomwalters@0: tomwalters@0: load C:\MATLAB6p5\work\napat.mat; tomwalters@0: NAP=napat; tomwalters@0: tomwalters@0: [NAPPhsCmp, StrobeInfo, STBparam] = CalStrobePoint(NAP,NAPparam,STBparam); tomwalters@0: tomwalters@0: if length(STBparam.StInfo_EventLoc) > 0 tomwalters@0: disp('StrobeInfo.EventLoc is replaced by STBparam.StInfo_EventLoc' ) tomwalters@0: disp([ length(StrobeInfo.EventLoc), length(STBparam.StInfo_EventLoc) ]) tomwalters@0: StrobeInfo.NAPpoint = []; tomwalters@0: StrobeInfo.EventLoc = STBparam.StInfo_EventLoc; tomwalters@0: end; tomwalters@0: [SAI3d, RAI3d, SAIparam, StrobeInfo] = ... tomwalters@0: CalSAIstinfo(NAPPhsCmp,NAPparam,StrobeInfo,STBparam,SAIparam); tomwalters@0: tomwalters@0: savefile = 'Irino_SAI.mat'; tomwalters@0: save(savefile,'SAI3d'); tomwalters@0: tomwalters@0: [MI3d, MIparam] = CalMI(SAI3d,NAPparam,SAIparam,MIparam); tomwalters@0: tomwalters@0: if length(NameMI) > 0, tomwalters@0: str = ['save ' NameMI ' MI3d StrobeInfo ' ... tomwalters@0: ' NAPparam STBparam SAIparam MIparam ; ']; tomwalters@0: disp(str); eval(str); tomwalters@0: end;