Use online CSS and JS
This commit is contained in:
@@ -3,17 +3,13 @@
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||
<head>
|
||||
<!-- 2020-10-26 lun. 18:59 -->
|
||||
<!-- 2020-11-12 jeu. 10:44 -->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||
<title>Complementary Filters Shaping Using \(\mathcal{H}_\infty\) Synthesis - Matlab Computation</title>
|
||||
<meta name="generator" content="Org mode" />
|
||||
<meta name="author" content="Thomas Dehaeze" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/htmlize.css"/>
|
||||
<link rel="stylesheet" type="text/css" href="../css/readtheorg.css"/>
|
||||
<script src="../js/jquery.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.stickytableheaders.min.js"></script>
|
||||
<script src="../js/readtheorg.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="https://research.tdehaeze.xyz/css/style.css"/>
|
||||
<script type="text/javascript" src="https://research.tdehaeze.xyz/js/script.js"></script>
|
||||
<script>MathJax = {
|
||||
tex: {
|
||||
tags: 'ams',
|
||||
@@ -34,29 +30,29 @@
|
||||
<h2>Table of Contents</h2>
|
||||
<div id="text-table-of-contents">
|
||||
<ul>
|
||||
<li><a href="#orgcd571e1">1. H-Infinity synthesis of complementary filters</a>
|
||||
<li><a href="#org8213c74">1. H-Infinity synthesis of complementary filters</a>
|
||||
<ul>
|
||||
<li><a href="#orgea65f42">1.1. Synthesis Architecture</a></li>
|
||||
<li><a href="#org8a8a446">1.2. Design of Weighting Function</a></li>
|
||||
<li><a href="#orgfe22503">1.3. H-Infinity Synthesis</a></li>
|
||||
<li><a href="#orgf9471db">1.4. Obtained Complementary Filters</a></li>
|
||||
<li><a href="#org106a9c7">1.1. Synthesis Architecture</a></li>
|
||||
<li><a href="#org986f54a">1.2. Design of Weighting Function</a></li>
|
||||
<li><a href="#orge3bcbcd">1.3. H-Infinity Synthesis</a></li>
|
||||
<li><a href="#org93a0167">1.4. Obtained Complementary Filters</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org0e59118">2. Generating 3 complementary filters</a>
|
||||
<li><a href="#org2f5413b">2. Generating 3 complementary filters</a>
|
||||
<ul>
|
||||
<li><a href="#orgfbd127e">2.1. Theory</a></li>
|
||||
<li><a href="#orgb689a85">2.2. Weights</a></li>
|
||||
<li><a href="#org24d1ff1">2.3. H-Infinity Synthesis</a></li>
|
||||
<li><a href="#orgef81b1e">2.4. Obtained Complementary Filters</a></li>
|
||||
<li><a href="#org180c831">2.1. Theory</a></li>
|
||||
<li><a href="#orgb4c7909">2.2. Weights</a></li>
|
||||
<li><a href="#org5a36c59">2.3. H-Infinity Synthesis</a></li>
|
||||
<li><a href="#orgf8d8907">2.4. Obtained Complementary Filters</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#org2c0b99c">3. Implement complementary filters for LIGO</a>
|
||||
<li><a href="#org1236499">3. Implement complementary filters for LIGO</a>
|
||||
<ul>
|
||||
<li><a href="#org6ea0071">3.1. Specifications</a></li>
|
||||
<li><a href="#org8f811fb">3.2. FIR Filter</a></li>
|
||||
<li><a href="#org9a34a27">3.3. Weights</a></li>
|
||||
<li><a href="#orgc9f5d68">3.4. H-Infinity Synthesis</a></li>
|
||||
<li><a href="#orgd83a581">3.5. Compare FIR and H-Infinity Filters</a></li>
|
||||
<li><a href="#org2d8dbcc">3.1. Specifications</a></li>
|
||||
<li><a href="#orga974b40">3.2. FIR Filter</a></li>
|
||||
<li><a href="#org33657ff">3.3. Weights</a></li>
|
||||
<li><a href="#orgb74a3c5">3.4. H-Infinity Synthesis</a></li>
|
||||
<li><a href="#org8b29f2c">3.5. Compare FIR and H-Infinity Filters</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@@ -81,25 +77,25 @@ To achieve this, the sensors included in the filter should complement one anothe
|
||||
This document is divided into several sections:
|
||||
</p>
|
||||
<ul class="org-ul">
|
||||
<li>in section <a href="#org954a80e">1</a>, the \(\mathcal{H}_\infty\) synthesis is used for generating two complementary filters</li>
|
||||
<li>in section <a href="#orga319f0c">2</a>, a method using the \(\mathcal{H}_\infty\) synthesis is proposed to shape three of more complementary filters</li>
|
||||
<li>in section <a href="#orgb69dc24">3</a>, the \(\mathcal{H}_\infty\) synthesis is used and compared with FIR complementary filters used for LIGO</li>
|
||||
<li>in section <a href="#org181592e">1</a>, the \(\mathcal{H}_\infty\) synthesis is used for generating two complementary filters</li>
|
||||
<li>in section <a href="#org670207e">2</a>, a method using the \(\mathcal{H}_\infty\) synthesis is proposed to shape three of more complementary filters</li>
|
||||
<li>in section <a href="#org3725bd2">3</a>, the \(\mathcal{H}_\infty\) synthesis is used and compared with FIR complementary filters used for LIGO</li>
|
||||
</ul>
|
||||
|
||||
<div class="note" id="org3c0f990">
|
||||
<div class="note" id="orgf9dc18e">
|
||||
<p>
|
||||
Add the Matlab code use to obtain the results presented in the paper are accessible <a href="matlab.zip">here</a> and presented below.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgcd571e1" class="outline-2">
|
||||
<h2 id="orgcd571e1"><span class="section-number-2">1</span> H-Infinity synthesis of complementary filters</h2>
|
||||
<div id="outline-container-org8213c74" class="outline-2">
|
||||
<h2 id="org8213c74"><span class="section-number-2">1</span> H-Infinity synthesis of complementary filters</h2>
|
||||
<div class="outline-text-2" id="text-1">
|
||||
<p>
|
||||
<a id="org954a80e"></a>
|
||||
<a id="org181592e"></a>
|
||||
</p>
|
||||
<div class="note" id="orgca3b1ba">
|
||||
<div class="note" id="orgfba238b">
|
||||
<p>
|
||||
The Matlab file corresponding to this section is accessible <a href="matlab/h_inf_synthesis_complementary_filters.m">here</a>.
|
||||
</p>
|
||||
@@ -107,8 +103,8 @@ The Matlab file corresponding to this section is accessible <a href="matlab/h_in
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgea65f42" class="outline-3">
|
||||
<h3 id="orgea65f42"><span class="section-number-3">1.1</span> Synthesis Architecture</h3>
|
||||
<div id="outline-container-org106a9c7" class="outline-3">
|
||||
<h3 id="org106a9c7"><span class="section-number-3">1.1</span> Synthesis Architecture</h3>
|
||||
<div class="outline-text-3" id="text-1-1">
|
||||
<p>
|
||||
We here synthesize two complementary filters using the \(\mathcal{H}_\infty\) synthesis.
|
||||
@@ -116,18 +112,18 @@ The goal is to specify upper bounds on the norms of the two complementary filter
|
||||
</p>
|
||||
|
||||
<p>
|
||||
In order to do so, we use the generalized plant shown on figure <a href="#org46317e2">1</a> where \(W_1(s)\) and \(W_2(s)\) are weighting transfer functions that will be used to shape \(H_1(s)\) and \(H_2(s)\) respectively.
|
||||
In order to do so, we use the generalized plant shown on figure <a href="#orgb57e788">1</a> where \(W_1(s)\) and \(W_2(s)\) are weighting transfer functions that will be used to shape \(H_1(s)\) and \(H_2(s)\) respectively.
|
||||
</p>
|
||||
|
||||
|
||||
<div id="org46317e2" class="figure">
|
||||
<div id="orgb57e788" class="figure">
|
||||
<p><img src="figs-tikz/h_infinity_robust_fusion.png" alt="h_infinity_robust_fusion.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 1: </span>\(\mathcal{H}_\infty\) synthesis of the complementary filters</p>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
The \(\mathcal{H}_\infty\) synthesis applied on this generalized plant will give a transfer function \(H_2\) (figure <a href="#org46317e2">1</a>) such that the \(\mathcal{H}_\infty\) norm of the transfer function from \(w\) to \([z_1,\ z_2]\) is less than one:
|
||||
The \(\mathcal{H}_\infty\) synthesis applied on this generalized plant will give a transfer function \(H_2\) (figure <a href="#orgb57e788">1</a>) such that the \(\mathcal{H}_\infty\) norm of the transfer function from \(w\) to \([z_1,\ z_2]\) is less than one:
|
||||
\[ \left\| \begin{array}{c} (1 - H_2(s)) W_1(s) \\ H_2(s) W_2(s) \end{array} \right\|_\infty < 1 \]
|
||||
</p>
|
||||
|
||||
@@ -147,8 +143,8 @@ We then see that \(W_1(s)\) and \(W_2(s)\) can be used to shape both \(H_1(s)\)
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8a8a446" class="outline-3">
|
||||
<h3 id="org8a8a446"><span class="section-number-3">1.2</span> Design of Weighting Function</h3>
|
||||
<div id="outline-container-org986f54a" class="outline-3">
|
||||
<h3 id="org986f54a"><span class="section-number-3">1.2</span> Design of Weighting Function</h3>
|
||||
<div class="outline-text-3" id="text-1-2">
|
||||
<p>
|
||||
A formula is proposed to help the design of the weighting functions:
|
||||
@@ -172,11 +168,11 @@ The parameters permits to specify:
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
The general shape of a weighting function generated using the formula is shown in figure <a href="#org4ee6999">2</a>.
|
||||
The general shape of a weighting function generated using the formula is shown in figure <a href="#org5840815">2</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<div id="org4ee6999" class="figure">
|
||||
<div id="org5840815" class="figure">
|
||||
<p><img src="figs-tikz/weight_formula.png" alt="weight_formula.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 2: </span>Amplitude of the proposed formula for the weighting functions</p>
|
||||
@@ -192,7 +188,7 @@ W2 = (((1<span class="org-type">/</span>w0)<span class="org-type">*</span>sqrt((
|
||||
</div>
|
||||
|
||||
|
||||
<div id="org79474f8" class="figure">
|
||||
<div id="org518a313" class="figure">
|
||||
<p><img src="figs/weights_W1_W2.png" alt="weights_W1_W2.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 3: </span>Weights on the complementary filters \(W_1\) and \(W_2\) and the associated performance weights</p>
|
||||
@@ -200,8 +196,8 @@ W2 = (((1<span class="org-type">/</span>w0)<span class="org-type">*</span>sqrt((
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfe22503" class="outline-3">
|
||||
<h3 id="orgfe22503"><span class="section-number-3">1.3</span> H-Infinity Synthesis</h3>
|
||||
<div id="outline-container-orge3bcbcd" class="outline-3">
|
||||
<h3 id="orge3bcbcd"><span class="section-number-3">1.3</span> H-Infinity Synthesis</h3>
|
||||
<div class="outline-text-3" id="text-1-3">
|
||||
<p>
|
||||
We define the generalized plant \(P\) on matlab.
|
||||
@@ -221,7 +217,7 @@ And we do the \(\mathcal{H}_\infty\) synthesis using the <code>hinfsyn</code> co
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<pre class="example" id="org9fcd456">
|
||||
<pre class="example" id="org819e288">
|
||||
[H2, ~, gamma, ~] = hinfsyn(P, 1, 1,'TOLGAM', 0.001, 'METHOD', 'ric', 'DISPLAY', 'on');
|
||||
Resetting value of Gamma min based on D_11, D_12, D_21 terms
|
||||
|
||||
@@ -255,7 +251,7 @@ Test bounds: 0.1000 < gamma <= 1050.0000
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
We then define the high pass filter \(H_1 = 1 - H_2\). The bode plot of both \(H_1\) and \(H_2\) is shown on figure <a href="#orgbc23afe">4</a>.
|
||||
We then define the high pass filter \(H_1 = 1 - H_2\). The bode plot of both \(H_1\) and \(H_2\) is shown on figure <a href="#orgf63dab4">4</a>.
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
@@ -265,15 +261,15 @@ We then define the high pass filter \(H_1 = 1 - H_2\). The bode plot of both \(H
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgf9471db" class="outline-3">
|
||||
<h3 id="orgf9471db"><span class="section-number-3">1.4</span> Obtained Complementary Filters</h3>
|
||||
<div id="outline-container-org93a0167" class="outline-3">
|
||||
<h3 id="org93a0167"><span class="section-number-3">1.4</span> Obtained Complementary Filters</h3>
|
||||
<div class="outline-text-3" id="text-1-4">
|
||||
<p>
|
||||
The obtained complementary filters are shown on figure <a href="#orgbc23afe">4</a>.
|
||||
The obtained complementary filters are shown on figure <a href="#orgf63dab4">4</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<div id="orgbc23afe" class="figure">
|
||||
<div id="orgf63dab4" class="figure">
|
||||
<p><img src="figs/hinf_filters_results.png" alt="hinf_filters_results.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 4: </span>Obtained complementary filters using \(\mathcal{H}_\infty\) synthesis</p>
|
||||
@@ -282,13 +278,13 @@ The obtained complementary filters are shown on figure <a href="#orgbc23afe">4</
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org0e59118" class="outline-2">
|
||||
<h2 id="org0e59118"><span class="section-number-2">2</span> Generating 3 complementary filters</h2>
|
||||
<div id="outline-container-org2f5413b" class="outline-2">
|
||||
<h2 id="org2f5413b"><span class="section-number-2">2</span> Generating 3 complementary filters</h2>
|
||||
<div class="outline-text-2" id="text-2">
|
||||
<p>
|
||||
<a id="orga319f0c"></a>
|
||||
<a id="org670207e"></a>
|
||||
</p>
|
||||
<div class="note" id="org2ba2674">
|
||||
<div class="note" id="org9dc9516">
|
||||
<p>
|
||||
The Matlab file corresponding to this section is accessible <a href="matlab/three_comp_filters.m">here</a>.
|
||||
</p>
|
||||
@@ -296,8 +292,8 @@ The Matlab file corresponding to this section is accessible <a href="matlab/thre
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgfbd127e" class="outline-3">
|
||||
<h3 id="orgfbd127e"><span class="section-number-3">2.1</span> Theory</h3>
|
||||
<div id="outline-container-org180c831" class="outline-3">
|
||||
<h3 id="org180c831"><span class="section-number-3">2.1</span> Theory</h3>
|
||||
<div class="outline-text-3" id="text-2-1">
|
||||
<p>
|
||||
We want:
|
||||
@@ -310,11 +306,11 @@ We want:
|
||||
\end{align*}
|
||||
|
||||
<p>
|
||||
For that, we use the \(\mathcal{H}_\infty\) synthesis with the architecture shown on figure <a href="#org353bdb6">5</a>.
|
||||
For that, we use the \(\mathcal{H}_\infty\) synthesis with the architecture shown on figure <a href="#orga622494">5</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<div id="org353bdb6" class="figure">
|
||||
<div id="orga622494" class="figure">
|
||||
<p><img src="figs-tikz/comp_filter_three_hinf.png" alt="comp_filter_three_hinf.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 5: </span>Generalized architecture for generating 3 complementary filters</p>
|
||||
@@ -335,8 +331,8 @@ And thus if we choose \(H_1 = 1 - H_2 - H_3\) we have solved the problem.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgb689a85" class="outline-3">
|
||||
<h3 id="orgb689a85"><span class="section-number-3">2.2</span> Weights</h3>
|
||||
<div id="outline-container-orgb4c7909" class="outline-3">
|
||||
<h3 id="orgb4c7909"><span class="section-number-3">2.2</span> Weights</h3>
|
||||
<div class="outline-text-3" id="text-2-2">
|
||||
<p>
|
||||
First we define the weights.
|
||||
@@ -353,7 +349,7 @@ W3 = (((1<span class="org-type">/</span>w0)<span class="org-type">*</span>sqrt((
|
||||
</div>
|
||||
|
||||
|
||||
<div id="org743463d" class="figure">
|
||||
<div id="org9526a8b" class="figure">
|
||||
<p><img src="figs/three_weighting_functions.png" alt="three_weighting_functions.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 6: </span>Three weighting functions used for the \(\mathcal{H}_\infty\) synthesis of the complementary filters</p>
|
||||
@@ -361,8 +357,8 @@ W3 = (((1<span class="org-type">/</span>w0)<span class="org-type">*</span>sqrt((
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org24d1ff1" class="outline-3">
|
||||
<h3 id="org24d1ff1"><span class="section-number-3">2.3</span> H-Infinity Synthesis</h3>
|
||||
<div id="outline-container-org5a36c59" class="outline-3">
|
||||
<h3 id="org5a36c59"><span class="section-number-3">2.3</span> H-Infinity Synthesis</h3>
|
||||
<div class="outline-text-3" id="text-2-3">
|
||||
<p>
|
||||
Then we create the generalized plant <code>P</code>.
|
||||
@@ -383,7 +379,7 @@ And we do the \(\mathcal{H}_\infty\) synthesis.
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<pre class="example" id="org4dc4918">
|
||||
<pre class="example" id="orgd289daa">
|
||||
[H, ~, gamma, ~] = hinfsyn(P, 1, 2,'TOLGAM', 0.001, 'METHOD', 'ric', 'DISPLAY', 'on');
|
||||
Resetting value of Gamma min based on D_11, D_12, D_21 terms
|
||||
|
||||
@@ -418,8 +414,8 @@ Test bounds: 0.1000 < gamma <= 1050.0000
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgef81b1e" class="outline-3">
|
||||
<h3 id="orgef81b1e"><span class="section-number-3">2.4</span> Obtained Complementary Filters</h3>
|
||||
<div id="outline-container-orgf8d8907" class="outline-3">
|
||||
<h3 id="orgf8d8907"><span class="section-number-3">2.4</span> Obtained Complementary Filters</h3>
|
||||
<div class="outline-text-3" id="text-2-4">
|
||||
<p>
|
||||
The obtained filters are:
|
||||
@@ -432,7 +428,7 @@ H1 = 1 <span class="org-type">-</span> H2 <span class="org-type">-</span> H3;
|
||||
</div>
|
||||
|
||||
|
||||
<div id="org7b51da2" class="figure">
|
||||
<div id="orgf8995ee" class="figure">
|
||||
<p><img src="figs/three_complementary_filters_results.png" alt="three_complementary_filters_results.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 7: </span>The three complementary filters obtained after \(\mathcal{H}_\infty\) synthesis</p>
|
||||
@@ -441,13 +437,13 @@ H1 = 1 <span class="org-type">-</span> H2 <span class="org-type">-</span> H3;
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org2c0b99c" class="outline-2">
|
||||
<h2 id="org2c0b99c"><span class="section-number-2">3</span> Implement complementary filters for LIGO</h2>
|
||||
<div id="outline-container-org1236499" class="outline-2">
|
||||
<h2 id="org1236499"><span class="section-number-2">3</span> Implement complementary filters for LIGO</h2>
|
||||
<div class="outline-text-2" id="text-3">
|
||||
<p>
|
||||
<a id="orgb69dc24"></a>
|
||||
<a id="org3725bd2"></a>
|
||||
</p>
|
||||
<div class="note" id="orgce8d730">
|
||||
<div class="note" id="orgef062eb">
|
||||
<p>
|
||||
The Matlab file corresponding to this section is accessible <a href="matlab/comp_filters_ligo.m">here</a>.
|
||||
</p>
|
||||
@@ -463,8 +459,8 @@ The FIR complementary filters designed in (<a href="#citeproc_bib_item_1">Hua 20
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org6ea0071" class="outline-3">
|
||||
<h3 id="org6ea0071"><span class="section-number-3">3.1</span> Specifications</h3>
|
||||
<div id="outline-container-org2d8dbcc" class="outline-3">
|
||||
<h3 id="org2d8dbcc"><span class="section-number-3">3.1</span> Specifications</h3>
|
||||
<div class="outline-text-3" id="text-3-1">
|
||||
<p>
|
||||
The specifications for the filters are:
|
||||
@@ -477,11 +473,11 @@ The specifications for the filters are:
|
||||
</ol>
|
||||
|
||||
<p>
|
||||
The specifications are translated in upper bounds of the complementary filters are shown on figure <a href="#orgcfe60ed">8</a>.
|
||||
The specifications are translated in upper bounds of the complementary filters are shown on figure <a href="#orge86890c">8</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<div id="orgcfe60ed" class="figure">
|
||||
<div id="orge86890c" class="figure">
|
||||
<p><img src="figs/ligo_specifications.png" alt="ligo_specifications.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 8: </span>Specification for the LIGO complementary filters</p>
|
||||
@@ -489,8 +485,8 @@ The specifications are translated in upper bounds of the complementary filters a
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org8f811fb" class="outline-3">
|
||||
<h3 id="org8f811fb"><span class="section-number-3">3.2</span> FIR Filter</h3>
|
||||
<div id="outline-container-orga974b40" class="outline-3">
|
||||
<h3 id="orga974b40"><span class="section-number-3">3.2</span> FIR Filter</h3>
|
||||
<div class="outline-text-3" id="text-3-2">
|
||||
<p>
|
||||
We here try to implement the FIR complementary filter synthesis as explained in (<a href="#citeproc_bib_item_1">Hua 2005</a>).
|
||||
@@ -571,7 +567,7 @@ h = y(2<span class="org-type">:</span>end);
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<pre class="example" id="orgd562951">
|
||||
<pre class="example" id="orgbf29758">
|
||||
cvx_begin
|
||||
variable y(n+1,1)
|
||||
% t
|
||||
@@ -648,7 +644,7 @@ h = y(2:end);
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
Finally, we compute the filter response over the frequency vector defined and the result is shown on figure <a href="#org0d25e01">9</a> which is very close to the filters obtain in (<a href="#citeproc_bib_item_1">Hua 2005</a>).
|
||||
Finally, we compute the filter response over the frequency vector defined and the result is shown on figure <a href="#org6095ba3">9</a> which is very close to the filters obtain in (<a href="#citeproc_bib_item_1">Hua 2005</a>).
|
||||
</p>
|
||||
|
||||
<div class="org-src-container">
|
||||
@@ -658,16 +654,16 @@ H = [exp(<span class="org-type">-</span><span class="org-constant">j</span><span
|
||||
</div>
|
||||
|
||||
|
||||
<div id="org0d25e01" class="figure">
|
||||
<div id="org6095ba3" class="figure">
|
||||
<p><img src="figs/fir_filter_ligo.png" alt="fir_filter_ligo.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 9: </span>FIR Complementary filters obtain after convex optimization (<a href="./figs/fir_filter_ligo.png">png</a>, <a href="./figs/fir_filter_ligo.pdf">pdf</a>)</p>
|
||||
<p><span class="figure-number">Figure 9: </span>FIR Complementary filters obtain after convex optimization</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-org9a34a27" class="outline-3">
|
||||
<h3 id="org9a34a27"><span class="section-number-3">3.3</span> Weights</h3>
|
||||
<div id="outline-container-org33657ff" class="outline-3">
|
||||
<h3 id="org33657ff"><span class="section-number-3">3.3</span> Weights</h3>
|
||||
<div class="outline-text-3" id="text-3-3">
|
||||
<p>
|
||||
We design weights that will be used for the \(\mathcal{H}_\infty\) synthesis of the complementary filters.
|
||||
@@ -681,11 +677,11 @@ Here are the requirements on the filters:
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
The bode plot of the weights is shown on figure <a href="#orge27ef5e">10</a>.
|
||||
The bode plot of the weights is shown on figure <a href="#org9b70f72">10</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<div id="orge27ef5e" class="figure">
|
||||
<div id="org9b70f72" class="figure">
|
||||
<p><img src="figs/ligo_weights.png" alt="ligo_weights.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 10: </span>Weights for the \(\mathcal{H}_\infty\) synthesis</p>
|
||||
@@ -693,11 +689,11 @@ The bode plot of the weights is shown on figure <a href="#orge27ef5e">10</a>.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgc9f5d68" class="outline-3">
|
||||
<h3 id="orgc9f5d68"><span class="section-number-3">3.4</span> H-Infinity Synthesis</h3>
|
||||
<div id="outline-container-orgb74a3c5" class="outline-3">
|
||||
<h3 id="orgb74a3c5"><span class="section-number-3">3.4</span> H-Infinity Synthesis</h3>
|
||||
<div class="outline-text-3" id="text-3-4">
|
||||
<p>
|
||||
We define the generalized plant as shown on figure <a href="#org46317e2">1</a>.
|
||||
We define the generalized plant as shown on figure <a href="#orgb57e788">1</a>.
|
||||
</p>
|
||||
<div class="org-src-container">
|
||||
<pre class="src src-matlab">P = [0 wL;
|
||||
@@ -714,7 +710,7 @@ And we do the \(\mathcal{H}_\infty\) synthesis using the <code>hinfsyn</code> co
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<pre class="example" id="org51b2320">
|
||||
<pre class="example" id="orgc616ee9">
|
||||
[Hl, ~, gamma, ~] = hinfsyn(P, 1, 1,'TOLGAM', 0.001, 'METHOD', 'ric', 'DISPLAY', 'on');
|
||||
Resetting value of Gamma min based on D_11, D_12, D_21 terms
|
||||
|
||||
@@ -749,18 +745,18 @@ The high pass filter is defined as \(H_H = 1 - H_L\).
|
||||
The size of the filters is shown below.
|
||||
</p>
|
||||
|
||||
<pre class="example" id="orgede384d">
|
||||
<pre class="example" id="org2166bb4">
|
||||
size(Hh), size(Hl)
|
||||
State-space model with 1 outputs, 1 inputs, and 27 states.
|
||||
State-space model with 1 outputs, 1 inputs, and 27 states.
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
The bode plot of the obtained filters as shown on figure <a href="#org941eede">11</a>.
|
||||
The bode plot of the obtained filters as shown on figure <a href="#org637c959">11</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<div id="org941eede" class="figure">
|
||||
<div id="org637c959" class="figure">
|
||||
<p><img src="figs/hinf_synthesis_ligo_results.png" alt="hinf_synthesis_ligo_results.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 11: </span>Obtained complementary filters using the \(\mathcal{H}_\infty\) synthesis</p>
|
||||
@@ -768,15 +764,15 @@ The bode plot of the obtained filters as shown on figure <a href="#org941eede">1
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="outline-container-orgd83a581" class="outline-3">
|
||||
<h3 id="orgd83a581"><span class="section-number-3">3.5</span> Compare FIR and H-Infinity Filters</h3>
|
||||
<div id="outline-container-org8b29f2c" class="outline-3">
|
||||
<h3 id="org8b29f2c"><span class="section-number-3">3.5</span> Compare FIR and H-Infinity Filters</h3>
|
||||
<div class="outline-text-3" id="text-3-5">
|
||||
<p>
|
||||
Let’s now compare the FIR filters designed in (<a href="#citeproc_bib_item_1">Hua 2005</a>) and the one obtained with the \(\mathcal{H}_\infty\) synthesis on figure <a href="#org4f70e8a">12</a>.
|
||||
Let’s now compare the FIR filters designed in (<a href="#citeproc_bib_item_1">Hua 2005</a>) and the one obtained with the \(\mathcal{H}_\infty\) synthesis on figure <a href="#orgf4bf8ca">12</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<div id="org4f70e8a" class="figure">
|
||||
<div id="orgf4bf8ca" class="figure">
|
||||
<p><img src="figs/comp_fir_ligo_hinf.png" alt="comp_fir_ligo_hinf.png" />
|
||||
</p>
|
||||
<p><span class="figure-number">Figure 12: </span>Comparison between the FIR filters developped for LIGO and the \(\mathcal{H}_\infty\) complementary filters</p>
|
||||
@@ -796,7 +792,7 @@ Let’s now compare the FIR filters designed in (<a href="#citeproc_bib_item
|
||||
</div>
|
||||
<div id="postamble" class="status">
|
||||
<p class="author">Author: Thomas Dehaeze</p>
|
||||
<p class="date">Created: 2020-10-26 lun. 18:59</p>
|
||||
<p class="date">Created: 2020-11-12 jeu. 10:44</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -1,18 +1,14 @@
|
||||
#+TITLE: Complementary Filters Shaping Using $\mathcal{H}_\infty$ Synthesis - Matlab Computation
|
||||
:DRAWER:
|
||||
#+HTML_LINK_HOME: ../index.html
|
||||
#+HTML_LINK_UP: ../index.html
|
||||
#+HTML_LINK_UP: ../index.html
|
||||
|
||||
#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="https://research.tdehaeze.xyz/css/style.css"/>
|
||||
#+HTML_HEAD: <script type="text/javascript" src="https://research.tdehaeze.xyz/js/script.js"></script>
|
||||
|
||||
#+LATEX_CLASS: cleanreport
|
||||
#+LATEX_CLASS_OPTIONS: [tocnp, secbreak, minted]
|
||||
|
||||
#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="../css/htmlize.css"/>
|
||||
#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="../css/readtheorg.css"/>
|
||||
#+HTML_HEAD: <script src="../js/jquery.min.js"></script>
|
||||
#+HTML_HEAD: <script src="../js/bootstrap.min.js"></script>
|
||||
#+HTML_HEAD: <script src="../js/jquery.stickytableheaders.min.js"></script>
|
||||
#+HTML_HEAD: <script src="../js/readtheorg.js"></script>
|
||||
|
||||
#+PROPERTY: header-args:matlab :session *MATLAB*
|
||||
#+PROPERTY: header-args:matlab+ :tangle matlab/comp_filters_design.m
|
||||
#+PROPERTY: header-args:matlab+ :comments org
|
||||
|
Reference in New Issue
Block a user