Suite à un mail de Guillaume Connan, l’appel à giac depuis LaTeX se fait désormais via un environnement. (voir le site de G. Connan à ce sujet) Ceci m’a mis sur la piste pour faire des appels consécutifs à giac gràce à une boucle.
Voici le code :
\documentclass[12pt]{article}
% premier exemple fonctionnel avec
% (1) executeGiac cfr.: http://www.yvesdelhaye.be/?Le-generateur-d-interrogations
% (2) environnement ala Guillaume Connan: cfr. http://gconnan.free.fr/les_sources/Giac_Latex.html
% (3) boucle ``for`` ala yv cfr.: http://www.yvesdelhaye.be/?Generateur-d-interrogations-le
% 27 oct 2007
% yves.delhaye@skynet.be
% ou
% yves@yvesdelhaye.be
%
% ne fait pas encore le cafe (cad. les def en LaTeX) mais ''uniquement`` les equations
\usepackage{fancyvrb}
\makeatletter
%commande pour faire appel à giac
\newcommand{\executGiac}[1]{
%\immediate\write18{@echo off}
\immediate\write18{giac <#1 } }
\makeatother
% Mode generation equation type \begin{equation} ...eq...\end{equation}
\begin{VerbatimOut}{XCAS.in}
maple_mode(0);
Sortie:=fopen("XCAS.tex");
vect.xcas.out := read("XCAS.out");
vxo := vect.xcas.out;
dim.vxo := dim(vxo);
nbr.line.vxo := dim.vxo;
Resultat:=cat(" ");
for (j:=0;j<nbr.line.vxo;j++){rslt := vxo[j]; RslT:=cat(latex(rslt)); Resultat:=cat(Resultat," \\begin{equation}",RslT,"\\end{equation}");}
fprint(Sortie,Unquoted,Resultat);
fclose(Sortie);
\end{VerbatimOut}
\newenvironment{XCAS}
{\VerbatimEnvironment\begin{VerbatimOut}{XCAS.out}}
{\end{VerbatimOut}
\executGiac{XCAS.in}
\input{XCAS}\ }
% END Mode \begin{equation} ...eq...\en{equation}
% Mode generation equation type \[ ...eq...\]
\begin{VerbatimOut}{XCAs.in}
maple_mode(0);
Sortie:=fopen("XCAs.tex");
vect.xcas.out := read("XCAs.out");
vxo := vect.xcas.out;
dim.vxo := dim(vxo);
nbr.line.vxo := dim.vxo;
Resultat:=cat(" ");
for (j:=0;j<nbr.line.vxo;j++){rslt := vxo[j]; RslT:=cat(latex(rslt)); Resultat:=cat(Resultat," \\[",RslT,"\\]");}
fprint(Sortie,Unquoted,Resultat);
fclose(Sortie);
\end{VerbatimOut}
\newenvironment{XCAs}
{\VerbatimEnvironment\begin{VerbatimOut}{XCAs.out}}
{\end{VerbatimOut}
\executGiac{XCAs.in}
\input{XCAs}\ }
% END Mode \[ ...eq...\]
% Mode generation equation type $ ...eq...$
\begin{VerbatimOut}{XCas.in}
maple_mode(0);
Sortie:=fopen("XCas.tex");
vect.xcas.out := read("XCas.out");
vxo := vect.xcas.out;
dim.vxo := dim(vxo);
nbr.line.vxo := dim.vxo;
Resultat:=cat(" ");
for (j:=0;j<nbr.line.vxo;j++){rslt := vxo[j]; RslT:=cat(latex(rslt)); Resultat:=cat(Resultat," $",RslT,"$");}
fprint(Sortie,Unquoted,Resultat);
fclose(Sortie);
\end{VerbatimOut}
\newenvironment{XCas}
{\VerbatimEnvironment\begin{VerbatimOut}{XCas.out}}
{\end{VerbatimOut}
\executGiac{XCas.in}
\input{XCas}\ }
% END Mode $ ...eq...$
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%fin du préambule
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
%calcul 1
%\include{xcas.1.2.7.inc}
% Ceci etait necessaire suite a un probleme de coloration syntaxique
% Probleme regle voir: http://www.yvesdelhaye.be/?Coloration-syntaxique-sous-Kile
\begin{XCAs}
A := [[1, 2,,3],[4, 5, 6], [7, 8, 9]];
B := A[0];
C := B[0];
\end{XCAs}
\begin{XCAS}
a := solve(sin(x)=1/2);
b := solve(sin(x)=1/4);
c := desolve([y''+y=0,y(0)=0,y(2)=1],y)[0];
\end{XCAS}
\begin{XCas}
1-8*ln(sqrt(1/e))+sqrt(2)+1/2
\end{XCas}
% \begin{Xcas}
% 1-8*ln(sqrt(1/e))+sqrt(2)+2/3
% \end{Xcas}
\begin{XCas}
solve(sin(x)=1/2)
\end{XCas}
\begin{XCAS}
desolve([y''+y=0,y(0)=2,y(2)=2],y)[0]
\end{XCAS}
\end{document}
2004-2024 © @YvesDelhaye.Be : "Nous ne sommes pas faits pour vivre comme des imbéciles, mais pour suivre les chemins de la vertu et de la connaissance." (Dante : l’Enfer) - Tous droits réservés
Ce site est géré sous SPIP 2.1.28 [22259] et utilise le squelette EVA-Web 4.1
Dernière mise à jour : mercredi 1er février 2023