JSci.maths.wavelet
Class DiscreteFunction

java.lang.Object
  extended by JSci.maths.wavelet.MultiscaleFunction
      extended by JSci.maths.wavelet.DiscreteFunction
All Implemented Interfaces:
java.lang.Cloneable
Direct Known Subclasses:
SparseDiscreteFunction

public class DiscreteFunction
extends MultiscaleFunction
implements java.lang.Cloneable

This class is used to be able to mix the wavelet and other type of functions such as given signals.


Field Summary
protected  AbstractDoubleVector data
           
 
Constructor Summary
DiscreteFunction(double[] v)
           
 
Method Summary
 java.lang.Object clone()
          Return a copy of this object
 int dimension()
          Tells you how many samples you'll get from this function
 int dimension(int jfin)
          Tells you how many samples you'll get from this function (will not depend on the parameter)
 boolean equals(java.lang.Object a)
          Check if another object is equal to this DiscreteFunction object
 double[] evaluate()
          Return as an array the sampled values of the function
 double[] evaluate(int j)
          Return as an array the sampled values of the function
 int getFilterType()
          This method is used to compute how the number of scaling functions changes from on scale to the other.
 double mass(double a, double b, int jfin)
          Compute the mass (integral)
 double norm()
          Compute the L2 norm of the signal
 double norm(int j)
          Compute the L2 norm of the function
 void normalize()
          Makes the L2 norm of the internal array equal to 1.
 void setData(double[] v)
           
 java.lang.String toString()
          Return a String representation of the object
 
Methods inherited from class JSci.maths.wavelet.MultiscaleFunction
mass
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

data

protected AbstractDoubleVector data
Constructor Detail

DiscreteFunction

public DiscreteFunction(double[] v)
Method Detail

setData

public void setData(double[] v)

toString

public java.lang.String toString()
Return a String representation of the object

Specified by:
toString in class MultiscaleFunction

normalize

public final void normalize()
Makes the L2 norm of the internal array equal to 1.


evaluate

public final double[] evaluate()
Return as an array the sampled values of the function


equals

public final boolean equals(java.lang.Object a)
Check if another object is equal to this DiscreteFunction object

Specified by:
equals in class MultiscaleFunction

evaluate

public double[] evaluate(int j)
Return as an array the sampled values of the function

Specified by:
evaluate in class MultiscaleFunction
Parameters:
j - number of iterations (doesn't do anything)

mass

public double mass(double a,
                   double b,
                   int jfin)
Compute the mass (integral)

Overrides:
mass in class MultiscaleFunction
Parameters:
a - left boundary of the interval
b - right boundary of the interval
jfin - number of iterations to consider (precision)

norm

public final double norm()
Compute the L2 norm of the signal


norm

public double norm(int j)
Compute the L2 norm of the function

Parameters:
j - number of iterations

clone

public java.lang.Object clone()
Return a copy of this object

Overrides:
clone in class MultiscaleFunction

dimension

public int dimension(int jfin)
Tells you how many samples you'll get from this function (will not depend on the parameter)

Specified by:
dimension in class MultiscaleFunction

dimension

public final int dimension()
Tells you how many samples you'll get from this function

Specified by:
dimension in class MultiscaleFunction

getFilterType

public int getFilterType()
This method is used to compute how the number of scaling functions changes from on scale to the other. Basically, if you have k scaling function and a Filter of type t, you'll have 2*k+t scaling functions at the next scale (dyadic case). Notice that this method assumes that one is working with the dyadic grid while the method "previousDimension" define in the interface "Filter" doesn't.

Specified by:
getFilterType in class MultiscaleFunction