next up previous contents index
suivant: B.3 Comment fonctionne cette monter: B. Scilab à partir précédent: B.1 Utilisation   Table des matières   Index

B.2 Méthodes utilitaires

Ces programmes devenant lourds, le paquet javasci offre une classe MatrixUtilities, dérivée de Matrix, qui définit à titre d'exemple les quelques méthodes rand, inv, disp, lesquelles font appel à scilabJob. Pour en bénéficier, il faut utiliser MatrixUtilities au lieu de Matrix :

 
import javasci.MatrixUtilities;

class  JavaSciTest {

  public static void main(String[] args) {
    MatrixUtilities a = new MatrixUtilities("A", 4, 4);
    a.rand();
    a.disp();
    a.inv();
    a.disp();
  }
}

L'utilisateur de l'interface Java/Scilab qui souhaite faire appel à d'autres fonctionnalités de Scilab est invité à étendre MatrixUtilities ou directement Matrix en définissant les méthodes utilitaires dont il a besoin. Voici, à titre d'exemple, la définition de la classe MatrixUtilities :

 
package javasci;

public class MatrixUtilities extends Matrix {

  public MatrixUtilities(String name, int m, int n) 
  {
    super(name, m, n);
  }

  public MatrixUtilities(String name, int m, int n, double[] x)
  {
    super(name, m, n, x);
  }

  public void inv() {
    scilabJob(getName() + "=inv(" + getName() +");");
  }
  public void disp() {
    System.out.println("Matrix "+ getName() +"=");
    scilabJob("disp(" + getName() +");");
  }

  public void rand() { 
    scilabJob(getName() + "=rand(" + getRow() +"," + getCol() +");");
  }
}



Rene' LALEMENT 2001-11-07