Class DenseLargeFloatMatrix2D
- java.lang.Object
-
- cern.colt.PersistentObject
-
- cern.colt.matrix.AbstractMatrix
-
- cern.colt.matrix.AbstractMatrix2D
-
- cern.colt.matrix.tfloat.FloatMatrix2D
-
- cern.colt.matrix.tfloat.impl.WrapperFloatMatrix2D
-
- cern.colt.matrix.tfloat.impl.DenseLargeFloatMatrix2D
-
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable
public class DenseLargeFloatMatrix2D extends WrapperFloatMatrix2D
Dense 2-d matrix holding float elements. First see the package summary and javadoc tree view to get the broad picture.Implementation:
This data structure allows to store more than 2^31 elements. Internally holds one two-dimensional array, elements[rows][columns]. Note that this implementation is not synchronized.
Time complexity:
O(1) (i.e. constant time) for the basic operations get, getQuick, set, setQuick and size.
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor and Description DenseLargeFloatMatrix2D(int rows, int columns)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voiddct2(boolean scale)Computes the 2D discrete cosine transform (DCT-II) of this matrix.voiddctColumns(boolean scale)Computes the discrete cosine transform (DCT-II) of each column of this matrix.voiddctRows(boolean scale)Computes the discrete cosine transform (DCT-II) of each row of this matrix.voiddht2()Computes the 2D discrete Hartley transform (DHT) of this matrix.voiddhtColumns()Computes the discrete Hartley transform (DHT) of each column of this matrix.voiddhtRows()Computes the discrete Hartley transform (DHT) of each row of this matrix.voiddst2(boolean scale)Computes the 2D discrete sine transform (DST-II) of this matrix.voiddstColumns(boolean scale)Computes the discrete sine transform (DST-II) of each column of this matrix.voiddstRows(boolean scale)Computes the discrete sine transform (DST-II) of each row of this matrix.float[][]elements()Returns the elements of this matrix.voidfft2()Computes the 2D discrete Fourier transform (DFT) of this matrix.DenseLargeFComplexMatrix2DgetFft2()Returns new complex matrix which is the 2D discrete Fourier transform (DFT) of this matrix.DenseLargeFComplexMatrix2DgetFftColumns()Returns new complex matrix which is the discrete Fourier transform (DFT) of each column of this matrix.DenseLargeFComplexMatrix2DgetFftRows()Returns new complex matrix which is the discrete Fourier transform (DFT) of each row of this matrix.DenseLargeFComplexMatrix2DgetIfft2(boolean scale)Returns new complex matrix which is the 2D inverse of the discrete Fourier transform (IDFT) of this matrix.DenseLargeFComplexMatrix2DgetIfftColumns(boolean scale)Returns new complex matrix which is the inverse of the discrete Fourier transform (IDFT) of each column of this matrix.DenseLargeFComplexMatrix2DgetIfftRows(boolean scale)Returns new complex matrix which is the inverse of the discrete Fourier transform (IDFT) of each row of this matrix.floatgetQuick(int row, int column)Returns the matrix cell value at coordinate [row,column].voididct2(boolean scale)Computes the 2D inverse of the discrete cosine transform (DCT-III) of this matrix.voididctColumns(boolean scale)Computes the inverse of the discrete cosine transform (DCT-III) of each column of this matrix.voididctRows(boolean scale)Computes the inverse of the discrete cosine transform (DCT-III) of each row of this matrix.voididht2(boolean scale)Computes the 2D inverse of the discrete Hartley transform (IDHT) of this matrix.voididhtColumns(boolean scale)Computes the inverse of the discrete Hartley transform (IDHT) of each column of this matrix.voididhtRows(boolean scale)Computes the inverse of the discrete Hartley transform (IDHT) of each row of this matrix.voididst2(boolean scale)Computes the 2D inverse of the discrete sine transform (DST-III) of this matrix.voididstColumns(boolean scale)Computes the inverse of the discrete sine transform (DST-III) of each column of this matrix.voididstRows(boolean scale)Computes the inverse of the discrete sine transform (DST-III) of each row of this matrix.voidifft2(boolean scale)Computes the 2D inverse of the discrete Fourier transform (IDFT) of this matrix.FloatMatrix2Dlike(int rows, int columns)Construct and returns a new empty matrix of the same dynamic type as the receiver, having the specified number of rows and columns.FloatMatrix1Dlike1D(int size)Construct and returns a new 1-d matrix of the corresponding dynamic type, entirelly independent of the receiver.voidsetQuick(int row, int column, float value)Sets the matrix cell at coordinate [row,column] to the specified value.-
Methods inherited from class cern.colt.matrix.tfloat.impl.WrapperFloatMatrix2D
assign, assign, equals, equals, vectorize, viewColumn, viewColumnFlip, viewDice, viewPart, viewRow, viewRowFlip, viewSelection, viewStrides
-
Methods inherited from class cern.colt.matrix.tfloat.FloatMatrix2D
aggregate, aggregate, aggregate, aggregate, assign, assign, assign, assign, assign, assign, assign, cardinality, copy, forEachNonZero, get, getMaxLocation, getMinLocation, getNegativeValues, getNonZeros, getPositiveValues, like, normalize, set, toArray, toString, viewSelection, viewSelection, viewSorted, zAssign8Neighbors, zMult, zMult, zMult, zMult, zSum
-
Methods inherited from class cern.colt.matrix.AbstractMatrix2D
checkShape, checkShape, columns, columnStride, index, rows, rowStride, size, toStringShort
-
Methods inherited from class cern.colt.matrix.AbstractMatrix
ensureCapacity, isView, trimToSize
-
Methods inherited from class cern.colt.PersistentObject
clone
-
-
-
-
Method Detail
-
dct2
public void dct2(boolean scale)
Computes the 2D discrete cosine transform (DCT-II) of this matrix.- Overrides:
dct2in classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
dctColumns
public void dctColumns(boolean scale)
Computes the discrete cosine transform (DCT-II) of each column of this matrix.- Overrides:
dctColumnsin classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
dctRows
public void dctRows(boolean scale)
Computes the discrete cosine transform (DCT-II) of each row of this matrix.- Overrides:
dctRowsin classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
dht2
public void dht2()
Computes the 2D discrete Hartley transform (DHT) of this matrix.- Overrides:
dht2in classWrapperFloatMatrix2D
-
dhtColumns
public void dhtColumns()
Computes the discrete Hartley transform (DHT) of each column of this matrix.- Overrides:
dhtColumnsin classWrapperFloatMatrix2D
-
dhtRows
public void dhtRows()
Computes the discrete Hartley transform (DHT) of each row of this matrix.- Overrides:
dhtRowsin classWrapperFloatMatrix2D
-
dst2
public void dst2(boolean scale)
Computes the 2D discrete sine transform (DST-II) of this matrix.- Overrides:
dst2in classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
dstColumns
public void dstColumns(boolean scale)
Computes the discrete sine transform (DST-II) of each column of this matrix.- Overrides:
dstColumnsin classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
dstRows
public void dstRows(boolean scale)
Computes the discrete sine transform (DST-II) of each row of this matrix.- Overrides:
dstRowsin classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
fft2
public void fft2()
Computes the 2D discrete Fourier transform (DFT) of this matrix. The physical layout of the output data is as follows:this[k1][2*k2] = Re[k1][k2] = Re[rows-k1][columns-k2], this[k1][2*k2+1] = Im[k1][k2] = -Im[rows-k1][columns-k2], 0<k1<rows, 0<k2<columns/2, this[0][2*k2] = Re[0][k2] = Re[0][columns-k2], this[0][2*k2+1] = Im[0][k2] = -Im[0][columns-k2], 0<k2<columns/2, this[k1][0] = Re[k1][0] = Re[rows-k1][0], this[k1][1] = Im[k1][0] = -Im[rows-k1][0], this[rows-k1][1] = Re[k1][columns/2] = Re[rows-k1][columns/2], this[rows-k1][0] = -Im[k1][columns/2] = Im[rows-k1][columns/2], 0<k1<rows/2, this[0][0] = Re[0][0], this[0][1] = Re[0][columns/2], this[rows/2][0] = Re[rows/2][0], this[rows/2][1] = Re[rows/2][columns/2]This method computes only half of the elements of the real transform. The other half satisfies the symmetry condition. If you want the full real forward transform, usegetFft2. To get back the original data, useifft2.- Overrides:
fft2in classWrapperFloatMatrix2D- Throws:
java.lang.IllegalArgumentException- if the row size or the column size of this matrix is not a power of 2 number.
-
getFft2
public DenseLargeFComplexMatrix2D getFft2()
Returns new complex matrix which is the 2D discrete Fourier transform (DFT) of this matrix.- Overrides:
getFft2in classWrapperFloatMatrix2D- Returns:
- the 2D discrete Fourier transform (DFT) of this matrix.
-
getFftColumns
public DenseLargeFComplexMatrix2D getFftColumns()
Returns new complex matrix which is the discrete Fourier transform (DFT) of each column of this matrix.- Overrides:
getFftColumnsin classWrapperFloatMatrix2D- Returns:
- the discrete Fourier transform (DFT) of each column of this matrix.
-
getFftRows
public DenseLargeFComplexMatrix2D getFftRows()
Returns new complex matrix which is the discrete Fourier transform (DFT) of each row of this matrix.- Overrides:
getFftRowsin classWrapperFloatMatrix2D- Returns:
- the discrete Fourier transform (DFT) of each row of this matrix.
-
getIfft2
public DenseLargeFComplexMatrix2D getIfft2(boolean scale)
Returns new complex matrix which is the 2D inverse of the discrete Fourier transform (IDFT) of this matrix.- Overrides:
getIfft2in classWrapperFloatMatrix2D- Returns:
- the 2D inverse of the discrete Fourier transform (IDFT) of this matrix.
-
getIfftColumns
public DenseLargeFComplexMatrix2D getIfftColumns(boolean scale)
Returns new complex matrix which is the inverse of the discrete Fourier transform (IDFT) of each column of this matrix.- Overrides:
getIfftColumnsin classWrapperFloatMatrix2D- Returns:
- the inverse of the discrete Fourier transform (IDFT) of each column of this matrix.
-
getIfftRows
public DenseLargeFComplexMatrix2D getIfftRows(boolean scale)
Returns new complex matrix which is the inverse of the discrete Fourier transform (IDFT) of each row of this matrix.- Overrides:
getIfftRowsin classWrapperFloatMatrix2D- Returns:
- the inverse of the discrete Fourier transform (IDFT) of each row of this matrix.
-
getQuick
public float getQuick(int row, int column)Description copied from class:FloatMatrix2DReturns the matrix cell value at coordinate [row,column].Provided with invalid parameters this method may return invalid objects without throwing any exception. You should only use this method when you are absolutely sure that the coordinate is within bounds. Precondition (unchecked): 0 <= column < columns() && 0 <= row < rows().
- Overrides:
getQuickin classWrapperFloatMatrix2D- Parameters:
row- the index of the row-coordinate.column- the index of the column-coordinate.- Returns:
- the value at the specified coordinate.
-
idct2
public void idct2(boolean scale)
Computes the 2D inverse of the discrete cosine transform (DCT-III) of this matrix.- Overrides:
idct2in classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
idctColumns
public void idctColumns(boolean scale)
Computes the inverse of the discrete cosine transform (DCT-III) of each column of this matrix.- Overrides:
idctColumnsin classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
idctRows
public void idctRows(boolean scale)
Computes the inverse of the discrete cosine transform (DCT-III) of each row of this matrix.- Overrides:
idctRowsin classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
idht2
public void idht2(boolean scale)
Computes the 2D inverse of the discrete Hartley transform (IDHT) of this matrix.- Overrides:
idht2in classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
idhtColumns
public void idhtColumns(boolean scale)
Computes the inverse of the discrete Hartley transform (IDHT) of each column of this matrix.- Overrides:
idhtColumnsin classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
idhtRows
public void idhtRows(boolean scale)
Computes the inverse of the discrete Hartley transform (IDHT) of each row of this matrix.- Overrides:
idhtRowsin classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
idst2
public void idst2(boolean scale)
Computes the 2D inverse of the discrete sine transform (DST-III) of this matrix.- Overrides:
idst2in classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
idstColumns
public void idstColumns(boolean scale)
Computes the inverse of the discrete sine transform (DST-III) of each column of this matrix.- Overrides:
idstColumnsin classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
idstRows
public void idstRows(boolean scale)
Computes the inverse of the discrete sine transform (DST-III) of each row of this matrix.- Overrides:
idstRowsin classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed
-
ifft2
public void ifft2(boolean scale)
Computes the 2D inverse of the discrete Fourier transform (IDFT) of this matrix. The physical layout of the input data has to be as follows:this[k1][2*k2] = Re[k1][k2] = Re[rows-k1][columns-k2], this[k1][2*k2+1] = Im[k1][k2] = -Im[rows-k1][columns-k2], 0<k1<rows, 0<k2<columns/2, this[0][2*k2] = Re[0][k2] = Re[0][columns-k2], this[0][2*k2+1] = Im[0][k2] = -Im[0][columns-k2], 0<k2<columns/2, this[k1][0] = Re[k1][0] = Re[rows-k1][0], this[k1][1] = Im[k1][0] = -Im[rows-k1][0], this[rows-k1][1] = Re[k1][columns/2] = Re[rows-k1][columns/2], this[rows-k1][0] = -Im[k1][columns/2] = Im[rows-k1][columns/2], 0<k1<rows/2, this[0][0] = Re[0][0], this[0][1] = Re[0][columns/2], this[rows/2][0] = Re[rows/2][0], this[rows/2][1] = Re[rows/2][columns/2]This method computes only half of the elements of the real transform. The other half satisfies the symmetry condition. If you want the full real inverse transform, usegetIfft2.- Overrides:
ifft2in classWrapperFloatMatrix2D- Parameters:
scale- if true then scaling is performed- Throws:
java.lang.IllegalArgumentException- if the row size or the column size of this matrix is not a power of 2 number.
-
setQuick
public void setQuick(int row, int column, float value)Description copied from class:FloatMatrix2DSets the matrix cell at coordinate [row,column] to the specified value.Provided with invalid parameters this method may access illegal indexes without throwing any exception. You should only use this method when you are absolutely sure that the coordinate is within bounds. Precondition (unchecked): 0 <= column < columns() && 0 <= row < rows().
- Overrides:
setQuickin classWrapperFloatMatrix2D- Parameters:
row- the index of the row-coordinate.column- the index of the column-coordinate.value- the value to be filled into the specified cell.
-
elements
public float[][] elements()
Description copied from class:FloatMatrix2DReturns the elements of this matrix.- Overrides:
elementsin classWrapperFloatMatrix2D- Returns:
- the elements
-
like
public FloatMatrix2D like(int rows, int columns)
Description copied from class:FloatMatrix2DConstruct and returns a new empty matrix of the same dynamic type as the receiver, having the specified number of rows and columns. For example, if the receiver is an instance of type DenseFloatMatrix2D the new matrix must also be of type DenseFloatMatrix2D, if the receiver is an instance of type SparseFloatMatrix2D the new matrix must also be of type SparseFloatMatrix2D, etc. In general, the new matrix should have internal parametrization as similar as possible.- Overrides:
likein classWrapperFloatMatrix2D- Parameters:
rows- the number of rows the matrix shall have.columns- the number of columns the matrix shall have.- Returns:
- a new empty matrix of the same dynamic type.
-
like1D
public FloatMatrix1D like1D(int size)
Description copied from class:FloatMatrix2DConstruct and returns a new 1-d matrix of the corresponding dynamic type, entirelly independent of the receiver. For example, if the receiver is an instance of type DenseFloatMatrix2D the new matrix must be of type DenseFloatMatrix1D, if the receiver is an instance of type SparseFloatMatrix2D the new matrix must be of type SparseFloatMatrix1D, etc.- Overrides:
like1Din classWrapperFloatMatrix2D- Parameters:
size- the number of cells the matrix shall have.- Returns:
- a new matrix of the corresponding dynamic type.
-
-
DMelt 3.0 © DataMelt by jWork.ORG