Interface MatrixND

All Superinterfaces:
Cloneable, Serializable
All Known Implementing Classes:
AbstractMatrixND, MatrixNDImpl, MatrixProxy, MatrixSemanticsDecorator, SubMatrix

public interface MatrixND extends Serializable, Cloneable
MatrixND interface for different matrix implementation. Created: 29 oct. 2004
Version:
$Revision$ Mise a jour: $Date$ par : $Author$
Author:
Benjamin Poussin <poussin@codelutin.com>
  • Method Summary

    Modifier and Type
    Method
    Description
    Addition la matrice courante avec la matrice passe en parametre et se retourne elle meme.
    adds(double d)
    Addition d'un scalaire à une matrice.
    Créer une nouvelle instance clonée de celle-ci
    Copy la matrice pour pouvoir la modifier sans perdre les donnees initiales.
    cut(int dim, int[] toCut)
    Permet de supprimer des éléments de la matrice.
    divs(double d)
    Multiplication d'une matrice par un scalaire.
    boolean
    Verifie si les matrices sont egales en ne regardant que les valeurs et pas les semantiques
    void
    exportCSV(Writer writer, boolean withSemantics)
    Export dans un writer au format CSV de la matrice
    void
    exportCSVND(Writer writer, boolean withSemantics)
    Export dans un writer au format CSV de la matrice
    void
    fromList(List<?> list)
    Permet de charger une matrice a partir d'une representation List
    int[]
    Retourne les dimensions de la matrice.
    int
    getDim(int d)
    Retourne la dimension de la matrice dans la dimension d.
    int
    Retourne le nombre de dimensions de la matrice.
    Deprecated.
    since 1.0.3, use getDimensionNames() instead
    Retourne le nom de la dimension demandée.
    Permet de recuperer les noms des dimension.
    Retourne la factory qui a permit de creer la matrice.
    double
    Deprecated.
    since 2.1, use getMaxOccurrence() instead
    double
    Retourne la valeur la plus courrement rencontrer dans un tableau.
    Retourne le nom de la matrice.
    int
    Deprecated.
    since 1.0.3, use getDimCount() instead
    long
    Returne number of assigned value, assigned value is value stored in memory
    getSemantic(int dim)
    Retourne la semantique pour une dimension.
    Donne toutes les semantiques de la matrice.
    getSemantics(int dim)
    Deprecated.
    (since 1.0.3) use #getSemantic(int) instead
    getSubMatrix(int[]... elems)
    Permet de prendre une sous matrice dans la matrice courante.
    getSubMatrix(int dim, int[] elem)
    Permet de prendre une sous matrice dans la matrice courante.
    getSubMatrix(int dim, int start, int nb)
    Permet de prendre une sous matrice dans la matrice courante.
    getSubMatrix(int dim, Object... elem)
    Permet de prendre une sous matrice dans la matrice courante.
    getSubMatrix(int dim, Object start, int nb)
    Permet de prendre une sous matrice dans la matrice courante.
    getSubMatrix(Object[]... elem)
    Permet de prendre une sous matrice dans la matrice courante.
    double
    getValue(int x)
    Return a 1D matrix value.
    double
    getValue(int[] dimensions)
    Renvoie un element de la matrice demandée en fonction des dimensions passé en paramètre.
    Exemple: Si on a un matrice 3D.
    getValue(1,1,1) retourne un element de la matrice.
    double
    getValue(int x, int y)
    Return a 2D matrix value.
    double
    getValue(int x, int y, int z)
    Return a 3D matrix value.
    double
    getValue(int x, int y, int z, int t)
    Return a 4D matrix value.
    double
    Return a 1D matrix value.
    double
    getValue(Object[] coordinates)
    Renvoie un element de la matrice demandée en fonction des dimensions passé en paramètre.
    double
    Return a 2D matrix value.
    double
    Return a 3D matrix value.
    double
    Return a 4D matrix value.
    void
    importCSV(File file, int[] origin)
    Import depuis un reader au format CSV des données dans la matrice.
    void
    importCSV(Reader reader, int[] origin)
    Import depuis un reader au format CSV des données dans la matrice.
    void
    importCSV(Reader reader, int[] origin, String matrixName)
    Import depuis un reader au format CSV des données dans la matrice.
    boolean
    Deprecated.
    since 2.2, always return true, CSV import/export is always supported
    Retourne un iterator sur toute la matrice.
    Retourne un iterator pour toutes les valeurs de la matrices differente de 0
    Applique une fonction sur chaque valeur de la matrice.
    double
    Return all matrix data mean value
    meanOverDim(int dim)
    Effectue la moyenne des valeurs sur une dimension donnée.
    meanOverDim(int dim, int step)
    Effectue la moyenne des valeurs sur une dimension donnée. la moyenne permet juste de regrouper dans une dimension un certain nombre de valeur.
    Soustrai la matrice courante avec la matrice passe en parametre et ce retourne elle meme.
    minuss(double d)
    Soustraction d'un scalaire à une matrice
    Multiplication normal (produit matriciel) de 2 matrices 2D.
    mults(double d)
    Multiplication d'une matrice par un scalaire.
    paste(int[] origin, MatrixND mat)
    Copie une matrice dans la matrice actuelle.
    Copie une matrice dans la matrice actuelle.
    Modifie la matrice actuel en metant les valeurs de mat passé en parametre La copie se fait en fonction de la semantique, si un element dans une dimension n'est pas trouvé, alors il est passé
    Reduit la matrice de sorte que toutes les dimensions qui n'ont qu'un élement soit supprimée.
    reduce(int minNbDim)
    Reduit la matrice de sorte que toutes les dimensions qui n'ont qu'un élement soit supprimée.
    reduceDims(int... dims)
    Reduit le matrice seulement sur les dimensions passées en argument.
    void
    setDimensionName(int dim, String name)
    Permet de mettre un nom à une dimension.
    void
    Deprecated.
    since 1.0.3, use setDimensionNames(String[]) instead
    void
    Permet de mettre des noms aux différentes dimension.
    void
    Permet de donner un nom à la matrice.
    <E> void
    setSemantic(int dim, List<E> sem)
    Modifie la semantique d'une dimension.
    <E> void
    setSemantics(int dim, List<E> sem)
    Deprecated.
    (since 1.0.3) use #setSemantic(int, List) instead
    void
    setValue(int[] dimensions, double d)
    Modifie un element de la matrice en fonction des dimensions passé en paramètre.
    Exemple: Si on a un matrice 3D.
    set([1,1,1], m) modifie un element de la matrice.
    void
    setValue(int x, double d)
    Modify a 1D matrix value.
    void
    setValue(int x, int y, double d)
    Modify a 2D matrix value.
    void
    setValue(int x, int y, int z, double d)
    Modify a 3D matrix value.
    void
    setValue(int x, int y, int z, int t, double d)
    Modify a 4D matrix value.
    void
    setValue(Object[] coordinates, double d)
    Modifie un element de la matrice en fonction des dimensions passé en paramètre.
    void
    setValue(Object x, double d)
    Modify a 1D matrix value.
    void
    setValue(Object x, Object y, double d)
    Modify a 2D matrix value.
    void
    setValue(Object x, Object y, Object z, double d)
    Modify a 3D matrix value.
    void
    setValue(Object x, Object y, Object z, Object t, double d)
    Modify a 4D matrix value.
    long
    Retourne le nombre d'element dans la matrice [2, 3, 5] donnera 30
    double
    Somme toutes les valeurs de la matrice.
    sumOverDim(int dim)
    Somme la matrice sur une dimension donnée.
    sumOverDim(int dim, int step)
    Somme la matrice mais la matrice reste de la même dimension. la somme permet juste de regrouper dans une dimension un certain nombre de valeur.
    sumOverDim(int dim, int start, int nb)
     
    List<?>
    Donne la matrice sous forme de List de list ... de double
    retourne le transpose de la matrice.
  • Method Details

    • getFactory

      MatrixFactory getFactory()
      Retourne la factory qui a permit de creer la matrice.
      Returns:
      la MatrixFactory
      See Also:
    • getNumberOfAssignedValue

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

      List[] getSemantics()
      Donne toutes les semantiques de la matrice. Si la matrice n'a pas de semantique retourne null.
      Returns:
      la liste des semantics
    • getSemantics

      @Deprecated List getSemantics(int dim)
      Deprecated.
      (since 1.0.3) use #getSemantic(int) instead
      Retourne la semantique pour une dimension.
      Parameters:
      dim - la dimension pour lequel on veut la semantique
      Returns:
      la semantique de la dimension on null s'il n'y a pas de semantique
    • getSemantic

      List getSemantic(int dim)
      Retourne la semantique pour une dimension.
      Parameters:
      dim - la dimension pour lequel on veut la semantique
      Returns:
      la semantique de la dimension on null s'il n'y a pas de semantique
    • setSemantics

      @Deprecated <E> void setSemantics(int dim, List<E> sem)
      Deprecated.
      (since 1.0.3) use #setSemantic(int, List) instead
      Modifie la semantique d'une dimension.
      Type Parameters:
      E - data type
      Parameters:
      dim - dimension to modify semantic
      sem - new semantic to set
    • setSemantic

      <E> void setSemantic(int dim, List<E> sem)
      Modifie la semantique d'une dimension.
      Type Parameters:
      E - data type
      Parameters:
      dim - dimension to modify semantic
      sem - new semantic to set
      Since:
      1.0.3
    • setName

      void setName(String name)
      Permet de donner un nom à la matrice.
      Parameters:
      name - name to set
    • getName

      String getName()
      Retourne le nom de la matrice.
      Returns:
      le nom de la matrice ou la chaine vide si pas de nom.
    • setDimensionName

      @Deprecated void setDimensionName(String[] names)
      Deprecated.
      since 1.0.3, use setDimensionNames(String[]) instead
      Permet de mettre des noms aux différentes dimension.
      Parameters:
      names - names to set
    • setDimensionNames

      void setDimensionNames(String[] names)
      Permet de mettre des noms aux différentes dimension.
      Parameters:
      names - names to set
      Since:
      1.0.3
    • getDimensionName

      @Deprecated String[] getDimensionName()
      Deprecated.
      since 1.0.3, use getDimensionNames() instead
      Permet de recuperer les noms des dimension.
      Returns:
      tableau des noms de dimension.
    • getDimensionNames

      String[] getDimensionNames()
      Permet de recuperer les noms des dimension.
      Returns:
      tableau des noms de dimension.
      Since:
      1.0.3
    • setDimensionName

      void setDimensionName(int dim, String name)
      Permet de mettre un nom à une dimension.
      Parameters:
      dim - la dimension dont on veut changer le nom
      name - le nom à donner à la dimension
    • getDimensionName

      String getDimensionName(int dim)
      Retourne le nom de la dimension demandée.
      Parameters:
      dim - la dimension dont on veut le nom
      Returns:
      le nom de la dimension ou la chaine vide si la dimension n'a pas de nom @ si la dimension demandé n'est pas valide
    • getMaxOccurence

      @Deprecated double getMaxOccurence()
      Deprecated.
      since 2.1, use getMaxOccurrence() instead
      Retourne la valeur la plus couramment rencontree dans un tableau. Si plusieurs valeurs ont le même nombre d'occurrence la plus petite valeur est retourné.
      Returns:
      la valeur la plus nombreuse dans le tableau
    • getMaxOccurrence

      double getMaxOccurrence()
      Retourne la valeur la plus courrement rencontrer dans un tableau. Si plusieurs valeurs ont le même nombre d'occurrence la plus petite valeur est retourné.
      Returns:
      la valeur la plus nombreuse dans le tableau
      Since:
      2.1
    • getNbDim

      int getNbDim()
      Deprecated.
      since 1.0.3, use getDimCount() instead
      Retourne le nombre de dimensions de la matrice.
      Returns:
      le nombre de dimensions de la matrice.
    • getDimCount

      int getDimCount()
      Retourne le nombre de dimensions de la matrice.
      Returns:
      le nombre de dimensions de la matrice.
      Since:
      1.0.3
    • getDim

      int[] getDim()
      Retourne les dimensions de la matrice.
      Returns:
      matrix dimension
    • getDim

      int getDim(int d)
      Retourne la dimension de la matrice dans la dimension d.
      Parameters:
      d - dimension
      Returns:
      matrix dimension
    • size

      long size()
      Retourne le nombre d'element dans la matrice [2, 3, 5] donnera 30
      Returns:
      le nombre d'element dans la matrice
    • iterator

      MatrixIterator iterator()
      Retourne un iterator sur toute la matrice.
      Returns:
      matrix iterator
    • iteratorNotZero

      MatrixIterator iteratorNotZero()
      Retourne un iterator pour toutes les valeurs de la matrices differente de 0
      Returns:
      matrix iterator
    • map

      Applique une fonction sur chaque valeur de la matrice.
      Parameters:
      f - function to apply
      Returns:
      this
    • getValue

      double getValue(int[] dimensions)
      Renvoie un element de la matrice demandée en fonction des dimensions passé en paramètre.
      Exemple: Si on a un matrice 3D.
      getValue(1,1,1) retourne un element de la matrice.
      Parameters:
      dimensions - les différentes dimension à extraire. Le tableau doit contenir toutes les dimensions de la matrice, et seulement des nombres positif
      Returns:
      un entier double.
    • getValue

      double getValue(int x)
      Return a 1D matrix value.
      Parameters:
      x - first dimension index
      Returns:
      double value at specified dimensions
    • getValue

      double getValue(int x, int y)
      Return a 2D matrix value.
      Parameters:
      x - first dimension index
      y - second dimension index
      Returns:
      double value at specified dimensions
    • getValue

      double getValue(int x, int y, int z)
      Return a 3D matrix value.
      Parameters:
      x - first dimension index
      y - second dimension index
      z - third dimension index
      Returns:
      double value at specified dimensions
    • getValue

      double getValue(int x, int y, int z, int t)
      Return a 4D matrix value.
      Parameters:
      x - first dimension index
      y - second dimension index
      z - third dimension index
      t - fourth dimension index
      Returns:
      double value at specified dimensions
    • getValue

      double getValue(Object[] coordinates)
      Renvoie un element de la matrice demandée en fonction des dimensions passé en paramètre.
      Parameters:
      coordinates - semantics values to get matrix value
      Returns:
      double value at specified dimensions
    • getValue

      double getValue(Object x)
      Return a 1D matrix value.
      Parameters:
      x - first dimension
      Returns:
      double value at specified dimensions
    • getValue

      double getValue(Object x, Object y)
      Return a 2D matrix value.
      Parameters:
      x - first dimension
      y - second dimension
      Returns:
      double value at specified dimensions
    • getValue

      double getValue(Object x, Object y, Object z)
      Return a 3D matrix value.
      Parameters:
      x - first dimension
      y - second dimension
      z - third dimension
      Returns:
      double value at specified dimensions
    • getValue

      double getValue(Object x, Object y, Object z, Object t)
      Return a 4D matrix value.
      Parameters:
      x - first dimension
      y - second dimension
      z - third dimension
      t - fourth dimension
      Returns:
      double value at specified dimensions
    • setValue

      void setValue(int[] dimensions, double d)
      Modifie un element de la matrice en fonction des dimensions passé en paramètre.
      Exemple: Si on a un matrice 3D.
      set([1,1,1], m) modifie un element de la matrice.
      Parameters:
      dimensions - dimension indices
      d - new double value to set into matrix at specified dimensions
    • setValue

      void setValue(int x, double d)
      Modify a 1D matrix value.
      Parameters:
      x - first dimension index
      d - new double value to set into matrix at specified dimensions
    • setValue

      void setValue(int x, int y, double d)
      Modify a 2D matrix value.
      Parameters:
      x - first dimension index
      y - second dimension index
      d - new double value to set into matrix at specified dimensions
    • setValue

      void setValue(int x, int y, int z, double d)
      Modify a 3D matrix value.
      Parameters:
      x - first dimension index
      y - second dimension index
      z - third dimension index
      d - new double value to set into matrix at specified dimensions
    • setValue

      void setValue(int x, int y, int z, int t, double d)
      Modify a 4D matrix value.
      Parameters:
      x - first dimension index
      y - second dimension index
      z - third dimension index
      t - fourth dimension index
      d - new double value to set into matrix at specified dimensions
    • setValue

      void setValue(Object[] coordinates, double d)
      Modifie un element de la matrice en fonction des dimensions passé en paramètre.
      Parameters:
      coordinates - semantics value to set matrix value
      d - new double value to set into matrix at specified dimensions
    • setValue

      void setValue(Object x, double d)
      Modify a 1D matrix value.
      Parameters:
      x - first dimension index
      d - new double value to set into matrix at specified dimensions
    • setValue

      void setValue(Object x, Object y, double d)
      Modify a 2D matrix value.
      Parameters:
      x - first dimension
      y - second dimension
      d - new double value to set into matrix at specified dimensions
    • setValue

      void setValue(Object x, Object y, Object z, double d)
      Modify a 3D matrix value.
      Parameters:
      x - first dimension
      y - second dimension
      z - third dimension
      d - new double value to set into matrix at specified dimensions
    • setValue

      void setValue(Object x, Object y, Object z, Object t, double d)
      Modify a 4D matrix value.
      Parameters:
      x - first dimension
      y - second dimension
      z - third dimension
      t - fourth dimension
      d - new double value to set into matrix at specified dimensions
    • copy

      MatrixND copy()
      Copy la matrice pour pouvoir la modifier sans perdre les donnees initiales.
      Returns:
      new matrix
    • clone

      MatrixND clone()
      Créer une nouvelle instance clonée de celle-ci
      Returns:
      new matrix
    • sumAll

      double sumAll()
      Somme toutes les valeurs de la matrice.
      Returns:
      sum result
    • sumOverDim

      MatrixND sumOverDim(int dim)
      Somme la matrice sur une dimension donnée. La matrice résultat à le même nombre de dimension, pas la dimension sommer, ne contient qu'une ligne.

      par exemple pour la matrice suivante si on somme sur la dimension 1 cela donnera

       1 2 3
       2 3 4
       3 4 5
       
       6 9 12
       
      Parameters:
      dim - la dimension sur lequel il faut faire la somme
      Returns:
      new matrix
    • sumOverDim

      MatrixND sumOverDim(int dim, int step)
      Somme la matrice mais la matrice reste de la même dimension. la somme permet juste de regrouper dans une dimension un certain nombre de valeur.

      pour la matrice suivante :

       1 2 3 4
       2 3 4 5
       3 4 5 6
       4 5 6 7
       
      la somme sur la dimension 1 avec un pas de 2 donnera :
       3 5 7  9
       7 9 11 13
       
      c'est à dire que la ligne 0 et la ligne 1 sont sommées. ainsi que la ligne 2 avec la ligne 3.
      Parameters:
      dim - la dimension sur lequel il faut faire les sommes
      step - le pas qu'il faut utiliser pour regrouper les elements. Si le pas est inférieur à 0, le pas se comporte comme si on avait passé en argument la taille de la dimension. Un pas de 0 ou 1, retourne juste une copie de la matrice actuelle. si la division du pas avec la taille de la dimension ne donne pas un nombre entier, les elements restants ne sont pas pris en compte. Par exemple si la dimension a 10 élements et que l'on donne un pas de 3, dans la matrice resultat la dimension aura 3 elements qui seront la somme par 3 des 9 premiers element de la matrice courante. Le 10eme element sera perdu.
      Returns:
      une nouvelle matrice avec le meme nombre de dimension mais dont la dimension passé en paramètre aura comme taille, le resultat de la division entier de la taille actuelle par le step
    • sumOverDim

      MatrixND sumOverDim(int dim, int start, int nb)
    • meanAll

      double meanAll()
      Return all matrix data mean value
      Returns:
      mean value
    • meanOverDim

      MatrixND meanOverDim(int dim)
      Effectue la moyenne des valeurs sur une dimension donnée. La matrice résultat à le même nombre de dimension, pas la dimension moyenisée, ne contient qu'une ligne.

      par exemple pour la matrice suivante si on fait la moyenne sur la dimension 1 cela donnera

       1 2 3
       8 9 4
       7 6 5
       
       5.33 4.66 4
       
      Parameters:
      dim - la dimension sur lequel il faut faire la moyenne
      Returns:
      new matrix
    • meanOverDim

      MatrixND meanOverDim(int dim, int step)
      Effectue la moyenne des valeurs sur une dimension donnée. la moyenne permet juste de regrouper dans une dimension un certain nombre de valeur.

      pour la matrice suivante :

       1 2 3 4
       2 3 4 5
       3 4 5 6
       4 5 6 7
       
      la moyenne sur la dimension 1 avec un pas de 2 donnera :
       1.5 3.5 4.5 4.5
       4.5 4.5 5.5 6.5
       
      c'est à dire que sur la ligne 0 et la ligne 1 on fait la moyenne. ainsi que la ligne 2 avec la ligne 3.
      Parameters:
      dim - la dimension sur lequel il faut faire les sommes
      step - le pas qu'il faut utiliser pour regrouper les elements. Si le pas est inférieur à 0, le pas se comporte comme si on avait passé en argument la taille de la dimension. Un pas de 0 ou 1, retourne juste une copie de la matrice actuelle. si la division du pas avec la taille de la dimension ne donne pas un nombre entier, les elements restants ne sont pas pris en compte. Par exemple si la dimension a 10 élements et que l'on donne un pas de 3, dans la matrice resultat la dimension aura 3 elements qui seront la somme par 3 des 9 premiers element de la matrice courante. Le 10eme element sera perdu.
      Returns:
      une nouvelle matrice avec le meme nombre de dimension mais dont la dimension passé en paramètre aura comme taille, le resultat de la division entier de la taille actuelle par le step
    • cut

      MatrixND cut(int dim, int[] toCut)
      Permet de supprimer des éléments de la matrice. Par exemple, pour la matrice
       1 2 3 4
       2 3 4 5
       3 4 5 6
       4 5 6 7
       
      un cut(1, [0,2]) donnera
       2 4
       3 5
       4 6
       5 7
       
      Parameters:
      dim - la dimension dans lequel il faut supprimer des éléments
      toCut - les éléments à supprimer
      Returns:
      une nouvelle matrice, la matrice actuelle n'est pas modifiée
    • paste

      MatrixND paste(MatrixND mat)
      Copie une matrice dans la matrice actuelle. La matrice à copier à le même nombre de dimension. Si la matrice à copier est trop grande seul les éléments pouvant être copier le seront.
      Parameters:
      mat - la matrice à copier
      Returns:
      return la matrice courante.
    • paste

      MatrixND paste(int[] origin, MatrixND mat)
      Copie une matrice dans la matrice actuelle. La matrice à copier à le même nombre de dimension. Si la matrice à copier est trop grande seul les éléments pouvant être copier le seront.
      Parameters:
      origin - le point à partir duquel il faut faire la copie
      mat - la matrice à copier
      Returns:
      return la matrice courante.
    • pasteSemantics

      MatrixND pasteSemantics(MatrixND mat)
      Modifie la matrice actuel en metant les valeurs de mat passé en parametre La copie se fait en fonction de la semantique, si un element dans une dimension n'est pas trouvé, alors il est passé
      Parameters:
      mat - matrix to paste
      Returns:
      new matrix
    • getSubMatrix

      MatrixND getSubMatrix(int dim, Object start, int nb)
      Permet de prendre une sous matrice dans la matrice courante. La sous matrice a le même nombre de dimensions mais sur une des dimensions on ne prend que certain élément.
      Parameters:
      dim - la dimension dans lequel on veut une sous matrice si dim est négatif alors la dimension est prise à partir de la fin par exemple si l'on veut la derniere dimension il faut passer -1 pour dim
      start - la position dans dim d'ou il faut partir pour prendre la sous matrice.
      nb - le nombre d'élément à prendre dans la dimension. si nb est inférieur ou égal à 0 alors cela indique qu'il faut prendre tous les éléments jusqu'à la fin de la dimension.
      Returns:
      un objet SubMatrix qui est une vu de la matrice initiale (toute modification de la sous-matrice, modifie la matrice initiale)
    • getSubMatrix

      MatrixND getSubMatrix(int dim, int start, int nb)
      Permet de prendre une sous matrice dans la matrice courante. La sous matrice a le même nombre de dimensions mais sur une des dimensions on ne prend que certain élément.
      Parameters:
      dim - la dimension dans lequel on veut une sous matrice
      start - la position dans dim d'ou il faut partir pour prendre la sous matrice. 0 <= start < dim.size si start est négatif alors la position de départ est calculé par rapport à la fin de la dimension, pour avoir le dernier élément il faut passer -1
      nb - le nombre d'élément à prendre dans la dimension si nb est inférieur ou égal à 0 alors cela indique qu'il faut prendre tous les éléments jusqu'à la fin de la dimension.
      Returns:
      un objet SubMatrix qui est une vu de la matrice initiale (toute modification de la sous-matrice, modifie la matrice initiale)
    • getSubMatrix

      MatrixND getSubMatrix(int dim, Object... elem)
      Permet de prendre une sous matrice dans la matrice courante. La sous matrice a le même nombre de dimensions mais sur une des dimensions on ne prend que certain élément.
      Parameters:
      dim - la dimension dans lequel on veut une sous matrice
      elem - les éléments dans la dimension à conserver
      Returns:
      un objet SubMatrix qui est une vu de la matrice initiale (toute modification de la sous-matrice, modifie la matrice initiale)
    • getSubMatrix

      MatrixND getSubMatrix(int dim, int[] elem)
      Permet de prendre une sous matrice dans la matrice courante. La sous matrice a le même nombre de dimensions mais sur une des dimensions on ne prend que certain élément.
      Parameters:
      dim - la dimension dans lequel on veut une sous matrice
      elem - les indices des éléments dans la dimension à conserver
      Returns:
      un objet SubMatrix qui est une vu de la matrice initiale (toute modification de la sous-matrice, modifie la matrice initiale)
    • getSubMatrix

      MatrixND getSubMatrix(Object[]... elem)
      Permet de prendre une sous matrice dans la matrice courante. Réalise plusieurs appels à getSubMatrix(int, Object...) suivant l'implémentation.
      Parameters:
      elem - les éléments dans la dimension à conserver
      Returns:
      un objet SubMatrix qui est une vu de la matrice initiale (toute modification de la sous-matrice, modifie la matrice initiale)
    • getSubMatrix

      MatrixND getSubMatrix(int[]... elems)
      Permet de prendre une sous matrice dans la matrice courante. Réalise plusieurs appels a getSubMatrix(int, int[]) suivant l'implementation.
      Parameters:
      elems - les indices des éléments pour chaque dimension à conserver
      Returns:
      un objet SubMatrix qui est une vu de la matrice initiale (toute modification de la sous-matrice, modifie la matrice initiale)
    • add

      Addition la matrice courante avec la matrice passe en parametre et se retourne elle meme.
      Parameters:
      m - matrix to add
      Returns:
      new matrix
    • minus

      MatrixND minus(MatrixND m)
      Soustrai la matrice courante avec la matrice passe en parametre et ce retourne elle meme.
      Parameters:
      m - matrix to minus
      Returns:
      new matrix
    • transpose

      MatrixND transpose()
      retourne le transpose de la matrice.
      Returns:
      transposed matrix
    • reduce

      MatrixND reduce()
      Reduit la matrice de sorte que toutes les dimensions qui n'ont qu'un élement soit supprimée. Au pire cette méthode retourne une matrice à une seule dimension à un seul élément.
      Returns:
      une nouvelle matrice plus petite que la matrice actuelle ou egal s'il n'y a aucune dimension à supprimer
    • reduce

      MatrixND reduce(int minNbDim)
      Reduit la matrice de sorte que toutes les dimensions qui n'ont qu'un élement soit supprimée. Au pire cette méthode retourne une matrice à une seule dimension à un seul élément.
      Parameters:
      minNbDim - le nombre minimum de dimension que l'on souhaite pour la matrice résultat
      Returns:
      une nouvelle matrice plus petite que la matrice actuelle ou egal s'il n'y a aucune dimension à supprimer
    • reduceDims

      MatrixND reduceDims(int... dims)
      Reduit le matrice seulement sur les dimensions passées en argument. Si une des dimensions passées en arguement n'a pas un seul élément, cette dimension n'est pas prise en compte.
      Parameters:
      dims - les dimensions sur lequel il faut faire la reduction
      Returns:
      une nouvelle matrice
    • mult

      MatrixND mult(MatrixND m)
      Multiplication normal (produit matriciel) de 2 matrices 2D.
      Parameters:
      m - matrix to mult
      Returns:
      Retourne une nouvelle matrice.
    • mults

      MatrixND mults(double d)
      Multiplication d'une matrice par un scalaire.
      Parameters:
      d - scalaire
      Returns:
      new matrix
    • divs

      MatrixND divs(double d)
      Multiplication d'une matrice par un scalaire.
      Parameters:
      d - scalaire
      Returns:
      new matrix
    • adds

      MatrixND adds(double d)
      Addition d'un scalaire à une matrice.
      Parameters:
      d - scalaire
      Returns:
      new matrix
    • minuss

      MatrixND minuss(double d)
      Soustraction d'un scalaire à une matrice
      Parameters:
      d - scalaire
      Returns:
      new matrix
    • toList

      List<?> toList()
      Donne la matrice sous forme de List de list ... de double
      Returns:
      list matrix representation
    • fromList

      void fromList(List<?> list)
      Permet de charger une matrice a partir d'une representation List
      Parameters:
      list - la matrice sous forme de List de list ... de double
    • isSupportedCSV

      @Deprecated boolean isSupportedCSV()
      Deprecated.
      since 2.2, always return true, CSV import/export is always supported
      Determine si la matrice supporte l'import et l'export CSV
      Returns:
      support du CSV
    • importCSV

      void importCSV(Reader reader, int[] origin) throws IOException
      Import depuis un reader au format CSV des données dans la matrice.
      Parameters:
      reader - le reader à importer
      origin - le point à partir duquel il faut faire l'importation
      Throws:
      IOException
    • importCSV

      void importCSV(Reader reader, int[] origin, String matrixName) throws IOException
      Import depuis un reader au format CSV des données dans la matrice.
      Parameters:
      reader - le reader à importer
      origin - le point à partir duquel il faut faire l'importation
      matrixName - le nom de la matrice
      Throws:
      IOException
    • importCSV

      void importCSV(File file, int[] origin) throws IOException
      Import depuis un reader au format CSV des données dans la matrice. Call {importCSV(Reader, int[], String)} with file name as matrix name.
      Parameters:
      file - file to read
      origin - le point à partir duquel il faut faire l'importation
      Throws:
      IOException
    • exportCSV

      void exportCSV(Writer writer, boolean withSemantics) throws IOException
      Export dans un writer au format CSV de la matrice
      Parameters:
      writer - le writer ou copier la matrice
      withSemantics - export ou pas des semantiques de la matrice dans le writer
      Throws:
      IOException
    • exportCSVND

      void exportCSVND(Writer writer, boolean withSemantics) throws IOException
      Export dans un writer au format CSV de la matrice
      Parameters:
      writer - le writer ou copier la matrice
      withSemantics - export ou pas des semantiques de la matrice dans le writer
      Throws:
      IOException
    • equalsValues

      boolean equalsValues(MatrixND mat)
      Verifie si les matrices sont egales en ne regardant que les valeurs et pas les semantiques
      Parameters:
      mat -
      Returns:
      equlaity on values