org.apache.commons.math3.transform
Interface RealTransformer

All Known Implementing Classes:
FastCosineTransformer, FastHadamardTransformer, FastSineTransformer

public interface RealTransformer

Interface for one-dimensional data sets transformations producing real results.

Such transforms include sine transform, cosine transform or Hadamard transform. Fourier transform is of a different kind and does not implement this interface since it produces Complex results instead of real ones.

Since:
2.0
Version:
$Id: RealTransformer.java 1385310 2012-09-16 16:32:10Z tn $

Method Summary
 double[] transform(double[] f, TransformType type)
          Returns the (forward, inverse) transform of the specified real data set.
 double[] transform(UnivariateFunction f, double min, double max, int n, TransformType type)
          Returns the (forward, inverse) transform of the specified real function, sampled on the specified interval.
 

Method Detail

transform

double[] transform(double[] f,
                   TransformType type)
                   throws MathIllegalArgumentException
Returns the (forward, inverse) transform of the specified real data set.

Parameters:
f - the real data array to be transformed (signal)
type - the type of transform (forward, inverse) to be performed
Returns:
the real transformed array (spectrum)
Throws:
MathIllegalArgumentException - if the array cannot be transformed with the given type (this may be for example due to array size, which is constrained in some transforms)

transform

double[] transform(UnivariateFunction f,
                   double min,
                   double max,
                   int n,
                   TransformType type)
                   throws NonMonotonicSequenceException,
                          NotStrictlyPositiveException,
                          MathIllegalArgumentException
Returns the (forward, inverse) transform of the specified real function, sampled on the specified interval.

Parameters:
f - the function to be sampled and transformed
min - the (inclusive) lower bound for the interval
max - the (exclusive) upper bound for the interval
n - the number of sample points
type - the type of transform (forward, inverse) to be performed
Returns:
the real transformed array
Throws:
NonMonotonicSequenceException - if the lower bound is greater than, or equal to the upper bound
NotStrictlyPositiveException - if the number of sample points is negative
MathIllegalArgumentException - if the sample cannot be transformed with the given type (this may be for example due to sample size, which is constrained in some transforms)


Copyright © 2003-2013 The Apache Software Foundation. All Rights Reserved.