Convertion LaTeX

Utilisation de Xcas

Modérateur : xcasadmin

bricec
Messages : 11
Inscription : sam. sept. 12, 2009 4:47 pm

Convertion LaTeX

Message par bricec » sam. sept. 12, 2009 5:41 pm

Bonjour,

Je suis tombé sur quelques problèmes en essayant de convertir des expressions en latex.

Je précise tout d'abord que je travaille sous linux 9.04 et que j'ai installé la version la plus récente de Xcas.

1- Tout d'abord, un problème lié à l'expression du résultat:
> simplify((3x^3+4*x^2-7*x+1)+(9*x^3-4*x^2-6*x)
12*x^3+(-13)*x+1

Est-il normal d'obtenir +(-13) au lieu de -13? Est-il possible d'éviter ce phénomène?

2- Mon problème latex lui même:
> simplify((3*u^3*v^4-2*u^5*v^2+(u^2*v^2)^2)/(u^3*v^2))
-2*u^2+u*v^2+3*v^2

> latex(ans())
"-\left(2 u^{2}\right)+u v^{2}-\left(-3 v^{2}\right"

Ici, des parenthèses apparaissent lors de la convertion en latex alors qu'elles ne sont pas du tout dans le résultat original et qu'en plus elles ne sont pas nécessaires. Est-il possible de résoudre cela?

Merci d'avance pour votre aide,
Brice
Pièces jointes
convertion_latex.png
Copie d'écran
convertion_latex.png (5.31 Kio) Consulté 5203 fois

parisse
Messages : 5894
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: Convertion LaTeX

Message par parisse » dim. sept. 13, 2009 5:48 pm

bonjour,

je vais essayer d'améliorer ces 2 cas. Mais de toutes façons il faut garder à l'esprit qu'il y aura toujours des cas où la sortie latex ou l'affichage ne sera pas le meilleur!

bricec
Messages : 11
Inscription : sam. sept. 12, 2009 4:47 pm

Re: Convertion LaTeX

Message par bricec » dim. sept. 13, 2009 5:54 pm

Je vous remercie pour votre aide.

J'ai essayé avec une fonction de substitution et la transformation des résultats en chaîne de caractères d'améliorer cela. J'arrive à enlever les "+-" mais je n'ai pas réussi avec les \left( et \right).

Pour information, j'ai utilisé le code suivant:
remplace(s,f,r):={local j,news,fs; fs:=size(f); news:=""; while ( (j:=inString(s,f))>=0){ if (j>0) news:=news+s[0..j-1]+r; else news:=news+r; if (j+fs>size(s)-1) s:=""; else s:=s[j+fs..size(s)-1]; }; return news+s; }:;
Resultat:=latex(ans()[0]);
Resultat:=string(Resultat);
Resultat:=remplace(Resultat,"\left("," ");
Resultat:=remplace(Resultat,"\right)"," ");
Resultat:=remplace(Resultat,"+-","-");
Resultat:=remplace(Resultat,"--","+");
parisse a écrit :bonjour,

je vais essayer d'améliorer ces 2 cas. Mais de toutes façons il faut garder à l'esprit qu'il y aura toujours des cas où la sortie latex ou l'affichage ne sera pas le meilleur!

parisse
Messages : 5894
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: Convertion LaTeX

Message par parisse » lun. sept. 14, 2009 12:40 pm

Voila, j'ai mis a jour les versions linux avec ces petites ameliorations.

bricec
Messages : 11
Inscription : sam. sept. 12, 2009 4:47 pm

Re: Convertion LaTeX

Message par bricec » lun. sept. 14, 2009 12:47 pm

Merci beaucoup pour votre aide et pour votre réactivité.

Je viens de faire un test et j'ai maintenant le résultat escompté.

Encore merci !

Répondre