1 package JSci.maths.wavelet; 2 3 import JSci.maths.*; 4 import JSci.maths.vectors.AbstractDoubleVector; 5 import JSci.maths.vectors.DoubleVector; 6 import JSci.util.*; 7 import java.util.Arrays ; 8 9 14 public class DiscreteFunction extends MultiscaleFunction implements Cloneable { 15 protected AbstractDoubleVector data; 16 17 public DiscreteFunction(double[] v) { 18 setData(v); 19 } 20 public void setData (double[] v) { 21 data = new DoubleVector(v); 22 } 23 27 public String toString() { 28 return(data.toString()); 29 } 30 34 public final void normalize() { 35 data = data.normalize(); 36 } 37 38 42 public final double[] evaluate() { 43 return(VectorToolkit.toArray(data)); 44 } 45 46 50 public final boolean equals(Object a) { 51 if((a!=null) && (a instanceof DiscreteFunction)) { 52 DiscreteFunction iv=(DiscreteFunction)a; 53 return data.equals(iv.data); 54 } 55 return false; 56 } 57 62 public double[] evaluate (int j) { 63 return(evaluate()); 64 } 65 72 public double mass(double a, double b, int jfin) { 73 return data.mass()/(data.dimension()-1)*Math.abs(b-a); 74 } 75 79 public final double norm () { 80 return(data.norm()); 81 } 82 87 public double norm (int j) { 88 return(data.norm()); 89 } 90 93 public Object clone() { 94 DiscreteFunction df=(DiscreteFunction) super.clone(); 95 df.setData(VectorToolkit.toArray(data)); 96 return(df); 97 } 98 103 public int dimension(int jfin) { 104 return(data.dimension()); 105 } 106 110 public final int dimension() { 111 return(data.dimension()); 112 } 113 126 public int getFilterType () { 127 return(data.dimension()); 128 } 129 } 130 131 | Popular Tags |