<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE document PUBLIC "-//CNX//DTD CNXML 0.5 plus MathML//EN" "http://cnx.rice.edu/cnxml/0.5/DTD/cnxml_mathml.dtd">
<document xmlns="http://cnx.rice.edu/cnxml" xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" id="Module.2004-01-05.5507">
  <name>Filter types</name>
  <metadata>
  <md:version>1.5</md:version>
  <md:created>2004/01/05 03:55:07 US/Central</md:created>
  <md:revised>2005/01/24 05:10:50.424 US/Central</md:revised>
  <md:authorlist>
      <md:author id="Anders">
      <md:firstname>Anders</md:firstname>
      
      <md:surname>Gjendemsjo</md:surname>
      <md:email>gjendems@NO-SPAM.iet.ntnu.no</md:email>
    </md:author>
  </md:authorlist>

  <md:maintainerlist>
    <md:maintainer id="Anders">
      <md:firstname>Anders</md:firstname>
      
      <md:surname>Gjendemsjo</md:surname>
      <md:email>gjendems@NO-SPAM.iet.ntnu.no</md:email>
    </md:maintainer>
  </md:maintainerlist>
  
  <md:keywordlist>
    <md:keyword>Allpass</md:keyword>
    <md:keyword>Bandpass</md:keyword>
    <md:keyword>Bandstop</md:keyword>
    <md:keyword>Filter</md:keyword>
    <md:keyword>Highpass</md:keyword>
    <md:keyword>Ideal</md:keyword>
    <md:keyword>Lowpass</md:keyword>
    <md:keyword>Notch</md:keyword>
  </md:keywordlist>

  <md:abstract>Describes different filter types. Lowpass, highpass, bandpass, bandstop, allpass and notch filter.</md:abstract>
</metadata>

  <content>
    <para id="p00">
	So what is a filter? In general a filter is a device that discriminates,
	according to one or more attributes at its input, what passes through it.
	One example is the colour filter which absorbs light at certain wavelengths.
	Here we shall describe frequency-selective filters. It is called freqency-selective
	because it discriminates among the various <emphasis>frequency compononents</emphasis> of
	its input. By filter design we can create filters that pass signals with frequency
	components in some bands, and attenuates signals with content in other frequency bands.
    </para>
    <para id="p01">
	It is customary to classify filters according to their frequency domain charachteristics.
	In the following we will take a look at: lowpass, highpass, bandpass, bandstop, allpass
	and notch filters. (All of the filters shown are discrete-time)
    </para>
    <section id="s1">
	<name>Ideal filter types</name>
	<section id="s1s1">
	    <name>Lowpass</name>
	    <para id="s1s1p1">
		Attenuates frequencies above cutoff frequency, letting frequencies
		below cutoff(
		<m:math>
		  <m:ci><m:msub><m:mi>f</m:mi><m:mi>c</m:mi></m:msub></m:ci>
		</m:math>)
		through, see <cnxn target="f1"/>.
		<figure id="f1">
		  <media type="image/png" src="h_lowpass.png"/>
		  <caption>An ideal lowpass filter.</caption>
		</figure>

		<!-- To check if a filter is lowpass, just compute
		<m:math>
			<m:apply>
			  <m:ci>H</m:ci>
			  <m:apply>
			    <m:times/>
			      <m:imaginaryi/>
			      <m:cn>2</m:cn>
			      <m:pi/>
			      <m:ci>f</m:ci>
			  </m:apply>
			</m:apply>
		</m:math> at
		<m:math>
		  <m:apply>	
		    <m:eq/>
		      <m:ci>f</m:ci>
		      <m:cn>0</m:cn>
		  </m:apply>
		</m:math>.-->
	    </para>
	</section>
	<section id="s1s2">
	    <name>Highpass</name>
	    <para id="s1s2p1">
		Highpass filters stops low frequencies, letting higher frequencies
		through, see <cnxn target="f2"/>.
		<figure id="f2">
		  <media type="image/png" src="h_highpass.png"/>
		  <caption>An ideal highpass filter.</caption>
		</figure>
	    </para>
	</section>
	<section id="s1s3">
	    <name>Bandpass</name>
	    <para id="s1s3p1">
		Letting through only frequencies in a certain range,
		see <cnxn target="f3"/>.
		<figure id="f3">
		  <media type="image/png" src="h_bandpass.png"/>
		  <caption>An ideal bandpass filter.</caption>
		</figure>
	    </para>
	</section>
	<section id="s1s4">
	    <name>Bandstop</name>
	    <para id="s1s4p1">
		Stopping frequencies in a certain range,
		see <cnxn target="f4"/>.
		<figure id="f4">
		  <media type="image/png" src="h_bandstop.png"/>
		  <caption>An ideal bandstop filter.</caption>
		</figure>
	    </para>
	</section>
	<section id="s1s5">
	    <name>Allpass</name>
	    <para id="s1s5p1">
		Letting all frequencies through, see  
		see <cnxn target="f5"/>.
		<figure id="f5">
		  <media type="image/png" src="h_allpass.png"/>
		  <caption>An ideal allpass filter.</caption>
		</figure>
		Does this imply that the allpass filter is useless?
		The answer is no, because it may have effect on the signals phase. A filter
		is allpass if
		<m:math>	
		  <m:apply>
		    <m:eq/>
		      <m:apply>
			<m:abs/>
			<m:apply>
			  <m:ci>H</m:ci>
			  <m:apply>
			    <m:exp/>
			    <m:apply>
			    <m:times/>
			      <m:imaginaryi/>
			      <m:cn>2</m:cn>
			      <m:pi/>
			      <m:ci>f</m:ci>
			  </m:apply>
			</m:apply>
		      </m:apply>
		    </m:apply>
		    <m:cn>1</m:cn>
		  </m:apply>
		</m:math>,

		<m:math>
		    <m:apply>	
		        <m:forall/>
			<m:bvar><m:ci>f</m:ci></m:bvar>
		    </m:apply>
		</m:math>.
The allpass filter finds further applications as building blocks for many higher order filters.

	    </para>
	</section>
	
    </section><!--End Ideal Filter Section-->
    <section id="s2">
	<name>Other filter types</name>
	<section id="s2s1">
	    <name>Notch filter</name>
	    <para id="s2s1p1">
		The notch filter recognized by its
		perfect nulls in the frequency response,
		see <cnxn target="f6"/>.
		<figure id="f6">
		  <media type="image/png" src="h_notch.png"/>
		  <caption>Notch filter.</caption>
		</figure>
		Notch filters have many applications. One of them is in
		recording systems, where the notch filter serve to remove
		the power-line frequency 50 Hz and its harmonics(100 Hz, 150 Hz,...). Some audio equalisers
		include a notch filter.
	    </para>
	</section>
    </section>
    <section id="s3">
	<name>Matlab files</name>
	<para id="s3p1">
	  <link src="idealFilters.m">idealFilters.m</link>,
	  <link src="notchFilter.m">notchFilter.m</link>
	</para>
    </section>
  </content>
  
</document>
