Package org.nuiton.math.matrix
Class BasicMatrix
java.lang.Object
org.nuiton.math.matrix.BasicMatrix
public class BasicMatrix extends Object
Objet matrice qui ne permet que le stockage de double dans un matrice à
autant de dimension que l'on souhaite.
Created: 27 oct. 2004
- Version:
- $Revision$ Mise a jour: $Date$ par : $Author$
- Author:
- Benjamin Poussin <poussin@codelutin.com>
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classBasicMatrix.BasicMatrixIteratorImpl -
Field Summary
Fields Modifier and Type Field Description protected VectordataLa matrice en représentation linéaireprotected int[]dimensionsLes dimensions de la matriceprotected MatrixFactoryfactoryLa factoryprotected int[]linearFactortableau de facteur permettant de convertir les coordonnées dans la matrice en un indice dans la représentation linéaire de la matrice -
Constructor Summary
Constructors Constructor Description BasicMatrix(MatrixFactory factory, int[] dimensions)Crée une nouvelle matrice ayant les dimensions demandées.BasicMatrix(MatrixFactory factory, Vector data, int[] dimensions)Crée une nouvelle matrice ayant les dimensions demandées. -
Method Summary
Modifier and Type Method Description protected voidcheckDim(int dim)Permet de vérifier qu'une dimension demandé existe bien dans la matriceprotected voidcheckDim(int[] dim)Permet de vérifier que les dimensions de la nouvelle matrice sont correctsprotected intcoordonatesToLinear(int[] coordonates)Permet de convertir les coordonnées d'un élément en un indice dans la représentation linéraire de la matrice.booleanequals(Object o)int[]getDim()Retourne un tableau representant les dimensions de la matrice.intgetDim(int dim)Retourne la taille d'une dimensionVectorgetInternalVector()doublegetMaxOccurence()Deprecated.since 2.1, usegetMaxOccurrence()insteaddoublegetMaxOccurrence()Retourne la valeur la plus courrement rencontrer dans la matrice. si plusieurs valeurs ont le même nombre d'occurence la plus petite valeur est retourné.intgetNbDim()Retourne le nombre de dimension de la matriceintgetNumberOfAssignedValue()Returne number of assigned value, assigned value is value stored in memorydoublegetValue(int[] pos)Retourne un element de la matriceBasicMatrixIteratoriterator()Retourne un objet Inc pret a etre utilisé pour boucler sur tous les element de la matrice.BasicMatrixIteratoriteratorNotZero()Retourne un objet Inc pret a etre utilisé pour boucler sur tous les element de la matrice.protected int[]linearToCoordinates(int pos)Convertie une coordonnée lineaire en coordonnées spacialesprotected int[]linearToCoordinates(int[] result, int pos)Convertie une coordonnée lineaire en coordonnées spacialesvoidmap(MapFunction f)Permet de faire un traitement sur chaque valeur de la matricevoidsetValue(int[] pos, double value)Modifie un élement de la matriceStringtoString()
-
Field Details
-
factory
La factory -
dimensions
protected int[] dimensionsLes dimensions de la matrice -
data
La matrice en représentation linéaire -
linearFactor
protected int[] linearFactortableau de facteur permettant de convertir les coordonnées dans la matrice en un indice dans la représentation linéaire de la matrice
-
-
Constructor Details
-
BasicMatrix
Crée une nouvelle matrice ayant les dimensions demandées.- Parameters:
factory- factorydimensions- dimensions
-
BasicMatrix
Crée une nouvelle matrice ayant les dimensions demandées.- Parameters:
factory- factorydimensions- dimensions
-
-
Method Details
-
getInternalVector
-
getNumberOfAssignedValue
public int getNumberOfAssignedValue()Returne number of assigned value, assigned value is value stored in memory- Since:
- 2.4.2
-
getMaxOccurence
Deprecated.since 2.1, usegetMaxOccurrence()insteadRetourne la valeur la plus courrement rencontrer dans la matrice. si plusieurs valeurs ont le même nombre d'occurence la plus petite valeur est retourné.- Returns:
- la valeur la plus nombreuse dans la matrice, ou la plus petite si plusieurs valeur se retourve le même nombre de fois
-
getMaxOccurrence
public double getMaxOccurrence()Retourne la valeur la plus courrement rencontrer dans la matrice. si plusieurs valeurs ont le même nombre d'occurence la plus petite valeur est retourné.- Returns:
- la valeur la plus nombreuse dans la matrice, ou la plus petite si plusieurs valeur se retourve le même nombre de fois
-
getNbDim
public int getNbDim()Retourne le nombre de dimension de la matrice- Returns:
- le nombre de dimension de la matrice;
-
getDim
public int getDim(int dim)Retourne la taille d'une dimension- Parameters:
dim- la dimension dont on souhaite la taille- Returns:
- la taille d'une dimension
-
getDim
public int[] getDim()Retourne un tableau representant les dimensions de la matrice. Le tableau retourné n'est pas une copie, il ne faut donc pas le modifier- Returns:
- le tableau des dimensions.
-
getValue
public double getValue(int[] pos)Retourne un element de la matrice- Parameters:
pos- la position de l'element à retourner- Returns:
- un element de la matrice
-
setValue
public void setValue(int[] pos, double value)Modifie un élement de la matrice- Parameters:
pos- la position de l'element à modifiervalue- la nouvelle valeur à mettre dans la matrice
-
iterator
Retourne un objet Inc pret a etre utilisé pour boucler sur tous les element de la matrice.- Returns:
- un objet Inc pret à être utilisé
-
iteratorNotZero
Retourne un objet Inc pret a etre utilisé pour boucler sur tous les element de la matrice.- Returns:
- un objet Inc pret à être utilisé
-
map
Permet de faire un traitement sur chaque valeur de la matrice- Parameters:
f- la fonction a appliquer à chaque élement de la matrice
-
coordonatesToLinear
protected int coordonatesToLinear(int[] coordonates)Permet de convertir les coordonnées d'un élément en un indice dans la représentation linéraire de la matrice.- Parameters:
coordonates- les coordonnées à lineariser- Returns:
- un indice réprésentant les coordonnées de façon linéaire
-
linearToCoordinates
protected int[] linearToCoordinates(int pos)Convertie une coordonnée lineaire en coordonnées spaciales- Parameters:
pos- la coordonnée linéaire- Returns:
- les coordonnées spaciales de l'élément
-
linearToCoordinates
protected int[] linearToCoordinates(int[] result, int pos)Convertie une coordonnée lineaire en coordonnées spaciales- Parameters:
result- array use to store result. Useful to prevent array instanciationpos- la coordonnée linéaire- Returns:
- les coordonnées spaciales de l'élément
-
checkDim
protected void checkDim(int[] dim)Permet de vérifier que les dimensions de la nouvelle matrice sont corrects- Parameters:
dim- les dimensions de la nouvelle matrice- Throws:
IllegalArgumentException- si une dimension n'est pas valide
-
checkDim
protected void checkDim(int dim)Permet de vérifier qu'une dimension demandé existe bien dans la matrice- Parameters:
dim- la position de la dimension que l'on souhaite- Throws:
IndexOutOfBoundsException- si la dimension demandée n'existe pas
-
toString
-
equals
-