opale.ode.ker
Class Problem

java.lang.Object
  |
  +--opale.ode.ker.ObjectODE
        |
        +--opale.ode.ker.Problem

public final class Problem
extends ObjectODE

Classe qui modélise un problème d'équations différentielles ordinaires. Une instance de cette classe doit être associé (sens UML) à une instance de TimeScheme (un schéma en temps) et une instance de Equation (une équation) afin de pouvoir appeler la méthode solve() chargée de résoudre le problème ainsi formé.

Since:
Opale-ODE 0.1

Constructor Summary
Problem()
          Constructeur par défaut.
Problem(int dim)
          Constructeur pour initialiser un problème avec une dimension donnée.
 
Method Summary
 int dim()
          Renvoie la dimension du problème.
 Equation getEqn()
          REnvoie l'équation associée au problème.
 DVect getInit()
          Renvoie le vecteur des conidtions initiales.
 TimeScheme getTS()
          Renvoie le schéma en temps associé au problème.
 java.lang.String printSol()
          Renvoie la solution calculée sous forme de tableau dans une chaine String : la première colonne représente le temps, puis les suivantes les inconnues.
 int readKeyWord(java.lang.String word, RFile f, ODE ode)
          Méthode abstraite permettant la relecture d'un mot clé dans un fichier .ode.
 void setEqn(Equation eq)
          Associe une équation au problème.
 void setInit(DVect init)
          Fixe un vecteur pour la condition initiale.
 void setTS(TimeScheme sch)
          Associe un schéma en temps au problème.
 void solve()
          Methode principale de la classe.
 java.lang.String toString()
           
 double[][] toTab()
          Renvoie la solution dans un tableau à deux entrées t[i][j] 0<= i <= dim ; 0 <= j <= N où N est le nombre de pas de temps calculé : la composante t[0][j] correspond en fait aux pas de temps du calcul et les composantes suivantes t[i>=1][j] aux composantes à proprement parlé de la solution.
 void writeFile(WFile f, ODE ode)
          Méthode abstraite qui permet d'ecrire les données relatives à l'objet courant dans un fichier.
 void writeSol(WFile wf)
           
 
Methods inherited from class opale.ode.ker.ObjectODE
readFile
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Problem

public Problem()
Constructeur par défaut. Initialise un problème de dimension 1.

Problem

public Problem(int dim)
Constructeur pour initialiser un problème avec une dimension donnée.
Parameters:
int - dim, la dimension du problème.
Method Detail

solve

public void solve()
Methode principale de la classe. Elle est chargée de lancer la résolution du problème d'ODE après avoir vérifié que tous les éléments sont bien présents (schéma en temps, équation...).

printSol

public java.lang.String printSol()
Renvoie la solution calculée sous forme de tableau dans une chaine String : la première colonne représente le temps, puis les suivantes les inconnues.
Returns:
String, la chaine contenant la solution.

toTab

public double[][] toTab()
Renvoie la solution dans un tableau à deux entrées t[i][j] 0<= i <= dim ; 0 <= j <= N où N est le nombre de pas de temps calculé : la composante t[0][j] correspond en fait aux pas de temps du calcul et les composantes suivantes t[i>=1][j] aux composantes à proprement parlé de la solution.
Returns:
double[][], le tableau contenant la solution, null si le problème est non résolu.

writeSol

public void writeSol(WFile wf)

dim

public int dim()
Renvoie la dimension du problème.
Returns:
int, la dimension.

setInit

public void setInit(DVect init)
Fixe un vecteur pour la condition initiale. Ce vecteur doit avoir la dimension du problème pour taille.
Parameters:
DVect, - le vecteur des conditions initiales.

getInit

public DVect getInit()
Renvoie le vecteur des conidtions initiales.
Returns:
DVect, le vecteur des conditions initiales.

setEqn

public void setEqn(Equation eq)
Associe une équation au problème. La méthode vérifie aussi que l'équation est compatible avec le problème (même dimension).
Parameters:
Equation, - l'équation.

getEqn

public Equation getEqn()
REnvoie l'équation associée au problème.
Returns:
Equation, l'équation.

setTS

public void setTS(TimeScheme sch)
Associe un schéma en temps au problème.
Parameters:
TimeScheme, - le schéma en temps.

getTS

public TimeScheme getTS()
Renvoie le schéma en temps associé au problème.
Returns:
TimeScheme, le schéma en temps.

readKeyWord

public int readKeyWord(java.lang.String word,
                       RFile f,
                       ODE ode)
                throws java.io.IOException,
                       MalformedFileException
Description copied from class: ObjectODE
Méthode abstraite permettant la relecture d'un mot clé dans un fichier .ode.
Overrides:
readKeyWord in class ObjectODE
Following copied from class: opale.ode.ker.ObjectODE
Parameters:
String - s, le mot clé à lire.
RFile - f, le fichier de lecture.
ODE - ode, désigne le 'paquet' d'objet de type ObjectODE dans lequel on va stocker les informations lues.
Returns:
int, 0 si le mot clé est reconnu, -1 sinon.

writeFile

public void writeFile(WFile f,
                      ODE ode)
               throws MalformedFileException
Description copied from class: ObjectODE
Méthode abstraite qui permet d'ecrire les données relatives à l'objet courant dans un fichier.
Overrides:
writeFile in class ObjectODE
Following copied from class: opale.ode.ker.ObjectODE
Parameters:
WFile - f, le fichier d'ecriture.
ODE - ode, désigne le 'paquet' d'objet de type ObjectODE contenant les informations à stocker.

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object