From 8626b278cdccd95e628f14c027ae8a1c47133c48 Mon Sep 17 00:00:00 2001
From: biouman <biouman>
Date: Wed, 2 May 2001 22:08:03 +0000
Subject: *** empty log message ***

---
 doc/manuel.tex | 115 ++++++++++++++++++++++-----------------------------------
 1 file changed, 45 insertions(+), 70 deletions(-)

(limited to 'doc/manuel.tex')

diff --git a/doc/manuel.tex b/doc/manuel.tex
index 9a0d765..b09ea9f 100644
--- a/doc/manuel.tex
+++ b/doc/manuel.tex
@@ -1,81 +1,56 @@
-\chapter{Manuel d'utilisation}
+\chapter{Manuel}
+\section{Procédure de compilation}
 \paragraph{}
-Lorsque le programme principal se lance, nous obtenons un invite simple:
+L'arborescence de notre projet respecte le standard d'arborescences des projets GNU,
+en outre nous avons utilisé les logiciels Autoconf et Automake pour gérer la compilation.
+La procédure standard pour compiler ce projet est alors la suivante : \\
 \begin{verbatim}
-$ ./Polynom 
-Polynomia v1.0
-
-
-Performing initialisation...
-
-
-Starting interface...
-
-> 
-\end{verbatim}
-
-La flexibilité de l'interface est extrème, et nous permet, à la manière MAPLE, de taper sous une
-forme naturelle nos polynomes. Voici un exemple d'utilisation "simple":
-
-\begin{verbatim}
-> A = x^4 + 2*x^3 - x + 6;
-
- .   x^4 + 2x^3 - x + 6 
-
-> B = x^3 - 6*x^2 + x + 4;
-
- .   x^3 - 6x^2 + x + 4 
-
-> A + B;
-
- .   x^4 + 3x^3 - 6x^2 + 10 
-
-> A - B;
-
- .   x^4 + x^3 + 6x^2 - 2x + 2 
-
-> A / B;
-
- .   x + 8 
-
-> A % B;
-
- .   47x^2 - 13x - 26 
-
-> A(2);
-
- .   36 
+./configure && make all install
 \end{verbatim}
+Mais étudions plus en détail chacune de ces deux étapes:
 
-Comme à la manière MAPLE, il est possible d'évaluer des polynomes en cours de route. Par exemple:
+\paragraph{configure}
 
+Ce script va générer autoatiquement tous les Makefiles en fonction des informations contenues 
+dans les fichiers Makefile.am ainsi que des informations qu'il aura récupérées sur le système,
+notamment relatives au compilateur, à l'éditeur de liens, à la gestion de librairies dynamiques...
+On peut avoir l'ensemble de ses options en l'invoquant par la commande :
 \begin{verbatim}
-> P = A + 2*x - 3*B;
-
- .   x^4 - x^3 + 18x^2 - 2x - 6 
+./configure --help
 \end{verbatim}
-
-Enfin, il y a des appels de fonctions prédéfinis, dont l'appel à la fonction d'évaluation d'un polynôme:
-
+Si l'on veut par exemple compiler le programme avec un répertoire d'installation qui serait ~/usr/Polynom
+en activant l'affichage des messages de débogage, on lancera
 \begin{verbatim}
-> P(3);
-
- .   204 
+./configure --prefix=~/usr/Polynom --with-debug
 \end{verbatim}
 
-Le parseur de ligne étant totalement flexible, il est possible de mélanger toutes les fonctionnalités ensembles:
+\paragraph{make}
+L'utilitaire bien connu qui permet de lancer les compilations, il va interpréter tout d'abord le Makefile
+principal à la racine du projet puis entrer dans chaque sous répertoire et interpréter récursivement
+tous les Makefiles qu'il va rencontrer. L'exécutable final se trouvera dans le répertoire src et se nomme
+\textit{Polynom}.
+La 'cible' all crée l'exécutable et la cible install l'installe avec ses librairies dans l'endroit
+précisé par --prefix dans la ligne de commande de configure. Il est à noter que l'emplacement par défaut
+se situe dans /usr/local, or ce dossier n'est typiquement accessible en écriture que par les administrateurs,
+c est pourquoi nous vous conseillons de préciser l'option --prefix lors de l'appel de configure.
+
+\section{Exécution du programme}
+Le programme Polynom peut prendre un argument sur la ligne de commande à savoir la chaine de caractères 
+servant à décrire la variable muette dans les polynomes, par défaut celle-ci est initialisée à "x".
+On invoque alors le programe comme suit: % FIXME ligne de commande
 \begin{verbatim}
-> (2*P + B)(3);
-
- .   388 
-
-
-> (R = 2*P^2 - 2*x)(36) * x^2 - 10;
-
- .   1389891136x^2 - 10 
-
-> R;
-
- .   2x^8 - 4x^7 + 74x^6 - 80x^5 + 632x^4 - 120x^3 - 424x^2 + 46x + 72 
-
-\end{verbatim}
+./src/Polynom
+\end{verbatim} 
+Le programme propose alors son propre interpréteur de commandes, bien entendu dévoué au calcul polynomial.
+Les opérateurs reconnus sont les opérateurs classiques sur les polynomes à savoir '+', '-', '*', '/', '\%', '^', '='.
+De plus nous avons implémenté quelques fonctions utiles, soit au calcul polynomial, soit à l'uilisation du
+programme lui même : 
+\begin{itemize}
+\item les fonctions mathématiques deriv, derivn et int pour le calcul de la dérivée, de la dérivée $n^{ième}$ et de la primitive.
+\item les fonctions auxiliaires : printvars() pour l'affichage des variables, help() pour l'aide en ligne,
+setdisplay(n) pour le mode d'affichage des scalaires, reinit() pour la réinitialisation su calculateur et exit() pour quitter le programme.
+\end{itemize}
+On notera que l'évaluation fonctionne comme dans nombre d'interpréteurs en ce qui concerne la ligne de commande, 
+il est nécessaire de terminer chaque ligne par un point-virgule.
+Ce programme possède enfin une variable "interne" ANS, mise-à-jour automatiquement à chaque évaluation, celle-ci contenant
+toujours le résultat de l'opération précédente. 
-- 
cgit v1.2.3

