org.ejml.data
Class BlockMatrix64F

java.lang.Object
  extended by org.ejml.data.Matrix64F
      extended by org.ejml.data.D1Matrix64F
          extended by org.ejml.data.BlockMatrix64F
All Implemented Interfaces:
Serializable

public class BlockMatrix64F
extends D1Matrix64F

A row-major block matrix declared on to one continuous array.

Author:
Peter Abeles
See Also:
Serialized Form

Field Summary
 int blockLength
           
 
Fields inherited from class org.ejml.data.D1Matrix64F
data
 
Fields inherited from class org.ejml.data.Matrix64F
numCols, numRows
 
Constructor Summary
BlockMatrix64F()
           
BlockMatrix64F(int numRows, int numCols)
           
BlockMatrix64F(int numRows, int numCols, int blockLength)
           
 
Method Summary
 BlockMatrix64F copy()
           
 double get(int row, int col)
          Returns the value of value of the specified matrix element.
 double[] getData()
          Used to get a reference to the internal data.
 int getIndex(int row, int col)
          Returns the internal array index for the specified row and column.
 int getNumCols()
          Returns the number of columns in this matrix.
 int getNumElements()
          Returns the number of elements in this matrix, which is the number of rows times the number of columns.
 int getNumRows()
          Returns the number of rows in this matrix.
 void print()
           
 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.
 void reshape(int numRows, int numCols, int blockLength, boolean saveValues)
           
 void set(BlockMatrix64F A)
           
 void set(int row, int col, double val)
          Sets the value of the specified matrix element.
 double unsafe_get(int row, int col)
          Same as Matrix64F.get(int, int) but does not perform bounds check on input parameters.
 void unsafe_set(int row, int col, double val)
          Same as Matrix64F.set(int, int, double) but does not perform bounds check on input parameters.
static BlockMatrix64F wrap(double[] data, int numRows, int numCols, int blockLength)
           
 
Methods inherited from class org.ejml.data.D1Matrix64F
div, get, minus, plus, set, set, setData, times
 
Methods inherited from class org.ejml.data.Matrix64F
iterator, reshape, set
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

blockLength

public int blockLength
Constructor Detail

BlockMatrix64F

public BlockMatrix64F(int numRows,
                      int numCols,
                      int blockLength)

BlockMatrix64F

public BlockMatrix64F(int numRows,
                      int numCols)

BlockMatrix64F

public BlockMatrix64F()
Method Detail

set

public void set(BlockMatrix64F A)

wrap

public static BlockMatrix64F wrap(double[] data,
                                  int numRows,
                                  int numCols,
                                  int blockLength)

getData

public double[] getData()
Description copied from class: D1Matrix64F
Used to get a reference to the internal data.

Overrides:
getData in class D1Matrix64F
Returns:
Reference to the matrix's data.

reshape

public void reshape(int numRows,
                    int numCols,
                    boolean saveValues)
Description copied from class: Matrix64F

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 ]

Specified by:
reshape in class Matrix64F
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,
                    int blockLength,
                    boolean saveValues)

getIndex

public int getIndex(int row,
                    int col)
Description copied from class: D1Matrix64F
Returns the internal array index for the specified row and column.

Specified by:
getIndex in class D1Matrix64F
Parameters:
row - Row index.
col - Column index.
Returns:
Internal array index.

get

public double get(int row,
                  int col)
Description copied from class: Matrix64F
Returns the value of value of the specified matrix element.

Specified by:
get in class Matrix64F
Parameters:
row - Matrix element's row index..
col - Matrix element's column index.
Returns:
The specified element's value.

unsafe_get

public double unsafe_get(int row,
                         int col)
Description copied from class: Matrix64F
Same as Matrix64F.get(int, int) but does not perform bounds check on input parameters. This results in about a 25% speed increase but potentially sacrifices stability and makes it more difficult to track down simple errors. It is not recommended that this function be used, except in highly optimized code where the bounds are implicitly being checked.

Specified by:
unsafe_get in class Matrix64F
Parameters:
row - Matrix element's row index..
col - Matrix element's column index.
Returns:
The specified element's value.

set

public void set(int row,
                int col,
                double val)
Description copied from class: Matrix64F
Sets the value of the specified matrix element.

Specified by:
set in class Matrix64F
Parameters:
row - Matrix element's row index..
col - Matrix element's column index.
val - The element's new value.

unsafe_set

public void unsafe_set(int row,
                       int col,
                       double val)
Description copied from class: Matrix64F
Same as Matrix64F.set(int, int, double) but does not perform bounds check on input parameters. This results in about a 25% speed increase but potentially sacrifices stability and makes it more difficult to track down simple errors. It is not recommended that this function be used, except in highly optimized code where the bounds are implicitly being checked.

Specified by:
unsafe_set in class Matrix64F
Parameters:
row - Matrix element's row index..
col - Matrix element's column index.
val - The element's new value.

getNumRows

public int getNumRows()
Description copied from class: Matrix64F
Returns the number of rows in this matrix.

Overrides:
getNumRows in class Matrix64F
Returns:
Number of rows.

getNumCols

public int getNumCols()
Description copied from class: Matrix64F
Returns the number of columns in this matrix.

Overrides:
getNumCols in class Matrix64F
Returns:
Number of columns.

getNumElements

public int getNumElements()
Description copied from class: Matrix64F
Returns the number of elements in this matrix, which is the number of rows times the number of columns.

Specified by:
getNumElements in class Matrix64F
Returns:
Number of elements in this matrix.

print

public void print()
Specified by:
print in class Matrix64F

copy

public BlockMatrix64F copy()
Specified by:
copy in class Matrix64F


Copyright © 2012. All Rights Reserved.