Correct unit of curves and scalling

This commit is contained in:
Thomas Dehaeze 2019-05-03 11:32:54 +02:00
parent 3f0d0c6cdf
commit f7b4a29c96
12 changed files with 46 additions and 20 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 KiB

After

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 177 KiB

After

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 KiB

After

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 139 KiB

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

View File

@ -106,29 +106,56 @@ We load the data of the z axis of two geophones.
** Computation of the ASD of the measured voltage ** Computation of the ASD of the measured voltage
We first define the parameters for the frequency domain analysis. We first define the parameters for the frequency domain analysis.
#+begin_src matlab :results none #+begin_src matlab :results none
Fs = 1/dt; Fs = 1/dt; % [Hz]
win = hanning(ceil(10*Fs)); win = hanning(ceil(10*Fs));
#+end_src #+end_src
Then we compute the Power Spectral Density using =pwelch= function.
#+begin_src matlab :results none #+begin_src matlab :results none
[pxx1, f] = pwelch(x1, win, [], [], Fs); [pxx1, f] = pwelch(x1, win, [], [], Fs);
[pxx2, ~] = pwelch(x2, win, [], [], Fs); [pxx2, ~] = pwelch(x2, win, [], [], Fs);
#+end_src #+end_src
And we plot the result on figure [[fig:asd_voltage]].
#+begin_src matlab :results none
figure;
hold on;
plot(f, sqrt(pxx1));
plot(f, sqrt(pxx2));
hold off;
set(gca, 'xscale', 'log');
set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('ASD of the measured Voltage $\left[\frac{V}{\sqrt{Hz}}\right]$')
xlim([0.1, 500]);
#+end_src
#+NAME: fig:asd_voltage
#+HEADER: :tangle no :exports results :results value raw replace :noweb yes
#+begin_src matlab :var filepath="figs/asd_voltage.pdf" :var figsize="full-tall" :post pdf2svg(file=*this*, ext="png")
<<plt-matlab>>
#+end_src
#+NAME: fig:asd_voltage
#+CAPTION: Amplitude Spectral Density of the measured voltage
#+RESULTS: fig:asd_voltage
[[file:figs/asd_voltage.png]]
** Scaling to take into account the sensibility of the geophone and the voltage amplifier ** Scaling to take into account the sensibility of the geophone and the voltage amplifier
The Geophone used are L22. The Geophone used are L22. Their sensibility is shown on figure [[fig:geophone_sensibility]].
Their sensibility are shown on figure [[fig:geophone_sensibility]].
#+begin_src matlab :results none #+begin_src matlab :results none
S0 = 88; % Sensitivity [V/(m/s)] S0 = 88; % Sensitivity [V/(m/s)]
f0 = 2; % Cut-off frequnecy [Hz] f0 = 2; % Cut-off frequnecy [Hz]
S = (s/2/pi/f0)/(1+s/2/pi/f0);
S = S0*(s/2/pi/f0)/(1+s/2/pi/f0);
#+end_src #+end_src
#+begin_src matlab :results none :exports none #+begin_src matlab :results none :exports none
figure; figure;
bodeFig({S}); bodeFig({S}, logspace(-1, 2, 1000));
ylabel('Amplitude [V/(m/s)]') ylabel('Amplitude $\left[\frac{V}{m/s}\right]$')
#+end_src #+end_src
#+NAME: fig:geophone_sensibility #+NAME: fig:geophone_sensibility
@ -144,19 +171,18 @@ Their sensibility are shown on figure [[fig:geophone_sensibility]].
We also take into account the gain of the electronics which is here set to be $60dB$. We also take into account the gain of the electronics which is here set to be $60dB$.
The amplifiers also include a low pass filter with a cut-off frequency set at 1kHz.
#+begin_src matlab :results none #+begin_src matlab :results none
G0 = 60; % [dB] G0_db = 60; % [dB]
G = 10^(G0/20)/(1+s/2/pi/1000); G0 = 10^(60/G0_db); % [abs]
#+end_src #+end_src
We divide the ASD measured (in $\text{V}/\sqrt{\text{Hz}}$) by the transfer function of the voltage amplifier to obtain the ASD of the voltage across the geophone. We divide the ASD measured (in $\text{V}/\sqrt{\text{Hz}}$) by the gain of the voltage amplifier to obtain the ASD of the voltage across the geophone.
We further divide the result by the sensibility of the Geophone to obtain the ASD of the velocity in $m/s/\sqrt{Hz}$. We further divide the result by the sensibility of the Geophone to obtain the ASD of the velocity in $m/s/\sqrt{Hz}$.
#+begin_src matlab :results none #+begin_src matlab :results none
scaling = 1./squeeze(abs(freqresp(G*S, f, 'Hz'))); scaling = 1./squeeze(abs(freqresp(G0*S, f, 'Hz')));
#+end_src #+end_src
** Computation of the ASD of the velocity ** Computation of the ASD of the velocity
@ -170,7 +196,7 @@ The ASD of the measured velocity is shown on figure [[fig:psd_velocity]].
hold off; hold off;
set(gca, 'xscale', 'log'); set(gca, 'xscale', 'log');
set(gca, 'yscale', 'log'); set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('PSD [m/s/sqrt(Hz)]') xlabel('Frequency [Hz]'); ylabel('ASD of the measured Velocity $\left[\frac{m/s}{\sqrt{Hz}}\right]$')
xlim([0.1, 500]); xlim([0.1, 500]);
#+end_src #+end_src
@ -181,7 +207,7 @@ The ASD of the measured velocity is shown on figure [[fig:psd_velocity]].
#+end_src #+end_src
#+NAME: fig:psd_velocity #+NAME: fig:psd_velocity
#+CAPTION: Spectral density of the velocity #+CAPTION: Amplitude Spectral Density of the Velocity
#+RESULTS: fig:psd_velocity #+RESULTS: fig:psd_velocity
[[file:figs/psd_velocity.png]] [[file:figs/psd_velocity.png]]
@ -190,11 +216,11 @@ We also plot the ASD in displacement (figure [[fig:asd_displacement]]);
#+begin_src matlab :results none #+begin_src matlab :results none
figure; figure;
hold on; hold on;
plot(f, (pxx1.*scaling./f).^2); plot(f, (sqrt(pxx1).*scaling)./(2*pi*f));
plot(f, (pxx2.*scaling./f).^2); plot(f, (sqrt(pxx2).*scaling)./(2*pi*f));
hold off; hold off;
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('PSD [m/s/sqrt(Hz)]') xlabel('Frequency [Hz]'); ylabel('ASD of the displacement $\left[\frac{m}{\sqrt{Hz}}\right]$')
xlim([0.1, 500]); xlim([0.1, 500]);
#+end_src #+end_src
@ -205,7 +231,7 @@ We also plot the ASD in displacement (figure [[fig:asd_displacement]]);
#+end_src #+end_src
#+NAME: fig:asd_displacement #+NAME: fig:asd_displacement
#+CAPTION: Amplitude Spectral Density of the displacement as measured by the geophones #+CAPTION: Amplitude Spectral Density of the Displacement
#+RESULTS: fig:asd_displacement #+RESULTS: fig:asd_displacement
[[file:figs/asd_displacement.png]] [[file:figs/asd_displacement.png]]
@ -232,7 +258,7 @@ We also compute the coherence between the two signals (figure [[fig:coh_geophone
set(gca, 'xscale', 'log'); set(gca, 'xscale', 'log');
ylim([-180, 180]); ylim([-180, 180]);
yticks([-180, -90, 0, 90, 180]); yticks([-180, -90, 0, 90, 180]);
xlabel('Frequency [Hz]'); ylabel('Phase'); xlabel('Frequency [Hz]'); ylabel('Phase [deg]');
linkaxes([ax1,ax2],'x'); linkaxes([ax1,ax2],'x');
xlim([0.1, 500]); xlim([0.1, 500]);
@ -338,7 +364,7 @@ The instrumental noise is computed below. The result in V^2/Hz is shown on figur
plot(f, pxxN, 'k--'); plot(f, pxxN, 'k--');
hold off; hold off;
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('PSD [$V^2/Hz$]'); xlabel('Frequency [Hz]'); ylabel('PSD of the measured Voltage $\left[\frac{V^2}{Hz}\right]$');
xlim([0.1, 500]); xlim([0.1, 500]);
#+end_src #+end_src
@ -362,7 +388,7 @@ This is then further converted into velocity and compared with the ground veloci
plot(f, sqrt(pxxN).*scaling, 'k--'); plot(f, sqrt(pxxN).*scaling, 'k--');
hold off; hold off;
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log'); set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('PSD [$m/s/\sqrt{Hz}$]'); xlabel('Frequency [Hz]'); ylabel('ASD of the Velocity $\left[\frac{m/s}{\sqrt{Hz}}\right]$');
xlim([0.1, 500]); xlim([0.1, 500]);
#+end_src #+end_src