Add bibliography file. Add huddle-test analysis.
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2019-04-18 jeu. 09:47 -->
|
||||
<!-- 2019-04-18 jeu. 17:02 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>SpeedGoat</title>
|
||||
@@ -246,6 +246,28 @@ for the JavaScript code in this tag.
|
||||
}
|
||||
/*]]>*///-->
|
||||
</script>
|
||||
<script type="text/x-mathjax-config">
|
||||
MathJax.Hub.Config({
|
||||
displayAlign: "center",
|
||||
displayIndent: "0em",
|
||||
|
||||
"HTML-CSS": { scale: 100,
|
||||
linebreaks: { automatic: "false" },
|
||||
webFont: "TeX"
|
||||
},
|
||||
SVG: {scale: 100,
|
||||
linebreaks: { automatic: "false" },
|
||||
font: "TeX"},
|
||||
NativeMML: {scale: 100},
|
||||
TeX: { equationNumbers: {autoNumber: "AMS"},
|
||||
MultLineWidth: "85%",
|
||||
TagSide: "right",
|
||||
TagIndent: ".8em"
|
||||
}
|
||||
});
|
||||
</script>
|
||||
<script type="text/javascript"
|
||||
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS_HTML"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="content">
|
||||
@@ -254,22 +276,36 @@ for the JavaScript code in this tag.
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#org0d60e7b">1. Setup</a></li>
|
||||
<li><a href="#org7eef25c">2. Signal Processing</a>
|
||||
<li><a href="#org15c3fe1">1. Setup</a></li>
|
||||
<li><a href="#org10e7b57">2. Signal Processing</a>
|
||||
<ul>
|
||||
<li><a href="#orgca77dc3">2.1. Load data</a></li>
|
||||
<li><a href="#org679612f">2.2. Time Domain Data</a></li>
|
||||
<li><a href="#org03c3a8f">2.3. Compute PSD</a></li>
|
||||
<li><a href="#org63e55c2">2.4. Take into account sensibility of Geophone</a></li>
|
||||
<li><a href="#orgbf05153">2.5. Transfer function between the two geophones</a></li>
|
||||
<li><a href="#orgce9374f">2.1. Load data</a></li>
|
||||
<li><a href="#orgf5bde3c">2.2. Time Domain Data</a></li>
|
||||
<li><a href="#org53fa3f2">2.3. Computation of the ASD of the measured voltage</a></li>
|
||||
<li><a href="#orgdb1374d">2.4. Scaling to take into account the sensibility of the geophone and the voltage amplifier</a></li>
|
||||
<li><a href="#org07e8527">2.5. Computation of the ASD of the velocity</a></li>
|
||||
<li><a href="#orgf3d4fe6">2.6. Transfer function between the two geophones</a></li>
|
||||
<li><a href="#org1336e7b">2.7. Estimation of the sensor noise</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orgaee4ca7">3. Compare axis</a>
|
||||
<ul>
|
||||
<li><a href="#org4a91ee9">3.1. Load data</a></li>
|
||||
<li><a href="#org36adfc5">3.2. Compare PSD</a></li>
|
||||
<li><a href="#org698e322">3.3. Compare TF</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#orge3ff149">4. Appendix</a>
|
||||
<ul>
|
||||
<li><a href="#org2060421">4.1. Computation of coherence from PSD and CSD</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0d60e7b" class="outline-2">
|
||||
<h2 id="org0d60e7b"><span class="section-number-2">1</span> Setup</h2>
|
||||
<div id="outline-container-org15c3fe1" class="outline-2">
|
||||
<h2 id="org15c3fe1"><span class="section-number-2">1</span> Setup</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
Two L22 geophones are used.
|
||||
@@ -283,14 +319,14 @@ The voltage amplifiers include a low pass filter with a cut-off frequency at 1kH
|
||||
</p>
|
||||
|
||||
|
||||
<div id="org6a1fa99" class="figure">
|
||||
<div id="org2286cc3" class="figure">
|
||||
<p><img src="./figs/setup.jpg" alt="setup.jpg" width="500px" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 1: </span>Setup</p>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="org30e0467" class="figure">
|
||||
<div id="org9446018" class="figure">
|
||||
<p><img src="./figs/geophones.jpg" alt="geophones.jpg" width="500px" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 2: </span>Geophones</p>
|
||||
@@ -298,13 +334,16 @@ The voltage amplifiers include a low pass filter with a cut-off frequency at 1kH
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org7eef25c" class="outline-2">
|
||||
<h2 id="org7eef25c"><span class="section-number-2">2</span> Signal Processing</h2>
|
||||
<div id="outline-container-org10e7b57" class="outline-2">
|
||||
<h2 id="org10e7b57"><span class="section-number-2">2</span> Signal Processing</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
</div>
|
||||
<div id="outline-container-orgca77dc3" class="outline-3">
|
||||
<h3 id="orgca77dc3"><span class="section-number-3">2.1</span> Load data</h3>
|
||||
<div id="outline-container-orgce9374f" class="outline-3">
|
||||
<h3 id="orgce9374f"><span class="section-number-3">2.1</span> Load data</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
We load the data of the z axis of two geophones.
|
||||
</p>
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'mat/data_001.mat', 't', 'x1', 'x2'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
dt = t<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">)</span> <span class="org-type">-</span> t<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
@@ -313,8 +352,8 @@ dt = t<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-high
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org679612f" class="outline-3">
|
||||
<h3 id="org679612f"><span class="section-number-3">2.2</span> Time Domain Data</h3>
|
||||
<div id="outline-container-orgf5bde3c" class="outline-3">
|
||||
<h3 id="orgf5bde3c"><span class="section-number-3">2.2</span> Time Domain Data</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab"><span class="org-type">figure</span>;
|
||||
@@ -329,7 +368,7 @@ xlim<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbo
|
||||
</div>
|
||||
|
||||
|
||||
<div id="org53abd46" class="figure">
|
||||
<div id="org2d30e99" class="figure">
|
||||
<p><img src="figs/data_time_domain.png" alt="data_time_domain.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 3: </span>Time domain Data</p>
|
||||
@@ -349,7 +388,7 @@ xlim<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbo
|
||||
</div>
|
||||
|
||||
|
||||
<div id="org2c53eef" class="figure">
|
||||
<div id="org8e28356" class="figure">
|
||||
<p><img src="figs/data_time_domain_zoom.png" alt="data_time_domain_zoom.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 4: </span>Time domain Data - Zoom</p>
|
||||
@@ -357,23 +396,34 @@ xlim<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbo
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org03c3a8f" class="outline-3">
|
||||
<h3 id="org03c3a8f"><span class="section-number-3">2.3</span> Compute PSD</h3>
|
||||
<div id="outline-container-org53fa3f2" class="outline-3">
|
||||
<h3 id="org53fa3f2"><span class="section-number-3">2.3</span> Computation of the ASD of the measured voltage</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
We first define the parameters for the frequency domain analysis.
|
||||
</p>
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>pxx1, f1<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>x1, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-highlight-numbers-number">0</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
<span class="org-rainbow-delimiters-depth-1">[</span>pxx2, f2<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>x2, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-highlight-numbers-number">0</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
<pre class="src src-matlab">win = hanning<span class="org-rainbow-delimiters-depth-1">(</span>ceil<span class="org-rainbow-delimiters-depth-2">(</span>length<span class="org-rainbow-delimiters-depth-3">(</span>x1<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">100</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
Fs = <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span>dt;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>pxx1, f<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>x1, win, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
<span class="org-rainbow-delimiters-depth-1">[</span>pxx2, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>x2, win, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org63e55c2" class="outline-3">
|
||||
<h3 id="org63e55c2"><span class="section-number-3">2.4</span> Take into account sensibility of Geophone</h3>
|
||||
<div id="outline-container-orgdb1374d" class="outline-3">
|
||||
<h3 id="orgdb1374d"><span class="section-number-3">2.4</span> Scaling to take into account the sensibility of the geophone and the voltage amplifier</h3>
|
||||
<div class="outline-text-3" id="text-2-4">
|
||||
<p>
|
||||
The Geophone used are L22.
|
||||
Their sensibility are shown on figure <a href="#org59aaa6d">5</a>.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">S0 = <span class="org-highlight-numbers-number">88</span>; <span class="org-comment">% Sensitivity [V/(m/s)]</span>
|
||||
f0 = <span class="org-highlight-numbers-number">2</span>; <span class="org-comment">% Cut-off frequnecy [Hz]</span>
|
||||
@@ -381,15 +431,8 @@ S = <span class="org-rainbow-delimiters-depth-1">(</span>s<span class="org-type"
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab"><span class="org-type">figure</span>;
|
||||
bodeFig<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbow-delimiters-depth-2">{</span>S<span class="org-rainbow-delimiters-depth-2">}</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
ylabel<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'Amplitude </span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">[</span></span><span class="org-string">V/</span><span class="org-string"><span class="org-rainbow-delimiters-depth-3">(</span></span><span class="org-string">m/s</span><span class="org-string"><span class="org-rainbow-delimiters-depth-3">)</span></span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">]</span></span><span class="org-string">'</span><span class="org-rainbow-delimiters-depth-1">)</span>
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="orgf3fae86" class="figure">
|
||||
<div id="org59aaa6d" class="figure">
|
||||
<p><img src="figs/geophone_sensibility.png" alt="geophone_sensibility.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 5: </span>Sensibility of the Geophone</p>
|
||||
@@ -397,15 +440,10 @@ ylabel<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-stri
|
||||
|
||||
|
||||
<p>
|
||||
We take into account the gain of the electronics.
|
||||
The cut-off frequency is set at 1kHz.
|
||||
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.
|
||||
</p>
|
||||
|
||||
<ul class="org-ul">
|
||||
<li class="off"><code>[ ]</code> Check what is the order of the filter</li>
|
||||
<li class="off"><code>[ ]</code> Maybe I should not use this filter as there is no high frequencies anyway?</li>
|
||||
</ul>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">G0 = <span class="org-highlight-numbers-number">60</span>; <span class="org-comment">% [dB]</span>
|
||||
|
||||
@@ -413,11 +451,30 @@ G = G0<span class="org-type">/</span><span class="org-rainbow-delimiters-depth-1
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
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 further divide the result by the sensibility of the Geophone to obtain the ASD of the velocity in \(m/s/\sqrt{Hz}\).
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">scaling = <span class="org-highlight-numbers-number">1</span><span class="org-type">./</span>squeeze<span class="org-rainbow-delimiters-depth-1">(</span>abs<span class="org-rainbow-delimiters-depth-2">(</span>freqresp<span class="org-rainbow-delimiters-depth-3">(</span>G, f, <span class="org-string">'Hz'</span><span class="org-string"><span class="org-rainbow-delimiters-depth-3">)</span></span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">)</span></span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">)</span></span><span class="org-string">./squeeze</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">(</span></span><span class="org-string">abs</span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">(</span></span><span class="org-string">freqresp</span><span class="org-string"><span class="org-rainbow-delimiters-depth-3">(</span></span><span class="org-string">S, f, 'Hz'</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org07e8527" class="outline-3">
|
||||
<h3 id="org07e8527"><span class="section-number-3">2.5</span> Computation of the ASD of the velocity</h3>
|
||||
<div class="outline-text-3" id="text-2-5">
|
||||
<p>
|
||||
The ASD of the measured velocity is shown on figure <a href="#orgd1800a0">6</a>.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab"><span class="org-type">figure</span>;
|
||||
hold on;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f1, sqrt<span class="org-rainbow-delimiters-depth-2">(</span>pxx1<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">./</span>squeeze<span class="org-rainbow-delimiters-depth-2">(</span>abs<span class="org-rainbow-delimiters-depth-3">(</span>freqresp<span class="org-rainbow-delimiters-depth-4">(</span>G, f1, <span class="org-string">'Hz'</span><span class="org-string"><span class="org-rainbow-delimiters-depth-4">)</span></span><span class="org-string"><span class="org-rainbow-delimiters-depth-3">)</span></span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">)</span></span><span class="org-string">./squeeze</span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">(</span></span><span class="org-string">abs</span><span class="org-string"><span class="org-rainbow-delimiters-depth-3">(</span></span><span class="org-string">freqresp</span><span class="org-string"><span class="org-rainbow-delimiters-depth-4">(</span></span><span class="org-string">S, f1, 'Hz'</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f2, sqrt<span class="org-rainbow-delimiters-depth-2">(</span>pxx2<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">./</span>squeeze<span class="org-rainbow-delimiters-depth-2">(</span>abs<span class="org-rainbow-delimiters-depth-3">(</span>freqresp<span class="org-rainbow-delimiters-depth-4">(</span>G, f2, <span class="org-string">'Hz'</span><span class="org-string"><span class="org-rainbow-delimiters-depth-4">)</span></span><span class="org-string"><span class="org-rainbow-delimiters-depth-3">)</span></span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">)</span></span><span class="org-string">./squeeze</span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">(</span></span><span class="org-string">abs</span><span class="org-string"><span class="org-rainbow-delimiters-depth-3">(</span></span><span class="org-string">freqresp</span><span class="org-string"><span class="org-rainbow-delimiters-depth-4">(</span></span><span class="org-string">S, f2, 'Hz'</span><span class="org-rainbow-delimiters-depth-4">)</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, sqrt<span class="org-rainbow-delimiters-depth-2">(</span>pxx1<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">./</span>scaling<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, sqrt<span class="org-rainbow-delimiters-depth-2">(</span>pxx2<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">./</span>scaling<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
hold off;
|
||||
<span class="org-type">set</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-variable-name">gca</span>, <span class="org-string">'xscale', 'log'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
<span class="org-type">set</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-variable-name">gca</span>, <span class="org-string">'yscale', 'log'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
@@ -427,54 +484,308 @@ xlim<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbo
|
||||
</div>
|
||||
|
||||
|
||||
<div id="orga831714" class="figure">
|
||||
<div id="orgd1800a0" class="figure">
|
||||
<p><img src="figs/psd_velocity.png" alt="psd_velocity.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 6: </span>Spectral density of the velocity</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orgbf05153" class="outline-3">
|
||||
<h3 id="orgbf05153"><span class="section-number-3">2.5</span> Transfer function between the two geophones</h3>
|
||||
<div class="outline-text-3" id="text-2-5">
|
||||
|
||||
<div id="outline-container-orgf3d4fe6" class="outline-3">
|
||||
<h3 id="orgf3d4fe6"><span class="section-number-3">2.6</span> Transfer function between the two geophones</h3>
|
||||
<div class="outline-text-3" id="text-2-6">
|
||||
<p>
|
||||
We here compute the transfer function from one geophone to the other.
|
||||
The result is shown on figure <a href="#org6abd5e1">7</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
We also compute the coherence between the two signals (figure <a href="#org80d61f1">8</a>).
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>T12, f12<span class="org-rainbow-delimiters-depth-1">]</span> = tfestimate<span class="org-rainbow-delimiters-depth-1">(</span>x1, x2, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span>length<span class="org-rainbow-delimiters-depth-4">(</span>x1<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">100</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span>dt<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
<pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>T12, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = tfestimate<span class="org-rainbow-delimiters-depth-1">(</span>x1, x2, win, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="org6abd5e1" class="figure">
|
||||
<p><img src="figs/tf_geophones.png" alt="tf_geophones.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 7: </span>Estimated transfer function between the two geophones</p>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>coh12, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = mscohere<span class="org-rainbow-delimiters-depth-1">(</span>x1, x2, win, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="org80d61f1" class="figure">
|
||||
<p><img src="figs/coh_geophones.png" alt="coh_geophones.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 8: </span>Cohererence between the signals of the two geophones</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org1336e7b" class="outline-3">
|
||||
<h3 id="org1336e7b"><span class="section-number-3">2.7</span> Estimation of the sensor noise</h3>
|
||||
<div class="outline-text-3" id="text-2-7">
|
||||
<p>
|
||||
The technique to estimate the sensor noise is taken from <a class='org-ref-reference' href="#barzilai98_techn_measur_noise_sensor_presen">barzilai98_techn_measur_noise_sensor_presen</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The coherence between signals \(X\) and \(Y\) is defined as follow
|
||||
\[ \gamma^2_{XY}(\omega) = \frac{|G_{XY}(\omega)|^2}{|G_{X}(\omega)| |G_{Y}(\omega)|} \]
|
||||
where \(|G_X(\omega)|\) is the output Power Spectral Density (PSD) of signal \(X\) and \(|G_{XY}(\omega)|\) is the Cross Spectral Density (CSD) of signal \(X\) and \(Y\).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The PSD and CSD are defined as follow:
|
||||
</p>
|
||||
\begin{align}
|
||||
|G_X(\omega)| &= \frac{2}{n_d T} \sum^{n_d}_{n=1} \left| X_k(\omega, T) \right|^2 \\
|
||||
|G_{XY}(\omega)| &= \frac{2}{n_d T} \sum^{n_d}_{n=1} [ X_k^*(\omega, T) ] [ Y_k(\omega, T) ]
|
||||
\end{align}
|
||||
<p>
|
||||
where:
|
||||
</p>
|
||||
<ul class="org-ul">
|
||||
<li>\(n_d\) is the number for records averaged</li>
|
||||
<li>\(T\) is the length of each record</li>
|
||||
<li>\(X_k(\omega, T)\) is the finite Fourier transform of the kth record</li>
|
||||
<li>\(X_k^*(\omega, T)\) is its complex conjugate</li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
The <code>mscohere</code> function is compared with this formula on Appendix (section <a href="#org72623b2">4.1</a>), it is shown that it is identical.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Figure <a href="#org88b4597">9</a> illustrate a block diagram model of the system used to determine the sensor noise of the geophone.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Two geophones are mounted side by side to ensure that they are exposed by the same motion input \(U\).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Each sensor has noise \(N\) and \(M\).
|
||||
</p>
|
||||
|
||||
|
||||
<div id="org88b4597" class="figure">
|
||||
<p><img src="figs/huddle-test.png" alt="huddle-test.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 9: </span>Huddle test block diagram</p>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
We here assume that each sensor has the same magnitude of instrumental noise (\(N = M\)).
|
||||
We also assume that \(H_1 = H_2 = 1\).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
We then obtain:
|
||||
</p>
|
||||
\begin{equation}
|
||||
\label{org5b4a541}
|
||||
\gamma_{XY}^2(\omega) = \frac{1}{1 + 2 \left( \frac{|G_N(\omega)|}{|G_U(\omega)|} \right) + \left( \frac{|G_N(\omega)|}{|G_U(\omega)|} \right)^2}
|
||||
\end{equation}
|
||||
|
||||
<p>
|
||||
Since the input signal \(U\) and the instrumental noise \(N\) are incoherent:
|
||||
</p>
|
||||
\begin{equation}
|
||||
\label{orga04bdf3}
|
||||
|G_X(\omega)| = |G_N(\omega)| + |G_U(\omega)|
|
||||
\end{equation}
|
||||
|
||||
<p>
|
||||
From equations \eqref{org5b4a541} and \eqref{orga04bdf3}, we finally obtain
|
||||
</p>
|
||||
<div class="important">
|
||||
\begin{equation}
|
||||
\label{orga57b1ae}
|
||||
|G_N(\omega)| = |G_X(\omega)| \left( 1 - \sqrt{\gamma_{XY}^2(\omega)} \right)
|
||||
\end{equation}
|
||||
|
||||
</div>
|
||||
|
||||
<p>
|
||||
The instrumental noise is computed below. The result in V<sup>2</sup>/Hz is shown on figure <a href="#orgd3329eb">10</a>.
|
||||
</p>
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">pxxN = pxx1<span class="org-type">.*</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-highlight-numbers-number">1</span> <span class="org-type">-</span> coh12<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab"><span class="org-type">figure</span>;
|
||||
ax1 = subplot<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-highlight-numbers-number">2</span>, <span class="org-highlight-numbers-number">1</span>, <span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f12, abs<span class="org-rainbow-delimiters-depth-2">(</span>T12<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
hold on;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, pxx1, <span class="org-string">'-'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, pxx2, <span class="org-string">'-'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, pxxN, <span class="org-string">'k--'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
hold off;
|
||||
<span class="org-type">set</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-variable-name">gca</span>, <span class="org-string">'xscale', 'log'</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">)</span></span><span class="org-string">; set</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">(</span></span><span class="org-string">gca, 'yscale', 'log'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
<span class="org-type">set</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-variable-name">gca</span>, <span class="org-string">'XTickLabel'</span>,<span class="org-rainbow-delimiters-depth-2">[]</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
ylabel<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'Magnitude'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
|
||||
ax2 = subplot<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-highlight-numbers-number">2</span>, <span class="org-highlight-numbers-number">1</span>, <span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f12, mod<span class="org-rainbow-delimiters-depth-2">(</span><span class="org-highlight-numbers-number">180</span><span class="org-type">+</span><span class="org-highlight-numbers-number">180</span><span class="org-type">/</span><span class="org-constant">pi</span><span class="org-type">*</span>phase<span class="org-rainbow-delimiters-depth-3">(</span>T12<span class="org-rainbow-delimiters-depth-3">)</span>, <span class="org-highlight-numbers-number">360</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">-</span><span class="org-highlight-numbers-number">180</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
<span class="org-type">set</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-variable-name">gca</span>, <span class="org-string">'xscale', 'log'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
ylim<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbow-delimiters-depth-2">[</span><span class="org-type">-</span><span class="org-highlight-numbers-number">180</span>, <span class="org-highlight-numbers-number">180</span><span class="org-rainbow-delimiters-depth-2">]</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
yticks<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbow-delimiters-depth-2">[</span><span class="org-type">-</span><span class="org-highlight-numbers-number">180</span>, <span class="org-type">-</span><span class="org-highlight-numbers-number">90</span>, <span class="org-highlight-numbers-number">0</span>, <span class="org-highlight-numbers-number">90</span>, <span class="org-highlight-numbers-number">180</span><span class="org-rainbow-delimiters-depth-2">]</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
xlabel<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'Frequency </span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">[</span></span><span class="org-string">Hz</span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">]</span></span><span class="org-string">'</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">)</span></span><span class="org-string">; ylabel</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">(</span></span><span class="org-string">'Phase'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
|
||||
linkaxes<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbow-delimiters-depth-2">[</span>ax1,ax2<span class="org-rainbow-delimiters-depth-2">]</span>,<span class="org-string">'x'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
xlabel<span class="org-rainbow-delimiters-depth-1">(</span>'Frequency <span class="org-rainbow-delimiters-depth-2">[</span>Hz<span class="org-rainbow-delimiters-depth-2">]</span>'<span class="org-rainbow-delimiters-depth-1">)</span>; ylabel<span class="org-rainbow-delimiters-depth-1">(</span>'PSD <span class="org-rainbow-delimiters-depth-2">[</span>$V<span class="org-type">^</span><span class="org-highlight-numbers-number">2</span><span class="org-type">/</span>Hz$<span class="org-rainbow-delimiters-depth-2">]</span>'<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
xlim<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbow-delimiters-depth-2">[</span><span class="org-highlight-numbers-number">1</span>, <span class="org-highlight-numbers-number">500</span><span class="org-rainbow-delimiters-depth-2">]</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="org4ff60a3" class="figure">
|
||||
<p><img src="figs/tf_geophones.png" alt="tf_geophones.png" />
|
||||
<div id="orgd3329eb" class="figure">
|
||||
<p><img src="figs/intrumental_noise_V.png" alt="intrumental_noise_V.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 7: </span>Estimated transfer function between the two geophones</p>
|
||||
<p><span class="figure-number">Figure 10: </span>Instrumental Noise and Measurement in \(V^2/Hz\)</p>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
This is then further converted into velocity and compared with the ground velocity measurement. (figure <a href="#org6fa2e55">11</a>)
|
||||
</p>
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab"><span class="org-type">figure</span>;
|
||||
hold on;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, sqrt<span class="org-rainbow-delimiters-depth-2">(</span>pxx1<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">.*</span>scaling, <span class="org-string">'-'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, sqrt<span class="org-rainbow-delimiters-depth-2">(</span>pxx2<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">.*</span>scaling, <span class="org-string">'-'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, sqrt<span class="org-rainbow-delimiters-depth-2">(</span>pxxN<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">.*</span>scaling, <span class="org-string">'k--'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
hold off;
|
||||
<span class="org-type">set</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-variable-name">gca</span>, <span class="org-string">'xscale', 'log'</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">)</span></span><span class="org-string">; set</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">(</span></span><span class="org-string">gca, 'yscale', 'log'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
xlabel<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'Frequency </span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">[</span></span><span class="org-string">Hz</span><span class="org-string"><span class="org-rainbow-delimiters-depth-2">]</span></span><span class="org-string">'</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">)</span></span><span class="org-string">; ylabel</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">(</span></span><span class="org-string">'</span>PSD <span class="org-rainbow-delimiters-depth-2">[</span>$m<span class="org-type">/</span>s<span class="org-type">/\</span>sqrt<span class="org-rainbow-delimiters-depth-3">{</span>Hz<span class="org-rainbow-delimiters-depth-3">}</span>$<span class="org-rainbow-delimiters-depth-2">]</span>'<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
xlim<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbow-delimiters-depth-2">[</span><span class="org-highlight-numbers-number">1</span>, <span class="org-highlight-numbers-number">500</span><span class="org-rainbow-delimiters-depth-2">]</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="org6fa2e55" class="figure">
|
||||
<p><img src="figs/intrumental_noise_velocity.png" alt="intrumental_noise_velocity.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 11: </span>Instrumental Noise and Measurement in \(m/s/\sqrt{Hz}\)</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgaee4ca7" class="outline-2">
|
||||
<h2 id="orgaee4ca7"><span class="section-number-2">3</span> Compare axis</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
</div>
|
||||
<div id="outline-container-org4a91ee9" class="outline-3">
|
||||
<h3 id="org4a91ee9"><span class="section-number-3">3.1</span> Load data</h3>
|
||||
<div class="outline-text-3" id="text-3-1">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">z = load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'mat/data_001.mat', 't', 'x1', 'x2'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
east = load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'mat/data_002.mat', 't', 'x1', 'x2'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
north = load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'mat/data_003.mat', 't', 'x1', 'x2'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org36adfc5" class="outline-3">
|
||||
<h3 id="org36adfc5"><span class="section-number-3">3.2</span> Compare PSD</h3>
|
||||
<div class="outline-text-3" id="text-3-2">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>pz1, fz<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>z.x1, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span>length<span class="org-rainbow-delimiters-depth-4">(</span>z.x1<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">100</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span><span class="org-rainbow-delimiters-depth-2">(</span>z.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">-</span>z.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
<span class="org-rainbow-delimiters-depth-1">[</span>pz2, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>z.x2, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span>length<span class="org-rainbow-delimiters-depth-4">(</span>z.x2<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">100</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span><span class="org-rainbow-delimiters-depth-2">(</span>z.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">-</span>z.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
|
||||
<span class="org-rainbow-delimiters-depth-1">[</span>pe1, fe<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>east.x1, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span>length<span class="org-rainbow-delimiters-depth-4">(</span>east.x1<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">100</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span><span class="org-rainbow-delimiters-depth-2">(</span>east.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">-</span>east.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
<span class="org-rainbow-delimiters-depth-1">[</span>pe2, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>east.x2, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span>length<span class="org-rainbow-delimiters-depth-4">(</span>east.x2<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">100</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span><span class="org-rainbow-delimiters-depth-2">(</span>east.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">-</span>east.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
|
||||
<span class="org-rainbow-delimiters-depth-1">[</span>pn1, fn<span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>north.x1, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span>length<span class="org-rainbow-delimiters-depth-4">(</span>north.x1<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">100</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span><span class="org-rainbow-delimiters-depth-2">(</span>north.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">-</span>north.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
<span class="org-rainbow-delimiters-depth-1">[</span>pn2, <span class="org-type">~</span><span class="org-rainbow-delimiters-depth-1">]</span> = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>north.x2, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span>length<span class="org-rainbow-delimiters-depth-4">(</span>north.x2<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">100</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span><span class="org-rainbow-delimiters-depth-2">(</span>north.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">-</span>north.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="orgc2c3d69" class="figure">
|
||||
<p><img src="figs/compare_axis_psd.png" alt="compare_axis_psd.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 12: </span>Compare the measure PSD of the two geophones for the three axis</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org698e322" class="outline-3">
|
||||
<h3 id="org698e322"><span class="section-number-3">3.3</span> Compare TF</h3>
|
||||
<div class="outline-text-3" id="text-3-3">
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab"><span class="org-rainbow-delimiters-depth-1">[</span>Tz, fz<span class="org-rainbow-delimiters-depth-1">]</span> = tfestimate<span class="org-rainbow-delimiters-depth-1">(</span>z.x1, z.x2, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span>length<span class="org-rainbow-delimiters-depth-4">(</span>z.x1<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">100</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span><span class="org-rainbow-delimiters-depth-2">(</span>z.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">-</span>z.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
<span class="org-rainbow-delimiters-depth-1">[</span>Te, fe<span class="org-rainbow-delimiters-depth-1">]</span> = tfestimate<span class="org-rainbow-delimiters-depth-1">(</span>east.x1, east.x2, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span>length<span class="org-rainbow-delimiters-depth-4">(</span>east.x1<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">100</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span><span class="org-rainbow-delimiters-depth-2">(</span>east.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">-</span>east.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
<span class="org-rainbow-delimiters-depth-1">[</span>Tn, fn<span class="org-rainbow-delimiters-depth-1">]</span> = tfestimate<span class="org-rainbow-delimiters-depth-1">(</span>north.x1, north.x2, hanning<span class="org-rainbow-delimiters-depth-2">(</span>ceil<span class="org-rainbow-delimiters-depth-3">(</span>length<span class="org-rainbow-delimiters-depth-4">(</span>north.x1<span class="org-rainbow-delimiters-depth-4">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">100</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span><span class="org-rainbow-delimiters-depth-2">(</span>north.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">-</span>north.t<span class="org-rainbow-delimiters-depth-3">(</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-3">)</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="orgf7b4d80" class="figure">
|
||||
<p><img src="figs/compare_tf_axis.png" alt="compare_tf_axis.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 13: </span>Compare the transfer function from one geophone to the other for the 3 axis</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="outline-container-orge3ff149" class="outline-2">
|
||||
<h2 id="orge3ff149"><span class="section-number-2">4</span> Appendix</h2>
|
||||
<div class="outline-text-2" id="text-4">
|
||||
</div>
|
||||
<div id="outline-container-org2060421" class="outline-3">
|
||||
<h3 id="org2060421"><span class="section-number-3">4.1</span> Computation of coherence from PSD and CSD</h3>
|
||||
<div class="outline-text-3" id="text-4-1">
|
||||
<p>
|
||||
<a id="org72623b2"></a>
|
||||
</p>
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">load<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'mat/data_001.mat', 't', 'x1', 'x2'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
dt = t<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-highlight-numbers-number">2</span><span class="org-rainbow-delimiters-depth-1">)</span> <span class="org-type">-</span> t<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-highlight-numbers-number">1</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
Fs = <span class="org-highlight-numbers-number">1</span><span class="org-type">/</span>dt;
|
||||
win = hanning<span class="org-rainbow-delimiters-depth-1">(</span>ceil<span class="org-rainbow-delimiters-depth-2">(</span>length<span class="org-rainbow-delimiters-depth-3">(</span>x1<span class="org-rainbow-delimiters-depth-3">)</span><span class="org-type">/</span><span class="org-highlight-numbers-number">100</span><span class="org-rainbow-delimiters-depth-2">)</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">pxy = cpsd<span class="org-rainbow-delimiters-depth-1">(</span>x1, x2, win, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
pxx = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>x1, win, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
pyy = pwelch<span class="org-rainbow-delimiters-depth-1">(</span>x2, win, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
coh = mscohere<span class="org-rainbow-delimiters-depth-1">(</span>x1, x2, win, <span class="org-rainbow-delimiters-depth-2">[]</span>, <span class="org-rainbow-delimiters-depth-2">[]</span>, Fs<span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab"><span class="org-type">figure</span>;
|
||||
hold on;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, abs<span class="org-rainbow-delimiters-depth-2">(</span>pxy<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">.^</span><span class="org-highlight-numbers-number">2</span><span class="org-type">./</span>abs<span class="org-rainbow-delimiters-depth-2">(</span>pxx<span class="org-rainbow-delimiters-depth-2">)</span><span class="org-type">./</span>abs<span class="org-rainbow-delimiters-depth-2">(</span>pyy<span class="org-rainbow-delimiters-depth-2">)</span>, <span class="org-string">'-'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
plot<span class="org-rainbow-delimiters-depth-1">(</span>f, coh, <span class="org-string">'--'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
hold off;
|
||||
<span class="org-type">set</span><span class="org-rainbow-delimiters-depth-1">(</span><span class="org-variable-name">gca</span>, <span class="org-string">'xscale', 'log'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
xlabel<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-string">'Frequency'</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">)</span></span><span class="org-string">; ylabel</span><span class="org-string"><span class="org-rainbow-delimiters-depth-1">(</span></span><span class="org-string">'Coherence'</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
xlim<span class="org-rainbow-delimiters-depth-1">(</span><span class="org-rainbow-delimiters-depth-2">[</span><span class="org-highlight-numbers-number">1</span>, <span class="org-highlight-numbers-number">500</span><span class="org-rainbow-delimiters-depth-2">]</span><span class="org-rainbow-delimiters-depth-1">)</span>;
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="org3184d2c" class="figure">
|
||||
<p><img src="figs/comp_coherence_formula.png" alt="comp_coherence_formula.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 14: </span>Comparison of <code>mscohere</code> and manual computation</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
|
||||
<h1 class='org-ref-bib-h1'>Bibliography</h1>
|
||||
<ul class='org-ref-bib'><li><a id="barzilai98_techn_measur_noise_sensor_presen">[barzilai98_techn_measur_noise_sensor_presen]</a> <a name="barzilai98_techn_measur_noise_sensor_presen"></a>Aaron Barzilai, Tom VanZandt & Tom Kenny, Technique for Measurement of the Noise of a Sensor in the Presence of Large Background Signals, <i>Review of Scientific Instruments</i>, <b>69(7)</b>, 2767-2772 (1998). <a href="https://doi.org/10.1063/1.1149013">link</a>. <a href="http://dx.doi.org/10.1063/1.1149013">doi</a>.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: Thomas Dehaeze</p>
|
||||
<p class="date">Created: 2019-04-18 jeu. 09:47</p>
|
||||
<p class="date">Created: 2019-04-18 jeu. 17:02</p>
|
||||
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
|
||||
</div>
|
||||
</body>
|
||||
|
Reference in New Issue
Block a user