MainSinglePAC.m 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. function Analysis= MainSinglePAC(rangePhase,rangeAmplitude,measure,Merge_num,Signal,fs)
  2. % This is a helperfunction to calculate a matrix of PAC values using either the ESC, MI(MVL)
  3. % or CFC measure.
  4. % INPUTS:
  5. % fs - sampling frequency;
  6. % Signal - vector of 0.5-100 Hz filtered LFP signal
  7. % measure - measure to be used - it should be: 'esc', 'mi' or 'cfc';
  8. % rangePhase - range of frequencies for low signal; for example 1:1:20
  9. % rangeAmplitude - range of frequencies for high signal; for example 30:2:200
  10. % Merge_num - used 50
  11. % Output
  12. %PAC results for each analyzed Signal window, including:
  13. %pac.pacmat=pacmat;
  14. %pac.freqvec_ph---the phase frequency band;
  15. %pac.freqvec_amp---the amplitude frequency band;
  16. %pac.shf_data_mean---shuffle mean;
  17. %pac.shf_data_std----shuffle std;
  18. %pac.relat_mi-----Zscore of the pac.pacmat
  19. % Author: Angela Onslow, May 2010
  20. %% calc PAC
  21. segs=size(Signal,1);
  22. Merge_segs=floor(2*segs/Merge_num-1);
  23. for Merge_seg=1:Merge_segs
  24. Tem=floor(Merge_seg-1)*Merge_num/2+1:(Merge_seg+1)*Merge_num/2;
  25. X1=Signal(Tem,:);
  26. X2=Signal(Tem,:);
  27. [PAC]=find_pac_shf_several_CutGlue_segs(X2,fs,measure,X1,rangePhase,rangeAmplitude);
  28. pacwin{Merge_seg}=PAC;
  29. clear PAC
  30. end
  31. Analysis.pacwin=pacwin;
  32. clear Signal pacwin