Subversion Repositories wimsdev

Rev

Rev 7222 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
10 reyssat 1
        -------------------------------------------
15197 bpr 2
                   chemeq V2.12-1
10 reyssat 3
        -------------------------------------------
7222 georgesk 4
                   (c)2000-2013 G. Khaznadar
5
                  <georgesk@debian.org>
10 reyssat 6
        -------------------------------------------
7
 
6770 georgesk 8
chemeq est un filtre simple et autonome écrit en langage C,
9
flex et bison. Il accepte des entrées telles que :
10 reyssat 10
2H2 + O2 ---> 2 H2O
11
et produit sur sa sortie standard du code LaTeX et des messages relatifs
6770 georgesk 12
à l'équilibre d'une équation de réaction chimique.
10 reyssat 13
 
14
exemple:~/src$ echo "2H2 + O2 ---> 2 H2O" | chemeq -lc
15
2\,H_{2}\,+\,O_{2}\,\rightarrow\,2\,H_{2}O
16
OK
17
exemple:~/src$
18
 
19
 
6770 georgesk 20
ce qui signifie : 2 molécules de dihydrogène réagissent avec une molécule de
21
dioxygène pour donner deux molécules d'eau.
22
La première ligne, "2\,H_{2}\,+\,O_{2}\,\rightarrow\,2\,H_{2}O" est une
23
réécriture de l'équation en langage LaTeX.
24
La deuxième ligne "OK" signifie que l'équation de réaction est équilibrée.
10 reyssat 25
 
26
 
15197 bpr 27
Quand la chaîne d'entrée n'est pas reconnue, le filtre échoue et
10 reyssat 28
renvoie un code 1.
29
 
30
exemple:~/src$ echo "2H^2 + O2 ---> 2 H2O" | chemeq -lc
31
ERROR parse error at 4
32
exemple:~/src$
33
 
34
NOTE : syntaxe des ions.
6770 georgesk 35
Bien que dans certains cas, une expression plus courte soit acceptée,
36
il est préférable de mettre une flèche haute (^) devant les symboles
10 reyssat 37
de charge d'un ion.
38
Exemples : H3O^+, Fe(CN)6^4-, OH^-
39
 
40
NOTE : crochets
6770 georgesk 41
L'écriture de crochets est autorisée autour de la notation d'un corps simple,
10 reyssat 42
comme pour [Fe(CN)6]4-, et seulement dans ce cas.
43
 
6770 georgesk 44
NOTE : constantes d'équilibre chimique.
15197 bpr 45
Pour les équilibres chimiques, la constante pour l'équation de Gulder-Waage
6770 georgesk 46
ou le potentiel pour l'équation de Nernst peut être écrite à la fin de
47
l'équation, entre parenthèses. Voir quelques exemples dans src/test.1, et
48
typographiez-les grâce à LaTeX par la commande src/chemreport
10 reyssat 49
 
6770 georgesk 50
Ce filtre peut être utilisé au sein de systèmes d'examens éducatifs,
51
pour analyser la réponse d'un étudiant à un problème de physique ou
10 reyssat 52
de chimie.
53
 
54
Ce petit bout de code est sous GPL, voyez le fichier COPYING.
55
 
56
Les suggestions sont bienvenues.
57
 
58
--
59
Georges.
60
 
61
-----------------------------------------------------------
62
			Les options de chemeq
63
-----------------------------------------------------------
64
 
6770 georgesk 65
On peut choisir le format de sortie de chemeq en spécifiant quelques options.
10 reyssat 66
Les options valides sont les suivantes :
67
 
68
 
69
  -h	produit un message d'aide en anglais (*H*elp)
70
  -m	Produit une sortie *M*inimale. Ainsi chemeq est idempotent,
6770 georgesk 71
	c'est à dire que les commandes 'chemeq | chemeq' et 'chemeq' sont
72
	équivalentes.
15197 bpr 73
  -l	Produit une chaîne *L*atex représentant l'équation chimique.
10 reyssat 74
  -c	Produit un message donnant des indications sur la *C*onservation des
6770 georgesk 75
	éléments et des charges. 'OK' signifie que les éléments et les charges
76
	sont conservés.
77
  -w	Produit la chaîne LaTeX qui représente l'équation de Gulder-*W*aage
78
	relative à l'équation chimique, ou l'équation de Nernst, si l'équation
79
	de départ est une demi-réaction rédox.
80
  -n	Produit une chaîne *N*ormalisée représentant l'équation de départ.
15197 bpr 81
	Deux équations chimiques ayant la même chaîne normalisée sont
6770 georgesk 82
	chimiquement équivalentes, même si l'ordre des molécules est différent,
83
	et si les coefficients ne sont pas égaux mais proportionnels.
10 reyssat 84
 
6770 georgesk 85
Par défaut, 'chemeq' est équivalent à 'chemeq -mlcwn'.
10 reyssat 86
 
87
-----------------------------------------------------------
88
			INSTALLATION
89
-----------------------------------------------------------
6770 georgesk 90
Pour compiler chemeq, lancez 'make' dans le répertoire principal chemeq.
10 reyssat 91
Pour l'installer avec sa page de manuel, lancez 'make install' dans ce
6770 georgesk 92
même répertoire.
10 reyssat 93
 
94
-----------------------------------------------------------
95
			TEST et DEMONSTRATION
96
-----------------------------------------------------------
97
 
6770 georgesk 98
Si on modifie le code source, il est possible de tester sa conformité
99
aux versions précédentes en lançant 'make test' dans le répertoire principal.
10 reyssat 100
 
6770 georgesk 101
Si 'make test' répond 'OK' à chaque item, et que latex et xdvi sont installés,
15197 bpr 102
on peut lancer 'make demo' pour voir quelques exemples de traitement
10 reyssat 103
typographique.