org.apfloat.internal
Class LongMediumConvolutionStrategy

java.lang.Object
  |
  +--org.apfloat.internal.LongBaseMath
        |
        +--org.apfloat.internal.LongMediumConvolutionStrategy
All Implemented Interfaces:
ConvolutionStrategy, LongRadixConstants, java.io.Serializable

public class LongMediumConvolutionStrategy
extends LongBaseMath
implements ConvolutionStrategy, LongRadixConstants

Medium-length convolution strategy. Performs a simple O(n2) multiplication when the size of one operand is relatively short.

See Also:
Serialized Form

Field Summary
 
Fields inherited from interface org.apfloat.internal.LongRadixConstants
BASE, BASE_DIGITS, MAX_EXPONENT, MINIMUM_FOR_DIGITS
 
Constructor Summary
LongMediumConvolutionStrategy(int radix)
          Creates a convolution strategy using the specified radix.
 
Method Summary
 DataStorage convolute(DataStorage x, DataStorage y, long resultSize)
          Convolutes the two sets of data.
 
Methods inherited from class org.apfloat.internal.LongBaseMath
baseAdd, baseDivide, baseMultiplyAdd, baseSubtract
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LongMediumConvolutionStrategy

public LongMediumConvolutionStrategy(int radix)
Creates a convolution strategy using the specified radix.

Parameters:
radix - The radix that will be used.
Method Detail

convolute

public DataStorage convolute(DataStorage x,
                             DataStorage y,
                             long resultSize)
                      throws ApfloatRuntimeException
Description copied from interface: ConvolutionStrategy
Convolutes the two sets of data.

Specified by:
convolute in interface ConvolutionStrategy
Parameters:
x - First data set.
y - Second data set.
resultSize - Number of elements needed in the result data.
Returns:
The convolved data.
ApfloatRuntimeException