123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- function pacwin= main_function_calculate_PAC_several_GutGlue_segs(Experiment,exp_num, Path,rangePhase,rangeAmplitude,cross,measure,Merge_num)
- %written by Xiaxia
- % cross --- 'aa' , ab, bb, ba , region
- % measure---- the method name, 'mi', 'esc', 'cfc'
- % rangePhase - range of frequencies for low signal; for example 1:1:20
- % rangeAmplitude - range of frequencies for high signal; for example
- % 30:2:200
- % Merge_num, the number of segments to merge
- cd(Path.output)
- dirName=strcat('Mi_PAC OB Phase LEC Amplitude 2s no zeropad filter 1')
- mkdir(dirName)
- th_r=2;flag_signal='xndetrend';
- for inum=1:length(exp_num)
- iExperiment=exp_num(inum);
- nameBaseline=Experiment(iExperiment).name1;
- name_nO=Experiment(iExperiment).name2;
- Name={nameBaseline,name_nO};
- Channel1=Experiment(iExperiment).OBchannels; %OB
- Channel2=Experiment(iExperiment).LECchannels; %LEC
-
- %%%%%%%%% load filtered and cut glued signal to calculate PE
- for group=1:length(Name)
- filename=Name{group};
-
- clear signal_LFP
- clear Signal1
- load( strcat(Path.temp,filesep,'nlx_load_LFP_LP100',filesep,filename,'\CSC',num2str(Channel1),'.mat'));
- fs=fsOutput;
- Signal1=ZeroPhaseFilter(signal_LFP,fs,[1 100]);
- clear signal_LFP
- clear Signal2
- load( strcat(Path.temp,filesep,'nlx_load_LFP_LP100',filesep,filename,'\CSC',num2str(Channel2),'.mat'));
- Signal2=ZeroPhaseFilter(signal_LFP,fs,[1 100]);
- %load overlapping Event timestamps
- clear oscStartInner
- clear oscEndInner
- clear timestamps1
- load( strcat(Path.output,filesep,'SymOsc50',filesep,filename,'.mat'));
- timestamps1(1,:)=oscStartInner/fs;
- timestamps1(2,:)=oscEndInner/fs;
-
- [ Sig1,Nwindows1]=cutandglue_nozeropadding(Signal1,timestamps1',fs);
- [ Sig2,Nwindows2]=cutandglue_nozeropadding(Signal2,timestamps1',fs);
- Signal1=Sig1.xndetrend;
- size(Signal1)
- Signal2=Sig2.xndetrend;
-
- segs=size(Signal2,1)
- Merge_segs=floor(2*segs/Merge_num-1)
- for Merge_seg=1:Merge_segs
- %Tem=(Merge_seg-1)*Merge_num+1:Merge_seg*Merge_num;
- Tem=floor(Merge_seg-1)*Merge_num/2+1:(Merge_seg+1)*Merge_num/2;
- if strcmp(cross,'aa')
- X1=Signal1(Tem,:);
- X2=Signal1(Tem,:);
- end
- if strcmp(cross,'ab')
- X1=Signal1(Tem,:);
- X2=Signal2(Tem,:);
- end
- if strcmp(cross,'ba')
- X2=Signal2(Tem,:);
- X1=Signal1(Tem,:);
- end
- if strcmp(cross,'bb')
- X1=Signal2(Tem,:);
- X2=Signal2(Tem,:);
- end
-
- [PAC_2to12_15to80]=find_pac_shf_several_CutGlue_segs(X2,fs,measure,X1,rangePhase,rangeAmplitude);
-
-
- pacwin{Merge_seg}=PAC_2to12_15to80
- clear PAC_2to12_15to80;
- end
- %pacwin=relat_shaf_win(pacwin{iExperiment});
-
- dirName
- cd(Path.output)
- cd(dirName)
- save(filename,'pacwin')
- end
- end
- end
|