jass.generators
Class TubeFilter

java.lang.Object
  extended by jass.generators.KellyLochbaumFilter
      extended by jass.generators.TubeFilter
All Implemented Interfaces:
Filter

public class TubeFilter
extends KellyLochbaumFilter

A filter corresponding to a tube of a given length and shape. Excitation enters one side ("glottis") and sound is produced at the other end. Besides shape data it needs the glottal reflection coefficient and the total damping factor, modeling losses in the system. This class offers also a higher level interface to set the tube parameters through the TubeShape.

Author:
Kees van den Doel (kvdoel@cs.ubc.ca)

Field Summary
protected  TubeShape tubeShape
           
 
Fields inherited from class jass.generators.KellyLochbaumFilter
cylRadius, dampingCoeff, gi, go, kCoeff, li, lo, nTubeSections, srate
 
Constructor Summary
TubeFilter(float srate, TubeShape ts, double c)
          Create and initialize.
 
Method Summary
 void changeTubeModel()
          Change tube parameters (radii) and change filter accordingly Assumes caller has the TubeModel object and maintains it
protected  void setKLRadii()
          Set the radii in the filter according to the Tubemodel
 
Methods inherited from class jass.generators.KellyLochbaumFilter
computeKCoeff, filter, resetFilter, setAllCylinderRadii, setCylinderRadius, setDampingCoeff, setGlottalReflectionCoeff
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

tubeShape

protected TubeShape tubeShape
Constructor Detail

TubeFilter

public TubeFilter(float srate,
                  TubeShape ts,
                  double c)
Create and initialize.

Parameters:
srate - sampling rate in Hertz.
ts - a tube shape to build the filter out of
c - speed of sound in m/s
Method Detail

changeTubeModel

public void changeTubeModel()
Change tube parameters (radii) and change filter accordingly Assumes caller has the TubeModel object and maintains it


setKLRadii

protected void setKLRadii()
Set the radii in the filter according to the Tubemodel