jass.generators
Class HalfSampleDelayTubeFilter

java.lang.Object
  extended by jass.generators.HalfSampleDelayKLFilter
      extended by jass.generators.HalfSampleDelayTubeFilter
All Implemented Interfaces:
Filter

public class HalfSampleDelayTubeFilter
extends HalfSampleDelayKLFilter

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)

Nested Class Summary
 
Nested classes/interfaces inherited from class jass.generators.HalfSampleDelayKLFilter
HalfSampleDelayKLFilter.State
 
Field Summary
protected  TubeShape tubeShape
           
 
Fields inherited from class jass.generators.HalfSampleDelayKLFilter
srate, state
 
Constructor Summary
HalfSampleDelayTubeFilter(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.HalfSampleDelayKLFilter
allocate, computeReflectionCoeff, filter, resetFilter, setAllCylinderRadii, setCylinderRadius, setDampingCoeff, setEnd, setGlottalReflectionCoeff, setLipReflectionCoeff
 
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

HalfSampleDelayTubeFilter

public HalfSampleDelayTubeFilter(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