-Data is scaled and integrated one time to go from velocity to displacement.
+The Geophone sensitivity is defined below:
-
load('./raw_data/freq_frf.mat') % freq_frf
+w0 = 4.5*2*pi;
+ksi = 0.38;
+G0 = 31.3;
+G = G0*(s/w0)^2/((s/w0)^2 + 2*ksi*(s/w0) + 1);
+
+
-w =
j*2*pi*freq_frf;
% j.omega in [rad/s]
+
+We then:
+
+
+- load the data
+- add a minus sign when needed
+- integrate the signal to have displacement instead of velocity
+- scaled with the sensitivity of the Geophone
+
+
+
load('./raw_data/freq_frf.mat')
-scale_factor = 1;
+w = j*2*pi*freq_frf;
-load('./raw_data/frf_marble_x.mat') % ReIm1
-frf_marble_x = zeros(size(ReIm1, 1), 3);
-frf_marble_x(:, 1) = -scale_factor*ReIm1(:, 2)./w; % marble_x
-frf_marble_x(:, 2) = -scale_factor*ReIm1(:, 3)./w; % tilt_x
-frf_marble_x(:, 3) = -scale_factor*ReIm1(:, 4)./w; % hexa_x
+scaling = squeeze(freqresp(G, 2*pi*freq_frf))/G0;
-load('./raw_data/frf_hexa_x.mat') % ReIm2
-frf_hexa_x = zeros(size(ReIm2, 1), 3);
-frf_hexa_x(:, 1) = -scale_factor*ReIm2(:, 2)./w; % marble_x
-frf_hexa_x(:, 2) = -scale_factor*ReIm2(:, 3)./w; % tilt_x
-frf_hexa_x(:, 3) = -scale_factor*ReIm2(:, 4)./w; % hexa_x
+load('./raw_data/frf_marble_x.mat')
+frf_marble_x = zeros(size(ReIm1, 1), 3);
+frf_marble_x(:, 1) = -ReIm1(:, 2)./w./scaling;
+frf_marble_x(:, 2) = -ReIm1(:, 3)./w./scaling;
+frf_marble_x(:, 3) = -ReIm1(:, 4)./w./scaling;
-load('./raw_data/frf_marble_y.mat') % ReIm3
-frf_marble_y = zeros(size(ReIm3, 1), 3);
-frf_marble_y(:, 1) = -scale_factor*ReIm3(:, 2)./w; % marble_y
-frf_marble_y(:, 2) = -scale_factor*ReIm3(:, 3)./w; % tilt_y
-frf_marble_y(:, 3) = -scale_factor*ReIm3(:, 4)./w; % hexa_y
+load('./raw_data/frf_hexa_x.mat')
+frf_hexa_x = zeros(size(ReIm2, 1), 3);
+frf_hexa_x(:, 1) = -ReIm2(:, 2)./w./scaling;
+frf_hexa_x(:, 2) = -ReIm2(:, 3)./w./scaling;
+frf_hexa_x(:, 3) = -ReIm2(:, 4)./w./scaling;
-load('./raw_data/frf_hexa_y.mat') % ReIm4
-frf_hexa_y = zeros(size(ReIm4, 1), 3);
-frf_hexa_y(:, 1) = scale_factor*ReIm4(:, 2)./w; % marble_y
-frf_hexa_y(:, 2) = scale_factor*ReIm4(:, 3)./w; % tilt_y
-frf_hexa_y(:, 3) = scale_factor*ReIm4(:, 4)./w; % hexa_y
+load('./raw_data/frf_marble_y.mat')
+frf_marble_y = zeros(size(ReIm3, 1), 3);
+frf_marble_y(:, 1) = -ReIm3(:, 2)./w./scaling;
+frf_marble_y(:, 2) = -ReIm3(:, 3)./w./scaling;
+frf_marble_y(:, 3) = -ReIm3(:, 4)./w./scaling;
-load('./raw_data/frf_marble_z.mat') % ReIm5
-frf_marble_z = zeros(size(ReIm5, 1), 3);
-frf_marble_z(:, 1) = scale_factor*ReIm5(:, 2)./w; % marble_z
-frf_marble_z(:, 2) = scale_factor*ReIm5(:, 3)./w; % tilt_z
-frf_marble_z(:, 3) = scale_factor*ReIm5(:, 4)./w; % hexa_z
+load('./raw_data/frf_hexa_y.mat')
+frf_hexa_y = zeros(size(ReIm4, 1), 3);
+frf_hexa_y(:, 1) = ReIm4(:, 2)./w./scaling;
+frf_hexa_y(:, 2) = ReIm4(:, 3)./w./scaling;
+frf_hexa_y(:, 3) = ReIm4(:, 4)./w./scaling;
-load('./raw_data/frf_hexa_z.mat') % ReIm6
-frf_hexa_z = zeros(size(ReIm6, 1), 3);
-frf_hexa_z(:, 1) = scale_factor*ReIm6(:, 2)./w; % marble_z
-frf_hexa_z(:, 2) = scale_factor*ReIm6(:, 3)./w; % tilt_z
-frf_hexa_z(:, 3) = scale_factor*ReIm6(:, 4)./w; % hexa_z
+load('./raw_data/frf_marble_z.mat')
+frf_marble_z = zeros(size(ReIm5, 1), 3);
+frf_marble_z(:, 1) = ReIm5(:, 2)./w./scaling;
+frf_marble_z(:, 2) = ReIm5(:, 3)./w./scaling;
+frf_marble_z(:, 3) = ReIm5(:, 4)./w./scaling;
+
+load('./raw_data/frf_hexa_z.mat')
+frf_hexa_z = zeros(size(ReIm6, 1), 3);
+frf_hexa_z(:, 1) = ReIm6(:, 2)./w./scaling;
+frf_hexa_z(:, 2) = ReIm6(:, 3)./w./scaling;
+frf_hexa_z(:, 3) = ReIm6(:, 4)./w./scaling;
-
load('./raw_data/coher_marble_x.mat') % coh1
-coh_marble_x = zeros(size(coh1, 1), 3);
-coh_marble_x(:, 1) = coh1(:, 2); % marble_x
-coh_marble_x(:, 2) = coh1(:, 3); % tilt_x
-coh_marble_x(:, 3) = coh1(:, 4); % hexa_x
+load('./raw_data/coher_marble_x.mat')
+coh_marble_x = zeros(size(coh1, 1), 3);
+coh_marble_x(:, 1) = coh1(:, 2);
+coh_marble_x(:, 2) = coh1(:, 3);
+coh_marble_x(:, 3) = coh1(:, 4);
-load('./raw_data/coher_hexa_x.mat') % coh2
-coh_hexa_x = zeros(size(coh2, 1), 3);
-coh_hexa_x(:, 1) = coh2(:, 2); % marble_x
-coh_hexa_x(:, 2) = coh2(:, 3); % tilt_x
-coh_hexa_x(:, 3) = coh2(:, 4); % hexa_x
+load('./raw_data/coher_hexa_x.mat')
+coh_hexa_x = zeros(size(coh2, 1), 3);
+coh_hexa_x(:, 1) = coh2(:, 2);
+coh_hexa_x(:, 2) = coh2(:, 3);
+coh_hexa_x(:, 3) = coh2(:, 4);
-load('./raw_data/coher_marble_y.mat') % coh3
-coh_marble_y = zeros(size(coh3, 1), 3);
-coh_marble_y(:, 1) = coh3(:, 2); % marble_y
-coh_marble_y(:, 2) = coh3(:, 3); % tilt_y
-coh_marble_y(:, 3) = coh3(:, 4); % hexa_y
+load('./raw_data/coher_marble_y.mat')
+coh_marble_y = zeros(size(coh3, 1), 3);
+coh_marble_y(:, 1) = coh3(:, 2);
+coh_marble_y(:, 2) = coh3(:, 3);
+coh_marble_y(:, 3) = coh3(:, 4);
-load('./raw_data/coher_hexa_y.mat') % coh4
-coh_hexa_y = zeros(size(coh4, 1), 3);
-coh_hexa_y(:, 1) = coh4(:, 2); % marble_y
-coh_hexa_y(:, 2) = coh4(:, 3); % tilt_y
-coh_hexa_y(:, 3) = coh4(:, 4); % hexa_y
+load('./raw_data/coher_hexa_y.mat')
+coh_hexa_y = zeros(size(coh4, 1), 3);
+coh_hexa_y(:, 1) = coh4(:, 2);
+coh_hexa_y(:, 2) = coh4(:, 3);
+coh_hexa_y(:, 3) = coh4(:, 4);
-load('./raw_data/coher_marble_z.mat') % coh5
-coh_marble_z = zeros(size(coh5, 1), 3);
-coh_marble_z(:, 1) = coh5(:, 2); % marble_z
-coh_marble_z(:, 2) = coh5(:, 3); % tilt_z
-coh_marble_z(:, 3) = coh5(:, 4); % hexa_z
+load('./raw_data/coher_marble_z.mat')
+coh_marble_z = zeros(size(coh5, 1), 3);
+coh_marble_z(:, 1) = coh5(:, 2);
+coh_marble_z(:, 2) = coh5(:, 3);
+coh_marble_z(:, 3) = coh5(:, 4);
-load('./raw_data/coher_hexa_z.mat') % coh6
-coh_hexa_z = zeros(size(coh6, 1), 3);
-coh_hexa_z(:, 1) = coh6(:, 2); % marble_z
-coh_hexa_z(:, 2) = coh6(:, 3); % tilt_z
-coh_hexa_z(:, 3) = coh6(:, 4); % hexa_z
+load('./raw_data/coher_hexa_z.mat')
+coh_hexa_z = zeros(size(coh6, 1), 3);
+coh_hexa_z(:, 1) = coh6(:, 2);
+coh_hexa_z(:, 2) = coh6(:, 3);
+coh_hexa_z(:, 3) = coh6(:, 4);
+
+
+
+
+Finally, we save the processed data.
+
+
+
save('./data/id31_microstation_2018_01_12_frf.mat', ...
+ 'frf_marble_x', ...
+ 'frf_marble_y', ...
+ 'frf_marble_z', ...
+ 'frf_hexa_x', ...
+ 'frf_hexa_y', ...
+ 'frf_hexa_z');
+save('./data/id31_microstation_2018_01_12_frf.mat', ...
+ 'coh_marble_x', ...
+ 'coh_marble_y', ...
+ 'coh_marble_z', ...
+ 'coh_hexa_x', ...
+ 'coh_hexa_y', ...
+ 'coh_hexa_z');