add filtres numériques
This commit is contained in:
1 parent
e10ab79b06
commit
ec57b65794
2 files changed
+269
-1
No files matched your search
@@ -19,7 +19,7 @@ Les inconvénients des filtres récursifs :
|
||||
- Ils possèdent une phase non-linéaire
|
||||
- Ils peuvent avoir une instabilité numérique
|
||||
|
||||
Fonction de transfert en $z$ :
|
||||
***Fonction de transfert en $z$ :***
|
||||
$$F(z) = \frac{Y(z)}{U(z)} = \frac{b_{0}+b_{1}z^{-1}+\dots+b_{n}z^{-1}}{1+a_{1}z^{-1}+\dots+a_{n}z^{-n}}$$
|
||||
Numérisation par conversion DA et AD d'un filtre analogique :
|
||||
$$F(z) = (1-z^{-1})Z \left\{ L^{-1}\left[ \frac{F(s)}{s} \right] \right\} $$
|
||||
@@ -75,8 +75,231 @@ b_{1} = \frac{2\left( d_{0}-\frac{4d_{2}}{T_{s^{2}}} \right)}{C}
|
||||
b_{2} = \frac{d_{0}-\frac{2d_{1}}{T_{s}}+\frac{4d_{2}}{T_{s^{2}}}}{C}
|
||||
\end{gather}$$
|
||||
|
||||
# Filtre numérique non-récursif (FIR)
|
||||
|
||||
Les filtres numériques non-récursifs (FIR) sont des filtres numériques qui n'utilisent pas de rétroactions.
|
||||
Ils sont basés sur des équations aux différences.
|
||||
Les filtres non-récursifs sont utilisés pour des applications où la phase du filtre est critique.
|
||||
Ils sont utilisés dans le traitement du signal et la conception de filtres.
|
||||
|
||||
Les intérêts des filtres non-récursifs :
|
||||
- Les fonctions de transfert ne possèdent que des coefficients $b_i$. ($\forall a_{i} = 0$)
|
||||
- Ils possèdent une phase linéaire exacte
|
||||
- Ils sont stables
|
||||
|
||||
Les inconvénients des filtres non-récursifs :
|
||||
- Ils sont plus coûteux en calcul
|
||||
- Ils nécessitent plus de matériel
|
||||
|
||||
Coefficients symétrique: pairs $b_{n-i} = b_{i}$, impairs $b_{n-i} = -b_{i}$, $b_{n/2}=0$ <br>
|
||||
|
||||
**Symétrie paire:**
|
||||
$$H(\mathbf{j}\omega)
|
||||
= \sum^{n}_{i=o}b_{i}e^{-\frac{\mathbf{j}i\omega}{f_{s}}}
|
||||
= e^{\frac{-\mathbf{j}n\omega}{2f_{s}}} \sum^{n/2}_{i=0}b_{i}\cos\left[ \frac{\left( i-\frac{n}{2} \right)\omega}{f_{s}} \right]$$
|
||||
|
||||
**Symétrie impaire:**
|
||||
$$H(\mathbf{j}\omega)=\mathbf{j}e^{\frac{-\mathbf{j}n\omega}{2f_{s}}}\sum^{n/2}_{i=0}b_{i}\sin\left( \frac{(i-\frac{n}{2})\omega}{f_{s}} \right)$$
|
||||
|
||||
Les filtres FIR à coefficients symétriques ont une phase linéaire.
|
||||
$$
|
||||
\text{Symétrie paire : }\varphi(\omega)=-\frac{n\omega}{2f_{s}}
|
||||
\qquad \qquad
|
||||
\text{Symétrie impaire : } \varphi(\omega)= -\frac{n\omega}{2f_{s}}+\frac{\pi}{2}
|
||||
$$
|
||||
$$\text{Temps de propagation : }t_{gr}=-\frac{d\varphi}{d\omega}=\frac{n}{2f_{s}}=\frac{n}{2}T_{s}$$
|
||||
Il y a donc 4 types de filtres FIR à phase linéaire : n resp. symétrie paire/impaire
|
||||
|
||||
|
||||
***Fonction de transfert en $z$ :***
|
||||
$$F(z) = \frac{Y(z)}{U(z)} = b_{0}+b_{1}z^{-1}+\dots+b_{n}z^{-1}$$
|
||||
|
||||
***Équation aux différences :***
|
||||
$$y[k]= b_{n}u[k-n]+ \dots + b_{1}u[k-1]+b_{0}u[k]$$
|
||||
|
||||
***Réponse en fréquence :***
|
||||
$$z=\exp(\mathbf{j}\omega\cdot T_{s})$$
|
||||
|
||||
## Filtres FIR à symétrie paire :
|
||||
$$b_{n-k} = b_{k}$$
|
||||
|
||||
Exemple : FIR à symétrie paire d'ordre 6
|
||||
$$\begin{align}
|
||||
F(z) &= \frac{Y(z)}{U(z)} \\
|
||||
&= 1+2z^{-1}+3z^{-2}+4z^{-3}+3z^{-4}+2z^{-5}+z^{-6} \\
|
||||
&= \frac{z^{6}+2z^{5}+3z^{4}+4z^{3}+3z^{2}+2z^{1}+1}{z^{6}}
|
||||
\end{align}$$
|
||||
Les filtres FIR à symétrie paire sont toujours de type passe-bas ou coupe-bande. <br>
|
||||
Ils possèdent autant de pôles que l'order du filtre. Ces derniers sont à (0,0) sur le cercle unité. <br>
|
||||
Ils possèdent autant de zéros que l'ordre du filtre. Ces derniers sont sur le cercle unité. <br>
|
||||
|
||||
## Filtres FIR à symétrie impaire :
|
||||
$$b_{n-k} = -b_{k}$$
|
||||
Exemple : FIR à symétrie impaire d'ordre 6
|
||||
$$\begin{align}
|
||||
F(z) &= \frac{Y(z)}{U(z)} \\
|
||||
&= -1-2z^{-1}-3z^{-2}+0z^{-3}+3z^{-4}+2z^{-5}+z^{-6} \\
|
||||
&= \frac{z^{6}+2z^{5}+3z^{4}+0z^{3}-3z^{2}-2z^{1}-1}{z^{8}}
|
||||
\end{align}$$
|
||||
Les filtres FIR à symétrie paire sont toujours de type passe-haut ou passe-bande. <br>
|
||||
Ils possèdent autant de pôles que l'ordre du filtre. Ces derniers sont à (0,0) sur le cercle unité. <br>
|
||||
Ils possèdent autant de zéros que l'ordre du filtre. <br>
|
||||
|
||||
# Filtres numériques FIR idéaux
|
||||
$$\omega_{c_{d}} = 2\pi \frac{f_{c_{a}}}{f_{s}}$$
|
||||
|
||||
## Filtre passe-bas idéal
|
||||
$$H(\mathbf{j}\omega)=\begin{cases}
|
||||
1 &\text{ si } |\omega| \leq \omega_{c} \\
|
||||
0 &\text{ si } |\omega| > \omega_{c}
|
||||
\end{cases} $$
|
||||
La transformée de Fourier inverse donne la réponse impulsionnelle d’un filtre passe-bas idéal.
|
||||
|
||||
$$h[n] = \begin{cases}
|
||||
\frac{\omega_{c}}{\pi} \frac{\sin((n-N_{s})\omega_{c})}{(n-N_{s})\omega_{c}} &\text{ si } 0\leq n \leq N \\
|
||||
\\
|
||||
\frac{\omega_{c}}{\pi} &\text{ si } n=N_{s} \\
|
||||
\\
|
||||
0 &\text{ sinon}
|
||||
\end{cases}$$
|
||||
|
||||
On tronque à $N=ordre$ du filtre. $N_{s}=\frac{N}{2}$ <br>
|
||||
Ces coefficients ne sont rien d’autre que les coefficients de la fonction de transfert en *z* du filtre passe-bas idéal.
|
||||
|
||||
## Filtre passe-haut idéal
|
||||
$$H(\mathbf{j}\omega)=\begin{cases}
|
||||
0 &\text{ si } |\omega| \leq \omega_{c} \\
|
||||
1 &\text{ si } |\omega| > \omega_{c}
|
||||
\end{cases}$$
|
||||
La transformée de Fourier inverse donne la réponse impulsionnelle d’un filtre passe-bas idéal.
|
||||
|
||||
$$h[n] = \begin{cases}
|
||||
-\frac{\omega_{c}}{\pi} \frac{\sin((n-N_{s})\omega_{c})}{(n-N_{s})\omega_{c}} &\text{ si } 0\leq n \leq N \\
|
||||
\\
|
||||
1-\frac{\omega_{c}}{\pi} &\text{ si } n=N_{s} \\
|
||||
\\
|
||||
0 &\text{ sinon}
|
||||
\end{cases}$$
|
||||
|
||||
On tronque à $N=ordre$ du filtre. $N_{s}=\frac{N}{2}$ <br>
|
||||
Ces coefficients ne sont rien d’autre que les coefficients de la fonction de transfert en *z* du filtre passe-haut idéal.
|
||||
|
||||
## Filtre passe-bande idéal
|
||||
$$H(\mathbf{j}\omega)=\begin{cases}
|
||||
1 &\text{ si } \omega_{c_{1}} \leq \omega \leq \omega_{c_{2}} \\
|
||||
0 &\text{ si } \omega \leq \omega_{c_{1}} \quad et \quad \omega\geq \omega_{c_{2}}
|
||||
\end{cases}$$
|
||||
La transformée de Fourrier inverse donne la réponse impulsionnelle d’un filtre passe-bande idéal.
|
||||
|
||||
$$h[n] = \begin{cases}
|
||||
\frac{\omega_{c_{2}}}{\pi} \frac{\sin((n-N_{s})\omega_{c_{2}})}{(n-N_{s})\omega_{c_{2}}}-\frac{\omega_{c_{1}}}{\pi} \frac{\sin((n-N_{s})\omega_{c_{1}})}{(n-N_{s})\omega_{c_{1}}} &\text{ si } 0\leq n \leq N \\
|
||||
\\
|
||||
\frac{\omega_{c_{2}}-\omega_{c_{1}}}{\pi} &\text{ si } n=N_{s}\\
|
||||
\\
|
||||
0 &\text{ sinon}
|
||||
\end{cases}$$
|
||||
|
||||
On tronque à $N=ordre$ du filtre. $N_{s}=\frac{N}{2}$ <br>
|
||||
Ces coefficients ne sont rien d’autre que les coefficients de la fonction de transfert en *z* du filtre passe-bande idéal.
|
||||
|
||||
## Filtre coupe-bande idéal
|
||||
$$H(\mathbf{j}\omega)=\begin{cases}
|
||||
0 &\text{ si } \omega_{c_{1}} \leq \omega \leq \omega_{c_{2}} \\
|
||||
1 &\text{ si } \omega \leq \omega_{c_{1}} \quad et \quad \omega\geq \omega_{c_{2}}
|
||||
\end{cases}$$
|
||||
La transformée de Fourrier inverse donne la réponse impulsionnelle d’un filtre coupe-bande idéal.
|
||||
|
||||
$$h[n] = \begin{cases}
|
||||
\frac{\omega_{c_{1}}}{\pi} \frac{\sin((n-N_{s})\omega_{c_{1}})}{(n-N_{s})\omega_{c_{1}}}
|
||||
-\frac{\omega_{c_{2}}}{\pi} \frac{\sin((n-N_{s})\omega_{c_{2}})}{(n-N_{s})\omega_{c_{2}}}
|
||||
&\text{ si } 0\leq n \leq N \\
|
||||
\\
|
||||
1-\frac{\omega_{c_{2}}-\omega_{c_{1}}}{\pi} &\text{ si } n=N_{s}\\
|
||||
\\
|
||||
0 &\text{ sinon}
|
||||
\end{cases}$$
|
||||
|
||||
On tronque à $N=ordre$ du filtre. $N_{s}=\frac{N}{2}$ <br>
|
||||
Ces coefficients ne sont rien d’autre que les coefficients de la fonction de transfert en *z* du filtre coupe-bande idéal.
|
||||
|
||||
# Synthèse par fenêtrage
|
||||
Le point de départ de la synthèse des filtres FIR est donné par la considération des réponses impulsionnelles des filtres idéaux.
|
||||
Comme celles-ci sont infiniment longues et donc non réalisables, on va se contenter d’une approximation de leurs réponses.
|
||||
|
||||
## Méthode de fenêtrage
|
||||
- **Fenêtre rectangulaire :** $$W[n] = \begin{cases}
|
||||
1 &\text{ si } 0\leq n \leq N \\
|
||||
0 &\text{ sinon}
|
||||
\end{cases}$$
|
||||
- **Fenêtre triangulaire (Bartlett) :** $$W[n] = \begin{cases}
|
||||
2 \frac{n}{N} &\text{ si } 0\leq n \leq \frac{N}{2} \\
|
||||
2-2 \frac{n}{N} &\text{ si } \frac{N}{2}\leq n \leq N \\
|
||||
0 &\text{ sinon}
|
||||
\end{cases}$$
|
||||
- **Fenêtre sinusoïdale (Hann) :** $$W[n] = \begin{cases}
|
||||
0,5\left( 1-\cos\left( \frac{2\pi n}{N} \right) \right) &\text{ si } 0\leq n\leq N \\
|
||||
0 &\text{ sinon}
|
||||
\end{cases}$$
|
||||
- **Fenêtre de Hamming :** $$W[n] = \begin{cases}
|
||||
0,54-0,46\cos\left( \frac{2\pi n}{N} \right) &\text{ si } 0\leq n\leq N \\
|
||||
0 &\text{ sinon}
|
||||
\end{cases}$$
|
||||
- **Fenêtre de Blackman :** $$W[n] = \begin{cases}
|
||||
0,42-0,5\cos\left( \frac{2\pi n}{N} \right)+0,08\cos\left( \frac{4\pi n}{N} \right) &\text{ si } 0\leq n\leq N \\
|
||||
0 &\text{ sinon}
|
||||
\end{cases}$$
|
||||
- **Fenêtre de Kaiser-Bessel :** $$W[n] = \begin{cases}
|
||||
\frac{I_{0}\left( \beta\sqrt{1-\left( \frac{1-n}{N_{s}} \right)^{2}} \right)}{I_{0}(\beta)} &\text{ si } 0\leq n\leq N \\
|
||||
0 &\text{ sinon}
|
||||
\end{cases}$$
|
||||
$I_{0}$ : Fonction de Bessel modifiée d’ordre 0 <br>
|
||||
$\beta$ : Paramètre de forme
|
||||
|
||||
***Caractéristiques spectrales de quelques fenêtres***
|
||||
|
||||
| Fenêtres | Largeur du 1er lobe | Atténuation du 1er lobe [dB] | Décroissance des lobes suivants | Ondulation Rp [dB] | Atténuation max [dB] | Bande de transition<br>[rad/sec]<br>$\Delta\omega$ |
|
||||
|---------------------|---------------------|------------------------------|---------------------------------|--------------------|----------------------|----------------------------------------------------|
|
||||
| Rectangulaire | $4\pi/N$ | $-13$ | $20 dB/dec$ | $0,74$ | $21$ | $1,8\pi/N$ |
|
||||
| Triangulaire | $8\pi/N$ | $-27$ | $40 dB/dec$ | $0$ | $25$ | $6,1\pi/N$ |
|
||||
| Cosinus | $8\pi/N$ | $-32$ | $60 dB/dec$ | $0,055$ | $44$ | $6,2\pi/N$ |
|
||||
| Hamming | $8\pi/N$ | $-43$ | $20 dB/dec$ | $0,014$ | $53$ | $6,6\pi/N$ |
|
||||
| Blackman | $12\pi/N$ | $-58$ | $60 dB/dec$ | $0,0017$ | $74$ | $11\pi/N$ |
|
||||
| Kaiser $\beta=4,54$ | $7,2\pi/N$ | $-30$ | $20 dB/dec$ | $0,025$ | $50$ | $5,8\pi/N$ |
|
||||
| Kaiser $\beta=5,66$ | $8,4\pi/N$ | $-42$ | $20 dB/dec$ | $0,009$ | $60$ | $7,2\pi/N$ |
|
||||
|
||||
|
||||
|
||||
## Comment calculer son filtre
|
||||
|
||||

|
||||
|
||||
$H(\mathbf{j}\omega)$ : Gain <br>
|
||||
$\delta_{1}$ : L'erreur de gain tolérable <br>
|
||||
$\delta_{2}$ : L'erreur d'atténuation tolérable <br>
|
||||
$\omega_{p}$ : Fréquence de pulsation de passage <br>
|
||||
$\omega_{a}$ : Fréquence de pulsation d'arrêt <br>
|
||||
|
||||
1. En fonction du gabarit, déterminer le type de filtre désiré (`passe-bas`, `passe-haut`, `passe-bande`, `coupe-bande`)
|
||||
2. Calculer $f_{c} \to \omega_{c}$ et $\Delta f \to \Delta\omega$
|
||||
$$\begin{gather}
|
||||
f_{c} = \frac{f_{a}+f_{p}}{2} \qquad & \qquad \Delta f = f_{a}-f_{p} \\
|
||||
\omega_{c} = 2\pi \frac{f_{c}}{f_{s}} \quad & \quad \Delta\omega = \frac{2\pi\Delta f}{f_{s}}
|
||||
\end{gather}$$
|
||||
3. Choisir une fenêtre $W[n]$ satisfaisante du point de vue de l’atténuation et du reste du cahier des charges.(voir tableau ci-dessus)
|
||||
4. Calculer l'ordre du filtre à l'aide de la bande de transition du filtre choisit. Arrondir au nombre pair supérieur.
|
||||
5. Calculer la réponse impulsionnelle $h_{f}[n]$ du filtre avec $h[n]*W[n]$
|
||||
6. Calculer les coefficients $b_{n}$ du filtre avec $h_{f}[n]$
|
||||
|
||||
<details>
|
||||
<summary>Démarche selon les slides</summary>
|
||||
|
||||
1. Connaissant le gabarit du filtre désiré, choisir le filtre idéal correspondant
|
||||
2. Calculer les pulsations caractéristiques se situant au centre des bandes de transitions
|
||||
3. Rechercher la réponse impulsionnelle $h[n]$ du filtre idéal, si celle-ci n’est pas connue, on peut la calculer par transformation de Fourier inverse
|
||||
4. Choisir une fenêtre $W[n]$ satisfaisante du point de vue de l’atténuation
|
||||
5. Connaissant la largeur de la bande de transition , calculer l’ordre du filtre $N$
|
||||
6. Calculer les coefficients du filtre en multipliant la réponse impulsionnelle par la fenêtre choisie
|
||||
</details>
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="162.60143mm"
|
||||
height="145.49326mm"
|
||||
viewBox="0 0 162.60143 145.49326"
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
xml:space="preserve"
|
||||
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
|
||||
sodipodi:docname="specification_de_filtre.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
|
||||
id="namedview1"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:document-units="mm"
|
||||
inkscape:zoom="0.76167929"
|
||||
inkscape:cx="454.25943"
|
||||
inkscape:cy="204.15416"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1111"
|
||||
inkscape:window-x="-9"
|
||||
inkscape:window-y="-9"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1" /><defs
|
||||
id="defs1" /><g
|
||||
inkscape:label="Calque 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-24.16979,-27.981753)"><path
|
||||
style="fill:#b3b3b3"
|
||||
d="m 43.550519,173.33743 c -0.254574,-0.10272 -0.330729,-2.01702 -0.330729,-8.31348 v -8.18004 h -6.331101 c -5.402769,0 -6.392067,-0.061 -6.746875,-0.41577 -0.510872,-0.51087 -0.510872,-0.50966 0,-1.02054 0.354801,-0.3548 1.343921,-0.41577 6.744842,-0.41577 h 6.329068 l 0.0029,-60.35319 0.0029,-60.353191 -0.952606,0.8364 c -1.049253,0.921256 -1.784615,0.967164 -1.90637,0.119015 -0.09659,-0.672828 2.715832,-6.487427 3.294484,-6.811257 0.285899,-0.159997 0.561696,-0.07902 0.886584,0.260305 0.805275,0.841062 3.459054,6.349148 3.28169,6.811353 -0.253641,0.660977 -1.054436,0.509844 -2.08282,-0.393089 l -0.935248,-0.821159 v 7.963517 7.963516 l 24.14323,0.06754 24.14323,0.06754 -0.104749,47.781485 -0.104749,47.781485 30.46569,-0.12725 30.46569,-0.12725 v 4.66711 4.66712 h 7.70032 7.70033 l -0.8384,-0.95488 c -0.47736,-0.54368 -0.77401,-1.12269 -0.68887,-1.34456 0.0822,-0.21432 0.14953,-0.43947 0.14953,-0.50032 0,-0.7008 6.66518,2.43463 7.25239,3.41165 0.23452,0.39022 0.16497,0.58078 -0.37322,1.02256 -1.0994,0.90245 -5.83161,3.16392 -6.43871,3.077 -0.86373,-0.12368 -0.82489,-0.85236 0.10166,-1.90765 l 0.83562,-0.95172 h -62.2045 -62.204492 v 8.01688 c 0,8.59642 -0.05419,8.9619 -1.256771,8.47664 z m 49.146356,-22.71496 v -4.36936 l -17.462539,0.0699 c -9.604396,0.0384 -17.462521,-0.0194 -17.4625,-0.12856 2.1e-5,-0.10914 7.858163,-0.19843 17.462538,-0.19843 H 92.696875 V 109.08662 72.17725 H 68.752082 44.80729 v 37.05526 37.05526 l 3.83687,-0.0797 c 2.110279,-0.0439 3.836685,0.01 3.836459,0.1187 -2.27e-4,0.10914 -1.726818,0.19843 -3.83687,0.19843 H 44.80729 v 4.23334 4.23333 H 68.752082 92.696875 Z M 52.74479,146.26058 c 0,-0.14552 0.119063,-0.26458 0.264584,-0.26458 0.145521,0 0.264583,0.11906 0.264583,0.26458 0,0.14552 -0.119062,0.26458 -0.264583,0.26458 -0.145521,0 -0.264584,-0.11906 -0.264584,-0.26458 z m 2.116667,0 c 0,-0.14552 0.119063,-0.26458 0.264584,-0.26458 0.14552,0 0.264583,0.11906 0.264583,0.26458 0,0.14552 -0.119063,0.26458 -0.264583,0.26458 -0.145521,0 -0.264584,-0.11906 -0.264584,-0.26458 z m 2.116667,0 c 0,-0.14552 0.119062,-0.26458 0.264583,-0.26458 0.145521,0 0.264584,0.11906 0.264584,0.26458 0,0.14552 -0.119063,0.26458 -0.264584,0.26458 -0.145521,0 -0.264583,-0.11906 -0.264583,-0.26458 z m 47.889586,4.36563 v -4.36563 h -5.953127 -5.953125 v 4.36563 4.36562 h 5.953125 5.953127 z m -10.84938,14.55384 c 0.214329,-0.25825 0.290326,-0.98543 0.219399,-2.09933 l -0.108517,-1.70421 1.069769,0.0112 c 1.353594,0.0142 1.731227,0.32537 1.731227,1.42673 0,0.9449 -0.814558,1.77934 -1.485583,1.52184 -0.437085,-0.16772 -0.462927,0.0352 -0.09261,0.72712 0.247585,0.46262 0.18094,0.51177 -0.693855,0.51177 -0.828304,0 -0.920498,-0.0569 -0.639832,-0.39511 z m 1.853545,-2.39863 c 0,-0.92599 -0.421098,-1.23532 -0.698297,-0.51296 -0.212276,0.55319 0.128763,1.77538 0.44147,1.58212 0.141255,-0.0873 0.256827,-0.56842 0.256827,-1.06916 z m -57.770105,2.22951 c -1.118538,-0.65019 -1.581701,-3.28368 -0.832366,-4.73273 1.112465,-2.15127 3.369757,-1.39534 3.583821,1.20017 0.136745,1.65803 -0.02844,2.29917 -0.788082,3.05881 -0.830243,0.83024 -1.197598,0.91888 -1.963373,0.47375 z m 1.297599,-1.43486 c 0.18609,-1.24094 0.04661,-3.715 -0.224738,-3.98634 -0.08413,-0.0841 -0.279952,-0.0745 -0.435155,0.0214 -0.306929,0.18969 -0.402424,4.69724 -0.105797,4.99386 0.391137,0.39114 0.593518,0.11918 0.76569,-1.02895 z m 49.21576,0.52538 c -0.924423,-0.92442 -0.845786,-2.60334 0.166089,-3.54605 0.596077,-0.55533 1.79899,-0.73714 1.79899,-0.2719 0,0.14552 -0.110558,0.26458 -0.245685,0.26458 -0.597264,0 -1.077232,0.89257 -1.077232,2.00327 0,1.01947 0.07329,1.17173 0.564004,1.17173 0.504048,0 0.549109,-0.11106 0.423881,-1.0447 -0.153331,-1.14317 0.299988,-2.08213 0.843159,-1.74643 0.202259,0.125 0.291819,0.66162 0.238575,1.42949 -0.07498,1.08137 -0.02155,1.22935 0.443923,1.22935 0.420124,0 0.546042,-0.20369 0.611062,-0.98847 0.06414,-0.7741 -0.06497,-1.13532 -0.595312,-1.66567 -0.372465,-0.37246 -0.677208,-0.73133 -0.677208,-0.79747 0,-0.36153 1.130335,-0.0329 1.76517,0.51311 1.404889,1.20843 0.745415,3.86454 -0.959511,3.86454 -0.384904,0 -0.829263,-0.12944 -0.987463,-0.28764 -0.207127,-0.20712 -0.337395,-0.20712 -0.465407,0 -0.262976,0.42551 -1.370378,0.34892 -1.847035,-0.12774 z m 13.969861,-0.52505 c -0.86767,-1.32423 -0.25657,-3.37493 1.10776,-3.71735 0.95943,-0.2408 1.04239,0.004 0.26495,0.78123 -0.71748,0.71748 -0.86779,1.70368 -0.39446,2.58811 0.22279,0.41628 0.36178,0.46351 0.65293,0.22187 0.26169,-0.21718 0.32457,-0.63765 0.21495,-1.4374 -0.1058,-0.77188 -0.0484,-1.19627 0.18096,-1.33802 0.55599,-0.34362 1.0106,0.58073 0.85524,1.73896 -0.12522,0.93364 -0.0802,1.0447 0.42388,1.0447 0.49072,0 0.56401,-0.15227 0.56401,-1.17173 0,-1.1107 -0.47997,-2.00327 -1.07723,-2.00327 -0.13513,0 -0.24569,-0.11907 -0.24569,-0.26459 0,-0.29619 0.78976,-0.35104 1.44336,-0.10023 1.1331,0.43482 1.57065,2.90706 0.67331,3.8044 -0.55867,0.55866 -1.70818,0.71148 -1.98482,0.26387 -0.1096,-0.17735 -0.32831,-0.17735 -0.65968,0 -0.8326,0.44559 -1.55469,Line truncated
|
||||
id="path2" /><path
|
||||
style="fill:#808080"
|
||||
d="m 43.396179,173.07169 c -0.09701,-0.097 -0.176389,-3.8454 -0.176389,-8.32975 v -8.15337 l -6.548437,-0.0708 c -6.34846,-0.0686 -6.548438,-0.0869 -6.548438,-0.59994 0,-0.51301 0.199978,-0.53133 6.548438,-0.59993 l 6.548437,-0.0708 V 94.608444 33.969858 l -1.059851,1.034917 c -0.989866,0.966578 -1.089016,1.005752 -1.501523,0.593245 -0.412506,-0.412506 -0.348751,-0.638909 0.9655,-3.428616 0.773944,-1.642819 1.523739,-3.135772 1.666211,-3.317673 0.66443,-0.84831 1.212028,-0.318737 2.831572,2.738364 2.132466,4.02531 2.023569,5.317937 -0.285463,3.388494 l -1.161237,-0.970338 -0.07018,7.902962 c -0.0386,4.34663 -0.01257,8.053092 0.05784,8.236584 0.10172,0.265076 5.103687,0.33362 24.345702,0.33362 H 93.22604 v 10.71424 10.71424 l -24.275521,0.06753 -24.275521,0.06753 v 41.539583 41.53958 l 30.228646,0.0673 30.228646,0.0673 v -4.76363 -4.76362 h 24.34167 24.34167 v 4.7625 4.7625 h 7.97119 7.9712 l -1.12206,-1.21729 c -1.03294,-1.1206 -1.08812,-1.25123 -0.69472,-1.64463 0.39339,-0.39339 0.68143,-0.30196 3.62632,1.15115 3.16955,1.56395 3.97437,2.22847 3.45442,2.85217 -0.14389,0.17259 -1.69977,1.02413 -3.45751,1.8923 -2.94205,1.4531 -3.22984,1.54454 -3.62323,1.15114 -0.3934,-0.39339 -0.34307,-0.51877 0.63362,-1.57848 l 1.06097,-1.15115 H 107.15541 44.674999 l -0.06992,8.26823 c -0.06589,7.79212 -0.09763,8.26823 -0.551215,8.26823 -0.264715,0 -0.560675,-0.0794 -0.657689,-0.17639 z M 153.02188,151.28766 v -4.7625 h -23.54792 -23.54792 v 4.7625 4.7625 h 23.54792 23.54792 z M 92.432291,66.621 V 61.8585 H 68.752082 45.071874 v 4.7625 4.7625 h 23.680208 23.680209 z m 0,-10.847916 v -4.7625 H 68.884374 45.336457 v 4.7625 4.7625 h 23.547917 23.547917 z m 1.805893,107.845426 0.0861,-1.95789 0.83994,-0.12443 c 0.461967,-0.0684 0.989796,-0.0675 1.172953,0.002 0.504048,0.19147 0.698654,1.34565 0.354316,2.10139 -0.241655,0.53037 -0.448452,0.64406 -0.984978,0.5415 -0.619793,-0.11848 -0.669339,-0.0633 -0.567281,0.63209 0.09256,0.63067 0.01718,0.76201 -0.437664,0.76252 -0.51456,5.8e-4 -0.544016,-0.12384 -0.463388,-1.95727 z m 1.789476,-0.29171 c 0.209982,-0.83664 -0.02154,-1.4558 -0.544356,-1.4558 -0.282814,0 -0.405179,0.26635 -0.405179,0.88194 0,1.35214 0.654867,1.74791 0.949535,0.57386 z m -58.198835,1.22649 c -1.825406,-2.01705 -0.386832,-6.4379 1.726836,-5.3067 1.953092,1.04526 1.523284,5.79941 -0.524308,5.79941 -0.416148,0 -0.957285,-0.22172 -1.202528,-0.49271 z m 1.631335,-2.24841 c 0.07507,-2.28472 -0.236707,-3.42255 -0.787021,-2.87223 -0.356239,0.35624 -0.568584,2.78034 -0.363404,4.14858 0.14354,0.95719 0.283809,1.21289 0.62916,1.14688 0.36906,-0.0705 0.457467,-0.48152 0.521265,-2.42323 z m 49.347786,1.81475 c -1.251277,-0.87643 -0.938041,-3.0842 0.537951,-3.79162 0.943422,-0.45218 1.225185,-0.20524 0.469995,0.41189 -0.73777,0.6029 -0.994555,2.14252 -0.473818,2.8409 0.331352,0.44439 0.449158,0.46769 0.817743,0.1618 0.314639,-0.26113 0.385782,-0.5964 0.264142,-1.24479 -0.230392,-1.2281 0.026,-1.85804 0.571851,-1.40502 0.297473,0.24688 0.364662,0.60417 0.245856,1.30737 -0.117722,0.6968 -0.05127,1.06078 0.237398,1.30036 0.604967,0.50208 0.953227,0.1116 0.953227,-1.06878 0,-1.23117 -0.382681,-2.08366 -0.93535,-2.08366 -0.213162,0 -0.387566,-0.1318 -0.387566,-0.29289 0,-0.16109 0.188331,-0.22062 0.418514,-0.13229 0.230183,0.0883 0.52784,0.1606 0.661459,0.1606 0.622599,0 1.301277,1.10394 1.301277,2.11666 0,1.59415 -1.411636,2.71587 -2.299928,1.82758 -0.209071,-0.20908 -0.438621,-0.20908 -0.829273,0 -0.70594,0.3778 -0.8767,0.36592 -1.553478,-0.10811 z m 13.953404,-0.44644 c -1.01162,-1.08584 -0.52023,-3.16017 0.86281,-3.6423 0.44011,-0.15342 0.87018,-0.20258 0.95572,-0.10924 0.0855,0.0933 0.005,0.22357 -0.17992,0.2894 -0.71026,0.25343 -1.11959,0.94217 -1.1157,1.87728 0.005,1.22215 0.33185,1.76553 0.92487,1.53796 0.37124,-0.14245 0.42207,-0.38121 0.28119,-1.32069 -0.12644,-0.84319 -0.0705,-1.23105 0.21144,-1.46501 0.52403,-0.4349 0.73201,-0.0253 0.65447,1.28888 -0.0798,1.35282 0.42932,1.96009 1.00338,1.19673 0.53175,-0.7071 0.28253,-2.24164 -0.463,-2.85088 -0.75519,-0.61714 -0.47343,-0.86407 0.46999,-0.4119 1.52434,0.7306 1.78707,2.96345 0.45165,3.83845 -0.53228,0.34877 -0.77381,0.36871 -1.34017,0.11066 -0.48162,-0.21944 -0.77484,-0.23081 -0.96812,-0.0375 -0.44595,0.44594 -1.16809,0.3213 -1.74861,-0.30181 z m 5.3917,0.0144 c -0.20172,-0.3264 0.32597,-0.95769 0.97188,-1.1627 0.56485,-0.17927 0.68647,-1.06583 0.17455,-1.2724 -0.22526,-0.0909 -0.20417,-0.13882 0.0661,-0.15028 0.71146,-0.0302 0.97962,0.3515 1.11522,1.58736 l 0.13337,1.21542 -1.15263,0.0174 c -0.63395,0.01 -1.22279,-0.0961 -1.30854,-0.23483 z m 1.47716,-0.64156 c 0,-0.2097 -0.11906,-0.38126 -0.26458,-0.38126 -0.14553,0 -0.26459,0.24515 -0.26459,0.54478 0,0.29963 0.11906,0.47119 0.26459,0.38126 0.14552,-0.0899 0.26458,-0.33509 0.26458,-0.54478 z m -1.32292,-1.1594 c 0,-0.44355 0.46925,-0.55338 0.62543,-0.14639 0.0922,0.24016 -8.3e-4,0.39536 -0.23686,0.39536 -0.21371,0 -0.38857,-0.11204 -0.38857,-0.24897 z m 73.63399,-3.58782 c -1.25128,-0.87643 -0.93804,-3.08419 0Line truncated
|
||||
id="path1" /></g></svg>
|
||||
|
After Width: | Height: | Size: 32 KiB |
Reference in new issue
Block a user