Syntaxe des équations dans Jaxe

Un éditeur d'équation a été spécialement conçu pour Jaxe, afin d'ajouter et de modifier facilement des équations. Il fonctionne avec une zone de texte, où l'on entre une équation avec une syntaxe particulière, et l'image correspondant à l'équation s'affiche en temps réel au-dessus. Les images des équations sont enregistrées dans un dossier nommé equations_monfichier placé dans le dossier du fichier XML monfichier.xml.

Cet éditeur ne prétend pas être exhaustif. Il est même un peu simpliste. Des équations complexes peuvent ête créées si nécessaire avec un autre éditeur et ajoutées dans Jaxe sous forme d'images avec un copier-coller.

Avant de passer à la syntaxe, voici quelques règles à suivre pour entrer des équations:

  1. Ne pas utiliser d'espaces (ils sont ignorés dans le meilleur des cas).
  2. Ecrire l'équation comme si elle allait être interprétée mathématiquement et qu'un résultat numérique allait être calculé. Il faut donc toujours indiquer les opérateurs que l'on utilise, même lorsqu'ils ne doivent pas être affichés.
  3. Utiliser des parenthèses pour préciser l'ordre des opérations s'il ne correspond pas à l'ordre d'évaluation mathématique.


addition, soustraction
opérateurs '+' et '-''
multiplication
opérateur '*', affiché seulement quand deux nombres sont multipliés
Exemple: 2*3*sin(1,5*pi) -> 2*3*sin(1,5*pi)
division
opérateur '/' (affiché sous forme de fraction) et fonctions 'slash' et 'fraction'
Exemple: slash(a;b)/c -> slash(a;b)/c
fonction
nomfonction(arg1;arg2;...)
Exemple: f(x;y) -> f(x;y)
exposant
opérateur '^'
Exemple: x^y -> x^y
indice
opérateur '_'
Exemple: x_(ab) -> x_(ab)
exposant_indice
fonction 'subsup' avec le premier terme, et les éléments à mettre en indice et en exposant
Exemple: subsup(A;1;2) -> subsup(A;1;2)
racine carrée
fonction 'racine' ou 'sqrt'
Exemple: racine(x/2) -> racine(x/2)
valeurs absolues
fonction 'abs'
Exemple: abs(x^3) -> abs(x^3)
puissance de e
fonction 'exp'
Exemple: exp(x^2) -> exp(x^2)
intégrale
fonction 'intégrale', avec 4 arguments: la fonction à intégrer, la variable d'intégration, la borne minimum et la borne maximum
Exemple: intégrale(f(x);x;0;infini) -> intégrale(f(x);x;0;infini)
somme et produit
fonctions 'somme' et 'produit', avec 3 arguments: la fonction à sommer, la borne minimum et la borne maximum
Exemple: somme(ln(k)/k;k=1;10) -> somme(ln(k)/k;k=1;10)
matrice
fonction 'matrice', avec les lignes en argument sous forme de fonction 'ligne'
Exemple: matrice(ligne(1;2;3);ligne(4;5;6)) -> matrice(ligne(1;2;3);ligne(4;5;6))
lettres grecques
variables avec le nom de la lettre, avec une majusucle au premier caractère du nom pour obtenir une lettre grecque majuscule
Exemple: alpha*Delta*thetasym*upsih*piv -> alpha*Delta*thetasym*upsih*piv
caractères spéciaux
variable avec le nom du caractère spécial
soleil|étoile|terre|planck|infini|angström|petitl|chapeau|barre|astérisque
Exemple: M_soleil+planck<infini -> M_soleil+planck<infini
opérateurs spéciaux
code spécial, sans espace
!=|~=|<=|>=|<<|>>|->|quelquesoit|ilexiste|drond|nabla|prop|croix|plusoumoins
Exemple: quelquesoita ilexisteb c<<d~=e>=d!=f -> quelquesoita ilexisteb c<<d~=e>=d!=f
accents
fonction 'accent' avec la lettre et l'accent à ajouter par-dessus
Exemple: accent(AB;->)+accent(ABC;chapeau)+accent(x;barre) -> accent(AB;->)+accent(ABC;chapeau)+accent(x;barre)
dérivée par rapport au temps
fonction 'dtemps' avec la variable et le nombre de points à mettre au-dessus
Exemple: dtemps(theta;2) -> dtemps(theta;2)
produit scalaire
fonction 'pscalaire' avec les deux vecteurs en paramètre
Exemple: pscalaire(accent(AB;->);accent(CD;->)) -> pscalaire(accent(AB;->);accent(CD;->))
fonctions sans parenthèses
certaines fonctions s'affichent sans parenthèses quand elle n'ont qu'un argument avec une variable
Exemple: sin(a)*sin(b) -> sin(a)*sin(b)
système d'équations
fonction 'système', avec les lignes en argument
Exemple: système(x+y=2;x-2*y=3) -> système(x+y=2;x-2*y=3)
unités
fonction 'unité', avec l'unité en deuxième argument
Exemple: unité(1;m)/unité(2;s)=unité(1/2;m*s^(-1)) ->unité(1;m)/unité(2;s)=unité(1/2;m*s^(-1))
factorielles
fonction 'factorielle'
Exemple: factorielle(x) -> x!