<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    I got some questions this past weekend on boxcar filtering -- so I
    want to clarify some things.<br>
    <br>
    There are TWO variables associated with the boxcar filter: size and
    passes.<br>
    <br>
    For the purposes of this discussion lets imagine we have an array of
    10 elements with a boxcar size of five doing two passes.<br>
    <br>
    <br>
    There are multiple ways to implement the boxcar average -- but so we
    will all get the same (or similar results) lets standardize on one
    method that should give reasonable results without "end tail
    effects".<br>
    <br>
    <br>
    Here is my list of elements:<br>
    <br>
    <table border="1" cellpadding="2" cellspacing="2" height="58"
      width="912">
      <tbody>
        <tr>
          <td align="center" valign="top">1<br>
          </td>
          <td align="center" valign="top">2<br>
          </td>
          <td align="center" valign="top">3<br>
          </td>
          <td align="center" valign="top">4<br>
          </td>
          <td align="center" valign="top">5<br>
          </td>
          <td align="center" valign="top">6<br>
          </td>
          <td align="center" valign="top">7<br>
          </td>
          <td align="center" valign="top">8<br>
          </td>
          <td align="center" valign="top">9<br>
          </td>
          <td align="center" valign="top">10<br>
          </td>
        </tr>
        <tr>
          <td valign="top">273<br>
          </td>
          <td valign="top">237<br>
          </td>
          <td valign="top">302<br>
          </td>
          <td valign="top">786<br>
          </td>
          <td valign="top">1027<br>
          </td>
          <td valign="top">635<br>
          </td>
          <td valign="top">400<br>
          </td>
          <td valign="top">370<br>
          </td>
          <td valign="top">202<br>
          </td>
          <td valign="top">250<br>
          </td>
        </tr>
      </tbody>
    </table>
    <br>
    <br>
    Now -- with a boxcar size of 5 I could start in element 3, average
    elements 1-5, and replace element three by that value.&nbsp; the problem
    is that if I apply such a filter several times the ends will tend to
    "tail up".&nbsp; So, lets do the following.<br>
    <br>
    The first element to be averaged will be the first element in the
    array, but the boxcar will only extend to the right (boxcar size)/2
    -- so out to 3.&nbsp; So the first element would be replaced by the
    average of elements 1, 2, and 3.<br>
    <br>
    After first operation the array looks like...<br>
    <br>
    <table align="center" bgcolor="#cccccc" border="5" cellpadding="5"
      cellspacing="5" height="69" width="342">
      <tbody>
        <tr>
          <tr>
            <td align="center" valign="top">1<br>
            </td>
            <td align="center" valign="top">2<br>
            </td>
            <td align="center" valign="top">3<br>
            </td>
            <td align="center" valign="top">4<br>
            </td>
            <td align="center" valign="top">5<br>
            </td>
            <td align="center" valign="top">6<br>
            </td>
            <td align="center" valign="top">7<br>
            </td>
            <td align="center" valign="top">8<br>
            </td>
            <td align="center" valign="top">9<br>
            </td>
            <td align="center" valign="top">10<br>
            </td>
          </tr>
          <tr>
            <td valign="top">271<br>
            </td>
            <td valign="top">237<br>
            </td>
            <td valign="top">302<br>
            </td>
            <td valign="top">786<br>
            </td>
            <td valign="top">1027<br>
            </td>
            <td valign="top">635<br>
            </td>
            <td valign="top">400<br>
            </td>
            <td valign="top">370<br>
            </td>
            <td valign="top">202<br>
            </td>
            <td valign="top">250<br>
            </td>
          </tr>
        </tr>
      </tbody>
    </table>
    <br>
    <br>
    In the next operation the center of the box slides one to the left
    so cell 2 is replace with the average of cells 1-4.<br>
    <br>
    <table align="center" bgcolor="#cccccc" border="5" cellpadding="5"
      cellspacing="5" height="69" width="342">
      <tbody>
        <tr>
        </tr>
        <tr>
          <td align="center" valign="top">1<br>
          </td>
          <td align="center" valign="top">2<br>
          </td>
          <td align="center" valign="top">3<br>
          </td>
          <td align="center" valign="top">4<br>
          </td>
          <td align="center" valign="top">5<br>
          </td>
          <td align="center" valign="top">6<br>
          </td>
          <td align="center" valign="top">7<br>
          </td>
          <td align="center" valign="top">8<br>
          </td>
          <td align="center" valign="top">9<br>
          </td>
          <td align="center" valign="top">10<br>
          </td>
        </tr>
        <tr>
          <td valign="top">271<br>
          </td>
          <td valign="top">399<br>
          </td>
          <td valign="top">302<br>
          </td>
          <td valign="top">786<br>
          </td>
          <td valign="top">1027<br>
          </td>
          <td valign="top">635<br>
          </td>
          <td valign="top">400<br>
          </td>
          <td valign="top">370<br>
          </td>
          <td valign="top">202<br>
          </td>
          <td valign="top">250<br>
          </td>
        </tr>
      </tbody>
    </table>
    <br>
    In the next step the full "five sized" box is being used so 3 is
    replace by the average of 1-5<br>
    <br>
    <table align="center" bgcolor="#cccccc" border="5" cellpadding="5"
      cellspacing="5" height="69" width="342">
      <tbody>
        <tr>
          <tr>
            <td align="center" valign="top">1<br>
            </td>
            <td align="center" valign="top">2<br>
            </td>
            <td align="center" valign="top">3<br>
            </td>
            <td align="center" valign="top">4<br>
            </td>
            <td align="center" valign="top">5<br>
            </td>
            <td align="center" valign="top">6<br>
            </td>
            <td align="center" valign="top">7<br>
            </td>
            <td align="center" valign="top">8<br>
            </td>
            <td align="center" valign="top">9<br>
            </td>
            <td align="center" valign="top">10<br>
            </td>
          </tr>
          <tr>
            <td valign="top">271<br>
            </td>
            <td valign="top">399<br>
            </td>
            <td valign="top">557<br>
            </td>
            <td valign="top">786<br>
            </td>
            <td valign="top">1027<br>
            </td>
            <td valign="top">635<br>
            </td>
            <td valign="top">400<br>
            </td>
            <td valign="top">370<br>
            </td>
            <td valign="top">202<br>
            </td>
            <td valign="top">250<br>
            </td>
          </tr>
        </tr>
      </tbody>
    </table>
    <br>
    The boxsize of 5 would then be used used until one got to element
    8.&nbsp; After that element 9 would be calculated as the average of 7-10
    and element 10 would be calculated as the average of elements 8-10.<br>
    <br>
    If I did three passes then I would repeat this process three times.<br>
    <br>
    Hope that helps alleviate any confusion.<br>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 
Andrew J. Pounds, Ph.D.  (<a class="moz-txt-link-abbreviated" href="mailto:pounds@theochem.mercer.edu">pounds@theochem.mercer.edu</a>)
Associate Professor of Chemistry and Computer Science
Mercer University,  Macon, GA 31207   (478) 301-5627
</pre>
  </body>
</html>