spis.Util.Matrix
Class DirMatrix

java.lang.Object
  extended byspis.Util.Matrix.Matrix
      extended byspis.Util.Matrix.DirMatrix
All Implemented Interfaces:
java.io.Serializable

public class DirMatrix
extends Matrix
implements java.io.Serializable

Class Name : Matrix
Project ref : SPIS project
File name : Matrix.java
File type : class
Copyright : ONERA, 2 Av. E. Belin, 31055 Toulouse cedex, France http://www.onecert.fr
Status : under development
Creation : 25/08/2003
Modification :

Description : Matrix class with Direct simple storage (2D array)

Versions and anomalies correction :

Version numberAuthor (name, e-mail) Corrections/Modifications
0.1 JF Roussel, roussel@onecert.frCreation


Version:
0.1
Author:
JF Roussel
See Also:
Serialized Form

Constructor Summary
DirMatrix(float[][] values)
          Constructor with data, which must be a rectangular matrix i.e.values[i].length identical for all i (not checked)
DirMatrix(float[][] values, int d1, int d2)
          Constructor with data and size (for re-dimensionning if needed).
 
Method Summary
 Matrix buildLineNormalised()
          Generates and returns a matrix built from this matrix by normalising each of its lines: Mij -> Mij / (sum_k Mik).
 Matrix buildTranspose()
          Generates and returns the transpose of this matrix
 float[][] getValues()
          Returns a 2D array representing the matrix (here, it is the actual array stored in the DirMatrix).
 void incrementValue(int i, int j, float incr)
          Increments the element (i,j) of the matrix of the value incr.
 Matrix matMult(Matrix m)
          Multyplies by another matrix m and returns this_matrix . m.
 void matMult(Matrix m, Matrix result)
          Multyplies by another matrix m and returns this_matrix . m in result.
 void setValue(int i, int j, float val)
          Sets the element (i,j) of the matrix to the value val.
 void setValues(float[][] values)
          Defines this matrix with this float array (no copy, pointing to this array).
 void setValues(float[][] values, int d1, int d2)
          Defines this matrix with this float array (no copy, pointing to this array).
 void vectMult(FloatScalTable x, FloatScalTable y)
          Multyplies by a vector (x) and returns y = matrix x.
 
Methods inherited from class spis.Util.Matrix.Matrix
doubleVectMult, getDim1, getDim2, linearSystemSolve
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DirMatrix

public DirMatrix(float[][] values,
                 int d1,
                 int d2)
Constructor with data and size (for re-dimensionning if needed). Redimensionning may be further optimised.


DirMatrix

public DirMatrix(float[][] values)
Constructor with data, which must be a rectangular matrix i.e.values[i].length identical for all i (not checked)

Method Detail

vectMult

public void vectMult(FloatScalTable x,
                     FloatScalTable y)
Multyplies by a vector (x) and returns y = matrix x.

Specified by:
vectMult in class Matrix

matMult

public void matMult(Matrix m,
                    Matrix result)
Multyplies by another matrix m and returns this_matrix . m in result.

Specified by:
matMult in class Matrix
Parameters:
m -
result - this . m, as a matrix of predefined subtype (if possible)

matMult

public Matrix matMult(Matrix m)
Multyplies by another matrix m and returns this_matrix . m.

Specified by:
matMult in class Matrix
Parameters:
m -
Returns:
this . m, as a DirMatrix

buildTranspose

public Matrix buildTranspose()
Generates and returns the transpose of this matrix

Specified by:
buildTranspose in class Matrix

buildLineNormalised

public Matrix buildLineNormalised()
Generates and returns a matrix built from this matrix by normalising each of its lines: Mij -> Mij / (sum_k Mik). Returns a DirMatrix.

Specified by:
buildLineNormalised in class Matrix

setValues

public void setValues(float[][] values)
Defines this matrix with this float array (no copy, pointing to this array). The matrix dimensions are defined as the ones of the float array (values.length and values[0].length).

Parameters:
values -

setValues

public void setValues(float[][] values,
                      int d1,
                      int d2)
Defines this matrix with this float array (no copy, pointing to this array). The matrix dimensions are defined as d1 x d2, hence values must be at least [d1][d2] (extra values ignored).

Parameters:
values -
d1 -
d2 -

getValues

public float[][] getValues()
Returns a 2D array representing the matrix (here, it is the actual array stored in the DirMatrix).

Specified by:
getValues in class Matrix

setValue

public void setValue(int i,
                     int j,
                     float val)
Description copied from class: Matrix
Sets the element (i,j) of the matrix to the value val. Only partially supported by derived classes: only diagonal term for a DiagMatrix, and only values already present in the matrix structure for a SparseMatrix

Specified by:
setValue in class Matrix
Parameters:
i -
j -
val -
See Also:
Matrix.setValue(int, int, float)

incrementValue

public void incrementValue(int i,
                           int j,
                           float incr)
Description copied from class: Matrix
Increments the element (i,j) of the matrix of the value incr. Only partially supported by derived classes: only diagonal term for a DiagMatrix, and only values already present in the matrix structure for a SparseMatrix

Specified by:
incrementValue in class Matrix
Parameters:
i -
j -
See Also:
Matrix.incrementValue(int, int, float)