diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/tablor/tablor.html')
-rw-r--r-- | Master/texmf-dist/doc/latex/tablor/tablor.html | 340 |
1 files changed, 301 insertions, 39 deletions
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.html b/Master/texmf-dist/doc/latex/tablor/tablor.html index 50d1a09f060..e4f32c8810f 100644 --- a/Master/texmf-dist/doc/latex/tablor/tablor.html +++ b/Master/texmf-dist/doc/latex/tablor/tablor.html @@ -81,7 +81,7 @@ <body> <pre> <span class="font-latex-sedate">\NeedsTeXFormat</span>{LaTeX2e}[1995/12/01] -<span class="font-latex-sedate">\ProvidesPackage</span>{<span class="flyspell-duplicate">tablor</span>}[02/06/2008 v2.08 la machine a creer des tableaux de signes et variations] +<span class="font-latex-sedate">\ProvidesPackage</span>{tablor}[12/06/2008 v3.00 la machine a creer des tableaux de signes et variations] <span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\copyleft</span></span><span class="comment"> Connan le Barbare (aka Guillaume Connan) </span><span class="font-latex-sedate"><span class="comment">\copyright</span></span><span class="comment"> </span><span class="comment-delimiter">% </span><span class="comment">This work may be distributed and/or mofified under the conditions @@ -92,7 +92,7 @@ </span><span class="comment-delimiter">% </span><span class="comment">tablor.pdf and tablor.html </span> -<span class="comment-delimiter">%% </span><span class="comment">Crée 16 environnements : +<span class="comment-delimiter">%% </span><span class="comment">Cree 16 environnements : </span><span class="comment-delimiter">%% </span><span class="comment">tableau de signes de 2 facteurs affines </span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TSa} </span><span class="comment-delimiter">% </span><span class="comment">TSa(-2,3,-1,5,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">); @@ -120,36 +120,44 @@ </span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\end</span></span><span class="comment">{TVZ} </span><span class="comment-delimiter">%</span><span class="comment"> </span><span class="comment-delimiter">%</span><span class="comment"> -</span><span class="comment-delimiter">% </span><span class="comment">tableau avec valeurs intermédiares +</span><span class="comment-delimiter">% </span><span class="comment">tableau avec valeurs intermediares </span><span class="comment-delimiter">%</span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVI} </span><span class="comment-delimiter">%</span><span class="comment">TVI([-1,+infinity],[-1],"f","x",x2/sqrt(x+1)-1,1,2,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">) </span><span class="comment-delimiter">%</span><span class="font-latex-sedate"><span class="comment">\end</span></span><span class="comment">{TVI} </span><span class="comment-delimiter">%%%</span><span class="comment"> -</span><span class="comment-delimiter">% </span><span class="comment">tableau de variations avec f' sans zéro formel +</span><span class="comment-delimiter">% </span><span class="comment">tableau de variations avec f' sans zero formel </span><span class="comment-delimiter">%</span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVapp} </span><span class="comment-delimiter">% </span><span class="comment">TVapp([0,+infinity],[0],"g","x",ln(x)-x*exp(2-x),1,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">) </span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\end</span></span><span class="comment">{TVapp} </span><span class="comment-delimiter">%</span><span class="comment"> </span><span class="comment-delimiter">%</span><span class="comment"> -</span><span class="comment-delimiter">% </span><span class="comment">tableau de variations avec f' sans zéro formel +</span><span class="comment-delimiter">% </span><span class="comment">tableau de variations avec f' sans zero formel </span><span class="comment-delimiter">%</span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVIapp} </span><span class="comment-delimiter">% </span><span class="comment">TVIapp([0,+infinity],[0],"g","x",ln(x)-x*exp(2-x),1,0,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">) </span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\end</span></span><span class="comment">{TVIapp} </span><span class="comment-delimiter">%</span><span class="comment"> </span><span class="comment-delimiter">%</span><span class="comment"> </span><span class="comment-delimiter">%%%</span><span class="comment"> -</span><span class="comment-delimiter">% </span><span class="comment">et leurs pendants étoilés qui permettent l'affichage intermédiaire du +</span><span class="comment-delimiter">% </span><span class="comment">et leurs pendants etoiles qui permettent l'affichage intermediaire du </span><span class="comment-delimiter">% </span><span class="comment">fichier metapost pour le modifier </span><span class="comment-delimiter">%</span><span class="comment"> </span><span class="comment-delimiter">%</span><span class="comment"> +</span><span class="comment-delimiter">% </span><span class="comment">Courbes parametrees +</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVP} +</span><span class="comment-delimiter">% </span><span class="comment">TVP([-infinity,+infinity],[[-1,2],[-1]],["x","y"],"t",[t^2/((t+1)*(t-2)),t^2*(t+2)/(t+1)],1,0,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">) +</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\end</span></span><span class="comment">{TVP} </span><span class="comment-delimiter">%</span><span class="comment"> </span><span class="comment-delimiter">%</span><span class="comment"> +</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVP} +</span><span class="comment-delimiter">% </span><span class="comment">TVP([0,pi/2],[[],[]],["x","y"],"t",[2*cos(t),sin(2*t)],1,1,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">) +</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\end</span></span><span class="comment">{TVP} +</span><span class="comment-delimiter">% </span><span class="comment">% </span> <span class="comment-delimiter">%% </span><span class="comment">extensions requises -</span><span class="comment-delimiter">%% </span><span class="comment">Il faudra rajouter dans le préambule </span><span class="font-latex-sedate"><span class="comment">\usepackage</span></span><span class="comment">{graphicx} si vous +</span><span class="comment-delimiter">%% </span><span class="comment">Il faudra rajouter dans le preambule </span><span class="font-latex-sedate"><span class="comment">\usepackage</span></span><span class="comment">{graphicx} si vous </span><span class="comment-delimiter">%% </span><span class="comment">ne l'avez pas de base </span> @@ -158,8 +166,9 @@ <span class="font-latex-sedate">\RequirePackage</span>{fancyvrb} <span class="font-latex-sedate">\RequirePackage</span>{ifpdf} +<span class="font-latex-sedate">\fvset</span>{gobble=0} -<span class="comment-delimiter">% </span><span class="comment">option xcas présent +<span class="comment-delimiter">% </span><span class="comment">option xcas present </span> <span class="font-latex-sedate">\newboolean</span>{xcas}<span class="font-latex-sedate">\setboolean</span>{xcas}{false} @@ -175,13 +184,13 @@ </span><span class="font-latex-sedate">\newboolean</span>{windows}<span class="font-latex-sedate">\setboolean</span>{windows}{false} -<span class="comment-delimiter">%% </span><span class="comment">on configure tablor dans un fichier extérieur pour la plateforme -</span><span class="comment-delimiter">%% </span><span class="comment">et l'éditeur +<span class="comment-delimiter">%% </span><span class="comment">on configure tablor dans un fichier exterieur pour la plateforme +</span><span class="comment-delimiter">%% </span><span class="comment">et l'editeur </span> <span class="font-latex-sedate">\IfFileExists</span>{tablor.cfg}{<span class="font-latex-sedate"><span class="keyword">\input</span></span><span class="constant">{tablor.cfg}</span>}<span class="comment">%</span><span class="font-latex-sedate"><span class="comment">\typeout</span></span><span class="comment">{pas de fichier tablor.cfg}} </span> -<span class="comment-delimiter">%% </span><span class="comment">Définit des commandes disque selon l'OS utilisé +<span class="comment-delimiter">%% </span><span class="comment">Definit des commandes disque selon l'OS utilise </span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{windows}}<span class="comment">% </span> {<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\rem</span></span><span class="function-name">}</span>{DEL } <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cat</span></span><span class="function-name">}</span>{TYPE } <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cp</span></span><span class="function-name">}</span>{COPY }}<span class="comment">% @@ -202,7 +211,7 @@ <span class="comment-delimiter">%% </span><span class="comment">pour nettoyer les fichiers auxiliaires </span> -<span class="font-latex-sedate">\AtEndDocument</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> *.user XCas* Xcas* *.mpx} +<span class="font-latex-sedate">\AtEndDocument</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> *.user XCas* Xcas* *.mpx} } @@ -211,17 +220,17 @@ <span class="comment-delimiter">%% </span><span class="comment">Pour clore les fichiers metapost </span> -<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{queue.mp} + <span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{queue.mp} -end + end <span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span> -<span class="comment-delimiter">%% </span><span class="comment">Nettoie les fichiers log dont le nom dépend du choix de l'utilisateur -</span><span class="comment-delimiter">%% </span><span class="comment">Par défaut, c'est le nom du fichier tex courant (</span><span class="font-latex-sedate"><span class="comment">\jobname</span></span><span class="comment">) -</span><span class="comment-delimiter">%% </span><span class="comment">Clôt le fichier metapost contenant le récapitulatif de tous les tableaux +<span class="comment-delimiter">%% </span><span class="comment">Nettoie les fichiers log dont le nom depend du choix de l'utilisateur +</span><span class="comment-delimiter">%% </span><span class="comment">Par defaut, c'est le nom du fichier tex courant (</span><span class="font-latex-sedate"><span class="comment">\jobname</span></span><span class="comment">) +</span><span class="comment-delimiter">%% </span><span class="comment">Clôt le fichier metapost contenant le recapitulatif de tous les tableaux </span> @@ -233,7 +242,7 @@ end <span class="comment-delimiter">%% </span><span class="comment">Donne comme prefixe aux tableaux le prefixe courant -</span><span class="comment-delimiter">%% </span><span class="comment">Peut-être modifié par </span><span class="font-latex-sedate"><span class="comment">\initablor</span></span><span class="comment"> +</span><span class="comment-delimiter">%% </span><span class="comment">Peut-être modifie par </span><span class="font-latex-sedate"><span class="comment">\initablor</span></span><span class="comment"> </span> <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\Tableaux</span></span><span class="function-name">}</span>{<span class="font-latex-sedate">\jobname</span>} @@ -247,25 +256,25 @@ end -<span class="comment-delimiter">%% </span><span class="comment">permet de donner un prefixe aux tableaux produits (</span><span class="font-latex-sedate"><span class="comment">\jobname</span></span><span class="comment"> par défaut) -</span><span class="comment-delimiter">%% </span><span class="comment">effectue quelques vérifications : +<span class="comment-delimiter">%% </span><span class="comment">permet de donner un prefixe aux tableaux produits (</span><span class="font-latex-sedate"><span class="comment">\jobname</span></span><span class="comment"> par defaut) +</span><span class="comment-delimiter">%% </span><span class="comment">effectue quelques verifications : </span> <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\initablor</span></span><span class="function-name">}</span>[1][<span class="font-latex-sedate">\jobname</span>]{<span class="comment">% </span><span class="font-latex-sedate"><span class="keyword">\renewcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\Tableaux</span></span><span class="function-name">}</span>{#1}<span class="comment">% Arret du nom des tableaux </span><span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{0}</span><span class="comment">% Initialisation du compteur de tableaux. </span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{xcas}}<span class="comment">% Avec l'option XCas -</span>{<span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\Tableaux</span>.Tab.mp}<span class="comment">% Si Tableaux.mp est présent... -</span> {<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}}<span class="comment">% le détruire +</span>{<span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\Tableaux</span>.Tab.mp}<span class="comment">% Si Tableaux.mp est present... +</span> {<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}}<span class="comment">% le detruire </span> {}<span class="comment">% </span> <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cp</span> enteteMP.cfg <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}<span class="comment">% Reconstituer l'entête de Tableaux.mp </span>} {<span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\Tableaux</span>.Tab.mp}<span class="comment">% Sans l'option XCas, si </span> <span class="comment">% Tableaux.mp existe -</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost -interaction=batchmode <span class="font-latex-sedate">\Tableaux</span>.Tab}}<span class="comment">% l'exécuter pour reconstituer les figures +</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost -interaction=batchmode <span class="font-latex-sedate">\Tableaux</span>.Tab}}<span class="comment">% l'executer pour reconstituer les figures </span>{<span class="font-latex-sedate">\PackageWarning</span>{tablor}{Pas de source metapost pour creer les tableaux.}}<span class="comment">% sinon message d'erreur </span> <span class="comment">% (mais pas d'arret car les tableaux -</span> <span class="comment">% peuvent être présents ) +</span> <span class="comment">% peuvent être presents ) </span>}}<span class="comment">% </span> @@ -809,7 +818,7 @@ fclose(sortie); <span class="comment-delimiter">%%</span><span class="comment"> </span><span class="comment-delimiter">%% </span><span class="comment">Code giac/Xcas pour les Tableaux de Variations avec -</span><span class="comment-delimiter">%% </span><span class="comment">Valeurs intermédiaires +</span><span class="comment-delimiter">%% </span><span class="comment">Valeurs intermediaires </span><span class="comment-delimiter">%%</span><span class="comment"> </span> @@ -1248,9 +1257,239 @@ fclose(sortie); +<span class="comment-delimiter">%%</span><span class="comment"> +</span><span class="comment-delimiter">%% </span><span class="comment">Code giac/Xcas pour les Tableaux de variations de courbes </span><span class="comment"><span class="flyspell-duplicate">parametrees</span></span><span class="comment"> +</span><span class="comment-delimiter">%%</span><span class="comment"> +</span> + + + + + + +<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVP.cxx} + + +TVP(L,F,nom,nomv,ff,ftt,trigo,nmr):={ +//local Z,LLL,FFF,nl,fp,f,S,d,t,ns,k,m,x,j,kk,nz,u,l0; +nl:=size(L); +fp:=[]; +S:=[]; +f:=ff; +Z:=[]; +LLL:=[]; +for(d:=0;d<=1;d++){ +f:=subst(f,f[d]=unapply(f[d],t)); +fp:=append(fp,fonction_derivee(f[d])); +LLL:=concat(L,F[d]); +Z:=LLL union Z; + +ns:=size(resoudre(factor(simplifier(fp[d](t))),t)); +reset_solve_counter(0); +for(k:=0;k<ns;k++){ +if(trigo==1){ +all_trig_solutions:=1; +reset_solve_counter(-1,-1);m:=0; +while(simplifier(subst(resoudre(factor(simplifier(fp[d](t))),t)[k],n_1=m))<=evalf(L[nl-1])){ +reset_solve_counter(-1,-1); +S:=concat(S,simplifier(subst(resoudre(factor(simplifier(fp[d](t))),t)[k],n_1=m)));m:=m+1; +reset_solve_counter(-1,-1); +};m:=-1; +while(evalf(subst(resoudre(factor(simplifier(fp[d](t))),t)[k],n_1=m))>=L[0]){ +reset_solve_counter(-1,-1); +S:=concat(S,simplifier(subst(resoudre(factor(simplifier(fp[d](t))),t)[k],n_1=m)));m:=m-1; +reset_solve_counter(-1,-1); +} +}else{ +S:=concat(S,resoudre(factor(simplifier(fp[d](x))),x)); +} +} + si size(S)>0 alors pour j de 0 jusque size(S)-1 faire + qq:=member(simplifier(S[j]),Z)==0; + kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1])); + if(kk==1){if(qq==1){Z:=append(Z,simplifier(S[j]))}}; + fpour + fsi; + +Z:=sort(Z); +nz:=size(Z); + + + + tantque simplifier(Z[0])==simplifier(Z[1]) faire Z:=Z[1..nz-1];nz:=size(Z); + ftantque; + +nz:=size(Z); +u:=1; + tantque (u<nz-2) and (nz>2) faire + tantque Z[u]==Z[u+1] faire + Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=size(Z); + ftantque; + u:=u+1; + ftantque; + }; + + +Z:=sort(Z); +nz:=size(Z); + + l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:="",""; lf:="","";lsp:="",""; +pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex); +";fpour; + + lsi:="",""; + +FFF:=[[],[]]; + +for(d:=0;d<=1;d++){ +FFF[d]:=concat(F[d],[-infinity,+infinity]); + k0:= evalf(limite(f[d](x),x=Z[0],1))> evalf(limite(f[d](x),x=Z[1],-1)); + kz:=evalf(limite(f[d](x),x=Z[nz-1],-1))> evalf(limite(f[d](x),x=Z[nz-2],1)); + + lsi[d]:=lsic+nom[d]+"'("+nomv+")}<span class="font-latex-math">$ etex);"+if(member(Z[0],FFF[d])==0){"valBarre(btex $</span>"+latex(simplifier(fp[d](Z[0])))+"<span class="font-latex-math">$ etex);"}else{if(Z[0]==-infinity){" "}else{"nonDefBarre; +"}}+ + if(Z[0]==-infinity){if(sign(evalf(fp[d](if(Z[1]==+infinity){0}else{Z[1]-10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F[d])==0){ + if(sign(fp[d](Z[0]+10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)))==1){"plus;"}else{"moins;"}}else{ + if(sign(fp[d]((Z[0]+10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5))))==1){"plus;"}else{"moins;"} }} + +if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp[d](Z[r]+0.01))>0; + lsp[d]:=lsp[d]+if(member(Z[r],F[d])==0){"valBarre(btex $</span>"+latex(simplifier(fp[d](Z[r])))+"<span class="font-latex-math">$ etex);"}else{"nonDefBarre;"}+ + if(ksp==1){"plus;"}else{"moins;"} + }; } + +lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex $</span>"+latex(simplifier(fp[d](Z[nz-1])))+"<span class="font-latex-math">$ etex);"}else{if(Z[nz-1]==+infinity){" "}else{"nonDefBarre;"}} + + + + + } + + + + + + + + + + + + lm0:=1,2; li:=1,2; krm:=1,2; krp:=1,2; lmrm:=1,2; lmrp:=1,2; lp:="",""; lnz:=1,2; lf:=1,2; Kz:=1,2;K0:=1,2; + + +for(d:=0;d<=1;d++){ + K0[d]:= evalf(limite(f[d](x),x=Z[0],1))> evalf(limite(f[d](x),x=Z[1],-1)); + Kz[d]:=evalf(limite(f[d](x),x,Z[nz-1],-1))> evalf(limite(f[d](x),x,Z[nz-2],1)); +lm0[d]:=limite(f[d](x),x,Z[0],1)==-infinity; + li[d]:=lvic+nom[d]+"}$</span> etex);"+ + if(member(Z[0],F[d])==0){"valPos(btex <span class="font-latex-math">$"+if(lm0[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[0],1)))}+"$</span> etex,"} + else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[0],1)))}+"$</span> etex,"}+ + if(K0[d]==1){"1"}else{"0"}+ + ");"; + + if(nz>2){ for(r:=1; r<=nz-2;r++){ krm[d]:=evalf(limite(f[d](x),x=Z[r-1],1))< evalf(limite(f[d](x),x=Z[r],-1)); + krp[d]:=evalf(limite(f[d](x),x=Z[r],1))> evalf(limite(f[d](x),x,Z[r+1],-1)) ; + lmrm[d]:=limite(f[d](x),x,Z[r],-1)==-infinity;lmrp[d]:=limite(f[d](x),x,Z[r],1)==-infinity; + lp[d]:=lp[d]+if(member(Z[r],F[d])){ + "limGauche(btex + <span class="font-latex-math">$"+if(lmrm[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[r],-1)))}+"$</span> + etex,"+if(krm[d]==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[r],1)))}+"$</span> etex,"+if(krp[d]==1){"1);"}else{"0);"}} + else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f[d](Z[r])))+"$</span> + etex,"+if(sign(evalf(fp[d](Z[r]-0.001)))==sign(evalf((fp[d](Z[r]+0.001))) )){"0.5);"}else{if(krp[d]==1){"1);"}else{"0); +"}}} + }; } + +lnz[d]:=limite(f[d](x),x=Z[nz-1],-1)==-infinity; + lf[d]:=if(member(Z[nz-1],F[d])==0){"valPos(btex <span class="font-latex-math">$"+if(lnz[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[nz-1],-1)))}+"$</span> etex,"}+ + if(Kz[d]==1){"1);"}else{"0); +"}; + + +} + + + + + + + + +MetaLfc:=if(ftt==2){if(nz>2){" + +beginTableau("+nmr+")"+ + l0+lsi[0]+lsp[0]+lsf[0]+lsi[1]+lsp[1]+lsf[1]+" +endTableau; + +";}else{ +intro+"beginTableau("+nmr+")"+ + l0+ +lsi[0]+lsf[0]+lsi[1]+lsf[1]+" +endTableau; + +"; +} +}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+ + l0+ +li[0]+ +lp[0]+ +lf[0]+ +li[1]+ +lp[1]+ +lf[1] ++" +endTableau; + +";}else{"beginTableau("+nmr+")"+ + l0+ +li[0]+ +lf[0]+ +li[1]+ +lf[1] ++" +endTableau; + +";}}else{ +if(nz>2){"beginTableau("+nmr+")"+ + l0+ +lsi[0]+lsp[0]+lsf[0]+ +li[0]+ +lp[0]+ +lf[0]+ +lsi[1]+lsp[1]+lsf[1]+ +li[1]+ +lp[1]+ +lf[1] ++" +endTableau; + +";}else{"beginTableau("+nmr+")"+ + l0+ +lsi[0]+lsf[0]+ +li[0]+ +lf[0]+ +lsi[1]+lsf[1]+ +li[1]+ +lf[1] ++" +endTableau; + +";} +} +} + +sortie:=fopen("XCasmpfc.mp"); +fprint(sortie,Unquoted,MetaLfc); +fclose(sortie); + +}:; + + +<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span> + + <span class="comment-delimiter">%%</span><span class="comment"> @@ -1411,10 +1650,10 @@ fpour; -Z:=sort(Z); // on classe les zéros dans l'ordre croissant +Z:=sort(Z); // on classe les zeros dans l'ordre croissant nz:=size(Z); if(nz>2){pour u de 1 jusque nz-2 faire - si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1; // pour les zéros en double + si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1; // pour les zeros en double fsi; fpour;} @@ -1710,10 +1949,10 @@ fclose(sortie); <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\dresse</span></span><span class="function-name">}</span>[1]{<span class="comment">% -</span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{xcas}}{<span class="comment">% Avec l'option "XCas présent" +</span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{xcas}}{<span class="comment">% Avec l'option "XCas present" </span> <span class="font-latex-sedate">\executGiacmp</span>{XCas#1.giac}<span class="comment">% reconstituer le tableau </span> <span class="comment">% exporter le source mp -</span> <span class="comment">% puis lancer metapost pour créer +</span> <span class="comment">% puis lancer metapost pour creer </span> <span class="comment">% l'image du tableau </span> <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> XCasmpfc.mp >> <span class="font-latex-sedate">\Tableaux</span>.Tab.mp} <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> enteteMP.cfg >> <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp} @@ -1730,14 +1969,14 @@ fclose(sortie); XCas.}}} <span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{center}</span> - <span class="font-latex-sedate">\includegraphics</span>{<span class="font-latex-sedate">\Tableaux</span>.Tab.<span class="font-latex-sedate">\theTVn</span>} + <span class="font-latex-sedate"><span class="keyword">\includegraphics</span></span><span class="constant">{</span><span class="font-latex-sedate"><span class="constant">\Tableaux</span></span><span class="constant">.Tab.</span><span class="font-latex-sedate"><span class="constant">\theTVn</span></span><span class="constant">}</span> <span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{center}</span> <span class="font-latex-sedate">\stepcounter</span>{TVn}} <span class="comment-delimiter">%%</span><span class="comment"> -</span><span class="comment-delimiter">%% </span><span class="comment">traitement des fichiers produits par giac/xcas avec possibilité -</span><span class="comment-delimiter">%% </span><span class="comment">de modifier le fichier metapost (environnement étoilé)) +</span><span class="comment-delimiter">%% </span><span class="comment">traitement des fichiers produits par giac/xcas avec possibilite +</span><span class="comment-delimiter">%% </span><span class="comment">de modifier le fichier metapost (environnement etoile)) </span><span class="comment-delimiter">%%</span><span class="comment"> </span> @@ -1746,15 +1985,15 @@ fclose(sortie); </span><span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\Tableaux</span>.Tab.<span class="font-latex-sedate">\theTVn</span>}{<span class="comment">% Test sur l'existence du tableau </span><span class="comment-delimiter">% </span><span class="comment">Si oui, inclusion du fichier source de sauvegarde mp dans Tableaux </span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> TSav-<span class="font-latex-sedate">\theTVn</span>.mp >> <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}} -<span class="comment-delimiter">% </span><span class="comment">Si non, lancement des opérations de fabrication +<span class="comment-delimiter">% </span><span class="comment">Si non, lancement des operations de fabrication </span>{<span class="font-latex-sedate">\executGiacmp</span>{XCas#1.giac}<span class="comment">% </span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\editeur</span> XCasmpfc.mp } - <span class="comment">% Modification avec l'éditeur choisi + <span class="comment">% Modification avec l'editeur choisi </span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> XCasmpfc.mp >> <span class="font-latex-sedate">\Tableaux</span>.Tab.mp} <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cp</span> XCasmpfc.mp TSav-<span class="font-latex-sedate">\theTVn</span>.mp} <span class="comment">% Sauvegarde du </span> <span class="comment">% source mp sur le disque pour une -</span> <span class="comment">% inclusion ultérieure dans Tableaux.mp. +</span> <span class="comment">% inclusion ulterieure dans Tableaux.mp. </span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> enteteMP.cfg >> <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp} <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> XCasmpfc.mp >> <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp}} <span class="comment">% Inclusion du </span> <span class="comment">% source dans le @@ -1762,13 +2001,13 @@ fclose(sortie); </span> <span class="comment">% Tableaux </span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> queue.mp >> <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp} <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost -jobname=<span class="font-latex-sedate">\Tableaux</span>.Tab <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp}<span class="comment">% Reconstitution des tableaux -</span> <span class="comment">% et création du dernier. L'option +</span> <span class="comment">% et creation du dernier. L'option </span> <span class="comment">% pallie l'absence de end en fin de </span> <span class="comment">% fichier </span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp} <span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{center}</span> - <span class="font-latex-sedate">\includegraphics</span>{<span class="font-latex-sedate">\Tableaux</span>.Tab.<span class="font-latex-sedate">\theTVn</span>} + <span class="font-latex-sedate"><span class="keyword">\includegraphics</span></span><span class="constant">{</span><span class="font-latex-sedate"><span class="constant">\Tableaux</span></span><span class="constant">.Tab.</span><span class="font-latex-sedate"><span class="constant">\theTVn</span></span><span class="constant">}</span> <span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{center}</span> <span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVnbis</span></span><span class="variable-name">}</span> <span class="comment">% Restauration du compteur TVn @@ -1784,9 +2023,9 @@ fclose(sortie); </span><span class="comment-delimiter">%%</span><span class="comment"> </span><span class="comment-delimiter">%%%</span><span class="comment"> </span><span class="comment-delimiter">%%%</span><span class="comment"> -</span><span class="comment-delimiter">%%% </span><span class="comment">les "giac" qui permettent d'exécuter la commande rentrée dans le fichier tex +</span><span class="comment-delimiter">%%% </span><span class="comment">les "giac" qui permettent d'executer la commande rentree dans le fichier tex </span><span class="comment-delimiter">%%% </span><span class="comment">suivis des environnements qui permettront la saisie du code giac/xcas -</span><span class="comment-delimiter">%%% </span><span class="comment">Les versions étoilées permettent de modifier le code metapost produit initialement +</span><span class="comment-delimiter">%%% </span><span class="comment">Les versions etoilees permettent de modifier le code metapost produit initialement </span><span class="comment-delimiter">%%%</span><span class="comment"> </span> @@ -1898,6 +2137,29 @@ read("XCasTV.user"); +<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTVP.giac} +maple_mode(0); +read("config.cxx"); +read("XcasTVP.cxx"); +read("XCasTVP.user"); +<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span> + +<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVP}</span><span class="comment">% +</span>{<span class="font-latex-sedate">\VerbatimEnvironment</span><span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=<span class="font-latex-warning">\\</span>??]{XCasTVP.user}}<span class="comment">% +</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span> +<span class="font-latex-sedate">\dresse</span>{TVP}} + +<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVP*}</span>[1]{<span class="comment">% +</span><span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span> +<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span> +<span class="font-latex-sedate">\VerbatimEnvironment</span><span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=<span class="font-latex-warning">\\</span>??]{XCasTVP.user}}<span class="comment">% +</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{TVP}} + + + + + + |