Parallel Colt 0.7.2

edu.emory.mathcs.jtransforms.dht
Class FloatDHT_3D

java.lang.Object
  extended by edu.emory.mathcs.jtransforms.dht.FloatDHT_3D

public class FloatDHT_3D
extends Object

Computes 3D Discrete Hartley Transform (DHT) of real, single precision data. The sizes of all three dimensions can be arbitrary numbers. This is a parallel implementation optimized for SMP systems.

Part of code is derived from General Purpose FFT Package written by Takuya Ooura (http://www.kurims.kyoto-u.ac.jp/~ooura/fft.html)

Author:
Piotr Wendykier (piotr.wendykier@gmail.com)

Constructor Summary
FloatDHT_3D(int slices, int rows, int columns)
          Creates new instance of FloatDHT_3D.
 
Method Summary
 void forward(float[] a)
          Computes the 3D real, forward DHT leaving the result in a.
 void forward(float[][][] a)
          Computes the 3D real, forward DHT leaving the result in a.
 void inverse(float[][][] a, boolean scale)
          Computes the 3D real, inverse DHT leaving the result in a.
 void inverse(float[] a, boolean scale)
          Computes the 3D real, inverse DHT leaving the result in a.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FloatDHT_3D

public FloatDHT_3D(int slices,
                   int rows,
                   int columns)
Creates new instance of FloatDHT_3D.

Parameters:
slices - number of slices
rows - number of rows
columns - number of columns
Method Detail

forward

public void forward(float[] a)
Computes the 3D real, forward DHT leaving the result in a. The data is stored in 1D array addressed in slice-major, then row-major, then column-major, in order of significance, i.e. the element (i,j,k) of 3D array x[slices][rows][columns] is stored in a[i*sliceStride + j*rowStride + k], where sliceStride = rows * columns and rowStride = columns.

Parameters:
a - data to transform

forward

public void forward(float[][][] a)
Computes the 3D real, forward DHT leaving the result in a. The data is stored in 3D array.

Parameters:
a - data to transform

inverse

public void inverse(float[] a,
                    boolean scale)
Computes the 3D real, inverse DHT leaving the result in a. The data is stored in 1D array addressed in slice-major, then row-major, then column-major, in order of significance, i.e. the element (i,j,k) of 3D array x[slices][rows][columns] is stored in a[i*sliceStride + j*rowStride + k], where sliceStride = rows * columns and rowStride = columns.

Parameters:
a - data to transform
scale - if true then scaling is performed

inverse

public void inverse(float[][][] a,
                    boolean scale)
Computes the 3D real, inverse DHT leaving the result in a. The data is stored in 3D array.

Parameters:
a - data to transform
scale - if true then scaling is performed

Parallel Colt 0.7.2

Jump to the Parallel Colt Homepage