jsci.maths.wavelet
Class BasisFunctionLibrary

java.lang.Object
  extended by jsci.maths.wavelet.BasisFunctionLibrary
All Implemented Interfaces:
Cloneable
Direct Known Subclasses:
MatchingPursuit

public class BasisFunctionLibrary
extends Object
implements Cloneable

This class is meant to be used for Fast Wavelet Transform, Matching Pursuit and related signal processing algorithm. The basic idea is to automatically build and compress a library of "basis functions". Using Morse Coding this class delivers very fast code without sacrificing anything. The only fee is the one you pay to build the object, and it is a one time fee. Note : this class should be rewritten to use the java.util collections starting with jdk1.2. This class is not meant to be used directly but rather, you should build on it. It supports only 1D data.


Constructor Summary
BasisFunctionLibrary(DiscreteFunction f)
           
 
Method Summary
 void add(Multiresolution mr)
          Attempt to add every possible functions belonging to a multiresolution.
 void add(MultiscaleFunction f)
          Add the MultiscaleFunction to both the primary and dual internal arrays.
 void add(MultiscaleFunction[] f)
          Add the array of MultiscaleFunction to both the primary and dual internal arrays.
 void add(MultiscaleFunction fprimary, MultiscaleFunction fdual)
          Add a clone of the given MultiscaleFunctions to the internal arrays of MultiscaleFunctions.
 double[] checkBiorthogonality()
          Checks whether whether or not the biorthogonality is satisfied If so, the return array should roughly be filled with ones.
 Object clone()
           
 DiscreteFunction getData()
          get a copy of the data object (no direct access)
 DiscreteFunction getDual(int k)
           
 double getMorseThreshold()
           
 DiscreteFunction getPrimary(int k)
           
 double getResidue(int k)
           
 double[] getResidues()
           
 int getSize()
          We will now attempt to match each MultiscaleFunction to the length of the data.
 double getWeigth(int k)
           
 double[] getWeigths()
           
 void includeFourier()
           
 void includeMasslessFourier()
           
 double norm()
           
 void setData(DiscreteFunction f)
          Allows the user to change the DiscreteFunction (see constructor).
 void setMorseThreshold(double p)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BasisFunctionLibrary

public BasisFunctionLibrary(DiscreteFunction f)
Method Detail

clone

public Object clone()
Overrides:
clone in class Object

setMorseThreshold

public void setMorseThreshold(double p)

getMorseThreshold

public double getMorseThreshold()

includeFourier

public void includeFourier()

includeMasslessFourier

public void includeMasslessFourier()

getPrimary

public DiscreteFunction getPrimary(int k)

getDual

public DiscreteFunction getDual(int k)

setData

public void setData(DiscreteFunction f)
Allows the user to change the DiscreteFunction (see constructor).

Throws:
IllegalArgumentException - if you try to change the number of data values (dimension of the DiscreteFunction)

getData

public DiscreteFunction getData()
get a copy of the data object (no direct access)


add

public void add(MultiscaleFunction fprimary,
                MultiscaleFunction fdual)
Add a clone of the given MultiscaleFunctions to the internal arrays of MultiscaleFunctions.


add

public void add(MultiscaleFunction f)
Add the MultiscaleFunction to both the primary and dual internal arrays.


add

public void add(MultiscaleFunction[] f)
Add the array of MultiscaleFunction to both the primary and dual internal arrays.


add

public void add(Multiresolution mr)
Attempt to add every possible functions belonging to a multiresolution. Entirely automatic! Limited to dyadic multiresolutions.


getResidues

public double[] getResidues()

getResidue

public double getResidue(int k)

getWeigths

public double[] getWeigths()

getWeigth

public double getWeigth(int k)

norm

public double norm()

getSize

public int getSize()
We will now attempt to match each MultiscaleFunction to the length of the data.


checkBiorthogonality

public double[] checkBiorthogonality()
Checks whether whether or not the biorthogonality is satisfied If so, the return array should roughly be filled with ones.



jHepWork 3.1 ©