protected ParallelRunnable |
DoubleNTTStepStrategy.createMultiplyElementsParallelRunnable(ArrayAccess arrayAccess,
int startRow,
int startColumn,
int rows,
int columns,
long length,
long totalTransformLength,
boolean isInverse,
int modulus) |
Create a ParallelRunnable object for multiplying the elements of the matrix.
|
protected ParallelRunnable |
FloatNTTStepStrategy.createMultiplyElementsParallelRunnable(ArrayAccess arrayAccess,
int startRow,
int startColumn,
int rows,
int columns,
long length,
long totalTransformLength,
boolean isInverse,
int modulus) |
Create a ParallelRunnable object for multiplying the elements of the matrix.
|
protected ParallelRunnable |
IntNTTStepStrategy.createMultiplyElementsParallelRunnable(ArrayAccess arrayAccess,
int startRow,
int startColumn,
int rows,
int columns,
long length,
long totalTransformLength,
boolean isInverse,
int modulus) |
Create a ParallelRunnable object for multiplying the elements of the matrix.
|
protected ParallelRunnable |
LongNTTStepStrategy.createMultiplyElementsParallelRunnable(ArrayAccess arrayAccess,
int startRow,
int startColumn,
int rows,
int columns,
long length,
long totalTransformLength,
boolean isInverse,
int modulus) |
Create a ParallelRunnable object for multiplying the elements of the matrix.
|
protected ParallelRunnable |
DoubleNTTStepStrategy.createTransformRowsParallelRunnable(ArrayAccess arrayAccess,
int length,
int count,
boolean isInverse,
boolean permute,
int modulus) |
Create a ParallelRunnable object for transforming the rows of the matrix.
|
protected ParallelRunnable |
FloatNTTStepStrategy.createTransformRowsParallelRunnable(ArrayAccess arrayAccess,
int length,
int count,
boolean isInverse,
boolean permute,
int modulus) |
Create a ParallelRunnable object for transforming the rows of the matrix.
|
protected ParallelRunnable |
IntNTTStepStrategy.createTransformRowsParallelRunnable(ArrayAccess arrayAccess,
int length,
int count,
boolean isInverse,
boolean permute,
int modulus) |
Create a ParallelRunnable object for transforming the rows of the matrix.
|
protected ParallelRunnable |
LongNTTStepStrategy.createTransformRowsParallelRunnable(ArrayAccess arrayAccess,
int length,
int count,
boolean isInverse,
boolean permute,
int modulus) |
Create a ParallelRunnable object for transforming the rows of the matrix.
|
void |
DoubleTableFNT.inverseTableFNT(ArrayAccess arrayAccess,
double[] wTable,
int[] permutationTable) |
Inverse (Cooley-Tukey) fast Number Theoretic Transform.
|
void |
FloatTableFNT.inverseTableFNT(ArrayAccess arrayAccess,
float[] wTable,
int[] permutationTable) |
Inverse (Cooley-Tukey) fast Number Theoretic Transform.
|
void |
IntTableFNT.inverseTableFNT(ArrayAccess arrayAccess,
int[] wTable,
int[] permutationTable) |
Inverse (Cooley-Tukey) fast Number Theoretic Transform.
|
void |
LongTableFNT.inverseTableFNT(ArrayAccess arrayAccess,
long[] wTable,
int[] permutationTable) |
Inverse (Cooley-Tukey) fast Number Theoretic Transform.
|
void |
DoubleNTTStepStrategy.multiplyElements(ArrayAccess arrayAccess,
int startRow,
int startColumn,
int rows,
int columns,
long length,
long totalTransformLength,
boolean isInverse,
int modulus) |
|
void |
FloatNTTStepStrategy.multiplyElements(ArrayAccess arrayAccess,
int startRow,
int startColumn,
int rows,
int columns,
long length,
long totalTransformLength,
boolean isInverse,
int modulus) |
|
void |
IntNTTStepStrategy.multiplyElements(ArrayAccess arrayAccess,
int startRow,
int startColumn,
int rows,
int columns,
long length,
long totalTransformLength,
boolean isInverse,
int modulus) |
|
void |
LongNTTStepStrategy.multiplyElements(ArrayAccess arrayAccess,
int startRow,
int startColumn,
int rows,
int columns,
long length,
long totalTransformLength,
boolean isInverse,
int modulus) |
|
protected void |
SixStepFNTStrategy.multiplyElements(ArrayAccess arrayAccess,
int rows,
int columns,
long length,
long totalTransformLength,
boolean isInverse,
int modulus) |
Multiply each matrix element by a power of the n:th root of unity.
|
protected void |
TwoPassFNTStrategy.multiplyElements(ArrayAccess arrayAccess,
int startRow,
int startColumn,
int rows,
int columns,
long length,
long totalTransformLength,
boolean isInverse,
int modulus) |
Multiply each matrix element (i, j) by wi * j / totalTransformLength .
|
void |
DoubleMatrixStrategy.permuteToDoubleWidth(ArrayAccess arrayAccess,
int n1,
int n2) |
Permute the rows of the n1 x n2 matrix so that it is shaped like a
n1/2 x 2*n2 matrix.
|
void |
FloatMatrixStrategy.permuteToDoubleWidth(ArrayAccess arrayAccess,
int n1,
int n2) |
Permute the rows of the n1 x n2 matrix so that it is shaped like a
n1/2 x 2*n2 matrix.
|
void |
IntMatrixStrategy.permuteToDoubleWidth(ArrayAccess arrayAccess,
int n1,
int n2) |
Permute the rows of the n1 x n2 matrix so that it is shaped like a
n1/2 x 2*n2 matrix.
|
void |
LongMatrixStrategy.permuteToDoubleWidth(ArrayAccess arrayAccess,
int n1,
int n2) |
Permute the rows of the n1 x n2 matrix so that it is shaped like a
n1/2 x 2*n2 matrix.
|
void |
DoubleMatrixStrategy.permuteToHalfWidth(ArrayAccess arrayAccess,
int n1,
int n2) |
Permute the rows of the n1 x n2 matrix so that it is shaped like a
2*n1 x n2/2 matrix.
|
void |
FloatMatrixStrategy.permuteToHalfWidth(ArrayAccess arrayAccess,
int n1,
int n2) |
Permute the rows of the n1 x n2 matrix so that it is shaped like a
2*n1 x n2/2 matrix.
|
void |
IntMatrixStrategy.permuteToHalfWidth(ArrayAccess arrayAccess,
int n1,
int n2) |
Permute the rows of the n1 x n2 matrix so that it is shaped like a
2*n1 x n2/2 matrix.
|
void |
LongMatrixStrategy.permuteToHalfWidth(ArrayAccess arrayAccess,
int n1,
int n2) |
Permute the rows of the n1 x n2 matrix so that it is shaped like a
2*n1 x n2/2 matrix.
|
protected void |
SixStepFNTStrategy.postTransform(ArrayAccess arrayAccess) |
Finish processing the data after the (inverse) transform.
|
protected void |
SixStepFNTStrategy.preTransform(ArrayAccess arrayAccess) |
Prepare the data for the (inverse) transform.
|
protected void |
DiskDataStorage.setArray(ArrayAccess arrayAccess,
int startColumn,
int columns,
int rows) |
|
protected void |
DiskDataStorage.setTransposedArray(ArrayAccess arrayAccess,
int startColumn,
int columns,
int rows) |
|
void |
DoubleTableFNT.tableFNT(ArrayAccess arrayAccess,
double[] wTable,
int[] permutationTable) |
Forward (Sande-Tukey) fast Number Theoretic Transform.
|
void |
FloatTableFNT.tableFNT(ArrayAccess arrayAccess,
float[] wTable,
int[] permutationTable) |
Forward (Sande-Tukey) fast Number Theoretic Transform.
|
void |
IntTableFNT.tableFNT(ArrayAccess arrayAccess,
int[] wTable,
int[] permutationTable) |
Forward (Sande-Tukey) fast Number Theoretic Transform.
|
void |
LongTableFNT.tableFNT(ArrayAccess arrayAccess,
long[] wTable,
int[] permutationTable) |
Forward (Sande-Tukey) fast Number Theoretic Transform.
|
protected void |
TwoPassFNTStrategy.transformColumns(ArrayAccess arrayAccess,
int length,
int count,
boolean isInverse,
int modulus) |
Transform the columns of the data matrix.
|
protected void |
SixStepFNTStrategy.transformFirst(ArrayAccess arrayAccess,
int length,
int count,
boolean isInverse,
int modulus) |
The first transform of the rows (or columns) of the data matrix.
|
void |
DoubleNTTStepStrategy.transformRows(ArrayAccess arrayAccess,
int length,
int count,
boolean isInverse,
boolean permute,
int modulus) |
|
void |
FloatNTTStepStrategy.transformRows(ArrayAccess arrayAccess,
int length,
int count,
boolean isInverse,
boolean permute,
int modulus) |
|
void |
IntNTTStepStrategy.transformRows(ArrayAccess arrayAccess,
int length,
int count,
boolean isInverse,
boolean permute,
int modulus) |
|
void |
LongNTTStepStrategy.transformRows(ArrayAccess arrayAccess,
int length,
int count,
boolean isInverse,
boolean permute,
int modulus) |
|
protected void |
TwoPassFNTStrategy.transformRows(ArrayAccess arrayAccess,
int length,
int count,
boolean isInverse,
int modulus) |
Transform the rows of the data matrix.
|
protected void |
SixStepFNTStrategy.transformSecond(ArrayAccess arrayAccess,
int length,
int count,
boolean isInverse,
int modulus) |
The second transform of the rows (or columns) of the data matrix.
|
void |
DoubleMatrixStrategy.transpose(ArrayAccess arrayAccess,
int n1,
int n2) |
Transpose a n1 x n2 matrix.
|
void |
FloatMatrixStrategy.transpose(ArrayAccess arrayAccess,
int n1,
int n2) |
Transpose a n1 x n2 matrix.
|
void |
IntMatrixStrategy.transpose(ArrayAccess arrayAccess,
int n1,
int n2) |
Transpose a n1 x n2 matrix.
|
void |
LongMatrixStrategy.transpose(ArrayAccess arrayAccess,
int n1,
int n2) |
Transpose a n1 x n2 matrix.
|
protected void |
SixStepFNTStrategy.transposeFinal(ArrayAccess arrayAccess,
int n1,
int n2,
boolean isInverse) |
The final transpose of the forward transform, or the initial transpose
of the inverse transform.
|
protected void |
SixStepFNTStrategy.transposeInitial(ArrayAccess arrayAccess,
int n1,
int n2,
boolean isInverse) |
The initial transpose of the forward transform, or the final transpose
of the inverse transform, to transpose the columns of the matrix to be rows.
|
protected void |
SixStepFNTStrategy.transposeMiddle(ArrayAccess arrayAccess,
int n1,
int n2,
boolean isInverse) |
The second transpose of either the forward or inverse transform.
|
void |
DoubleMatrixStrategy.transposeSquare(ArrayAccess arrayAccess,
int n1,
int n2) |
Transpose a square n1 x n1 block of n1 x n2 matrix.
|
void |
FloatMatrixStrategy.transposeSquare(ArrayAccess arrayAccess,
int n1,
int n2) |
Transpose a square n1 x n1 block of n1 x n2 matrix.
|
void |
IntMatrixStrategy.transposeSquare(ArrayAccess arrayAccess,
int n1,
int n2) |
Transpose a square n1 x n1 block of n1 x n2 matrix.
|
void |
LongMatrixStrategy.transposeSquare(ArrayAccess arrayAccess,
int n1,
int n2) |
Transpose a square n1 x n1 block of n1 x n2 matrix.
|