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 class 
     
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected Vector
    La matrice en représentation linéaire
    protected int[]
    Les dimensions de la matrice
    protected MatrixFactory
    La factory
    protected long[]
    tableau 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 void
    checkDim(int dim)
    Permet de vérifier qu'une dimension demandé existe bien dans la matrice
    protected void
    checkDim(int[] dim)
    Permet de vérifier que les dimensions de la nouvelle matrice sont corrects
    protected long
    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.
    boolean
     
    int[]
    Retourne un tableau representant les dimensions de la matrice.
    int
    getDim(int dim)
    Retourne la taille d'une dimension
     
    double
    Deprecated.
    since 2.1, use getMaxOccurrence() instead
    double
    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é.
    int
    Retourne le nombre de dimension de la matrice
    long
    Returne number of assigned value, assigned value is value stored in memory
    double
    getValue(int[] pos)
    Retourne un element de la matrice
    Retourne un objet Inc pret a etre utilisé pour boucler sur tous les element de la matrice.
    Retourne un objet Inc pret a etre utilisé pour boucler sur tous les element de la matrice.
    protected int[]
    linearToCoordinates(int[] result, long pos)
    Convertie une coordonnée lineaire en coordonnées spaciales
    protected int[]
    Convertie une coordonnée lineaire en coordonnées spaciales
    void
    Permet de faire un traitement sur chaque valeur de la matrice
    void
    setValue(int[] pos, double value)
    Modifie un élement de la matrice
     

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • factory

      protected MatrixFactory factory
      La factory
    • dimensions

      protected int[] dimensions
      Les dimensions de la matrice
    • data

      protected Vector data
      La matrice en représentation linéaire
    • linearFactor

      protected long[] linearFactor
      tableau 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

      public BasicMatrix(MatrixFactory factory, int[] dimensions)
      Crée une nouvelle matrice ayant les dimensions demandées.
      Parameters:
      factory - factory
      dimensions - dimensions
    • BasicMatrix

      public BasicMatrix(MatrixFactory factory, Vector data, int[] dimensions)
      Crée une nouvelle matrice ayant les dimensions demandées.
      Parameters:
      factory - factory
      dimensions - dimensions
  • Method Details

    • getInternalVector

      public Vector getInternalVector()
    • getNumberOfAssignedValue

      public long getNumberOfAssignedValue()
      Returne number of assigned value, assigned value is value stored in memory
      Since:
      2.4.2
    • getMaxOccurence

      @Deprecated public double getMaxOccurence()
      Deprecated.
      since 2.1, use getMaxOccurrence() instead
      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
    • 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 à modifier
      value - la nouvelle valeur à mettre dans la matrice
    • iterator

      public BasicMatrixIterator 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

      public BasicMatrixIterator 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

      public void map(MapFunction f)
      Permet de faire un traitement sur chaque valeur de la matrice
      Parameters:
      f - la fonction a appliquer à chaque élement de la matrice
    • coordonatesToLinear

      protected long 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(long 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, long pos)
      Convertie une coordonnée lineaire en coordonnées spaciales
      Parameters:
      result - array use to store result. Useful to prevent array instanciation
      pos - 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

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object