77GHz mm-Wave MIMO array with 2-transmit and 4-receive antennas achieves

Categories:
16 Views

This Dataset contains EEG recordings from epileptic rats. The genetic absence epilepsy rats (GAERS) are one of the best-established rodent models for generalized epilepsy. The rats show seizures with characteristic "spike and wave discharge" EEG patterns. Experiments were performed in accordance with the German law on animal protection and were approved by the Animal Care and Ethics Committee of the University of Kiel.

Instructions: 
  • Sample Frequency: 1600
  • Day1 (18:23:57-16:35:56): Three animals (R1, R2, R3): Array (data points x channels (3))
  • Day2 (16:42:53-16:52:06): Three animals (R1, R2, R3): Array (data points x channels (3))
  • Day3 (17:32:19-10:25:19): Three animals (R1, R2, R3): Array (data points x channels (3))
  • Day4 (10:26:40-14:46:13): Two animals (R1, R3): Array (data points x channels (3))
Categories:
140 Views

Level 2 data set. Averaging over multiple measurements were performed to reduce electronic noise and jitter

Instructions: 

%Program developed by Viviana Vladutescu for iROC alignment 3/30/2018

clc 

clear all

close all

fontSize=14;

 

load('Distances.mat')

 

% xlswrite('Distances.xlsx', Distances)

%Distances=[dist_STIF_av; dist_STIF_std; dist_PixSen_av; dist_PixSen_std; pi_pos_X_av; pi_pos_X_std; pi_pos_Y_av;... 

 %   pi_pos_Y_std; con_X_av; con_X_std; con_Y_av; con_Y_std; con2_X_av; con2_X_std; con2_Y_av; con2_Y_std];

 

 m=36;

 

dist_STIF_av=Distances(1,:);

 dist_STIF_std=Distances(2,:);

 dist_PixSen_av=Distances(3,:);

 dist_PixSen_std=Distances(4,:);

 pi_pos_X_av=Distances(5,:);

 pi_pos_X_std=Distances(6,:);

 pi_pos_Y_av=Distances(7,:);

 pi_pos_Y_std=Distances(8,:);

 con_X_av=Distances(9,:);

 con_X_std=Distances(10,:);

 con_Y_av=Distances(11,:);

 con_Y_std=Distances(12,:);

 con2_X_av=Distances(13,:);

 con2_X_std=Distances(14,:);

 con2_Y_av=Distances(15,:);

 con2_Y_std=Distances(16,:);

 

  col=find(dist_PixSen_av);

  figure(1)

 surface([dist_PixSen_av;dist_PixSen_av],[dist_STIF_av;dist_STIF_av],[col;col],...

         'facecol','no','edgecol','interp','linew',2);

     xlabel('DistPixSen', 'FontSize',fontSize)

   ylabel('DistSTIF','FontSize', fontSize)

   title('DistPixSen vs. DistSTIF','FontSize', fontSize)

   grid on

% surface([x;x],[y;y],[z;z],[col;col],...

%         'facecol','no',...

%         'edgecol','interp',...

%         'linew',2);

    

 figure(2)

 

 subplot(2,2,1)

   errorbar(dist_PixSen_av, dist_STIF_av,dist_STIF_std,'ro-')

   hold on

   surface([dist_PixSen_av;dist_PixSen_av],[dist_STIF_av;dist_STIF_av],[col;col],...

         'facecol','no','edgecol','interp','linew',2);

   xlabel('DistPixSen', 'FontSize',fontSize)

   ylabel('DistSTIF','FontSize', fontSize)

   title('DistPixSen vs. DistSTIF','FontSize', fontSize)

   legend('X')

   grid on

 

  

 subplot(2,2,2)

   errorbar(dist_PixSen_av,pi_pos_X_av,pi_pos_X_std,'k^-')

   hold on

   surface([dist_PixSen_av;dist_PixSen_av],[pi_pos_X_av;pi_pos_X_av],[col;col],...

         'facecol','no','edgecol','interp','linew',2);

%     hold on

%    plot(dist_PixSen_avcalc,pi_pos_X_av,'r:')

   xlabel('DistPixSen','FontSize', fontSize)

   ylabel('PiPosX','FontSize', fontSize)

   legend('X')

   title('DistPixSen vs. PiPosX','FontSize', fontSize)

   grid on

   

%    subplot(2,2,3)

%    errorbar(dist_PixSen_av,pi_pos_Y_av,pi_pos_Y_std,'b<:')

%    hold on

%    surface([dist_PixSen_av;dist_PixSen_av],[pi_pos_Y_av;pi_pos_Y_av],[col;col],...

%          'facecol','no','edgecol','interp','linew',2);

%    xlabel('DistPixSen','FontSize', fontSize)

%    ylabel('PiPosY','FontSize', fontSize)

%    legend('X','FontSize', fontSize)

%    title('DistPixSen vs. PiPosY','FontSize', fontSize)

%    grid on

   

   subplot(2,2,3)

   errorbar(dist_PixSen_av,con_X_av,con_X_std,'m>-')

   hold on 

   surface([dist_PixSen_av;dist_PixSen_av],[con_X_av;con_X_av],[col;col],...

         'facecol','no','edgecol','interp','linew',2);

   xlabel('DistPixSen','FontSize', fontSize)

   ylabel('Con1PosX','FontSize', fontSize)

   legend('X')

   title('DistPixSen vs. Con1X','FontSize', fontSize)

   grid on

   

%    subplot(2,4,5)

%    errorbar(dist_PixSen_av,con_Y_av,con_Y_std,'gx-')

%    hold on

%    surface([dist_PixSen_av;dist_PixSen_av],[con_Y_av;con_Y_av],[col;col],...

%          'facecol','no','edgecol','interp','linew',2);

% %     hold on

% %    plot(dist_PixSen_avcalc,con_Y_av,'r:')

%    xlabel('DistPixSen','FontSize', fontSize)

%    ylabel('Con1PosY','FontSize', fontSize)

%    legend('Y','FontSize', fontSize)

%    title('DistPixSen vs. Con1Y','FontSize', fontSize)

%    grid on

%    

 subplot(2,2,4)

   errorbar(dist_PixSen_av,con2_X_av,con2_X_std,'cv-.')

   hold on 

   surface([dist_PixSen_av;dist_PixSen_av],[con2_X_av;con2_X_av],[col;col],...

         'facecol','no','edgecol','interp','linew',2);

   %     hold on

   %    plot(dist_PixSen_avcalc,pi_pos_X_av,'r:')

   xlabel('DistPixSen','FontSize', fontSize)

   ylabel('Con2PosX','FontSize', fontSize)

   legend('X')

   title('DistPixSen vs. Con2X','FontSize', fontSize)

   grid on

%     subplot(2,4,7)

%    errorbar(dist_PixSen_av,con2_Y_av,con2_Y_std,'kp-')

%    hold on

%    surface([dist_PixSen_av;dist_PixSen_av],[con2_Y_av;con2_Y_av],[col;col],...

%          'facecol','no','edgecol','interp','linew',2);

% %    hold on

% %    plot(dist_PixSen_avcalc,con2_Y_av,'r:')

%    xlabel('DistPixSen','FontSize', fontSize)

%    ylabel('Con2PosY','FontSize', fontSize)

%    legend('Y','FontSize', fontSize)

%    title('DistPixSen vs. Con2Y','FontSize', fontSize)

%    grid on

  

   figure(3)

   

   subplot(2,2,1)

   errorbar(dist_STIF_av,dist_PixSen_av,dist_PixSen_std,'ro-')

   hold on

   surface([dist_STIF_av;dist_STIF_av],[dist_PixSen_av;dist_PixSen_av],[col;col],...

         'facecol','no','edgecol','interp','linew',2);

%     hold on

%    plot(dist_STIF_avcalc,dist_PixSen_avcalc,'r:')

   xlabel('DistSTIF', 'FontSize',fontSize)

   ylabel('DistPixSens','FontSize', fontSize)

   title('DistSTIF vs. DistPixSens','FontSize', fontSize)

      legend('DistSTIF')

   hold on

    grid on

   

    subplot(2,2,2)

   errorbar(dist_STIF_av,pi_pos_X_av,pi_pos_X_std,'k^-')

   surface([dist_STIF_av;dist_STIF_av],[pi_pos_X_av;pi_pos_X_av],[col;col],...

         'facecol','no','edgecol','interp','linew',2);

%     hold on

%    plot(dist_STIF_avcalc,pi_pos_X_av,'r:')

   xlabel('DistSTIF','FontSize', fontSize)

   ylabel('PiPosX','FontSize', fontSize)

   legend('PiPosX')

   title('DistSTIF vs. PiPosX','FontSize', fontSize)

   grid on

  

%    subplot(2,2,3)

%    errorbar(dist_STIF_av,pi_pos_Y_av,pi_pos_Y_std,'b<:')

%    surface([dist_STIF_av;dist_STIF_av],[pi_pos_Y_av;pi_pos_Y_av],[col;col],...

%          'facecol','no','edgecol','interp','linew',2);

% %    hold on

% %     plot(dist_STIF_avcalc,pi_pos_Y_av,'r:')

%    xlabel('DistSTIF','FontSize', fontSize)

%    ylabel('PiPosY','FontSize', fontSize)

%    legend('PiPosY')

%    title('DistSTIF vs. PiPosY','FontSize', fontSize)

%    grid on

   subplot(2,2,3)

   errorbar(dist_STIF_av,con_X_av,con_X_std,'m>-')

   hold on 

   surface([dist_STIF_av;dist_STIF_av],[con_X_av;con_X_av],[col;col],...

         'facecol','no','edgecol','interp','linew',2);

%     hold on

%    plot(dist_STIF_avcalc,con_X_av,'r:')

   xlabel('DistSTIF','FontSize', fontSize)

   ylabel('Con1PosX','FontSize', fontSize)

   legend('Con1PosX')

   title('DistPixSen vs. Con1X','FontSize', fontSize)

   grid on

%    subplot(2,4,5)

%    errorbar(dist_STIF_av,con_Y_av,con_Y_std,'gx-')

%    hold on

%    surface([dist_STIF_av;dist_STIF_av],[con_Y_av;con_Y_av],[col;col],...

%          'facecol','no','edgecol','interp','linew',2);

% %    hold on

% %    plot(dist_STIF_avcalc,con_Y_av,'r:')

%    xlabel('DistSTIF','FontSize', fontSize)

%    ylabel('Con1PosY','FontSize', fontSize)

%    legend('Y','FontSize', fontSize)

%    title('DistSTIF vs. Con1Y','FontSize', fontSize)

%    grid on

    

subplot(2,2,4)

   errorbar(dist_STIF_av,con2_X_av,con2_X_std,'cv-.')

   hold on

   surface([dist_STIF_av;dist_STIF_av],[con2_X_av;con2_X_av],[col;col],...

         'facecol','no','edgecol','interp','linew',2);

%    hold on

%    plot(dist_STIF_avcalc,con2_X_av,'r:')

   xlabel('DistSTIF','FontSize', fontSize)

   ylabel('Con2PosX','FontSize', fontSize)

   legend('Con2PosX')

   title('DistSTIF vs. Con2X','FontSize', fontSize)

   grid on

   %     subplot(2,4,7)

%    errorbar(dist_STIF_av,con2_Y_av,con2_Y_std,'kp-')

%    surface([dist_STIF_av;dist_STIF_av],[con2_Y_av;con2_Y_av],[col;col],...

%          'facecol','no','edgecol','interp','linew',2);

% %     hold on

% %    plot(dist_STIF_avcalc,con2_Y_av,'r:')

%    xlabel('DistSTIF','FontSize', fontSize)

%    ylabel('Con2PosY','FontSize', fontSize)

%    legend('Y','FontSize', fontSize)

%    title('DistSTIF vs. Con2Y','FontSize', fontSize)

%    grid on\

   figure (4)

   

   subplot(2,1,1) 

   

   rel_err_DSTIF_DPix=((dist_STIF_av-dist_PixSen_av)./dist_STIF_av).*100;

    surface([dist_STIF_av;dist_STIF_av],[rel_err_DSTIF_DPix;rel_err_DSTIF_DPix],...

       [col;col],'facecol','no','edgecol','interp','lines',':','linew',2);

   hold on

   plot(dist_STIF_av,rel_err_DSTIF_DPix,'cv-.')

   xlabel('DistSTIF','FontSize', fontSize)

   ylabel('Relative Error','FontSize', fontSize)

   title('Relative error ','FontSize', fontSize)

%  legend('Rel Error','Fit to Rel Error')

   legend('Relative Error DistSTIF DistPixSens')

    grid on

    

   subplot(2,1,2)  

  rel_err_DPix_DSTIF=((dist_PixSen_av-dist_STIF_av)./dist_PixSen_av).*100;

  surface([dist_PixSen_av;dist_PixSen_av],[rel_err_DPix_DSTIF;rel_err_DPix_DSTIF],...

       [col;col],'facecol','no','edgecol','interp','lines',':','linew',2);

   hold on

   plot(dist_PixSen_av, rel_err_DPix_DSTIF,'cv-.')   

   xlabel('DistPixSen','FontSize', fontSize)

   ylabel('Relative Error','FontSize', fontSize)

   title('Relative error','FontSize', fontSize)

%  legend('Rel Error','Fit to Rel Error')

   legend('Relative Error DistPixSens DistSTIF')

    grid on

 

   

   figure(5)

   

  rel_err_con1X_2X=((con_X_av-con2_X_av)./con_X_av).*100;

    

  surface([dist_STIF_av;dist_STIF_av],[rel_err_con1X_2X;rel_err_con1X_2X],...

       [col;col],'facecol','no','edgecol','interp','lines',':','linew',2);

  hold on

   plot(dist_STIF_av,rel_err_con1X_2X,'cv-.')

   xlabel('DistSTIF','FontSize', fontSize)

   ylabel('Relative Error','FontSize', fontSize)

   title('Relative error','FontSize', fontSize)

%  legend('Rel Error','Fit to Rel Error')

   legend('Relative Error Con1X to Con2X')

    grid on

    

    

 figure(6)

 

  subplot(2,1,1)

   %semilogy(dist_PixSen_av, dist_STIF_av,'ro-',dist_PixSen_av,pi_pos_X_av,'k^-',dist_PixSen_av,pi_pos_Y_av,'b<:',dist_PixSen_av,con_X_av,'m>-',dist_PixSen_av,con_Y_av,'gx-',dist_PixSen_av,con2_X_av,'cv-.',dist_PixSen_av,con2_Y_av,'kp-')

    semilogy(dist_PixSen_av, dist_STIF_av,'ro-',dist_PixSen_av,pi_pos_X_av,'k^-',dist_PixSen_av,con_X_av,'m>-',dist_PixSen_av,con2_X_av,'cv-.')

   xlabel('DistPixSen','FontSize', fontSize)

   ylabel('Instrument position','FontSize', fontSize)

  % legend('DistSTIF','PiPosX','PiPosY','Con1X','Con1Y','Con2X','Con2Y','FontSize', fontSize)

    legend('DistSTIF','PiPosX','Con1X','Con2X','FontSize', fontSize)

   title('All Instrum.Pos. vs. DistPixSens','FontSize', fontSize)   

   grid on

%    plot(dist_PixSen_av,con_Y_av)

%    title('DistPixSen vs. Con1Y','Fontsize',fontSize)

   subplot(2,1,2)

   %semilogy(dist_STIF_av,dist_PixSen_av,'ro-',dist_STIF_av,pi_pos_X_av,'k^-',dist_STIF_av,pi_pos_Y_av,'b<:',dist_STIF_av,con_X_av,'m>-',dist_STIF_av,con_Y_av,'gx-',dist_STIF_av,con2_X_av,'cv-.',dist_STIF_av,con2_Y_av,'kp-')

   semilogy(dist_STIF_av,dist_PixSen_av,'ro-',dist_STIF_av,pi_pos_X_av,'k^-',dist_STIF_av,con_X_av,'m>-',dist_STIF_av,con2_X_av,'cv-.')

   xlabel('DistSTIF','FontSize', fontSize)

   ylabel('Instrument Position','FontSize', fontSize)

   legend('DistPixSens','PiPosX','PiPosY','Con1X','Con2X','FontSize', fontSize)

   legend('DistPixSens','PiPosX','Con1X','Con2X','FontSize', fontSize)

   title('DistSTIF vs. All Instrum Positions','FontSize', fontSize)   

   grid on

   

   figure(7)

   subplot(2,1,1)

   errorbar(pi_pos_X_av,con_X_av,con_X_std,'g+-')

   hold on 

   surface([pi_pos_X_av;pi_pos_X_av],[con_X_av;con_X_av],[col;col],...

         'facecol','no','edgecol','interp','linew',2);

%     hold on

%    plot(pi_pos_X_av,con_X_av,'r:')

   xlabel('PiPosX','FontSize', fontSize)

   ylabel('Con1PosX','FontSize', fontSize)

   legend('X-X')

   title('PiPosX vs. Con1PosX','FontSize', fontSize)

   axis tight

   grid on

   

%    subplot(2,2,2)

%    errorbar(pi_pos_Y_av,con_Y_av,con_Y_std,'kh-')

%    hold on 

%    surface([pi_pos_Y_av;pi_pos_Y_av],[con_Y_av;con_Y_av],[col;col],...

%          'facecol','no','edgecol','interp','linew',2);

%    xlabel('PiPosY','FontSize', fontSize)

%    ylabel('Con1PosY','FontSize', fontSize)

%    legend('Y-Y','FontSize', fontSize)

%    title('PiPosY vs. Con1PosY','FontSize', fontSize)

%    axis tight

%    grid on

   

   subplot(2,1,2)

   errorbar(pi_pos_X_av,con2_X_av,con2_X_std,'g+-')

   hold on 

   surface([pi_pos_X_av;pi_pos_X_av],[con2_X_av;con2_X_av],[col;col],...

         'facecol','no','edgecol','interp','linew',2);

%      hold on

%    plot(pi_pos_X_av,con2_X_avcalc,'r:')

   xlabel('PiPosX','FontSize', fontSize)

   ylabel('Con2PosX','FontSize', fontSize)

   legend('X-X')%,'FontSize', fontSize)

   title('PiPosX vs. Con2PosX','FontSize', fontSize)

   axis tight

   grid on

     

%    subplot(2,2,4)

%    errorbar(pi_pos_Y_av,con2_Y_av,con2_Y_std','b^:')

%    hold on 

%    surface([pi_pos_Y_av;pi_pos_Y_av],[con2_Y_av;con2_Y_av],[col;col],...

%          'facecol','no','edgecol','interp','linew',2);

%    xlabel('PiPosY','FontSize', fontSize)

%    ylabel('Con2PosY','FontSize', fontSize)

%    legend('Y-Y')%,'FontSize', fontSize)

%    title('PiPosY vs. Con2PosY','FontSize', fontSize)

%    grid on

   axis tight

   

  

   %mean of stds

   PiXstdMean=nanmean(pi_pos_X_std);

   PiYstdMean=nanmean(pi_pos_Y_std);

   ConXstdMean=nanmean(con_X_std); 

   ConYstdMean=nanmean(con_Y_std);

   Con2XstdMean=nanmean(con2_X_std);

   Con2YstdMean=nanmean(con2_Y_std);

   DistPixSenstdMean=nanmean(dist_PixSen_std);

   DistSTIFstdMean=nanmean(dist_STIF_std);

   

   figure(8)

   

  % plot(1:36,pi_pos_X_std,'k^-',1:36,pi_pos_Y_std,'b<:',1:36,con_X_std,'m>-',1:36,con_Y_std,'kh-',1:36,con2_X_std,'g+-',1:36,con2_Y_std,'kp-',1:36,dist_STIF_std,'ro-',1:36,dist_PixSen_std,'r:')

      plot(1:36,pi_pos_X_std,'k^-',1:36,pi_pos_Y_std,'b<:',1:36,con_X_std,'m>-',1:36,con2_X_std,'g+-',1:36,dist_STIF_std,'ro-',1:36,dist_PixSen_std,'r:')

   xlabel('Step','FontSize', fontSize)

   ylabel('STD','FontSize', fontSize)

%    legend('PiPosX','PiPosY','Con1X','Con1Y','Con2X','Con2Y','DistSTIF','DistPixSen','FontSize', fontSize)

   legend('PiPosX','PiPosY','Con1X','Con2X','DistSTIF','DistPixSen','FontSize', fontSize)

   title('STD','FontSize', fontSize)

   grid on

   axis tight

%    text(15,0.7,{'Mean STDs', 'PiXstdMean=', num2str(PiXstdMean), 'PiYstdMean=', num2str(PiYstdMean),...

%                'Con1XstdMean', num2str(ConXstdMean),'Con1YstdMean', num2str(ConYstdMean),...

%                'Con2XstdMean',num2str(Con2XstdMean),'Con2YstdMean', num2str(Con2YstdMean),...

%                'DistSTIFstdMean', num2str(DistSTIFstdMean),'DistPixSenstdMean', num2str(DistPixSenstdMean),},...

%                'Color','black','FontSize',10)

   text(15,0.7,{'Mean STDs', 'PiXstdMean=', num2str(PiXstdMean), 'PiYstdMean=', num2str(PiYstdMean),... 

       'Con1XstdMean', num2str(ConXstdMean),'Con2XstdMean',num2str(Con2XstdMean),...

       'DistSTIFstdMean', num2str(DistSTIFstdMean),...

       'DistPixSenstdMean', num2str(DistPixSenstdMean),},'Color','black','FontSize',10)

          

%  z1=find(dist_PixSen_av<38);

 z2=find(dist_PixSen_av>20);

 

 

f2= fit(dist_PixSen_av(z2)',dist_STIF_av(z2)','poly2')

fit_f2=0.0005418.*((dist_PixSen_av(z2)').^2)-0.3428.*dist_PixSen_av(z2)'+342.6;

 

rms2=rms(dist_STIF_av(z2)'-fit_f2)

[r2,pval2]=corr(dist_PixSen_av(z2)',dist_STIF_av(z2)')

mdl2=fitlm(dist_PixSen_av(z2)',dist_STIF_av(z2)')

tbl2=anova(mdl2)

 

% corrected_DistSTIF2=dist_STIF_av(z2)'.\fit_f2;

% rel_err2=abs(corrected_DistSTIF2-1); %(relative error=|Theory-Meas|/Theory)

rel_err2=abs(dist_STIF_av(z2)'-fit_f2)./fit_f2;

f_rel_err2= fit(dist_PixSen_av(z2)', rel_err2,'poly2');

fit_rel_err2=(-1.232*10^(-7)).*((dist_PixSen_av(z2)').^2)+(2.488*10^(-5)).*dist_PixSen_av(z2)'+0.0002836; % coefficients from f_rel_err_PiPosX_PixSen

mean_rel_err2=mean(rel_err2)

 

col1=find(dist_PixSen_av(z2))

 

figure(9)

 

  subplot(2,1,1)

     surface([dist_PixSen_av(z2);dist_PixSen_av(z2)],[dist_STIF_av(z2);dist_STIF_av(z2)],[col1;col1],...

         'facecol','no','edgecol','interp','lines',':','linew',2);

     hold on 

    plot(f2,dist_PixSen_av(z2),dist_STIF_av(z2),'bd')%,dist_PixSen_av(z),FitSTIF,'^k')

      

    xlabel('DistPixSen','FontSize', fontSize)

    ylabel('DistSTIF','FontSize', fontSize)

    title('Distance and Fitting Lines to distances between beams on STIF relative to PixSen','FontSize', fontSize)

    legend('DistSTIF','DistSTIF','Fit')

    grid on

 

 subplot(2,1,2)

  surface([dist_STIF_av(z2);dist_STIF_av(z2)],[rel_err2';rel_err2'],[col1;col1],...

         'facecol','no','edgecol','interp','lines',':','linew',2);

     hold on

    plot(dist_STIF_av(z2), rel_err2','r*',dist_STIF_av(z2), fit_rel_err2','r-')

    xlabel('DistSTIF','FontSize', fontSize)

    ylabel('Relative Error','FontSize', fontSize)

    title('Relative error of fit of distance on STIF relative to PixSen','FontSize', fontSize)

    legend('Relative Error','Relative Error','Fit')

    grid on

 

% repeat the fit for pix sensor (as y) and pi_pos_X_av with fit_f from pix sens

 

f2_PiPosX_PixSen= fit(dist_PixSen_av(z2)',pi_pos_X_av(z2)','poly2')

fit_f2_PiPosX_PixSen=0.009709.*((dist_PixSen_av(z2)').^2)-12.84.*dist_PixSen_av(z2)'+2333

 rms2_PiPosX_PixSen_Fit2=rms(pi_pos_X_av(z2)'-fit_f2_PiPosX_PixSen)

 

 rel_err_PiPosX_PixSen=abs(pi_pos_X_av(z2)'-fit_f2_PiPosX_PixSen)./fit_f2_PiPosX_PixSen;

 mean_rel_err_PiPosX_PixSen=mean( rel_err_PiPosX_PixSen);

 

 f_rel_err_PiPosX_PixSen= fit(dist_PixSen_av(z2)', rel_err_PiPosX_PixSen,'poly2');

 fit_rel_err_PiPosX_PixSen=(3.062*10^(-7)).*((dist_PixSen_av(z2)').^2)+(7.746*10^(-7)).*dist_PixSen_av(z2)'+0.008499; % coefficients from f_rel_err_PiPosX_PixSen

% corrected_PixSen_PiPosX=dist_PixSen_av(z2)'.\fit_f2_PixSen_PiPosX;

% rel_err_PixSen_PiPosX=abs(corrected_PixSen_PiPosX-1); %(relative error=|Theory-Meas|/Theory)

 

 

 figure(10)

 

 subplot(2,1,1)

    surface([dist_PixSen_av(z2);dist_PixSen_av(z2)],[pi_pos_X_av(z2);pi_pos_X_av(z2)],[col1;col1],...

         'facecol','no','edgecol','interp','lines',':','linew',2);

    hold on

     plot(f2_PiPosX_PixSen,dist_PixSen_av(z2),pi_pos_X_av(z2),'bd')%,dist_PixSen_av(z),FitSTIF,'^k')

 

    xlabel('DistPixSen','FontSize', fontSize)

    ylabel('PiPosX','FontSize', fontSize)

    title('Distance and Fitting Lines to distances between beams on PixSen relative to PiPosX','FontSize', fontSize)

    legend('PiPosX','PiPosX','Fit')

    grid on

    

  subplot(2,1,2)

      surface([dist_PixSen_av(z2);dist_PixSen_av(z2)],[rel_err_PiPosX_PixSen';rel_err_PiPosX_PixSen'],...

       [col1;col1],'facecol','no','edgecol','interp','lines',':','linew',2);

     hold on 

     plot(dist_PixSen_av(z2),rel_err_PiPosX_PixSen','b^',dist_PixSen_av(z2), fit_rel_err_PiPosX_PixSen','b-')

      xlabel('DistPixSen','FontSize', fontSize)

    ylabel('Relative Error','FontSize', fontSize)

    title('Relative error of fit of distance on PixSen relative to PiPosX','FontSize', fontSize)

    %     legend('Rel Error','Fit to Rel Error')

   legend('Relative Error','Relative Error','Fit')

   grid on

 

Categories:
23 Views

This dataset includes the following data in supporting the submitted manuscript 'Datacube Parametrization-Based Model for Rough Surface Polarimetric Bistatic Scattering' to IEEE Transactions on Geoscience and Remote Sensing. 

  • LUT of coefficient c from fitting the contour level bounds
  • LUT of coefficient c from fitting the contour center shifts
  • specular scattering coefficients from the SEBCM simulated datacube
Categories:
24 Views

This dataset contains cardiovascular data recorded during progressive exsanguination in a porcine model of hemorrhage. Both wearable and catheter-based sensors were used to capture cardiovascular function; the wearable system contained a fusion of ECG, SCG, and PPG sensors while the catheter-based system was comprised of pressure catheters in the aortic arch, femoral artery, and right and left atria via a Swan-Ganz catheter.

Instructions: 

Experimental Protocol

This protocol included 6 Yorkshire swine (3 castrated male, 3 female, Age: 114–-150 days, Weight: 51.5-–71.4 kg), each of which passed a health assessment examination but were not subject to other exclusion criteria. Anesthesia was induced in the animal with xylazine and telazol and maintained with inhaled isoflurane during mechanical ventilation. Intravenous heparin was administered as needed to prevent coagulation of blood during the protocol. Before the induction of hypovolemia, a blood sample was taken to assess baseline plasma absorption. Following this baseline sample, Evans Blue dye was administered for blood volume estimation. After waiting several minutes to allow for even distribution of the dye, a second blood sample was taken to measure plasma volume. In this method, plasma volume is used along with hematocrit to estimate total blood volume. For one animal in the protocol (Pig 4), atropine was administered to raise the starting heart rate and blood pressure due to critically low values.

Hypovolemia was induced by draining blood through an arterial line at four levels of blood volume loss (7%, 14%, 21%, and 28%) as determined by the estimated total blood volume from the Evans Blue dye protocol. After draining passively through the arterial line, the blood was stored in a sterile container. Following each level of blood loss, exsanguination was paused for approximately 5-10 minutes to allow the cardiovascular system to stabilize. If cardiovascular collapse occurred once a level was reached, as defined by a 20% drop in mean aortic pressure from baseline after stabilization, exsanguination was terminated. Note that cardiovascular collapse was reached at different blood volume levels for each animal: Pigs 1, 3, and 4 reached 21% blood volume loss; Pigs 2 and 6 reached 28% blood volume loss; and Pig 5 reached 14% blood volume loss before the experimental protocol was terminated.

 

Signals from wearable sensors were continuously recorded using a BIOPAC MP160 data acquisition system (BIOPAC Systems, Inc., Goleta, California, USA) with a sampling frequency of 2 kHz. Electrocardiogram (ECG) signals were captured using a three-lead system of adhesive-backed Ag/AgCl electrodes placed in Einthoven Lead II configuration, which interfaced with a BIOPAC ECG100C amplifier. Reflectance-mode photoplethysmogram (PPG) was captured with a BIOPAC TSD270A transreflectance transducer, which interfaced with a BIOPAC OXY200 veterinary pulse oximeter. The transducer was placed over the femoral artery on either the right or left caudal limb, contralateral to inducer placement. Seismocardiogram (SCG) signals were captured using an ADXL354 accelerometer (Analog Devices, Inc., Norwood, Massachusetts, USA) placed on the mid-sternum, interfacing with a BIOPAC HLT100C transducer interface module.

Aortic root pressure was captured by inserting a fluid-filled catheter through a vascular introducer in the right carotid artery, fed through to the aortic root. Femoral artery pressure was obtained directly from an introducer placed on either the left or right femoral artery depending on accessibility. Right and left atrial pressures were captured with a Swan-Ganz catheter with proximal and distal monitoring ports inserted in either the right or left femoral vein. Left atrial pressure was inferred via PCWP captured using an Edwards 131F7 Swan-Ganz catheter (Edwards Lifesciences Corp, Irvine, California, USA). The vascular introducers were connected via pressure monitoring lines to ADInstruments MLT0670 pressure transducers (ADInstruments Inc., Colorado Springs, Colorado, USA). Data from the catheters were continuously recorded with an ADInstruments Powerlab 8/35 acquisition system sampling at 2 kHz.

 

Signal Pre-Processing

All signals were filtered with finite impulse response band-pass filters with Kaiser window, both in the forward and reverse directions to offset phase shift. Cutoff frequencies were 0.5–-40Hz for ECG and 1-40Hz for SCG. Only the dorso-ventral component of the SCG acceleration signal was used in this study. PPG signals, along with all four catheter-based pressure signals, were filtered with cutoffs at 0.5-10Hz. After filtering, data from all signals were heartbeat-separated using ECG R-peaks. The signal segments were then abbreviated to a length of 1,000 samples (500 ms) to enable more uniform analysis; however, due to the long left ventricular ejection time of Pig 3, a length of 1,500 samples (750 ms) is provided for this subject.

 

Using the Dataset

This dataset contains a separate .mat file for each of the 6 animal subjects in the protocol. The variables "scg" and "ppg" contain R-peak-separated signals from the SCG and PPG respectively during the protocol. The variables "aortic", "femoral", "rightAtrium", and "wedge" contain the R-peak-separated pressure waveforms from the catheters placed in the aortic root, femoral artery, right atrium, and left atrium (wedge pressure) respectivley. Each of these variables is a struct, with each of its fields representing a different level of blood volume loss. The field "B1" corresponds to the baseline level (pre-exsanguination); "L1", "L2", "L3", and "L4" correspond to the 7%, 14%, 21%, and 28% drop in blood volume respectively. Thus, the data in each field represents the heartbeat-separated signals collected during each blood volume level. The data has been selected such that periods of active draining of blood have been removed, such that the provided data reflects the heartbeat-separated signals during the resting period between blood-draws. The data is formatted in columnwise matrices, with the columns arranged in sequention order such that the first column is the first heartbeat and the last row is the last heartbeat.

 

The indices of ECG R-peaks are provided as a vector as well during each blood volume level, such that each element in the vector corresponds to its respective column in the provided column matrices. The unit of these values is in miliseconds, staring from t = 0 (onset of baseline recording).

Categories:
133 Views

This MATLAB dataset (.mat) contains the collected real measurement data from a total of 470 access points (APs) deployed in the Linnanmaa campus of the University of Oulu, Finland. The measurements include IDs, dates of data collection, number of users, received traffic data, transmitted traffic data and location names of each AP. Each observation of traffic data and number of users provide the data value at every 10-minute interval between December 18, 2018 and February 12, 2019. Please cite this as: S. P. Sone & Janne Lehtomäki & Zaheer Khan.

Instructions: 

Major component description: There are 3 main major components: number of users connected at collected time (numb_users), received traffic data in bytes (rxbytes) and transmitted traffic data in bytes (txbytes) of each AP in this dataset. Dates and times of data collection (date) can be converted into the serial date number by using datenum() function in MATLAB.

 

Received and transmitted traffic data are in the cumulative time series format so that differencing every 2 consecutive observations is required to get the actual values at every 10-minute. It can be done by using diff() function in MATLAB, for example, "diff(ap184016.txbytes)".

 

Setup and running instructions: First, MATLAB must be installed in the computer correctly. Then, the downloaded dataset should be placed in the folder whose path is already specified in MATLAB (see https://in.mathworks.com/help/matlab/matlab_env/specify-file-names.html).

 

Once the dataset (APs_dataset.mat) is loaded correctly in MATLAB, total 470 structure arrays with the IDs of each AP will appear in MATLAB Workspace. Then, the desired time series can be called in MATLAB, for example, "Tx_data = diff(ap184016.txbytes);".

Categories:
197 Views

We collected experimental field data with a prototype open-ended waveguide sensor (WR975) operating between 600 MHz - 1300 MHz. With our prototype sensor we collected reflection coefficient measurements at a total of 50 unique 1-ft^2 sites across two separate established cranberry beds in central Wisconsin. The sensor was placed directly on top of cranberry-crop bed canopies, and we obtained 12 independent reflection coefficient measurements (each defined as one S11 sweep across frequency) at each 1-ft^2 site by randomly rotating and/or translating the sensor aperture above each site. After

Categories:
97 Views

The endmembers of a hyperspectral image (HSI) are more likely to be generated by independent sources and be mixed in a macroscopic degree before arriving at the sensor element of the imaging spectrometer as mixed spectra.

Categories:
108 Views

Synergistic prostheses enable the coordinated movement of the human-prosthetic arm, as required by activities of daily living. This is achieved by coupling the motion of the prosthesis to the human command, such as residual limb movement in motion-based interfaces. Previous studies demonstrated that developing human-prosthetic synergies in joint-space must consider individual motor behaviour and the intended task to be performed, requiring personalisation and task calibration.

Instructions: 

Task-space synergy comparison data-set for the experiments performed in 2019-2020.

Directory:

  • Processed: Processed data from MATLAB in ".mat" format. Organised by session and subject.
  • Raw: Raw time-series data gathered from sensors in ".csv" format. Each file represents a trial where a subject performed a reaching task. Organised by subject, modality and session. Anonymised subject information is included in a ".json" file.
    • Columns of the time-series files represent the different data gathered.
    • Rows of the time-series files represent the values at the given time "t".
  • Scripts: MATLAB scripts used to process and plot data. See ProcessAndUpdateSubjectData for data processing steps.
Categories:
108 Views

This dataset covers cellular communication signals in the SCF format. There is a total of 60000 signal instances, 36000 of them are reserved as training data and the rest is for the test. The SNR levels are between 1 dB and 15 dB.

Instructions: 

For each SNR level, the training dataset has four files. The user can concatenate these files. The same procedure is valid for the test dataset.

 

The labels mean:

 

0 -> AWGN (no signal in the spectrum)

 

1 -> UMTS

 

2 -> LTE

 

3 -> GSM

Categories:
230 Views

Pages