Class D1Matrix32F
- java.lang.Object
-
- org.ejml.data.D1Matrix32F
-
- All Implemented Interfaces:
- java.io.Serializable, Matrix, RealMatrix32F, ReshapeMatrix
- Direct Known Subclasses:
- DenseMatrix32F
public abstract class D1Matrix32F extends java.lang.Object implements ReshapeMatrix, RealMatrix32F
A generic abstract class for matrices whose data is stored in a single 1D array of floats. The format of the elements in this array is not specified. For example row major, column major, and block row major are all common formats.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field and Description float[]dataWhere the raw data for the matrix is stored.intnumColsNumber of columns in the matrix.intnumRowsNumber of rows in the matrix.
-
Constructor Summary
Constructors Constructor and Description D1Matrix32F()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method and Description floatdiv(int index, float val)Divides the specified value to the internal data array at the specified index.
Equivalent to: this.data[index] /= val;floatget(int index)Returns the value of the matrix at the specified internal array index.float[]getData()Used to get a reference to the internal data.abstract intgetIndex(int row, int col)Returns the internal array index for the specified row and column.intgetNumCols()Returns the number of columns in this matrix.intgetNumRows()Returns the number of rows in this matrix.MatrixIterator32Fiterator(boolean rowMajor, int minRow, int minCol, int maxRow, int maxCol)Creates a new iterator for traversing through a submatrix inside this matrix.floatminus(int index, float val)Subtracts the specified value to the internal data array at the specified index.
Equivalent to: this.data[index] -= val;floatplus(int index, float val)Adds the specified value to the internal data array at the specified index.
Equivalent to: this.data[index] += val;voidreshape(int numRows, int numCols)Equivalent to invoking reshape(numRows,numCols,false);abstract voidreshape(int numRows, int numCols, boolean saveValues)Changes the number of rows and columns in the matrix, allowing its size to grow or shrink.voidset(D1Matrix32F b)Sets the value of this matrix to be the same as the value of the provided matrix.floatset(int index, float val)Sets the element's value at the specified index.voidsetData(float[] data)Changes the internal array reference.voidsetNumCols(int numCols)Sets the number of columns.voidsetNumRows(int numRows)Sets the number of rows.floattimes(int index, float val)Multiplies the specified value to the internal data array at the specified index.
Equivalent to: this.data[index] *= val;-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.ejml.data.RealMatrix32F
get, getNumElements, set, unsafe_get, unsafe_set
-
-
-
-
Field Detail
-
data
public float[] data
Where the raw data for the matrix is stored. The format is type dependent.
-
numRows
public int numRows
Number of rows in the matrix.
-
numCols
public int numCols
Number of columns in the matrix.
-
-
Method Detail
-
getData
public float[] getData()
Used to get a reference to the internal data.- Returns:
- Reference to the matrix's data.
-
setData
public void setData(float[] data)
Changes the internal array reference.
-
getIndex
public abstract int getIndex(int row, int col)Returns the internal array index for the specified row and column.- Parameters:
row- Row index.col- Column index.- Returns:
- Internal array index.
-
set
public void set(D1Matrix32F b)
Sets the value of this matrix to be the same as the value of the provided matrix. Both matrices must have the same shape:
aij = bij
- Parameters:
b- The matrix that this matrix is to be set equal to.
-
get
public float get(int index)
Returns the value of the matrix at the specified internal array index. The element at which row and column returned by this function depends upon the matrix's internal structure, e.g. row-major, column-major, or block.- Parameters:
index- Internal array index.- Returns:
- Value at the specified index.
-
set
public float set(int index, float val)Sets the element's value at the specified index. The element at which row and column modified by this function depends upon the matrix's internal structure, e.g. row-major, column-major, or block.- Parameters:
index- Index of element that is to be set.val- The new value of the index.
-
plus
public float plus(int index, float val)Adds the specified value to the internal data array at the specified index.
Equivalent to: this.data[index] += val;Intended for use in highly optimized code. The row/column coordinate of the modified element is dependent upon the matrix's internal structure.
- Parameters:
index- The index which is being modified.val- The value that is being added.
-
minus
public float minus(int index, float val)Subtracts the specified value to the internal data array at the specified index.
Equivalent to: this.data[index] -= val;Intended for use in highly optimized code. The row/column coordinate of the modified element is dependent upon the matrix's internal structure.
- Parameters:
index- The index which is being modified.val- The value that is being subtracted.
-
times
public float times(int index, float val)Multiplies the specified value to the internal data array at the specified index.
Equivalent to: this.data[index] *= val;Intended for use in highly optimized code. The row/column coordinate of the modified element is dependent upon the matrix's internal structure.
- Parameters:
index- The index which is being modified.val- The value that is being multiplied.
-
div
public float div(int index, float val)Divides the specified value to the internal data array at the specified index.
Equivalent to: this.data[index] /= val;Intended for use in highly optimized code. The row/column coordinate of the modified element is dependent upon the matrix's internal structure.
- Parameters:
index- The index which is being modified.val- The value that is being divided.
-
reshape
public abstract void reshape(int numRows, int numCols, boolean saveValues)Changes the number of rows and columns in the matrix, allowing its size to grow or shrink. If the saveValues flag is set to true, then the previous values will be maintained, but reassigned to new elements in a row-major ordering. If saveValues is false values will only be maintained when the requested size is less than or equal to the internal array size. The primary use for this function is to encourage data reuse and avoid unnecessarily declaring and initialization of new memory.
Examples:
[ 1 2 ; 3 4 ] -> reshape( 2 , 3 , true ) = [ 1 2 3 ; 4 0 0 ]
[ 1 2 ; 3 4 ] -> reshape( 1 , 2 , true ) = [ 1 2 ]
[ 1 2 ; 3 4 ] -> reshape( 1 , 2 , false ) = [ 1 2 ]
[ 1 2 ; 3 4 ] -> reshape( 2 , 3 , false ) = [ 0 0 0 ; 0 0 0 ]- Parameters:
numRows- The new number of rows in the matrix.numCols- The new number of columns in the matrix.saveValues- If true then the value of each element will be save using a row-major reordering. Typically this should be false.
-
reshape
public void reshape(int numRows, int numCols)Equivalent to invoking reshape(numRows,numCols,false);- Specified by:
reshapein interfaceReshapeMatrix- Parameters:
numRows- The new number of rows in the matrix.numCols- The new number of columns in the matrix.
-
iterator
public MatrixIterator32F iterator(boolean rowMajor, int minRow, int minCol, int maxRow, int maxCol)
Creates a new iterator for traversing through a submatrix inside this matrix. It can be traversed by row or by column. Range of elements is inclusive, e.g. minRow = 0 and maxRow = 1 will include rows 0 and 1. The iteration starts at (minRow,minCol) and ends at (maxRow,maxCol)- Parameters:
rowMajor- true means it will traverse through the submatrix by row first, false by columns.minRow- first row it will start at.minCol- first column it will start at.maxRow- last row it will stop at.maxCol- last column it will stop at.- Returns:
- A new MatrixIterator
-
getNumRows
public int getNumRows()
Returns the number of rows in this matrix.- Specified by:
getNumRowsin interfaceMatrix- Returns:
- Number of rows.
-
getNumCols
public int getNumCols()
Returns the number of columns in this matrix.- Specified by:
getNumColsin interfaceMatrix- Returns:
- Number of columns.
-
setNumRows
public void setNumRows(int numRows)
Sets the number of rows.- Parameters:
numRows- Number of rows
-
setNumCols
public void setNumCols(int numCols)
Sets the number of columns.- Parameters:
numCols- Number of columns
-
-
DMelt 3.0 © DataMelt by jWork.ORG