<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <br>
    <font face="Courier New">Dear All,<br>
      <br>
      I have problems with this script:</font><br>
    <pre style="font-family:Monospaced;font-style:normal;font-size:18.0;"><span style="color:rgb(0,0,0);">Fs</span> <span style="color:rgb(92,92,92);">=</span> <span style="color:rgb(188,143,143);">44100</span><span style="color:rgb(0,0,0);">;</span>
<span style="color:rgb(0,0,0);">fo</span> <span style="color:rgb(92,92,92);">=</span> <span style="color:rgb(188,143,143);">500</span><span style="color:rgb(0,0,0);">;</span>
<span style="color:rgb(0,0,0);">B</span> <span style="color:rgb(92,92,92);">=</span> <span style="color:rgb(188,143,143);">2</span><span style="color:rgb(92,92,92);">^</span><span style="color:rgb(74,85,219);">(</span><span style="color:rgb(188,143,143);">1</span><span style="color:rgb(92,92,92);">/</span><span style="color:rgb(188,143,143);">6</span><span style="color:rgb(74,85,219);">)</span><span style="color:rgb(92,92,92);">-</span><span style="color:rgb(188,143,143);">2</span><span style="color:rgb(92,92,92);">^</span><span style="color:rgb(74,85,219);">(</span><span style="color:rgb(92,92,92);">-</span><span style="color:rgb(188,143,143);">1</span><span style="color:rgb(92,92,92);">/</span><span style="color:rgb(188,143,143);">6</span><span style="color:rgb(74,85,219);">)</span><span style="color:rgb(0,0,0);">;</span>
<span style="color:rgb(51,153,6);font-style:italic;">// Low-pass Butterworth </span>
<span style="color:rgb(0,0,0);">hLPs</span> <span style="color:rgb(92,92,92);">=</span> <span style="color:rgb(0,0,0);">analpf</span><span style="color:rgb(74,85,219);">(</span><span style="color:rgb(188,143,143);">3</span><span style="color:rgb(0,0,0);">,</span><span style="color:rgb(188,143,143);">"</span><span style="color:rgb(188,143,143);">butt</span><span style="color:rgb(188,143,143);">"</span><span style="color:rgb(0,0,0);">,</span><span style="color:rgb(74,85,219);">[</span><span style="color:rgb(74,85,219);">]</span><span style="color:rgb(0,0,0);">,</span><span style="color:rgb(188,143,143);">1</span><span style="color:rgb(74,85,219);">)</span><span style="color:rgb(0,0,0);">;</span>
<span style="color:rgb(51,153,6);font-style:italic;">// Band-pass Butterworth centered at fo</span>   
<span style="color:rgb(0,0,0);">hBPs</span> <span style="color:rgb(92,92,92);">=</span> <span style="color:rgb(0,0,0);">horner</span><span style="color:rgb(74,85,219);">(</span><span style="color:rgb(0,0,0);">hLPs</span><span style="color:rgb(0,0,0);">,</span> <span style="color:rgb(74,85,219);">(</span><span style="color:rgb(188,143,143);">2</span><span style="color:rgb(92,92,92);">*</span><span style="color:rgb(218,112,214);">%pi</span><span style="color:rgb(92,92,92);">*</span><span style="color:rgb(0,0,0);">fo</span><span style="color:rgb(92,92,92);">/</span><span style="color:rgb(218,112,214);">%s</span> <span style="color:rgb(92,92,92);">+</span> <span style="color:rgb(218,112,214);">%s</span><span style="color:rgb(92,92,92);">/</span><span style="color:rgb(74,85,219);">(</span><span style="color:rgb(188,143,143);">2</span><span style="color:rgb(92,92,92);">*</span><span style="color:rgb(218,112,214);">%pi</span><span style="color:rgb(92,92,92);">*</span><span style="color:rgb(0,0,0);">fo</span><span style="color:rgb(74,85,219);">)</span><span style="color:rgb(74,85,219);">)</span><span style="color:rgb(92,92,92);">/</span><span style="color:rgb(0,0,0);">B</span><span style="color:rgb(74,85,219);">)</span>
<span style="color:rgb(51,153,6);font-style:italic;">// Apply bilinear transform</span>
<span style="color:rgb(0,0,0);">hBPz</span> <span style="color:rgb(92,92,92);">=</span> <span style="color:rgb(0,0,0);">horner</span><span style="color:rgb(74,85,219);">(</span><span style="color:rgb(0,0,0);">hBPs</span><span style="color:rgb(0,0,0);">,</span> <span style="color:rgb(188,143,143);">2</span><span style="color:rgb(92,92,92);">*</span><span style="color:rgb(0,0,0);">Fs</span><span style="color:rgb(92,92,92);">*</span><span style="color:rgb(74,85,219);">(</span><span style="color:rgb(218,112,214);">%z</span> <span style="color:rgb(92,92,92);">-</span> <span style="color:rgb(188,143,143);">1</span><span style="color:rgb(74,85,219);">)</span><span style="color:rgb(92,92,92);">/</span><span style="color:rgb(74,85,219);">(</span><span style="color:rgb(218,112,214);">%z</span> <span style="color:rgb(92,92,92);">+</span> <span style="color:rgb(188,143,143);">1</span><span style="color:rgb(74,85,219);">)</span><span style="color:rgb(74,85,219);">)</span>
<span style="color:rgb(51,153,6);font-style:italic;">// Attempt to get the same using iir</span>
<span style="color:rgb(0,0,0);">hBPz1</span> <span style="color:rgb(92,92,92);">=</span> <span style="color:rgb(0,0,0);">iir</span><span style="color:rgb(74,85,219);">(</span><span style="color:rgb(188,143,143);">3</span><span style="color:rgb(0,0,0);">,</span> <span style="color:rgb(188,143,143);">"</span><span style="color:rgb(188,143,143);">bp</span><span style="color:rgb(188,143,143);">"</span><span style="color:rgb(0,0,0);">,</span> <span style="color:rgb(188,143,143);">"</span><span style="color:rgb(188,143,143);">butt</span><span style="color:rgb(188,143,143);">"</span><span style="color:rgb(0,0,0);">,</span> <span style="color:rgb(0,0,0);">fo</span><span style="color:rgb(92,92,92);">/</span><span style="color:rgb(0,0,0);">Fs</span><span style="color:rgb(92,92,92);">*</span><span style="color:rgb(74,85,219);">[</span><span style="color:rgb(188,143,143);">2</span><span style="color:rgb(92,92,92);">^</span><span style="color:rgb(74,85,219);">(</span><span style="color:rgb(188,143,143);">1</span><span style="color:rgb(92,92,92);">/</span><span style="color:rgb(188,143,143);">6</span><span style="color:rgb(74,85,219);">)</span><span style="color:rgb(0,0,0);">,</span><span style="color:rgb(188,143,143);">2</span><span style="color:rgb(92,92,92);">^</span><span style="color:rgb(74,85,219);">(</span><span style="color:rgb(92,92,92);">-</span><span style="color:rgb(188,143,143);">1</span><span style="color:rgb(92,92,92);">/</span><span style="color:rgb(188,143,143);">6</span><span style="color:rgb(74,85,219);">)</span><span style="color:rgb(74,85,219);">]</span><span style="color:rgb(0,0,0);">,</span> <span style="color:rgb(74,85,219);">[</span><span style="color:rgb(188,143,143);">0</span> <span style="color:rgb(188,143,143);">0</span><span style="color:rgb(74,85,219);">]</span><span style="color:rgb(74,85,219);">)</span></pre>
    <font face="Courier New">I attempt to design a discrete Butterworth
      band-pass filter using two equivalent methods:<br>
       <br>
      1) Manually applying a bilinear transform to the analog filter
      designed with analpf()<br>
      2) Applying the function iir()<br>
      <br>
      For some resaon I couldn't figure out, the first method yields an
      unexpected result:<br>
      <br>
      --> hBPz<br>
       hBPz  = <br>
         0.0000005 +0.0000016z +0.0000016z² +0.0000005z³  <br>
         -----------------------------------------------  <br>
             -0.9671578 +2.9195957z -2.9518237z² +z³      <br>
      <br>
      --> hBPz1<br>
       hBPz1  = <br>
                       0.0000006 -0.0000017z² +0.0000017z⁴
      -0.0000006z⁶                 <br>
        
----------------------------------------------------------------------------- 
      <br>
         1.0335428 -6.1515162z +15.271063z² -20.239437z³ +15.104038z⁴
      -6.0176897z⁵ +z⁶  <br>
      <br>
      The official function iir() is correct. The manual procedure
      unexpectedly reduces the order of the denominator.<br>
      <br>
      Maybe someone can find out what's going on...<br>
      <br>
      Thanks,<br>
      <br>
      Federico Miyara<br>
      <br>
    </font>
  <div id="DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2"><br /> <table style="border-top: 1px solid #D3D4DE;">
        <tr>
      <td style="width: 55px; padding-top: 18px;"><a href="https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" target="_blank"><img src="https://ipmcdn.avast.com/images/icons/icon-envelope-tick-round-orange-animated-no-repeat-v1.gif" alt="" width="46" height="29" style="width: 46px; height: 29px;" /></a></td>
                <td style="width: 470px; padding-top: 17px; color: #41424e; font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 18px;">Libre de virus. <a href="https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" target="_blank" style="color: #4453ea;">www.avast.com</a>           </td>
        </tr>
</table>
<a href="#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2" width="1" height="1"> </a></div></body>
</html>