summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorManuel Pégourié-Gonnard <mpg@elzevir.fr>2008-05-13 19:05:08 +0000
committerManuel Pégourié-Gonnard <mpg@elzevir.fr>2008-05-13 19:05:08 +0000
commitc6168f59843ce21988e1c11aae4861378182fdfb (patch)
tree71a6e442878e0a400ab6a92c6e26f57affb78c0d /Master/texmf-dist
parentfa8296a6b6724e1cb73c5fa2832ddc824f794e5a (diff)
tablor v2.03
git-svn-id: svn://tug.org/texlive/trunk@8112 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/doc/latex/tablor/Figures.zipbin148920 -> 161346 bytes
-rw-r--r--Master/texmf-dist/doc/latex/tablor/tablor.html1054
-rw-r--r--Master/texmf-dist/doc/latex/tablor/tablor.pdfbin299304 -> 331007 bytes
-rw-r--r--Master/texmf-dist/doc/latex/tablor/tablor.tex111
-rw-r--r--Master/texmf-dist/tex/latex/tablor/tablor.cfg9
-rw-r--r--Master/texmf-dist/tex/latex/tablor/tablor.sty336
-rw-r--r--Master/texmf-dist/tex/latex/tablor/tablorutf8.sty366
7 files changed, 1403 insertions, 473 deletions
diff --git a/Master/texmf-dist/doc/latex/tablor/Figures.zip b/Master/texmf-dist/doc/latex/tablor/Figures.zip
index 3203b1f239b..c9be5218fe3 100644
--- a/Master/texmf-dist/doc/latex/tablor/Figures.zip
+++ b/Master/texmf-dist/doc/latex/tablor/Figures.zip
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.html b/Master/texmf-dist/doc/latex/tablor/tablor.html
index f102f34fba8..4070357a6b8 100644
--- a/Master/texmf-dist/doc/latex/tablor/tablor.html
+++ b/Master/texmf-dist/doc/latex/tablor/tablor.html
@@ -25,12 +25,6 @@
color: #9932cc;
font-weight: bold;
}
- .flyspell-duplicate {
- /* flyspell-duplicate-face */
- color: #cdad00;
- font-weight: bold;
- text-decoration: underline;
- }
.flyspell-incorrect {
/* flyspell-incorrect-face */
color: #ff4500;
@@ -89,7 +83,7 @@
<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>}[24/03/2008 v2.01 la machine &#224; cr&#233;er des tableaux de signes et variations]
+<span class="font-latex-sedate">\ProvidesPackage</span>{tablor}[24/03/2008 v2.03 la machine &#224; cr&#233;er 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 </span><span class="font-latex-sedate"><span class="comment">\copyright</span></span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="comment">avec l'efficace participation de Jean-Michel </span><span class="comment"><span class="flyspell-incorrect">Boucart</span></span><span class="comment">
@@ -113,7 +107,7 @@
</span><span class="comment-delimiter">% </span><span class="comment">un tableau de variation :
</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">{TV}
-</span><span class="comment-delimiter">% </span><span class="comment">TV([0,+</span><span class="comment"><span class="flyspell-duplicate">infinity</span></span><span class="comment">],[0],"h","x",ln(x)-(ln(x))^2,1,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">)
+</span><span class="comment-delimiter">% </span><span class="comment">TV([0,+infinity],[0],"h","x",ln(x)-(ln(x))^2,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">{TV}
</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="comment">tableau avec valeurs </span><span class="comment"><span class="flyspell-incorrect">interm&#233;diares</span></span><span class="comment">
@@ -129,7 +123,7 @@
</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&#233;ro 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"><span class="flyspell-duplicate">TVIapp</span></span><span class="comment">([0,+</span><span class="comment"><span class="flyspell-duplicate">infinity</span></span><span class="comment">],[0],"g","x",</span><span class="comment"><span class="flyspell-duplicate">ln</span></span><span class="comment">(x)-x*</span><span class="comment"><span class="flyspell-duplicate">exp</span></span><span class="comment">(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="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">
@@ -151,17 +145,18 @@
<span class="font-latex-sedate">\RequirePackage</span>{ifthen}
<span class="font-latex-sedate">\RequirePackage</span>{fancyvrb}
-<span class="font-latex-sedate">\RequirePackage</span>{<span class="flyspell-duplicate">ifpdf</span>}
+<span class="font-latex-sedate">\RequirePackage</span>{ifpdf}
<span class="comment-delimiter">% </span><span class="comment">option xcas pr&#233;sent
</span>
-<span class="font-latex-sedate">\newboolean</span>{xcas}<span class="font-latex-sedate">\setboolean</span>{xcas}{<span class="flyspell-duplicate">false</span>}
+<span class="font-latex-sedate">\newboolean</span>{xcas}<span class="font-latex-sedate">\setboolean</span>{xcas}{false}
<span class="font-latex-sedate">\DeclareOption</span>{xcas}{<span class="font-latex-sedate">\setboolean</span>{xcas}{true}}
-<span class="comment-delimiter">%% </span><span class="comment">Initialisation du choix </span><span class="comment"><span class="flyspell-incorrect">d'OS</span></span><span class="comment">
-</span><span class="font-latex-sedate">\newboolean</span>{windows}<span class="font-latex-sedate">\setboolean</span>{windows}{<span class="flyspell-duplicate">false</span>}
+<span class="comment-delimiter">%% </span><span class="comment">Initialisation du choix d'OS
+</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&#233;rieur pour la plateforme
@@ -171,27 +166,28 @@
</span>
<span class="font-latex-sedate">\ProcessOptions</span><span class="font-latex-sedate">\relax</span>
-<span class="comment-delimiter">%% </span><span class="comment">pour ceux compilant via </span><span class="comment"><span class="flyspell-incorrect">pdflatex</span></span><span class="comment">
+<span class="comment-delimiter">%% </span><span class="comment">pour ceux compilant via pdflatex
</span>
<span class="font-latex-sedate">\ifpdf</span>
-<span class="font-latex-sedate">\DeclareGraphicsRule</span>{*}{<span class="flyspell-incorrect">mps</span>}{*}{}
+<span class="font-latex-sedate">\DeclareGraphicsRule</span>{*}{mps}{*}{}
<span class="font-latex-sedate">\fi</span>
<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> tete.* *.user XCas* Xcas* *.<span class="flyspell-incorrect">mpx</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> tete.* *.user XCas* Xcas* *.mpx}}
+
<span class="comment-delimiter">%% </span><span class="comment">En-t&#234;te pour le fichier metapost contenant les codes
</span><span class="comment-delimiter">%% </span><span class="comment">de tous les tableaux produits
</span>
- <span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{tete.mp}
- input <span class="flyspell-duplicate">tableauVariation</span>;
+ <span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=?&#167;&#163;]{tete.mp}
+ input tableauVariation;
verbatimtex
<span class="comment-delimiter">%</span><span class="comment">&amp;latex
</span> <span class="font-latex-sedate"><span class="keyword">\documentclass</span></span><span class="function-name">{article}</span>
- <span class="font-latex-sedate"><span class="keyword">\usepackage</span></span><span class="variable-name">[upright]</span><span class="function-name">{fourier}</span>
+ <span class="font-latex-warning">\\</span>?fonte
<span class="font-latex-sedate"><span class="keyword">\usepackage</span></span><span class="function-name">{amsmath}</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">\Mathbold</span></span><span class="function-name">}</span>[1]{<span class="font-latex-sedate"><span class="keyword">\mbox</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\boldmath</span></span><span class="function-name"><span class="font-latex-math">$#1$</span></span><span class="font-latex-sedate"><span class="function-name">\unboldmath</span></span><span class="function-name">}</span>}
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{document}</span>
@@ -199,23 +195,25 @@
<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&#233;pend du choix de l'utilisateur
</span><span class="comment-delimiter">%% </span><span class="comment">Par d&#233;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&#244;t le fichier metapost contenant le r&#233;capitulatif de tous les tableaux
</span>
<span class="comment-delimiter">%% </span><span class="comment">D&#233;finit des commandes disque selon l'OS utilis&#233;
-</span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{<span class="flyspell-duplicate">windows</span>}}<span class="comment">%
+</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">%
</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>{rm }<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>{cat }
- <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>{<span class="flyspell-duplicate">cp</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">\cp</span></span><span class="function-name">}</span>{cp }}
<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">\nettoyer</span></span><span class="function-name">}</span>[1][<span class="font-latex-sedate">\jobname</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">\rem</span> #1.Tab.log}
-<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{echo end &gt;&gt; #1.Tab.<span class="flyspell-duplicate">mp</span>}
+<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{echo end &gt;&gt; #1.Tab.mp}
}
@@ -228,7 +226,7 @@
<span class="comment-delimiter">%% </span><span class="comment">initialise les compteurs
</span>
-<span class="font-latex-sedate"><span class="keyword">\newcounter</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TVn</span></span><span class="function-name">}</span>
+<span class="font-latex-sedate"><span class="keyword">\newcounter</span></span><span class="function-name">{TVn}</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">\tv</span></span><span class="function-name">}</span>{<span class="font-latex-sedate">\theTVn</span>}
<span class="font-latex-sedate"><span class="keyword">\newcounter</span></span><span class="function-name">{TVnbis}</span>
@@ -247,7 +245,7 @@
</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&#233;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&#233;truire
</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> -f tete.mp <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}<span class="comment">% Reconstituer l'ent&#234;te de Tableaux.</span><span class="comment"><span class="flyspell-duplicate">mp</span></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> -f tete.mp <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}<span class="comment">% Reconstituer l'ent&#234;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
@@ -264,7 +262,7 @@
<span class="font-latex-sedate">\makeatletter</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">\executGiacmp</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>{windows}}<span class="comment">%
-</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="flyspell-duplicate">giac</span> #1 }}<span class="comment">%
+</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{giac #1 }}<span class="comment">%
</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{giac &lt;#1 }}}
<span class="font-latex-sedate">\makeatother</span>
@@ -273,23 +271,20 @@
<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 SCRIPTS GIAC/</span><span class="comment"><span class="flyspell-incorrect">XCAS</span></span><span class="comment">
+</span><span class="comment-delimiter">%%% </span><span class="comment">LES SCRIPTS GIAC/XCAS
</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">Code giac/Xcas pour les Tableaux de Variations
</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>{XcasTV.cxx}
-<span class="flyspell-duplicate">TV</span>(L,F,nom,nomv,f,ftt,nmr):={
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=?&#167;&#163;]{XcasTV.cxx}
+TV(L,F,nom,nomv,f,ftt,nmr):={
nl:=size(L);
f:=unapply(f,x);
fp:=fonction_derivee(f);
@@ -306,19 +301,19 @@ nz:=size(Z);
si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
fsi;
pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=<span class="flyspell-duplicate">nz</span>-1;
+ si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
fsi;
fpour;
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);
-";<span class="flyspell-duplicate">fpour</span>;
+";fpour;
k0:= evalf(limite(f(x),x=Z[0],1))&gt; evalf(limite(f(x),x=Z[1],-1));
kz:=evalf(limite(f(x),x=Z[nz-1],-1))&gt; evalf(limite(f(x),x=Z[nz-2],1));
lsi:="
-newLigneSignes(btex <span class="font-latex-math">$\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$</span> <span class="flyspell-duplicate">etex</span>);"+
+newLigneSignes(btex <span class="font-latex-math">$\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$</span> etex);"+
if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
@@ -333,25 +328,27 @@ lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
"}
lm0:=limite(f(x),x=Z[0],1)==-infinity;
li:="
-<span class="flyspell-duplicate">newLigneVariations</span>(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$</span> etex);"+
+newLigneVariations(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$</span> etex);"+
if(member(Z[0],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> etex,"}
- else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> <span class="flyspell-duplicate">etex</span>,"}+
+ else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> etex,"}+
if(k0==1){"1"}else{"0"}+
");";
- if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))&lt; evalf(limite(f(x),x=Z[r],-1));
+ if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))&lt; evalf(limite(f(x),x=Z[r],-1));
krp:=evalf(limite(f(x),x=Z[r],1))&gt; evalf(limite(f(x),x=Z[r+1],-1)) ;
lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
lp:=lp+if(member(Z[r],F)){
- "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
+ "limGauche(btex
+ <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$</span>
+ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f(Z[r])))+"$</span>
- etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);
+ etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
"}}}
}; }
lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}+
- if(kz==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);
+ if(kz==1){"1);"}else{"0);
"};
@@ -359,30 +356,30 @@ intro:="input tableauVariation;
verbatimtex
<span class="comment-delimiter">%</span><span class="comment">&amp;latex
</span> <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">documentclass</span><span class="function-name">{article}</span>
- <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="variable-name">[upright]</span><span class="function-name">{fourier}</span>
+ <span class="font-latex-warning">\\</span>?fonte
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="function-name">{amsmath}</span>
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">newcommand</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">Mathbold}</span>[1]{<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">mbox</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">boldmath</span><span class="function-name"><span class="font-latex-math">$#1$</span></span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">unboldmath}</span>}
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">begin</span><span class="function-name">{document}</span>
- <span class="flyspell-duplicate">etex</span>;
+ etex;
"
MetaL:=if(ftt==2){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
end
";}else{
intro+"beginTableau("+nmr+")"+
l0+
lsi+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
end";
}
}else{ if(ftt==0){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+
li+
-<span class="flyspell-duplicate">lp</span>+
+lp+
lf
+"
endTableau;
@@ -393,22 +390,22 @@ lf
+"
endTableau;
end";}}else{
-if(nz&gt;2){intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+
lsi+lsp+lsf+
li+
lp+
lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
end";}else{intro+"beginTableau("+nmr+")"+
l0+
lsi+lsf+
li+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
endTableau;
-<span class="flyspell-duplicate">end</span>";}
+end";}
}}
@@ -417,30 +414,30 @@ MetaLfc:=if(ftt==2){if(nz&gt;2){"
beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}else{
intro+"beginTableau("+nmr+")"+
l0+
lsi+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";
}
}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
li+
-<span class="flyspell-duplicate">lp</span>+
+lp+
lf
+"
endTableau;
-";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+";}else{"beginTableau("+nmr+")"+
l0+
li+
lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}}else{
if(nz&gt;2){"beginTableau("+nmr+")"+
@@ -448,17 +445,17 @@ if(nz&gt;2){"beginTableau("+nmr+")"+
lsi+lsp+lsf+
li+
lp+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
endTableau;
";}else{"beginTableau("+nmr+")"+
l0+
-<span class="flyspell-duplicate">lsi</span>+lsf+
+lsi+lsf+
li+
lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}
}}
@@ -466,16 +463,258 @@ lf
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
-<span class="flyspell-duplicate">fclose</span>(sortie);
+fclose(sortie);
-return(<span class="flyspell-duplicate">MetaL</span>);
+return(MetaL);
}:;
<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">
+</span><span class="comment-delimiter">%%</span><span class="comment">
+</span><span class="comment-delimiter">%% </span><span class="comment">TV avec une zone interdite : on rajoute comme argument l'intervalle interdit
+</span><span class="comment-delimiter">%% </span><span class="comment">par exemple, pour sqrt(x^2-1) : TVZ([-infinity,100],[],[-1,1],"f","x",sqrt(x^2-1),1,1)
+</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>[commandchars=?&#167;&#163;]{XcasTVZ.cxx}
+
+TVZ(L,F,FF,nom,nomv,f,ftt,nmr):={
+nl:=size(L);
+if(FF[0]&gt;L[0]){Imin:=FF[0];LL:=L}else{Imin:=L[0];LL:=[L[1]]};
+if(FF[1]&lt;L[1]){Imax:=FF[1];LL:=L}else{Imax:=L[1];LL:=[L[0]]};
+FF:=[Imin,Imax];
+f:=unapply(f,x);
+fp:=fonction_derivee(f);
+Z:=concat(LL,F);
+Z:=concat(Z,FF);
+S:=resoudre(fp(x),x);
+ si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
+ kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[nl-1]));
+ kK:=(evalf(S[j])&lt;evalf(Imin)) or (evalf(S[j])&gt;evalf(Imax));
+ Kk:=(kk) and kK;
+ if(Kk==1){Z:=append(Z,simplifier(S[j]))};
+ fpour
+ fsi;
+
+Z:=sort(Z);
+nz:=size(Z);
+
+
+
+ si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
+ fsi;
+pour u de 1 jusque nz-2 faire
+ si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
+ fsi;
+fpour;
+nz:=size(Z);
+for(k:=1;k&lt;nz;k++){
+if ((Z[k]&gt;Imin)and(Z[k]&lt;Imax)){Z:=augment(Z[0..k-1],Z[k+1..nz-1]);nz:=nz-1;
+}
+}
+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;
+
+ k0:= evalf(limite(f(x),x=Z[0],1))&gt; evalf(limite(f(x),x=Z[1],-1));
+ kz:=evalf(limite(f(x),x=Z[nz-1],-1))&gt; evalf(limite(f(x),x=Z[nz-2],1));
+
+lsi:="
+newLigneSignes(btex <span class="font-latex-math">$\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$</span> etex);"+
+ if(Z[0]==Imin){"debutNonDef;"}else{if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
+ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
+ if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
+ if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}}
+
+if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))&gt;0;
+ lsp:=lsp+if(Z[r]==Imin){"debutNonDef;"}else{
+ if(Z[r]==Imax){"finNonDef;"+
+ if(ksp==1){"plus;"}else{"moins;"}}else{
+ if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ if(ksp==1){"plus;"}else{"moins;"}
+ }}}};
+
+lsf:=if(Z[0]==Imax){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
+"}}
+lm0:=limite(f(x),x=Z[0],1)==-infinity;
+ li:="
+newLigneVariations(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$</span> etex);"+
+ if(member(Z[0],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> etex,"}
+ else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> etex,"}+
+ if(k0==1){"1"}else{"0"}+
+ ");";
+
+if(nz&gt;2){
+ for(r:=1; r&lt;=nz-2;r++){
+ krm:=evalf(limite(f(x),x=Z[r-1],1))&lt; evalf(limite(f(x),x=Z[r],-1));
+ krp:=evalf(limite(f(x),x=Z[r],1))&gt; evalf(limite(f(x),x=Z[r+1],-1)) ;
+ lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ lp:=lp+if(Z[r]==Imin){"limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){
+ "-\\infty"}else{
+ latex(simplifier(limite(f(x),x=Z[r],-1)))}
+ +"$</span> etex,"+if(krm==1){
+ "1);"}else{"0);"}
+ +"debutNonDef;"
+ }//fsi Zr=Imin
+ else{
+ if (Z[r]==Imax) {"finNonDef;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){
+ "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}
+ +"$</span> etex,"+if(krp==1){
+ "1);"}else{"0);"}
+ }
+ else {
+ if(member(Z[r],F)){
+ "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){
+ "-\\infty"}else{
+ latex(simplifier(limite(f(x),x=Z[r],-1)))}
+ +"$</span> etex,"+if(krm==1){
+ "1);"}else{"0);"}
+ +"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){
+ "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}
+ +"$</span> etex,"+if(krp==1){
+ "1);"}else{"0);"}
+ }//fsi (member Zr F)
+ else{"valPos(btex<span class="font-latex-math">$"+latex(simplifier(f(Z[r])))+"$</span>etex,"+
+ if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){
+ "0.5);"}else{
+ if(krp==1){
+ "1);"}else{"0);"}//felse(krp)
+ }//felse(valpos)
+ }//felse(member Zr F)
+ } //felse(Zr=Imax)
+ }//felse(Zr=Imin)
+ };//ffor
+ }//fsi nz
+
+lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
+ lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}+
+ if(kz==1){"1);"}else{"0);
+"};
+
+
+intro:="input tableauVariation;
+ verbatimtex
+<span class="comment-delimiter">%</span><span class="comment">&amp;latex
+</span> <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">documentclass</span><span class="function-name">{article}</span>
+ <span class="font-latex-warning">\\</span>?fonte
+ <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="function-name">{amsmath}</span>
+ <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">newcommand</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">Mathbold}</span>[1]{<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">mbox</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">boldmath</span><span class="function-name"><span class="font-latex-math">$#1$</span></span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">unboldmath}</span>}
+ <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">begin</span><span class="function-name">{document}</span>
+ etex;
+
+"
+
+
+MetaL:=if(ftt==2){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
+ l0+lsi+lsp+lsf+"
+endTableau;
+end
+";}else{
+intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+"
+endTableau;
+end";
+}
+}else{ if(ftt==0){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
+ l0+
+li+
+lp+
+lf
++"
+endTableau;
+end";}else{intro+"beginTableau("+nmr+")"+
+ l0+
+li+
+lf
++"
+endTableau;
+end";}}else{
+if(nz&gt;2){intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsp+lsf+
+li+
+lp+
+lf
++"
+endTableau;
+end";}else{intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+
+li+
+lf
++"
+endTableau;
+end";}
+}}
+
+
+
+MetaLfc:=if(ftt==2){if(nz&gt;2){"
+
+beginTableau("+nmr+")"+
+ l0+lsi+lsp+lsf+"
+endTableau;
+
+";}else{
+intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+"
+endTableau;
+
+";
+}
+}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
+ l0+
+li+
+lp+
+lf
++"
+endTableau;
+
+";}else{"beginTableau("+nmr+")"+
+ l0+
+li+
+lf
++"
+endTableau;
+
+";}}else{
+if(nz&gt;2){"beginTableau("+nmr+")"+
+ l0+
+lsi+lsp+lsf+
+li+
+lp+
+lf
++"
+endTableau;
+";}else{"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+
+li+
+lf
++"
+endTableau;
+
+";}
+}}
+
+
+sortie:=fopen("XCasmpfc.mp");
+fprint(sortie,Unquoted,MetaLfc);
+fclose(sortie);
+
+
+return(MetaL);
+ }
+:;
+
+<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">
@@ -485,7 +724,7 @@ return(<span class="flyspell-duplicate">MetaL</span>);
</span>
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{<span class="flyspell-duplicate">XcasTVapp</span>.<span class="flyspell-duplicate">cxx</span>}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=?&#167;&#163;]{XcasTVapp.cxx}
@@ -496,20 +735,20 @@ return(<span class="flyspell-duplicate">MetaL</span>);
TVapp(L,F,nom,nomv,f,ftt,nmr):={
-<span class="flyspell-duplicate">nl</span>:=size(L);
+nl:=size(L);
f:=unapply(f,x);
fp:=fonction_derivee(f);
z0:=concat(L,F);z:=sort(z0);
nz:=size(z);
if(L==[-infinity,+infinity]){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=-100..100);}
-<span class="flyspell-duplicate">else</span>{if(L[0]==-infinity){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=-100..L[1]);}
+else{if(L[0]==-infinity){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=-100..L[1]);}
else{if(L[1]==+infinity){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=L[0]..100);}
else{S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=z[0]..z[nz-1])}}};
si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])&gt;=L[0]) and (evalf(S[j])&lt;=L[1]);
if(kk==1){if(kok==1){z:=append(z,simplifier(S[j]))}};
fpour;
-<span class="flyspell-duplicate">fsi</span>;
+fsi;
S:=NULL;
@@ -534,31 +773,31 @@ Z:=[S];
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> <span class="flyspell-duplicate">etex</span>);
-";<span class="flyspell-duplicate">fpour</span>;
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex);
+";fpour;
k0:= evalf(limite(f(x),x=Z[0],1))&gt; evalf(limite(f(x),x=Z[1],-1));
kz:=evalf(limite(f(x),x=Z[nz-1],-1))&gt; evalf(limite(f(x),x=Z[nz-2],1));
lsi:="
-<span class="flyspell-duplicate">newLigneSignes</span>(btex <span class="font-latex-math">$\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$</span> <span class="flyspell-duplicate">etex</span>);"+
+newLigneSignes(btex <span class="font-latex-math">$\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$</span> etex);"+
if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
- if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"+
+ if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}
if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))&gt;0;
- lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}+
+ lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}
}; }
lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
"}
-lm0:=limite(f(x),x=Z[0],1)==-<span class="flyspell-duplicate">infinity</span>;
+lm0:=limite(f(x),x=Z[0],1)==-infinity;
li:="
-<span class="flyspell-duplicate">newLigneVariations</span>(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$</span> etex);"+
+newLigneVariations(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$</span> etex);"+
if(member(Z[0],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> etex,"}
- else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> <span class="flyspell-duplicate">etex</span>,"}+
+ else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> etex,"}+
if(k0==1){"1"}else{"0"}+
");";
@@ -568,70 +807,70 @@ lm0:=limite(f(x),x=Z[0],1)==-<span class="flyspell-duplicate">infinity</span>;
lp:=lp+if(member(Z[r],F)){
"limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f(Z[r])))+"$</span>
- etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);
+ etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
"}}}
}; }
lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
- lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> <span class="flyspell-duplicate">etex</span>,"}+
- if(kz==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);
+ lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}+
+ if(kz==1){"1);"}else{"0);
"};
intro:="input tableauVariation;
- <span class="flyspell-duplicate">verbatimtex</span>
+ verbatimtex
<span class="comment-delimiter">%</span><span class="comment">&amp;latex
</span> <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">documentclass</span><span class="function-name">{article}</span>
- <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="variable-name">[upright]</span><span class="function-name">{fourier}</span>
+ <span class="font-latex-warning">\\</span>?fonte
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="function-name">{amsmath}</span>
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">newcommand</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">Mathbold}</span>[1]{<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">mbox</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">boldmath</span><span class="function-name"><span class="font-latex-math">$#1$</span></span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">unboldmath}</span>}
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">begin</span><span class="function-name">{document}</span>
- <span class="flyspell-duplicate">etex</span>;
+ etex;
"
-MetaL:=if(ftt==2){if(nz&gt;2){intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+MetaL:=if(ftt==2){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
end
";}else{
intro+"beginTableau("+nmr+")"+
l0+
-<span class="flyspell-duplicate">lsi</span>+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+lsi+lsf+"
+endTableau;
end";
}
}else{ if(ftt==0){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+
li+
-<span class="flyspell-duplicate">lp</span>+
+lp+
lf
+"
endTableau;
-end";}else{intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+end";}else{intro+"beginTableau("+nmr+")"+
l0+
li+
lf
+"
endTableau;
end";}}else{
-if(nz&gt;2){intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+
lsi+lsp+lsf+
li+
lp+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
end";}else{intro+"beginTableau("+nmr+")"+
l0+
lsi+lsf+
li+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
endTableau;
-<span class="flyspell-duplicate">end</span>";}
+end";}
}}
@@ -640,59 +879,59 @@ MetaLfc:=if(ftt==2){if(nz&gt;2){"
beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}else{
intro+"beginTableau("+nmr+")"+
l0+
lsi+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";
}
}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
li+
-<span class="flyspell-duplicate">lp</span>+
+lp+
lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
-";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+";}else{"beginTableau("+nmr+")"+
l0+
li+
lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}}else{
if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
lsi+lsp+lsf+
li+
-<span class="flyspell-duplicate">lp</span>+
-<span class="flyspell-duplicate">lf</span>
+lp+
+lf
+"
endTableau;
-";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+";}else{"beginTableau("+nmr+")"+
l0+
-<span class="flyspell-duplicate">lsi</span>+lsf+
+lsi+lsf+
li+
lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}
}}
sortie:=fopen("XCasmpfc.mp");
-<span class="flyspell-duplicate">fprint</span>(sortie,Unquoted,MetaLfc);
-<span class="flyspell-duplicate">fclose</span>(sortie);
+fprint(sortie,Unquoted,MetaLfc);
+fclose(sortie);
-return(<span class="flyspell-duplicate">MetaL</span>);
+return(MetaL);
}:;
@@ -718,52 +957,52 @@ return(<span class="flyspell-duplicate">MetaL</span>);
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVI.<span class="flyspell-duplicate">cxx</span>}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=?&#167;&#163;]{XcasTVI.cxx}
TVI(L,F,nom,nomv,f,ftt,ao,nmr):={
-<span class="flyspell-duplicate">nl</span>:=size(L);
+nl:=size(L);
f:=unapply(f,x);
-<span class="flyspell-duplicate">fp</span>:=fonction_derivee(f);
+fp:=fonction_derivee(f);
Z:=concat(L,F);
S:=resoudre(fp(x),x);
si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[nl-1]));
if(kk==1){Z:=append(Z,simplifier(S[j]))};
- <span class="flyspell-duplicate">fpour</span>
+ fpour
fsi;
Z:=sort(Z);
-<span class="flyspell-duplicate">nz</span>:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=<span class="flyspell-duplicate">nz</span>-1;
+nz:=size(Z);
+ si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
fsi;
pour u de 1 jusque nz-2 faire
si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
fsi;
-<span class="flyspell-duplicate">fpour</span>;
+fpour;
nz:=size(Z);
-l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";<span class="flyspell-duplicate">lsp</span>:=" ";
+l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" ";
LI:=limite(f(x),x,Z[0],1);
LF:=limite(f(x),x,Z[nz-1],-1);
-<span class="flyspell-duplicate">LP</span>:=NULL;
+LP:=NULL;
if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){LP:=LP,if(member(Z[r],F)){limite(f(x),x,Z[r],-1),limite(f(x),x,Z[r],1)}else{f(Z[r])}}};
-if(nz&gt;2){ LL:=[LI,LP,LF]}else{LL:=[LI,<span class="flyspell-duplicate">LF</span>]};
+if(nz&gt;2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
NL:=size(LL);
-A:=NULL;aa:=1;<span class="flyspell-duplicate">kk</span>:=0;
+A:=NULL;aa:=1;kk:=0;
if(NL==nz){for(k:=0;k&lt;nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
if(TestS==0){A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[k])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;}else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[k])+"$</span> etex);"}}
l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);"};
if(NL&gt;nz){for(k:=0;k&lt;NL-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
-<span class="flyspell-duplicate">TestL</span>:=(abs(LL[k])==abs(LL[k+1]));
+TestL:=(abs(LL[k])==abs(LL[k+1]));
if(TestS==0){ if( TestL==1 ){l0:=l0}else{
A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);";kk:=kk+1}}
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> <span class="flyspell-duplicate">etex</span>);
+l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);
"};
@@ -772,29 +1011,29 @@ TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))=
k0:= evalf(limite(f(x),x=Z[0],1))&gt; evalf(limite(f(x),x=Z[1],-1));
kz:=evalf(limite(f(x),x=Z[nz-1],-1))&gt; evalf(limite(f(x),x=Z[nz-2],1));
-<span class="flyspell-duplicate">lsi</span>:="
+lsi:="
newLigneSignes(btex <span class="font-latex-math">$\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$</span> etex);"+
if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
if(sign(fp((Z[0]+10^(-10))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
- if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex<span class="font-latex-math">$ $</span> etex);"+ if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"}}<span class="flyspell-duplicate">else</span>{" "};
+ if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex<span class="font-latex-math">$ $</span> etex);"+ if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "};
-if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-<span class="flyspell-duplicate">ao</span>))==0.0);
+if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
ksp:=evalf(fp(Z[r]+0.01))&gt;0;
TestL:=(abs(LL[r])==abs(LL[r+1]));
lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex <span class="font-latex-math">$ $</span> etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
}}
-<span class="flyspell-duplicate">else</span>{for(r:=1; r&lt;=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))&gt;0;TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
+else{for(r:=1; r&lt;=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))&gt;0;TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
TestL:=(abs(LL[r])==abs(LL[r+1]));
if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
- if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex <span class="font-latex-math">$ $</span> etex);"+if(<span class="flyspell-duplicate">kspp</span>==1){"plus;"}else{"moins;"};rr:=rr+1;}
- } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"nonDefBarre;"}+
- if(kspp==1){"plus;"}else{"moins;"};rr:=<span class="flyspell-duplicate">rr</span>+1;}
+ if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex <span class="font-latex-math">$ $</span> etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
+ } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
}}
};
@@ -803,158 +1042,158 @@ if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=NL-2;r++){ TestS:=(sign(evalf(LL[r
lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;"}
lm0:=limite(f(x),x=Z[0],1)==-infinity;
-<span class="flyspell-duplicate">TestS</span>:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-<span class="flyspell-duplicate">ao</span>))==0.0);
+TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
li:="
newLigneVariations(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$</span> etex);
"+ if(member(Z[0],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> etex,"}
else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> etex,"}+
- if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex <span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"}<span class="flyspell-duplicate">else</span>{" "};
+ if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex <span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"}else{" "};
- if(nz&gt;2){if(nz==NL){for(r:=1; r&lt;=nz-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-<span class="flyspell-duplicate">ao</span>))==0.0);
+ if(nz&gt;2){if(nz==NL){for(r:=1; r&lt;=nz-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
krm:=evalf(limite(f(x),x=Z[r-1],1))&lt; evalf(limite(f(x),x=Z[r],-1));
krp:=evalf(limite(f(x),x=Z[r],1))&gt; evalf(limite(f(x),x=Z[r+1],-1)) ;
- lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-<span class="flyspell-duplicate">infinity</span>;
+ lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
lp:=lp+if(member(Z[r],F)) {
- "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$</span> etex,"+if(krp==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}}
+ "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f(Z[r])))+"$</span>
etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+if(TestS==0){"valPos(btex
<span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"
}else{" "};
};//for
-}else{rr:=1;for(r:=1; r&lt;=NL-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(<span class="flyspell-duplicate">evalf</span>(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-<span class="flyspell-duplicate">ao</span>))==0.0);
+}else{rr:=1;for(r:=1; r&lt;=NL-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
krm:=evalf(limite(f(x),x=Z[rr-1],1))&lt; evalf(limite(f(x),x=Z[rr],-1));
- krp:=evalf(limite(f(x),x=Z[rr],1))&gt; evalf(limite(f(x),x=Z[<span class="flyspell-duplicate">rr</span>+1],-1)) ;
+ krp:=evalf(limite(f(x),x=Z[rr],1))&gt; evalf(limite(f(x),x=Z[rr+1],-1)) ;
lmrm:=limite(f(x),x=Z[rr],-1)==-infinity;lmrp:=limite(f(x),x=Z[rr],1)==-infinity; TestL:=(abs(LL[r])==abs(LL[r+1]));
if(TestS==0){if( TestL==1 ){lp:=lp}else{ lp:=lp+if(member(Z[rr],F)) {
- "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}}
+ "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f(Z[rr])))+"$</span>
- etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[<span class="flyspell-duplicate">rr</span>]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex
+ etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex
<span class="font-latex-math">$ "+ao+" $</span> etex,0.5);
";rr:=rr+1;
-}// else <span class="flyspell-duplicate">testL</span>==1
+}// else testL==1
}//testS==0
else{lp:=lp+if(member(Z[rr],F)){
"limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f(Z[rr])))+"$</span>
- etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);
+ etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
"}}};rr:=rr+1;
}//else testS==0
}//for nz&lt;NL
-}// else nz&lt;<span class="flyspell-duplicate">NL</span>
+}// else nz&lt;NL
//if nz=NL
-};//if <span class="flyspell-duplicate">nz</span>&gt;2
+};//if nz&gt;2
lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
- lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> <span class="flyspell-duplicate">etex</span>,"}+
+ lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}+
if(kz==1){"1);"}else{"0);"};
-<span class="flyspell-duplicate">intro</span>:="
+intro:="
input tableauVariation;
-<span class="flyspell-duplicate">verbatimtex</span>
+verbatimtex
<span class="comment-delimiter">%</span><span class="comment">&amp;latex
</span> <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">documentclass</span><span class="function-name">{article}</span>
- <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="variable-name">[upright]</span><span class="function-name">{fourier}</span>
+ <span class="font-latex-warning">\\</span>?fonte
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="function-name">{amsmath}</span>
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">newcommand</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">Mathbold}</span>[1]{<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">mbox</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">boldmath</span><span class="function-name"><span class="font-latex-math">$#1$</span></span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">unboldmath}</span>}
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">begin</span><span class="function-name">{document}</span>
- <span class="flyspell-duplicate">etex</span>;
+ etex;
";
-<span class="flyspell-duplicate">MetaL</span>:= if(ftt==2){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
+MetaL:= if(ftt==2){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
endTableau;
end";}else{
-<span class="flyspell-duplicate">intro</span>+"beginTableau("+nmr+")"+
+intro+"beginTableau("+nmr+")"+
l0+
-<span class="flyspell-duplicate">lsi</span>+lsf+"
+lsi+lsf+"
endTableau;
-<span class="flyspell-duplicate">end</span>";
+end";
}
}else{
-if(ftt==0){if(nz&gt;2){intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+if(ftt==0){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+
li+
lp+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
endTableau;
-<span class="flyspell-duplicate">end</span>";}else{intro+"beginTableau("+nmr+")"+
+end";}else{intro+"beginTableau("+nmr+")"+
l0+
li+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
endTableau;
-<span class="flyspell-duplicate">end</span>";}}else{
+end";}}else{
if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+
lsi+lsp+lsf+
li+
lp+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
endTableau;
-end";}else{intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+end";}else{intro+"beginTableau("+nmr+")"+
l0+
lsi+lsf+
li+
lf
+"
endTableau;
-<span class="flyspell-duplicate">end</span>";}
+end";}
}};
MetaLfc:= if(ftt==2){if(nz&gt;2){"beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}else{
"beginTableau("+nmr+")"+
l0+
lsi+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";
}
}else{
-if(ftt==0){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
li+
-<span class="flyspell-duplicate">lp</span>+
+lp+
lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
-";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+";}else{"beginTableau("+nmr+")"+
l0+
li+
lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}}else{
if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
-<span class="flyspell-duplicate">lsi</span>+lsp+lsf+
+lsi+lsp+lsf+
li+
-<span class="flyspell-duplicate">lp</span>+
-<span class="flyspell-duplicate">lf</span>
+lp+
+lf
+"
endTableau;
-";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+";}else{"beginTableau("+nmr+")"+
l0+
lsi+lsf+
li+
lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}
}};
@@ -963,10 +1202,10 @@ lf
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
-<span class="flyspell-duplicate">fclose</span>(sortie);
+fclose(sortie);
-return(<span class="flyspell-duplicate">MetaL</span>);
+return(MetaL);
}:;
@@ -987,13 +1226,13 @@ return(<span class="flyspell-duplicate">MetaL</span>);
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVIapp.cxx}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=?&#167;&#163;]{XcasTVIapp.cxx}
-TVIapp(L,F,nom,nomv,f,ftt,ao,<span class="flyspell-duplicate">nmr</span>):={
+TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={
-<span class="flyspell-duplicate">nl</span>:=size(L);
+nl:=size(L);
f:=unapply(f,x);
fp:=fonction_derivee(f);
z0:=concat(L,F);z:=sort(z0);
@@ -1006,7 +1245,7 @@ si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])&gt;=L[0]) and (evalf(S[j])&lt;=L[1]);
if(kk==1){if(kok==1){z:=append(z,simplifier(S[j]))}};
fpour;
-<span class="flyspell-duplicate">fsi</span>;
+fsi;
S:=NULL;
@@ -1022,7 +1261,7 @@ z:=[S];
Z:=sort(z);
nz:=size(Z);
-S:=<span class="flyspell-duplicate">NULL</span>;
+S:=NULL;
S:=S,Z[0];
for(j:=1;j&lt;nz;j++){
if(Z[j]!=S[size(S)-1]){
@@ -1032,153 +1271,153 @@ Z:=[S];
nz:=size(Z);
-l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";<span class="flyspell-duplicate">lsp</span>:=" ";
+l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" ";
LI:=limite(f(x),x,Z[0],1);
LF:=limite(f(x),x,Z[nz-1],-1);
-<span class="flyspell-duplicate">LP</span>:=NULL;
+LP:=NULL;
if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){LP:=LP,if(member(Z[r],F)){limite(f(x),x,Z[r],-1),limite(f(x),x,Z[r],1)}else{f(Z[r])}}};
-if(nz&gt;2){ LL:=[LI,LP,LF]}else{LL:=[LI,<span class="flyspell-duplicate">LF</span>]};
+if(nz&gt;2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
NL:=size(LL);
-A:=NULL;aa:=1;<span class="flyspell-duplicate">kk</span>:=0;
+A:=NULL;aa:=1;kk:=0;
-if(NL==nz){for(k:=0;k&lt;nz-1;k++){<span class="flyspell-duplicate">TestS</span>:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
+if(NL==nz){for(k:=0;k&lt;nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
if(TestS==0){A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[k])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;}else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[k])+"$</span> etex);"}}
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> <span class="flyspell-duplicate">etex</span>);"};
+l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);"};
if(NL&gt;nz){for(k:=0;k&lt;NL-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
-<span class="flyspell-duplicate">TestL</span>:=(abs(LL[k])==abs(LL[k+1]));
+TestL:=(abs(LL[k])==abs(LL[k+1]));
if(TestS==0){ if( TestL==1 ){l0:=l0}else{
-A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;kk:=<span class="flyspell-duplicate">kk</span>+1}}else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);";kk:=kk+1}}
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> <span class="flyspell-duplicate">etex</span>);
+A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);";kk:=kk+1}}
+l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);
"};
-<span class="flyspell-duplicate">TestS</span>:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-<span class="flyspell-duplicate">ao</span>))==0.0);
+TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
k0:= evalf(limite(f(x),x=Z[0],1))&gt; evalf(limite(f(x),x=Z[1],-1));
kz:=evalf(limite(f(x),x=Z[nz-1],-1))&gt; evalf(limite(f(x),x=Z[nz-2],1));
lsi:="
-<span class="flyspell-duplicate">newLigneSignes</span>(btex <span class="font-latex-math">$\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$</span> etex);"+
- if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}<span class="flyspell-duplicate">else</span>{"moins;"}}else{if(member(Z[0],F)==0){
+newLigneSignes(btex <span class="font-latex-math">$\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$</span> etex);"+
+ if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
if(sign(fp((Z[0]+10^(-10))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
- if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex<span class="font-latex-math">$ $</span> etex);"+ if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"}}<span class="flyspell-duplicate">else</span>{" "};
+ if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex<span class="font-latex-math">$ $</span> etex);"+ if(sign(fp(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "};
-if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-<span class="flyspell-duplicate">ao</span>))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
+if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
ksp:=evalf(fp(Z[r]+0.01))&gt;0;
TestL:=(abs(LL[r])==abs(LL[r+1]));
- lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}+
- if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex <span class="font-latex-math">$ $</span> etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}<span class="flyspell-duplicate">else</span>{" "};
+ lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex <span class="font-latex-math">$ $</span> etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
}}
else{for(r:=1; r&lt;=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))&gt;0;TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
TestL:=(abs(LL[r])==abs(LL[r+1]));
if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
- if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex <span class="font-latex-math">$ $</span> etex);"+if(<span class="flyspell-duplicate">kspp</span>==1){"plus;"}else{"moins;"};rr:=rr+1;}
- } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}+
- if(kspp==1){"plus;"}else{"moins;"};rr:=<span class="flyspell-duplicate">rr</span>+1;}
+ if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex <span class="font-latex-math">$ $</span> etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
+ } else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
}}
};
-<span class="flyspell-duplicate">lsf</span>:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;"}
+lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;"}
lm0:=limite(f(x),x=Z[0],1)==-infinity;
-<span class="flyspell-duplicate">TestS</span>:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-<span class="flyspell-duplicate">ao</span>))==0.0);
+TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
li:="
newLigneVariations(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$</span> etex);
"+ if(member(Z[0],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> etex,"}
- else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> <span class="flyspell-duplicate">etex</span>,"}+
- if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex <span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"}<span class="flyspell-duplicate">else</span>{" "};
+ else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$</span> etex,"}+
+ if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex <span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"}else{" "};
- if(nz&gt;2){if(nz==NL){for(r:=1; r&lt;=nz-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(<span class="flyspell-duplicate">evalf</span>(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
+ if(nz&gt;2){if(nz==NL){for(r:=1; r&lt;=nz-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
krm:=evalf(limite(f(x),x=Z[r-1],1))&lt; evalf(limite(f(x),x=Z[r],-1));
krp:=evalf(limite(f(x),x=Z[r],1))&gt; evalf(limite(f(x),x=Z[r+1],-1)) ;
lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
lp:=lp+if(member(Z[r],F)) {
- "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$</span> etex,"+if(krp==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}}
+ "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f(Z[r])))+"$</span>
- etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+if(TestS==0){"valPos(<span class="flyspell-duplicate">btex</span>
+ etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+if(TestS==0){"valPos(btex
<span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"
}else{" "};
};//for
}else{rr:=1;for(r:=1; r&lt;=NL-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
krm:=evalf(limite(f(x),x=Z[rr-1],1))&lt; evalf(limite(f(x),x=Z[rr],-1));
- krp:=evalf(limite(f(x),x=Z[rr],1))&gt; evalf(limite(f(x),x=Z[<span class="flyspell-duplicate">rr</span>+1],-1)) ;
+ krp:=evalf(limite(f(x),x=Z[rr],1))&gt; evalf(limite(f(x),x=Z[rr+1],-1)) ;
lmrm:=limite(f(x),x=Z[rr],-1)==-infinity;lmrp:=limite(f(x),x=Z[rr],1)==-infinity; TestL:=(abs(LL[r])==abs(LL[r+1]));
if(TestS==0){if( TestL==1 ){lp:=lp}else{ lp:=lp+if(member(Z[rr],F)) {
- "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}}
+ "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f(Z[rr])))+"$</span>
- etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(<span class="flyspell-duplicate">btex</span>
+ etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex
<span class="font-latex-math">$ "+ao+" $</span> etex,0.5);
";rr:=rr+1;
-}// else <span class="flyspell-duplicate">testL</span>==1
+}// else testL==1
}//testS==0
else{lp:=lp+if(member(Z[rr],F)){
"limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f(Z[rr])))+"$</span>
- etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);
- "}}};rr:=<span class="flyspell-duplicate">rr</span>+1;
+ etex,"+if(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
+ "}}};rr:=rr+1;
}//else testS==0
}//for nz&lt;NL
-}// else nz&lt;<span class="flyspell-duplicate">NL</span>
+}// else nz&lt;NL
//if nz=NL
-};//if <span class="flyspell-duplicate">nz</span>&gt;2
+};//if nz&gt;2
lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}+
- if(kz==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"};
+ if(kz==1){"1);"}else{"0);"};
-<span class="flyspell-duplicate">intro</span>:="
+intro:="
input tableauVariation;
-<span class="flyspell-duplicate">verbatimtex</span>
+verbatimtex
<span class="comment-delimiter">%</span><span class="comment">&amp;latex
</span> <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">documentclass</span><span class="function-name">{article}</span>
- <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="variable-name">[upright]</span><span class="function-name">{fourier}</span>
+ <span class="font-latex-warning">\\</span>?fonte
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="function-name">{amsmath}</span>
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">newcommand</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">Mathbold}</span>[1]{<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">mbox</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">boldmath</span><span class="function-name"><span class="font-latex-math">$#1$</span></span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">unboldmath}</span>}
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">begin</span><span class="function-name">{document}</span>
- <span class="flyspell-duplicate">etex</span>;
+ etex;
";
-MetaL:= if(ftt==2){if(nz&gt;2){intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+MetaL:= if(ftt==2){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
endTableau;
end";}else{
-<span class="flyspell-duplicate">intro</span>+"beginTableau("+nmr+")"+
+intro+"beginTableau("+nmr+")"+
l0+
lsi+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
-<span class="flyspell-duplicate">end</span>";
+endTableau;
+end";
}
}else{
if(ftt==0){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+
li+
lp+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
endTableau;
-end";}else{intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+end";}else{intro+"beginTableau("+nmr+")"+
l0+
li+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
endTableau;
end";}}else{
@@ -1187,64 +1426,64 @@ if(nz&gt;2){intro+"beginTableau("+nmr+")"+
lsi+lsp+lsf+
li+
lp+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
endTableau;
-end";}else{intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+end";}else{intro+"beginTableau("+nmr+")"+
l0+
lsi+lsf+
li+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
endTableau;
-<span class="flyspell-duplicate">end</span>";}
+end";}
}};
MetaLfc:= if(ftt==2){if(nz&gt;2){"beginTableau("+nmr+")"+
l0+lsi+lsp+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
-";}<span class="flyspell-duplicate">else</span>{
+";}else{
"beginTableau("+nmr+")"+
l0+
lsi+lsf+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";
}
}else{
-if(ftt==0){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
li+
lp+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}else{"beginTableau("+nmr+")"+
l0+
li+
lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}}else{
-if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
lsi+lsp+lsf+
li+
-<span class="flyspell-duplicate">lp</span>+
+lp+
lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
-";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+";}else{"beginTableau("+nmr+")"+
l0+
lsi+lsf+
li+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
";}
}};
@@ -1256,7 +1495,7 @@ fprint(sortie,Unquoted,MetaLfc);
fclose(sortie);
-<span class="flyspell-duplicate">return</span>(<span class="flyspell-duplicate">MetaL</span>);
+return(MetaL);
}:;
@@ -1282,10 +1521,10 @@ fclose(sortie);
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSignL.cxx}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=?&#167;&#163;]{XcasTabSignL.cxx}
-<span class="flyspell-duplicate">TS</span>(L,D,nmr):={
+TS(L,D,nmr):={
L:=apply(f-&gt;unapply(f,x),L)
n:=size(L);
Z:=NULL;
@@ -1305,7 +1544,7 @@ if(nz&gt;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;
fsi;
fpour;};
-<span class="flyspell-duplicate">nz</span>:=size(Z);
+nz:=size(Z);
if(nz==0){li:="";l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);";
for(p:=0;p&lt;=n-1;p++){li:=li+"
@@ -1314,17 +1553,17 @@ if(mini!=-infinity and L[p](mini)==0){"
valBarre(btex 0 etex);"}else{"
"}+
if(L[p]((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p](maxi)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}else{"
"}
}
lf:=if(product(L[s]((mini+maxi)*.5),s,0,n-1)&gt;0){"plus;"}else{"moins;"};
MetaL:=" input tableauVariation;
- <span class="flyspell-duplicate">verbatimtex</span>
+ verbatimtex
<span class="comment-delimiter">%</span><span class="comment">&amp;latex
</span> <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">documentclass</span><span class="function-name">{article}</span>
- <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="variable-name">[upright]</span><span class="function-name">{fourier}</span>
+ <span class="font-latex-warning">\\</span>?fonte
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="function-name">{amsmath}</span>
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">newcommand</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">Mathbold}</span>[1]{<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">mbox</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">boldmath</span><span class="function-name"><span class="font-latex-math">$#1$</span></span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">unboldmath}</span>}
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">begin</span><span class="function-name">{document}</span>
@@ -1339,14 +1578,14 @@ newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex
valBarre(btex 0 etex);"}else{"
"}+ lf+
if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}else{"
"}+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
end"
;
-<span class="flyspell-duplicate">MetaLfc</span>:=" beginTableau("+nmr+")
+MetaLfc:=" beginTableau("+nmr+")
newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex);
"+l0+li+
"
@@ -1357,7 +1596,7 @@ newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex
if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
valBarre(btex 0 etex);"}else{"
"}+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
"
;
@@ -1369,11 +1608,11 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+
l0:=l0+"val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);";
-for(p:=0;p&lt;=n-1;p++){<span class="flyspell-duplicate">lp</span>:="";
+for(p:=0;p&lt;=n-1;p++){lp:="";
li:=li+"
newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(L[p](x))+"}}$</span> etex);"+
if(mini!=-infinity and L[p](mini)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}else{"
"}+
if(L[p](Z[0]-0.01)&gt;0){"plus;"}else{"moins;"};
@@ -1386,7 +1625,7 @@ newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="f
li:=li+lp+ if(simplifier(L[p](Z[nz-1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}+
if(L[p](Z[nz-1]+1.0)&gt;0){"plus;"}else{"moins;
"}+if(maxi!=+infinity and L[p](maxi)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}else{"
"}
};
@@ -1399,11 +1638,11 @@ MetaL:=" input tableauVariation;
verbatimtex
<span class="comment-delimiter">%</span><span class="comment">&amp;latex
</span> <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">documentclass</span><span class="function-name">{article}</span>
- <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="variable-name">[upright]</span><span class="function-name">{fourier}</span>
+ <span class="font-latex-warning">\\</span>?fonte
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="function-name">{amsmath}</span>
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">newcommand</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">Mathbold}</span>[1]{<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">mbox</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">boldmath</span><span class="function-name"><span class="font-latex-math">$#1$</span></span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">unboldmath}</span>}
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">begin</span><span class="function-name">{document}</span>
- <span class="flyspell-duplicate">etex</span>;
+ etex;
beginTableau("+nmr+")
newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex);
"+l0+
@@ -1414,37 +1653,37 @@ newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex
if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
valBarre(btex 0 etex);"}else{"
"}+
- if(product(L[s](Z[0]-0.01),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+"valBarre(btex 0 <span class="flyspell-duplicate">etex</span>);"+
+ if(product(L[s](Z[0]-0.01),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+"valBarre(btex 0 etex);"+
lr+
if(product(L[s](Z[nz-1]+0.01),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+
if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
valBarre(btex 0 etex);"}else{"
"}+"
endTableau;
-<span class="flyspell-duplicate">end</span>"
+end"
;
MetaLfc:=" beginTableau("+nmr+")
-<span class="flyspell-duplicate">newLigneVariables</span>(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex);
+newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex);
"+l0+
li
+
"
newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe du }\\atop{{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> produit}}$</span> etex);"+
if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}else{"
"}+
if(product(L[s](Z[0]-0.01),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+"valBarre(btex 0 etex);"+
lr+
if(product(L[s](Z[nz-1]+0.01),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+
if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}else{"
"}+"
endTableau;
";
}
sortie:=fopen("XCasmpfc.mp");
-<span class="flyspell-duplicate">fprint</span>(sortie,Unquoted,MetaLfc);
+fprint(sortie,Unquoted,MetaLfc);
fclose(sortie);
return(MetaL);
}:;
@@ -1460,8 +1699,8 @@ return(MetaL);
</span>
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSignQ.cxx}
-<span class="flyspell-duplicate">TSq</span>(nomf,L,Fo,D,nmr):={
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=?&#167;&#163;]{XcasTabSignQ.cxx}
+TSq(nomf,L,Fo,D,nmr):={
L:=apply(f-&gt;unapply(f,x),L);
Fo:=apply(f-&gt;unapply(f,x),Fo);
L:=concat(L,Fo);
@@ -1478,7 +1717,7 @@ pour k de 0 jusque n-1 faire
if(S[j]&gt;mini and S[j]&lt;maxi){Z:=Z,simplifier(S[j]);}
fpour;
fsi;
-<span class="flyspell-duplicate">fpour</span>;
+fpour;
pour k de 0 jusque m-1 faire
@@ -1497,60 +1736,60 @@ nz:=size(Z);
if(nz&gt;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&#233;ros en double
fsi;
-<span class="flyspell-duplicate">fpour</span>;}
+fpour;}
Z:=sort(Z);
nz:=size(Z);
if(nz&gt;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:=<span class="flyspell-duplicate">nz</span>-1;
+ si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1;
fsi;
fpour;};
nz:=size(Z);
-if(nz==0){li:="";l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> <span class="flyspell-duplicate">etex</span>);";
+if(nz==0){li:="";l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);";
for(p:=0;p&lt;=n-1;p++){li:=li+"
-<span class="flyspell-duplicate">newLigneSignes</span>(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(L[p](x))+"}}$</span> <span class="flyspell-duplicate">etex</span>);"+
+newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(L[p](x))+"}}$</span> etex);"+
if(mini!=-infinity and L[p](mini)==0){"
valBarre(btex 0 etex);"}else{"
"}+
-if(L[p]((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p](<span class="flyspell-duplicate">maxi</span>)==0){"
+if(L[p]((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p](maxi)==0){"
valBarre(btex 0 etex);"}else{"
"}
}
lf:=if(product(L[s]((mini+maxi)*.5),s,0,n-1)&gt;0){"plus;"}else{"moins;"};
-<span class="flyspell-duplicate">MetaL</span>:=" input tableauVariation;
+MetaL:=" input tableauVariation;
verbatimtex
<span class="comment-delimiter">%</span><span class="comment">&amp;latex
</span> <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">documentclass</span><span class="function-name">{article}</span>
- <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="variable-name">[upright]</span><span class="function-name">{fourier}</span>
+ <span class="font-latex-warning">\\</span>?fonte
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="function-name">{amsmath}</span>
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">newcommand</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">Mathbold}</span>[1]{<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">mbox</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">boldmath</span><span class="function-name"><span class="font-latex-math">$#1$</span></span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">unboldmath}</span>}
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">begin</span><span class="function-name">{document}</span>
etex;
beginTableau("+nmr+")
-newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> <span class="flyspell-duplicate">etex</span>);
+newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex);
"+l0+li+
"
newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe }\\atop{{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> de "+nomf+"(x)}}$</span> etex);"+
if(member(mini,FF)==0){if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
valBarre(btex 0 etex);"}else{"
- "}}else{"nonDefBarre;"}+ <span class="flyspell-duplicate">lf</span>+
+ "}}else{"nonDefBarre;"}+ lf+
if(member(maxi,FF)==0){if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
valBarre(btex 0 etex);"}else{"
"}}else{"nonDefBarre;"}+"
endTableau;
-<span class="flyspell-duplicate">end</span>"
+end"
;
MetaLfc:="
-<span class="flyspell-duplicate">beginTableau</span>("+nmr+")
+beginTableau("+nmr+")
newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex);
"+l0+li+
"
@@ -1561,7 +1800,7 @@ newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex
if(member(maxi,FF)==0){if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
valBarre(btex 0 etex);"}else{"
"}}else{"nonDefBarre;"}+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
"
;
@@ -1569,20 +1808,20 @@ newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex
-}<span class="flyspell-duplicate">else</span>{
+}else{
l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);";li:=" ";lr:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex);
";fpour;
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> <span class="flyspell-duplicate">etex</span>);";
+l0:=l0+"val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);";
-for(p:=0;p&lt;=n-1;p++){<span class="flyspell-duplicate">lp</span>:="";
+for(p:=0;p&lt;=n-1;p++){lp:="";
li:=li+"
newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(L[p](x))+"}}$</span> etex);"+
if(mini!=-infinity and L[p](mini)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}else{"
"}+
if(L[p](Z[0]-0.01)&gt;0){"plus;"}else{"moins;"};
@@ -1595,7 +1834,7 @@ newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="f
li:=li+lp+ if(simplifier(L[p](Z[nz-1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}+
if(L[p](Z[nz-1]+1.0)&gt;0){"plus;"}else{"moins;
"}+if(maxi!=+infinity and L[p](maxi)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{" "}
+ valBarre(btex 0 etex);"}else{" "}
};
@@ -1605,11 +1844,11 @@ pour t de 0 jusque nz-2 faire
if(member(Z[t+1],FF)==0){"valBarre(btex 0 etex);"}else{ "nonDefBarre;"}
fpour
-<span class="flyspell-duplicate">MetaL</span>:=" input tableauVariation;
-<span class="flyspell-duplicate">verbatimtex</span>
+MetaL:=" input tableauVariation;
+verbatimtex
<span class="comment-delimiter">%</span><span class="comment">&amp;latex
</span> <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">documentclass</span><span class="function-name">{article}</span>
- <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="variable-name">[upright]</span><span class="function-name">{fourier}</span>
+ <span class="font-latex-warning">\\</span>?fonte
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="function-name">{amsmath}</span>
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">newcommand</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">Mathbold}</span>[1]{<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">mbox</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">boldmath</span><span class="function-name"><span class="font-latex-math">$#1$</span></span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">unboldmath}</span>}
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">begin</span><span class="function-name">{document}</span>
@@ -1622,7 +1861,7 @@ newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex
"
newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe de}\\atop{{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> "+nomf+"(x)}}$</span> etex);"+
if(member(mini,FF)==0){if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}else{"
"}}else{"nonDefBarre;"}+
if(product(L[s](Z[0]-0.01),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+
if(member(Z[0],FF)==0){"valBarre(btex 0 etex);"}else{ "nonDefBarre;"}+
@@ -1630,8 +1869,8 @@ newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex
if(product(L[s](Z[nz-1]+0.01),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+
if(member(maxi,FF)==0){if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
valBarre(btex 0 etex);"}else{" "}}else{"nonDefBarre;"}+"
-<span class="flyspell-duplicate">endTableau</span>;
-<span class="flyspell-duplicate">end</span>"
+endTableau;
+end"
;
@@ -1639,7 +1878,7 @@ newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex
MetaLfc:="
beginTableau("+nmr+")
-newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> <span class="flyspell-duplicate">etex</span>);
+newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex);
"+l0+
li
+
@@ -1647,14 +1886,14 @@ newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> <spa
newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe de}\\atop{{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> "+nomf+"(x)}}$</span> etex);"+
if(member(mini,FF)==0){if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
valBarre(btex 0 etex);"}else{"
- "}}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}+
+ "}}else{"nonDefBarre;"}+
if(product(L[s](Z[0]-0.01),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+
if(member(Z[0],FF)==0){"valBarre(btex 0 etex);"}else{ "nonDefBarre;"}+
lr+
if(product(L[s](Z[nz-1]+0.01),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+
if(member(maxi,FF)==0){if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){"
valBarre(btex 0 etex);"}else{" "}}else{"nonDefBarre;"}+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
"
@@ -1665,14 +1904,14 @@ newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> <spa
sortie:=fopen("XCasmpfc.mp");
-<span class="flyspell-duplicate">fprint</span>(sortie,Unquoted,MetaLfc);
+fprint(sortie,Unquoted,MetaLfc);
fclose(sortie);
-return(<span class="flyspell-duplicate">MetaL</span>);
+return(MetaL);
}:;
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -1687,17 +1926,17 @@ return(<span class="flyspell-duplicate">MetaL</span>);
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSign.cxx}
-<span class="flyspell-duplicate">TSa</span>(a,b,c,d,nmr):={
-<span class="flyspell-duplicate">zA</span>:=resoudre(a*x+b=0,x)[0];
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=?&#167;&#163;]{XcasTabSign.cxx}
+TSa(a,b,c,d,nmr):={
+zA:=resoudre(a*x+b=0,x)[0];
zB:=resoudre(c*x+d=0,x)[0];
zmin:=min(zA,zB);
-zmax:=max(zA,<span class="flyspell-duplicate">zB</span>);
+zmax:=max(zA,zB);
Meta:= " input tableauVariation;
- <span class="flyspell-duplicate">verbatimtex</span>
+ verbatimtex
<span class="comment-delimiter">%</span><span class="comment">&amp;latex
</span> <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">documentclass</span><span class="function-name">{article}</span>
- <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="variable-name">[upright]</span><span class="function-name">{fourier}</span>
+ <span class="font-latex-warning">\\</span>?fonte
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="function-name">{amsmath}</span>
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">newcommand</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">Mathbold}</span>[1]{<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">mbox</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">boldmath</span><span class="function-name"><span class="font-latex-math">$#1$</span></span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">unboldmath}</span>}
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">begin</span><span class="function-name">{document}</span>
@@ -1706,12 +1945,12 @@ zmax:=max(zA,<span class="flyspell-duplicate">zB</span>);
newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex);
val(btex <span class="font-latex-math">$-\\infty$</span> etex);val(btex <span class="font-latex-math">$"+latex(zmin)+"$</span> etex);
val(btex <span class="font-latex-math">$"+latex(zmax)+"$</span>etex);
-val(btex <span class="font-latex-math">$+\\infty$</span> <span class="flyspell-duplicate">etex</span>);
+val(btex <span class="font-latex-math">$+\\infty$</span> etex);
newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe de }\\atop{\\displaystyle \\Mathbold{"+if(a==1){"x+"}else{if(a==-1){"-x+"}else{a+"x+"}}+b+"}}$</span> etex);"
+ if(a&gt;0){"moins;"}else{"plus;"}+
if(zmin==zA){"valBarre(btex 0 etex);"}else{"barre;"}+
if(zmin==zA){si a&gt;0 alors "plus;"; sinon "moins;";fsi}
- else{si a&gt;0 alors "moins;"; sinon "plus;"; <span class="flyspell-duplicate">fsi</span>}+
+ else{si a&gt;0 alors "moins;"; sinon "plus;"; fsi}+
if(zmin==zA){"barre;"}else{"valBarre(btex 0 etex);"}+
if(a&gt;0){"plus;"}else{"moins;"}
+"
@@ -1720,20 +1959,20 @@ newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="f
if(zmin==zB){"valBarre(btex 0 etex);"}else{"barre;"}+
if(zmin==zB){si c&gt;0 alors "plus;"; sinon "moins;";fsi}
else{si c&gt;0 alors "moins;"; sinon "plus;"; fsi}+
- if(zmin==zB){"barre;"}else{"valBarre(btex 0 <span class="flyspell-duplicate">etex</span>);"}+
+ if(zmin==zB){"barre;"}else{"valBarre(btex 0 etex);"}+
if(c&gt;0){"plus;"}else{"moins;"}
+"
newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe de }\\atop{\\displaystyle \\Mathbold{("+if(a==1){"x+"}else{if(a==-1){"-x+"}else{a+"x+"}}+b+")("+if(c==1){"x+"}else{if(c==-1){"-x+"}else{c+"x+"}}+d+")}}$</span> etex);"
- + si a*c&gt;0 alors plus; sinon moins;<span class="flyspell-duplicate">fsi</span>+";"+
+ + si a*c&gt;0 alors plus; sinon moins;fsi+";"+
"valBarre(btex 0 etex);"+
- si a*c&gt;0 alors moins; sinon plus;<span class="flyspell-duplicate">fsi</span>+";"+
+ si a*c&gt;0 alors moins; sinon plus;fsi+";"+
"valBarre(btex 0 etex);"+
si a*c&gt;0 alors plus; sinon moins;fsi+";"+"
endTableau;
-<span class="flyspell-duplicate">end</span>"
+end"
;
-return(<span class="flyspell-duplicate">Meta</span>);
+return(Meta);
}:;
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -1749,8 +1988,8 @@ return(<span class="flyspell-duplicate">Meta</span>);
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{<span class="flyspell-duplicate">XcasTSc</span>.cxx}
-<span class="flyspell-duplicate">TSc</span>(g,D,nmr):={
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=?&#167;&#163;]{XcasTSc.cxx}
+TSc(g,D,nmr):={
f:=unapply(g,x);
Z:=NULL;
mini:=D[0]; maxi:=D[1];lm:=" ";
@@ -1761,13 +2000,13 @@ li:=if(mini!=-infinity and f(mini)==0){"
valBarre(btex 0 etex);"}else{"
"}+
if(mini!=-infinity or maxi!=+infinity){if(f((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"}}else{if(f(0)&gt;0){"plus;"}else{"moins;"}};
-<span class="flyspell-duplicate">lf</span>:=if(maxi!=+infinity and f(maxi)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+lf:=if(maxi!=+infinity and f(maxi)==0){"
+ valBarre(btex 0 etex);"}else{"
"};
}
else{pour j de 0 jusque size(S)-1 faire
if(S[j]&gt;mini and S[j]&lt;maxi){Z:=Z,simplifier(S[j])};
- <span class="flyspell-duplicate">fpour</span>;
+ fpour;
Z:=sort(Z);
@@ -1775,7 +2014,7 @@ nz:=size(Z);
if(nz&gt;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;
fsi;
-<span class="flyspell-duplicate">fpour</span>;}
+fpour;}
nz:=size(Z);
@@ -1785,15 +2024,15 @@ li:=if(mini!=-infinity and f(mini)==0){"
valBarre(btex 0 etex);"}else{"
"}+
if(f((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"};
-<span class="flyspell-duplicate">lf</span>:=if(maxi!=+infinity and f(maxi)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+lf:=if(maxi!=+infinity and f(maxi)==0){"
+ valBarre(btex 0 etex);"}else{"
"};
}else{
l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);";li:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex);
";
-<span class="flyspell-duplicate">fpour</span>;
+fpour;
l0:=l0+"val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);";
li:= if(mini!=-infinity and f(mini)==0){"
@@ -1802,43 +2041,43 @@ li:= if(mini!=-infinity and f(mini)==0){"
if(f(Z[0]-0.01)&gt;0){"plus;"}else{"moins;"}+"valBarre(btex 0 etex);";
lm:=if(nz&gt;=2){for(r:=0; r&lt;=nz-2;r++){lm:=lm+if(f((Z[r]+Z[r+1])*.5)&gt;0){"plus;"}else{"moins;"}+
- "valBarre(btex 0 <span class="flyspell-duplicate">etex</span>);"
+ "valBarre(btex 0 etex);"
}}else{" "};
-<span class="flyspell-duplicate">lf</span>:=if(f(Z[nz-1]+1.0)&gt;0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi)==0){"valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+lf:=if(f(Z[nz-1]+1.0)&gt;0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi)==0){"valBarre(btex 0 etex);"}else{"
"};
}};
-<span class="flyspell-duplicate">MetaL</span>:=" input tableauVariation;
+MetaL:=" input tableauVariation;
verbatimtex
<span class="comment-delimiter">%</span><span class="comment">&amp;latex
</span> <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">documentclass</span><span class="function-name">{article}</span>
- <span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="variable-name">[upright]</span><span class="function-name">{fourier}</span>
+ <span class="font-latex-warning">\\</span>?fonte
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">usepackage</span><span class="function-name">{amsmath}</span>
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">newcommand</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">Mathbold}</span>[1]{<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">mbox</span><span class="function-name">{</span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">boldmath</span><span class="function-name"><span class="font-latex-math">$#1$</span></span><span class="function-name"><span class="font-latex-warning">\\</span></span><span class="function-name">unboldmath}</span>}
<span class="font-latex-warning">\</span><span class="keyword"><span class="font-latex-warning">\</span></span><span class="keyword">begin</span><span class="function-name">{document}</span>
etex;
beginTableau("+nmr+")
-<span class="flyspell-duplicate">newLigneVariables</span>(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex);
+newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex);
"+l0+"
-<span class="flyspell-duplicate">newLigneSignes</span>(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(f(x))+"}}$</span> etex);"+
+newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(f(x))+"}}$</span> etex);"+
li+lm+lf
+"
endTableau;
-<span class="flyspell-duplicate">end</span>"
+end"
;
MetaLfc:="
-<span class="flyspell-duplicate">beginTableau</span>("+nmr+")
-newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> <span class="flyspell-duplicate">etex</span>);
+beginTableau("+nmr+")
+newLigneVariables(btex <span class="font-latex-math">$\\Mathbold{x}$</span> etex);
"+l0+"
newLigneSignes(btex <span class="font-latex-math">$\\hbox{\</span><span class="font-latex-bold"><span class="font-latex-math">\bf</span></span><span class="font-latex-math"> Signe de }\\atop{\\displaystyle \\Mathbold{"+latex(f(x))+"}}$</span> etex);"+
li+lm+lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
"
;
@@ -1865,7 +2104,7 @@ return(MetaL);
<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">traitement des fichiers produits par giac/</span><span class="comment"><span class="flyspell-duplicate">xcas</span></span><span class="comment">
+</span><span class="comment-delimiter">%% </span><span class="comment">traitement des fichiers produits par giac/xcas
</span><span class="comment-delimiter">%%</span><span class="comment">
</span><span class="comment-delimiter">%%</span><span class="comment">
</span>
@@ -1879,19 +2118,19 @@ return(MetaL);
</span> <span class="comment">% exporter le source mp
</span> <span class="comment">% puis lancer metapost pour cr&#233;er
</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 &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab.<span class="flyspell-duplicate">mp</span>}
+</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 &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}
<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost -interaction=batchmode -jobname=<span class="font-latex-sedate">\Tableaux</span>.Tab XCasmp#1}}<span class="comment">%
</span> {<span class="comment">% sinon, si le tableau est absent, alerte.
</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">%
</span> <span class="font-latex-sedate">\PackageError</span>{tablor}{Tableau absent non
reconstituable.}{Pour compiler il faut, soit les fichiers de
tableaux, soit le fichier <span class="font-latex-sedate">\Tableaux</span>.Tab.mp, soit disposer de
- <span class="flyspell-duplicate">XCas</span>.}}}
+ 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">\end</span></span><span class="function-name">{center}</span>
-<span class="font-latex-sedate">\stepcounter</span>{<span class="flyspell-duplicate">TVn</span>}}
+<span class="font-latex-sedate">\stepcounter</span>{TVn}}
<span class="comment-delimiter">%%</span><span class="comment">
@@ -1904,14 +2143,14 @@ return(MetaL);
<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">\dressetoile</span></span><span class="function-name">}</span>[1]{<span class="comment">%
</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> <span class="flyspell-duplicate">TSav</span>-<span class="font-latex-sedate">\theTVn</span>.mp &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}}
+</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 &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}}
<span class="comment-delimiter">% </span><span class="comment">Si non, lancement des op&#233;rations 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'&#233;diteur choisi
</span>
-<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cp</span> -f XCasmpfc.mp <span class="flyspell-duplicate">TSav</span>-<span class="font-latex-sedate">\theTVn</span>.mp} <span class="comment">% Sauvegarde du
+<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cp</span> -f 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&#233;rieure 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> XCasmpfc.mp &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}} <span class="comment">% Inclusion du
@@ -1928,7 +2167,7 @@ return(MetaL);
<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">\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 </span><span class="comment"><span class="flyspell-duplicate">TVn</span></span><span class="comment">
+<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
</span>}
@@ -1941,7 +2180,7 @@ return(MetaL);
</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&#233;cuter la commande rentr&#233;e dans le fichier </span><span class="comment"><span class="flyspell-duplicate">tex</span></span><span class="comment">
+</span><span class="comment-delimiter">%%% </span><span class="comment">les "giac" qui permettent d'ex&#233;cuter la commande rentr&#233;e 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 &#233;toil&#233;es permettent de modifier le code metapost produit initialement
</span><span class="comment-delimiter">%%%</span><span class="comment">
@@ -1950,21 +2189,21 @@ return(MetaL);
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCas.giac}
-<span class="flyspell-duplicate">maple</span>_mode(0);
+maple_mode(0);
read("XcasTabSign.cxx");
-Sortie:=fopen("XCasmp.<span class="flyspell-duplicate">mp</span>");
+Sortie:=fopen("XCasmp.mp");
vect.xcas.user := read("XCas.user");
-<span class="flyspell-duplicate">vxo</span> := vect.xcas.user;
+vxo := vect.xcas.user;
dim.vxo := dim(vxo);
-<span class="flyspell-duplicate">nbr</span>.line.vxo := dim.vxo;
+nbr.line.vxo := dim.vxo;
Resultat:=cat(" ");
-<span class="flyspell-duplicate">rslt</span> := vxo[0]; RslT:=cat(rslt);
+rslt := vxo[0]; RslT:=cat(rslt);
Resultat:=cat(Resultat,RslT);
-<span class="flyspell-duplicate">fprint</span>(Sortie,Unquoted,Resultat);
+fprint(Sortie,Unquoted,Resultat);
fclose(Sortie);
<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">{</span><span class="function-name"><span class="flyspell-duplicate">TSa</span></span><span class="function-name">}</span>
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TSa}</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>&#163;&#181;]{XCas.user}}
{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
<span class="font-latex-sedate">\dresse</span>{}
@@ -1980,48 +2219,48 @@ fclose(Sortie);
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasQ.giac}
maple_mode(0);
-<span class="flyspell-duplicate">read</span>("XcasTabSignQ.cxx");
+read("XcasTabSignQ.cxx");
Sortie:=fopen("XCasmpQ.mp");
-<span class="flyspell-duplicate">vect</span>.xcas.user := read("XCasQ.user");
-<span class="flyspell-duplicate">vxo</span> := vect.xcas.user;
-<span class="flyspell-duplicate">dim</span>.vxo := dim(vxo);
+vect.xcas.user := read("XCasQ.user");
+vxo := vect.xcas.user;
+dim.vxo := dim(vxo);
nbr.line.vxo := dim.vxo;
-<span class="flyspell-duplicate">Resultat</span>:=cat(" ");
+Resultat:=cat(" ");
rslt := vxo[0]; RslT:=cat(rslt);
-<span class="flyspell-duplicate">Resultat</span>:=cat(Resultat,RslT);
+Resultat:=cat(Resultat,RslT);
fprint(Sortie,Unquoted,Resultat);
-<span class="flyspell-duplicate">fclose</span>(Sortie);
+fclose(Sortie);
<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">{</span><span class="function-name"><span class="flyspell-duplicate">TSq</span></span><span class="function-name">}</span><span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TSq}</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>&#163;&#181;]{XCasQ.user}}
{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dresse</span>{Q}}
-<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TSq</span></span><span class="function-name">*}</span>[1]<span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TSq*}</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">{</span><span class="variable-name"><span class="flyspell-duplicate">TVn</span></span><span class="variable-name">}{#1}</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>&#163;&#181;]{XCasQ.user}}
{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{Q}}
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasL.giac}
maple_mode(0);
-<span class="flyspell-duplicate">read</span>("XcasTabSignL.cxx");
+read("XcasTabSignL.cxx");
Sortie:=fopen("XCasmpL.mp");
-<span class="flyspell-duplicate">vect</span>.xcas.user := read("XCasL.user");
+vect.xcas.user := read("XCasL.user");
vxo := vect.xcas.user;
-<span class="flyspell-duplicate">dim</span>.vxo := dim(vxo);
-<span class="flyspell-duplicate">nbr</span>.line.vxo := dim.vxo;
-<span class="flyspell-duplicate">Resultat</span>:=cat(" ");
+dim.vxo := dim(vxo);
+nbr.line.vxo := dim.vxo;
+Resultat:=cat(" ");
rslt := vxo[0]; RslT:=cat(rslt);
-<span class="flyspell-duplicate">Resultat</span>:=cat(Resultat,RslT);
+Resultat:=cat(Resultat,RslT);
fprint(Sortie,Unquoted,Resultat);
-<span class="flyspell-duplicate">fclose</span>(Sortie);
+fclose(Sortie);
<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">{</span><span class="function-name"><span class="flyspell-duplicate">TS</span></span><span class="function-name">}</span><span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TS}</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>&#163;&#181;]{XCasL.user}}
{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dresse</span>{L}}
@@ -2034,60 +2273,99 @@ fprint(Sortie,Unquoted,Resultat);
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTSc.giac}
-<span class="flyspell-duplicate">maple</span>_mode(0);
+maple_mode(0);
read("XcasTSc.cxx");
Sortie:=fopen("XCasmpTSc.mp");
vect.xcas.user := read("XCasTSc.user");
-<span class="flyspell-duplicate">vxo</span> := vect.xcas.user;
+vxo := vect.xcas.user;
dim.vxo := dim(vxo);
-<span class="flyspell-duplicate">nbr</span>.line.vxo := dim.vxo;
+nbr.line.vxo := dim.vxo;
Resultat:=cat(" ");
-<span class="flyspell-duplicate">rslt</span> := vxo[0]; RslT:=cat(rslt);
+rslt := vxo[0]; RslT:=cat(rslt);
Resultat:=cat(Resultat,RslT);
-<span class="flyspell-duplicate">fprint</span>(Sortie,Unquoted,Resultat);
+fprint(Sortie,Unquoted,Resultat);
fclose(Sortie);
<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">{</span><span class="function-name"><span class="flyspell-duplicate">TSc</span></span><span class="function-name">*}</span>[1]<span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TSc*}</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">{</span><span class="variable-name"><span class="flyspell-duplicate">TVn</span></span><span class="variable-name">}{#1}</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>&#163;&#181;]{XCasTSc.user}}
-{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TSc</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>{TSc}}
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TSc}</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>&#163;&#181;]{XCasTSc.user}}
-{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dresse</span>{<span class="flyspell-duplicate">TSc</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>{TSc}}
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTV.giac}
-<span class="flyspell-duplicate">maple</span>_mode(0);
+maple_mode(0);
read("XcasTV.cxx");
Sortie:=fopen("XCasmpTV.mp");
-<span class="flyspell-duplicate">vect</span>.xcas.user := read("XCasTV.user");
-<span class="flyspell-duplicate">vxo</span> := vect.xcas.user;
+vect.xcas.user := read("XCasTV.user");
+vxo := vect.xcas.user;
dim.vxo := dim(vxo);
-<span class="flyspell-duplicate">nbr</span>.line.vxo := dim.vxo;
+nbr.line.vxo := dim.vxo;
Resultat:=cat(" ");
-<span class="flyspell-duplicate">rslt</span> := vxo[0]; RslT:=cat(rslt);
+rslt := vxo[0]; RslT:=cat(rslt);
Resultat:=cat(Resultat,RslT);
-<span class="flyspell-duplicate">fprint</span>(Sortie,Unquoted,Resultat);
+fprint(Sortie,Unquoted,Resultat);
fclose(Sortie);
<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">{TV}</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>&#163;&#181;]{XCasTV.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>{<span class="flyspell-duplicate">TV</span>}}
+<span class="font-latex-sedate">\dresse</span>{TV}}
-<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TV</span></span><span class="function-name">*}</span>[1]{<span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TV*}</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">{</span><span class="variable-name"><span class="flyspell-duplicate">TVn</span></span><span class="variable-name">}{#1}</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>&#163;&#181;]{XCasTV.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>{<span class="flyspell-duplicate">TV</span>}}
+</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>{TV}}
+
+
+
+
+
+
+
+
+
+
+
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTVZ.giac}
+maple_mode(0);
+read("XcasTVZ.cxx");
+Sortie:=fopen("XCasmpTVZ.mp");
+vect.xcas.user := read("XCasTVZ.user");
+vxo := vect.xcas.user;
+dim.vxo := dim(vxo);
+nbr.line.vxo := dim.vxo;
+Resultat:=cat(" ");
+rslt := vxo[0]; RslT:=cat(rslt);
+Resultat:=cat(Resultat,RslT);
+fprint(Sortie,Unquoted,Resultat);
+fclose(Sortie);
+<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">{TVZ}</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>&#163;&#181;]{XCasTVZ.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>{TVZ}}
+
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVZ*}</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>&#163;&#181;]{XCasTVZ.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>{TVZ}}
+
+
+
@@ -2097,16 +2375,16 @@ fclose(Sortie);
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTVapp.giac}
maple_mode(0);
-<span class="flyspell-duplicate">read</span>("XcasTVapp.cxx");
+read("XcasTVapp.cxx");
Sortie:=fopen("XCasmpTVapp.mp");
vect.xcas.user := read("XCasTVapp.user");
-<span class="flyspell-duplicate">vxo</span> := vect.xcas.user;
+vxo := vect.xcas.user;
dim.vxo := dim(vxo);
nbr.line.vxo := dim.vxo;
Resultat:=cat(" ");
-<span class="flyspell-duplicate">rslt</span> := vxo[0]; RslT:=cat(rslt);
+rslt := vxo[0]; RslT:=cat(rslt);
Resultat:=cat(Resultat,RslT);
-<span class="flyspell-duplicate">fprint</span>(Sortie,Unquoted,Resultat);
+fprint(Sortie,Unquoted,Resultat);
fclose(Sortie);
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -2117,9 +2395,9 @@ fclose(Sortie);
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVapp*}</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">{</span><span class="variable-name"><span class="flyspell-duplicate">TVn</span></span><span class="variable-name">}{#1}</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>&#163;&#181;]{XCasTVapp.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>{<span class="flyspell-duplicate">TVapp</span>}}
+</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>{TVapp}}
@@ -2136,13 +2414,13 @@ maple_mode(0);
read("XcasTVI.cxx");
Sortie:=fopen("XCasmpTVI.mp");
vect.xcas.user := read("XCasTVI.user");
-<span class="flyspell-duplicate">vxo</span> := vect.xcas.user;
+vxo := vect.xcas.user;
dim.vxo := dim(vxo);
nbr.line.vxo := dim.vxo;
Resultat:=cat(" ");
-<span class="flyspell-duplicate">rslt</span> := vxo[0]; RslT:=cat(rslt);
+rslt := vxo[0]; RslT:=cat(rslt);
Resultat:=cat(Resultat,RslT);
-<span class="flyspell-duplicate">fprint</span>(Sortie,Unquoted,Resultat);
+fprint(Sortie,Unquoted,Resultat);
fclose(Sortie);
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -2153,9 +2431,9 @@ fclose(Sortie);
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVI*}</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">{</span><span class="variable-name"><span class="flyspell-duplicate">TVn</span></span><span class="variable-name">}{#1}</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>&#163;&#181;]{XCasTVI.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>{<span class="flyspell-duplicate">TVI</span>}}
+</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>{TVI}}
@@ -2166,27 +2444,27 @@ fclose(Sortie);
maple_mode(0);
read("XcasTVIapp.cxx");
Sortie:=fopen("XCasmpTVIapp.mp");
-<span class="flyspell-duplicate">vect</span>.xcas.user := read("XCasTVIapp.user");
+vect.xcas.user := read("XCasTVIapp.user");
vxo := vect.xcas.user;
dim.vxo := dim(vxo);
nbr.line.vxo := dim.vxo;
Resultat:=cat(" ");
rslt := vxo[0]; RslT:=cat(rslt);
-<span class="flyspell-duplicate">Resultat</span>:=cat(Resultat,RslT);
+Resultat:=cat(Resultat,RslT);
fprint(Sortie,Unquoted,Resultat);
fclose(Sortie);
<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">{</span><span class="function-name"><span class="flyspell-duplicate">TVIapp</span></span><span class="function-name">}</span><span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVIapp}</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>&#163;&#181;]{XCasTVIapp.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>{TVIapp}}
-<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TVIapp</span></span><span class="function-name">*}</span>[1]<span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVIapp*}</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>&#163;&#181;]{XCasTVIapp.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>{<span class="flyspell-duplicate">TVIapp</span>}}
+</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>{TVIapp}}
@@ -2195,7 +2473,7 @@ fclose(Sortie);
<span class="comment-delimiter">%%</span><span class="comment">
-</span><span class="comment-delimiter">%% </span><span class="comment">Zi end -&gt; </span><span class="comment"><span class="flyspell-incorrect">enjoy</span></span><span class="comment"> :)
+</span><span class="comment-delimiter">%% </span><span class="comment">Zi end -&gt; enjoy :)
</span></pre>
</body>
</html>
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.pdf b/Master/texmf-dist/doc/latex/tablor/tablor.pdf
index f9eb59537b8..9da5fd2ad8f 100644
--- a/Master/texmf-dist/doc/latex/tablor/tablor.pdf
+++ b/Master/texmf-dist/doc/latex/tablor/tablor.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.tex b/Master/texmf-dist/doc/latex/tablor/tablor.tex
index 3678920eda9..7415079fefb 100644
--- a/Master/texmf-dist/doc/latex/tablor/tablor.tex
+++ b/Master/texmf-dist/doc/latex/tablor/tablor.tex
@@ -1,8 +1,15 @@
\documentclass[12pt]{article}
\usepackage[height=250mm,width=183mm]{geometry}
-\usepackage[upright]{fourier}
+
\usepackage{preambule}
-\usepackage[xcas]{tablor}
+\usepackage{lmodern}
+\usepackage{tablor}
+\usepackage{tocloft}
+%ajoute de l'espace entre le
+%numero de chapitre (chap) et le titre
+%dans la table des matieres
+
+\addtolength{\cftsecnumwidth}{2em}
\usepackage[dvips,colorlinks=true,linkcolor=orange]{hyperref}
@@ -25,7 +32,7 @@ keywordstyle =\color{0.2white}\usefont{OT1}{cmtt}{b}{n},basicstyle=\ttfamily,com
\author{Guillaume \textsc{Connan} \\ \href{http://gconnan.free.fr}{http://gconnan.free.fr}\\
avec l'efficace participation de Jean-Michel \textsc{Boucart}}
-\date{24 mars 2008 - Version 2.01}
+\date{12 mai 2008 - Version 2.03}
\begin{document}
@@ -110,7 +117,9 @@ pour installer une nouvelle extension \LaTeX{}.
qui ont \Prog{MiKTeX} sous \Prog{windows}, il suffit d'aller le chercher dans les dépôts. Pour les
utilisateurs de \Prog{Unix}, vous devez savoir comment faire... Par commodité, vous pouvez en
profiter pour installer la version \Prog{Unix} de \emph{MiKTeX package manager}. J'ai fait un
- petit script pour vous y aider ici : \href{http://gconnan.free.fr/?page=52}{http://gconnan.free.fr/?page=52}
+ petit script pour vous y aider ici :
+
+ \href{http://gconnan.free.fr/?page=52}{http://gconnan.free.fr/?page=52}
@@ -161,8 +170,8 @@ Le séparateur est le point virgule.
\begin{figure}
\begin{DANGER}
-Le fichier \texttt{tablor.sty} est codé en \texttt{latin-1}. Certains devront donc le convertir en
-\texttt{utf-8}.
+Le fichier \texttt{tablor.sty} est codé en \texttt{latin-1}. Les utilisateurs de
+\texttt{utf-8} devront donc utiliser \texttt{tablorutf8.sty} à la place.
\end{DANGER}
\end{figure}
@@ -183,21 +192,20 @@ Le préambule sera toujours~:
\documentclass{article}
\usepackage{graphicx}
\usepackage[french]{babel}
-\usepackage[upright]{fourier}
\usepackage[xcas]{tablor} % option modifiable
\end{lstlisting}
-\begin{figure}
- \begin{Idee}
- Les fontes utilisées dans les tableaux sont \verb+[upright]{fourier}+. Il est tout à
- fait possible d'utiliser d'autres fontes. Il suffit de modifier le fichier
- \texttt{tablor.sty} en remplaçant partout où il apparaît \verb+[upright]{fourier}+ par \verb+lmodern+ ou ce
- que vous voulez. Ce n'est pas très pratique, mais cela évite de le mettre en option à
- chaque utilisation et on utilise souvent la même fonte dans ses documents.
- \end{Idee}
- \end{figure}
+% \begin{figure}
+% \begin{Idee}
+% Les fontes utilisées dans les tableaux sont \verb+[upright]{fourier}+. Il est tout à
+% fait possible d'utiliser d'autres fontes. Il suffit de modifier le fichier
+% \texttt{tablor.sty} en remplaçant partout où il apparaît \verb+[upright]{fourier}+ par \verb+lmodern+ ou ce
+% que vous voulez. Ce n'est pas très pratique, mais cela évite de le mettre en option à
+% chaque utilisation et on utilise souvent la même fonte dans ses documents.
+% \end{Idee}
+% \end{figure}
@@ -213,7 +221,9 @@ On met \texttt{xcas} si l'on a installé \Prog{giac/XCAS} sur son
\subsection{Fichier \texttt{tablor.cfg}}
-Voici son contenu~:
+\subsubsection*{Contenu}
+
+{\small
\begin{Verbatim}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -237,17 +247,37 @@ Voici son contenu~:
% Laissez une espace avant de fermer l'accolade.
\newcommand{\editeur}{texmaker }
+
+
+% Déclaration des fontes utilisées
+% ================================
+%
+% Remplacez "[upright]{fourier}" par la fonte qui vous convient pour les maths
+% (lmodern, mathpazo, etc.)
+
+
+\newcommand{\fonte}{usepackage[upright]{fourier}}
+
+
\end{Verbatim}
+}
+
+
Vous le placerez dans la même arborescence que \texttt{tablor.sty} et le modifierez si besoin est.
+\subsubsection*{Éditeur}
L'éditeur sera appelé dans certains cas pour modifier
l'aspect des tableaux dans les fichiers sources \Prog{MetaPOST}. Il faudra choisir un éditeur
comme par exemple \texttt{emacs, xemacs, texmaker, vi, winshell, notepad, vim, kate, gedit,
textmate,texshop}, \texttt{kile}, etc. Voir aussi le paragraphe~\vref{modif}.
+\subsubsection*{Fontes}
+Les fontes utilisées par défaut sont celles de l'extension \texttt{fourier}. Pour en utiliser
+d'autres, remplacez «~[upright]{fourier}~» par la fonte qui vous convient pour les maths
+(lmodern, mathpazo, etc.)
\subsection{Initialisation de \texttt{tablor} et préfixe des tableaux}\label{prefix}
@@ -297,7 +327,6 @@ ou bien, selon les cas~:
\documentclass{article}
\usepackage{graphicx}
\usepackage[french]{babel}
-\usepackage[upright]{fourier}
\usepackage[xcas]{tablor} % options modifiables
\begin{document}
@@ -426,6 +455,34 @@ TV([-10,+infinity],[-1,1],"g","t",x^2/(x^2-1),1,\tv)
\end{enumerate}
+
+\subsection{Tableau de variation avec «~zone interdite~»}
+
+
+Pour certaines fonctions, tout un intervalle est exclu de l'ensemble de définition.
+
+Par exemple, la fonction $x\mapsto \sqrt{x^2-1}$ est définie sur $]-\infty\pv -1]\cup[1\pv
++\infty[$.
+
+On utilise alors l'environnement \texttt{TVZ} (Z comme zone...).
+
+
+\begin{lstlisting}
+\begin{TVZ}
+ TVZ([-infinity,+infinity],[],[-1,1],"f","x",sqrt(x^2-1),1,\tv)
+\end{TVZ}
+\end{lstlisting}
+
+
+\begin{center}
+ \begin{TVZ*}{2003}
+ TVZ([-infinity,+infinity],[],[-1,1],"f","x",sqrt(x^2-1),1,\tv)
+\end{TVZ*}
+\end{center}
+
+
+
+
\subsection{Tableau des variations avec théorème des valeurs intermédiaires}
Si l'on veut mettre en évidence les solutions de l'équation $f(x)=a$, on utilise l'environnement
@@ -964,7 +1021,25 @@ TSc((x-10)*(x+10),[-10,10],\tv)
\end{TSc}
+\begin{lstlisting}
+\begin{TVZ}
+ TVZ([-infinity,+infinity],[],[-1,1],"f","x",(sqrt(x^2-1))*(x^2-4),1,\tv)
+\end{TVZ}
+\end{lstlisting}
+
+ \begin{TVZ*}{2004}
+ TVZ([-infinity,+infinity],[],[-1,1],"f","x",(sqrt(x^2-1))*(x^2-4),1,\tv)
+ \end{TVZ*}
+
+ \begin{lstlisting}
+\begin{TVZ}
+ TVZ([-infinity,+infinity],[],[-1,1],"f","x",ln(x^2-1),1,\tv)
+\end{TVZ}
+ \end{lstlisting}
+ \begin{TVZ*}{2005}
+ TVZ([-infinity,+infinity],[],[-1,1],"f","x",ln(x^2-1),1,\tv)
+ \end{TVZ*}
diff --git a/Master/texmf-dist/tex/latex/tablor/tablor.cfg b/Master/texmf-dist/tex/latex/tablor/tablor.cfg
index a6e964edfb8..07aa2e6badb 100644
--- a/Master/texmf-dist/tex/latex/tablor/tablor.cfg
+++ b/Master/texmf-dist/tex/latex/tablor/tablor.cfg
@@ -24,3 +24,12 @@
\newcommand{\editeur}{texmaker }
+% Déclaration des fontes utilisées
+% ================================
+%
+% Remplacez "[upright]{fourier}" par la fonte qui vous convient pour les maths
+% (lmodern, mathpazo, etc.)
+
+
+\newcommand{\fonte}{usepackage[upright]{fourier}}
+
diff --git a/Master/texmf-dist/tex/latex/tablor/tablor.sty b/Master/texmf-dist/tex/latex/tablor/tablor.sty
index 4b5a9e57334..d42c65e07c4 100644
--- a/Master/texmf-dist/tex/latex/tablor/tablor.sty
+++ b/Master/texmf-dist/tex/latex/tablor/tablor.sty
@@ -1,6 +1,6 @@
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{tablor}[24/03/2008 v2.01 la machine à créer des tableaux de signes et variations]
+\ProvidesPackage{tablor}[24/03/2008 v2.03 la machine à créer des tableaux de signes et variations]
% \copyleft Connan le Barbare \copyright
% avec l'efficace participation de Jean-Michel Boucart
@@ -75,6 +75,7 @@
\newboolean{windows}\setboolean{windows}{false}
+
%% on configure tablor dans un fichier extérieur pour la plateforme
%% et l'éditeur
@@ -94,15 +95,16 @@
+
%% En-tête pour le fichier metapost contenant les codes
%% de tous les tableaux produits
- \begin{VerbatimOut}{tete.mp}
+ \begin{VerbatimOut}[commandchars=?§£]{tete.mp}
input tableauVariation;
verbatimtex
%&latex
\documentclass{article}
- \usepackage[upright]{fourier}
+ \\?fonte
\usepackage{amsmath}
\newcommand{\Mathbold}[1]{\mbox{\boldmath$#1$\unboldmath}}
\begin{document}
@@ -110,6 +112,8 @@
\end{VerbatimOut}
+
+
%% Nettoie les fichiers log dont le nom dépend du choix de l'utilisateur
%% Par défaut, c'est le nom du fichier tex courant (\jobname)
%% Clôt le fichier metapost contenant le récapitulatif de tous les tableaux
@@ -191,15 +195,12 @@
-
-
-
%%
%% Code giac/Xcas pour les Tableaux de Variations
%%
-\begin{VerbatimOut}{XcasTV.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTV.cxx}
TV(L,F,nom,nomv,f,ftt,nmr):={
nl:=size(L);
f:=unapply(f,x);
@@ -250,11 +251,13 @@ newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Math
if(k0==1){"1"}else{"0"}+
");";
- if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
+ if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;
lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
lp:=lp+if(member(Z[r],F)){
- "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+ "limGauche(btex
+ $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$
+ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex $"+latex(simplifier(f(Z[r])))+"$
etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
"}}}
@@ -270,7 +273,7 @@ intro:="input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -386,7 +389,249 @@ return(MetaL);
\end{VerbatimOut}
+%%
+%%
+%% TV avec une zone interdite : on rajoute comme argument l'intervalle interdit
+%% par exemple, pour sqrt(x^2-1) : TVZ([-infinity,100],[],[-1,1],"f","x",sqrt(x^2-1),1,1)
+%%
+
+\begin{VerbatimOut}[commandchars=?§£]{XcasTVZ.cxx}
+
+TVZ(L,F,FF,nom,nomv,f,ftt,nmr):={
+nl:=size(L);
+if(FF[0]>L[0]){Imin:=FF[0];LL:=L}else{Imin:=L[0];LL:=[L[1]]};
+if(FF[1]<L[1]){Imax:=FF[1];LL:=L}else{Imax:=L[1];LL:=[L[0]]};
+FF:=[Imin,Imax];
+f:=unapply(f,x);
+fp:=fonction_derivee(f);
+Z:=concat(LL,F);
+Z:=concat(Z,FF);
+S:=resoudre(fp(x),x);
+ si size(S)>0 alors pour j de 0 jusque size(S)-1 faire
+ kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
+ kK:=(evalf(S[j])<evalf(Imin)) or (evalf(S[j])>evalf(Imax));
+ Kk:=(kk) and kK;
+ if(Kk==1){Z:=append(Z,simplifier(S[j]))};
+ fpour
+ fsi;
+
+Z:=sort(Z);
+nz:=size(Z);
+
+
+ si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
+ fsi;
+pour u de 1 jusque nz-2 faire
+ si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
+ fsi;
+fpour;
+nz:=size(Z);
+for(k:=1;k<nz;k++){
+if ((Z[k]>Imin)and(Z[k]<Imax)){Z:=augment(Z[0..k-1],Z[k+1..nz-1]);nz:=nz-1;
+}
+}
+nz:=size(Z);
+
+l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
+";fpour;
+
+ k0:= evalf(limite(f(x),x=Z[0],1))> evalf(limite(f(x),x=Z[1],-1));
+ kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1));
+
+lsi:="
+newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$ etex);"+
+ if(Z[0]==Imin){"debutNonDef;"}else{if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
+ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
+ if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
+ if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}}
+
+if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))>0;
+ lsp:=lsp+if(Z[r]==Imin){"debutNonDef;"}else{
+ if(Z[r]==Imax){"finNonDef;"+
+ if(ksp==1){"plus;"}else{"moins;"}}else{
+ if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ if(ksp==1){"plus;"}else{"moins;"}
+ }}}};
+
+lsf:=if(Z[0]==Imax){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
+"}}
+lm0:=limite(f(x),x=Z[0],1)==-infinity;
+ li:="
+newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$ etex);"+
+ if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}
+ else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+
+ if(k0==1){"1"}else{"0"}+
+ ");";
+
+if(nz>2){
+ for(r:=1; r<=nz-2;r++){
+ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
+ krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;
+ lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ lp:=lp+if(Z[r]==Imin){"limGauche(btex $"+if(lmrm==1){
+ "-\\infty"}else{
+ latex(simplifier(limite(f(x),x=Z[r],-1)))}
+ +"$ etex,"+if(krm==1){
+ "1);"}else{"0);"}
+ +"debutNonDef;"
+ }//fsi Zr=Imin
+ else{
+ if (Z[r]==Imax) {"finNonDef;limDroite(btex $"+if(lmrp==1){
+ "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}
+ +"$ etex,"+if(krp==1){
+ "1);"}else{"0);"}
+ }
+ else {
+ if(member(Z[r],F)){
+ "limGauche(btex $"+if(lmrm==1){
+ "-\\infty"}else{
+ latex(simplifier(limite(f(x),x=Z[r],-1)))}
+ +"$ etex,"+if(krm==1){
+ "1);"}else{"0);"}
+ +"nonDefBarre;limDroite(btex $"+if(lmrp==1){
+ "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}
+ +"$ etex,"+if(krp==1){
+ "1);"}else{"0);"}
+ }//fsi (member Zr F)
+ else{"valPos(btex$"+latex(simplifier(f(Z[r])))+"$etex,"+
+ if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){
+ "0.5);"}else{
+ if(krp==1){
+ "1);"}else{"0);"}//felse(krp)
+ }//felse(valpos)
+ }//felse(member Zr F)
+ } //felse(Zr=Imax)
+ }//felse(Zr=Imin)
+ };//ffor
+ }//fsi nz
+
+lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
+ lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+
+ if(kz==1){"1);"}else{"0);
+"};
+
+
+intro:="input tableauVariation;
+ verbatimtex
+%&latex
+ \\documentclass{article}
+ \\?fonte
+ \\usepackage{amsmath}
+ \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
+ \\begin{document}
+ etex;
+
+"
+
+
+MetaL:=if(ftt==2){if(nz>2){intro+"beginTableau("+nmr+")"+
+ l0+lsi+lsp+lsf+"
+endTableau;
+end
+";}else{
+intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+"
+endTableau;
+end";
+}
+}else{ if(ftt==0){if(nz>2){intro+"beginTableau("+nmr+")"+
+ l0+
+li+
+lp+
+lf
++"
+endTableau;
+end";}else{intro+"beginTableau("+nmr+")"+
+ l0+
+li+
+lf
++"
+endTableau;
+end";}}else{
+if(nz>2){intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsp+lsf+
+li+
+lp+
+lf
++"
+endTableau;
+end";}else{intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+
+li+
+lf
++"
+endTableau;
+end";}
+}}
+
+
+
+MetaLfc:=if(ftt==2){if(nz>2){"
+
+beginTableau("+nmr+")"+
+ l0+lsi+lsp+lsf+"
+endTableau;
+
+";}else{
+intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+"
+endTableau;
+
+";
+}
+}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
+ l0+
+li+
+lp+
+lf
++"
+endTableau;
+
+";}else{"beginTableau("+nmr+")"+
+ l0+
+li+
+lf
++"
+endTableau;
+
+";}}else{
+if(nz>2){"beginTableau("+nmr+")"+
+ l0+
+lsi+lsp+lsf+
+li+
+lp+
+lf
++"
+endTableau;
+
+";}else{"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+
+li+
+lf
++"
+endTableau;
+
+";}
+}}
+
+
+sortie:=fopen("XCasmpfc.mp");
+fprint(sortie,Unquoted,MetaLfc);
+fclose(sortie);
+
+
+return(MetaL);
+ }
+:;
+
+\end{VerbatimOut}
%%
@@ -396,7 +641,7 @@ return(MetaL);
-\begin{VerbatimOut}{XcasTVapp.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTVapp.cxx}
@@ -493,7 +738,7 @@ intro:="input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -629,7 +874,7 @@ return(MetaL);
-\begin{VerbatimOut}{XcasTVI.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTVI.cxx}
TVI(L,F,nom,nomv,f,ftt,ao,nmr):={
@@ -769,7 +1014,7 @@ input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -898,7 +1143,7 @@ return(MetaL);
-\begin{VerbatimOut}{XcasTVIapp.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTVIapp.cxx}
TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={
@@ -1059,7 +1304,7 @@ input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1193,7 +1438,7 @@ return(MetaL);
-\begin{VerbatimOut}{XcasTabSignL.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTabSignL.cxx}
TS(L,D,nmr):={
@@ -1235,7 +1480,7 @@ MetaL:=" input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1310,7 +1555,7 @@ MetaL:=" input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1371,7 +1616,7 @@ return(MetaL);
-\begin{VerbatimOut}{XcasTabSignQ.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTabSignQ.cxx}
TSq(nomf,L,Fo,D,nmr):={
L:=apply(f->unapply(f,x),L);
Fo:=apply(f->unapply(f,x),Fo);
@@ -1436,7 +1681,7 @@ MetaL:=" input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1520,7 +1765,7 @@ MetaL:=" input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1598,7 +1843,7 @@ return(MetaL);
-\begin{VerbatimOut}{XcasTabSign.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTabSign.cxx}
TSa(a,b,c,d,nmr):={
zA:=resoudre(a*x+b=0,x)[0];
zB:=resoudre(c*x+d=0,x)[0];
@@ -1608,7 +1853,7 @@ zmax:=max(zA,zB);
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1660,7 +1905,7 @@ return(Meta);
-\begin{VerbatimOut}{XcasTSc.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTSc.cxx}
TSc(g,D,nmr):={
f:=unapply(g,x);
Z:=NULL;
@@ -1725,7 +1970,7 @@ MetaL:=" input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -2006,6 +2251,45 @@ fclose(Sortie);
+
+
+
+
+\begin{VerbatimOut}{XCasTVZ.giac}
+maple_mode(0);
+read("XcasTVZ.cxx");
+Sortie:=fopen("XCasmpTVZ.mp");
+vect.xcas.user := read("XCasTVZ.user");
+vxo := vect.xcas.user;
+dim.vxo := dim(vxo);
+nbr.line.vxo := dim.vxo;
+Resultat:=cat(" ");
+rslt := vxo[0]; RslT:=cat(rslt);
+Resultat:=cat(Resultat,RslT);
+fprint(Sortie,Unquoted,Resultat);
+fclose(Sortie);
+\end{VerbatimOut}
+
+\newenvironment{TVZ}%
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVZ.user}}%
+{\end{VerbatimOut}
+\dresse{TVZ}}
+
+\newenvironment{TVZ*}[1]{%
+\setcounter{TVnbis}{\theTVn}
+\setcounter{TVn}{#1}
+\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVZ.user}}%
+{\end{VerbatimOut}\dressetoile{TVZ}}
+
+
+
+
+
+
+
+
+
+
\begin{VerbatimOut}{XCasTVapp.giac}
maple_mode(0);
read("XcasTVapp.cxx");
diff --git a/Master/texmf-dist/tex/latex/tablor/tablorutf8.sty b/Master/texmf-dist/tex/latex/tablor/tablorutf8.sty
index c0ab9fe1e3c..d89eda8b40b 100644
--- a/Master/texmf-dist/tex/latex/tablor/tablorutf8.sty
+++ b/Master/texmf-dist/tex/latex/tablor/tablorutf8.sty
@@ -1,6 +1,6 @@
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{tablor}[24/03/2008 v2.01 la machine à créer des tableaux de signes et variations]
+\ProvidesPackage{tablor}[24/03/2008 v2.03 la machine à créer des tableaux de signes et variations]
% \copyleft Connan le Barbare \copyright
% avec l'efficace participation de Jean-Michel Boucart
@@ -75,6 +75,7 @@
\newboolean{windows}\setboolean{windows}{false}
+
%% on configure tablor dans un fichier extérieur pour la plateforme
%% et l'éditeur
@@ -94,15 +95,16 @@
+
%% En-tête pour le fichier metapost contenant les codes
%% de tous les tableaux produits
- \begin{VerbatimOut}{tete.mp}
+ \begin{VerbatimOut}[commandchars=?§£]{tete.mp}
input tableauVariation;
verbatimtex
%&latex
\documentclass{article}
- \usepackage[upright]{fourier}
+ \\?fonte
\usepackage{amsmath}
\newcommand{\Mathbold}[1]{\mbox{\boldmath$#1$\unboldmath}}
\begin{document}
@@ -110,6 +112,8 @@
\end{VerbatimOut}
+
+
%% Nettoie les fichiers log dont le nom dépend du choix de l'utilisateur
%% Par défaut, c'est le nom du fichier tex courant (\jobname)
%% Clôt le fichier metapost contenant le récapitulatif de tous les tableaux
@@ -191,15 +195,12 @@
-
-
-
%%
%% Code giac/Xcas pour les Tableaux de Variations
%%
-\begin{VerbatimOut}{XcasTV.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTV.cxx}
TV(L,F,nom,nomv,f,ftt,nmr):={
nl:=size(L);
f:=unapply(f,x);
@@ -250,11 +251,13 @@ newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Math
if(k0==1){"1"}else{"0"}+
");";
- if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
+ if(nz>2){ for(r:=1; r<=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;
lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
lp:=lp+if(member(Z[r],F)){
- "limGauche(btex $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
+ "limGauche(btex
+ $"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],-1)))}+"$
+ etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex $"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}+"$ etex,"+if(krp==1){"1);"}else{"0);"}}
else{"valPos(btex $"+latex(simplifier(f(Z[r])))+"$
etex,"+if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
"}}}
@@ -270,7 +273,7 @@ intro:="input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -386,7 +389,249 @@ return(MetaL);
\end{VerbatimOut}
+%%
+%%
+%% TV avec une zone interdite : on rajoute comme argument l'intervalle interdit
+%% par exemple, pour sqrt(x^2-1) : TVZ([-infinity,100],[],[-1,1],"f","x",sqrt(x^2-1),1,1)
+%%
+
+\begin{VerbatimOut}[commandchars=?§£]{XcasTVZ.cxx}
+
+TVZ(L,F,FF,nom,nomv,f,ftt,nmr):={
+nl:=size(L);
+if(FF[0]>L[0]){Imin:=FF[0];LL:=L}else{Imin:=L[0];LL:=[L[1]]};
+if(FF[1]<L[1]){Imax:=FF[1];LL:=L}else{Imax:=L[1];LL:=[L[0]]};
+FF:=[Imin,Imax];
+f:=unapply(f,x);
+fp:=fonction_derivee(f);
+Z:=concat(LL,F);
+Z:=concat(Z,FF);
+S:=resoudre(fp(x),x);
+ si size(S)>0 alors pour j de 0 jusque size(S)-1 faire
+ kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1]));
+ kK:=(evalf(S[j])<evalf(Imin)) or (evalf(S[j])>evalf(Imax));
+ Kk:=(kk) and kK;
+ if(Kk==1){Z:=append(Z,simplifier(S[j]))};
+ fpour
+ fsi;
+
+Z:=sort(Z);
+nz:=size(Z);
+
+
+ si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
+ fsi;
+pour u de 1 jusque nz-2 faire
+ si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
+ fsi;
+fpour;
+nz:=size(Z);
+for(k:=1;k<nz;k++){
+if ((Z[k]>Imin)and(Z[k]<Imax)){Z:=augment(Z[0..k-1],Z[k+1..nz-1]);nz:=nz-1;
+}
+}
+nz:=size(Z);
+
+l0:=" newLigneVariables(btex $"+nomv+"$ etex);";lp:=" "; lf:=" ";lsp:=" ";
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex);
+";fpour;
+
+ k0:= evalf(limite(f(x),x=Z[0],1))> evalf(limite(f(x),x=Z[1],-1));
+ kz:=evalf(limite(f(x),x=Z[nz-1],-1))> evalf(limite(f(x),x=Z[nz-2],1));
+
+lsi:="
+newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "+nom+"'("+nomv+")}$ etex);"+
+ if(Z[0]==Imin){"debutNonDef;"}else{if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
+ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+
+ if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
+ if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}}
+
+if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))>0;
+ lsp:=lsp+if(Z[r]==Imin){"debutNonDef;"}else{
+ if(Z[r]==Imax){"finNonDef;"+
+ if(ksp==1){"plus;"}else{"moins;"}}else{
+ if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ if(ksp==1){"plus;"}else{"moins;"}
+ }}}};
+
+lsf:=if(Z[0]==Imax){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
+"}}
+lm0:=limite(f(x),x=Z[0],1)==-infinity;
+ li:="
+newLigneVariations(btex $\\hbox{\\bf Variations de }\\atop{\\displaystyle \\Mathbold{"+nom+"}}$ etex);"+
+ if(member(Z[0],F)==0){"valPos(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}
+ else{"nonDefBarre;limDroite(btex $"+if(lm0==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[0],1)))}+"$ etex,"}+
+ if(k0==1){"1"}else{"0"}+
+ ");";
+
+if(nz>2){
+ for(r:=1; r<=nz-2;r++){
+ krm:=evalf(limite(f(x),x=Z[r-1],1))< evalf(limite(f(x),x=Z[r],-1));
+ krp:=evalf(limite(f(x),x=Z[r],1))> evalf(limite(f(x),x=Z[r+1],-1)) ;
+ lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ lp:=lp+if(Z[r]==Imin){"limGauche(btex $"+if(lmrm==1){
+ "-\\infty"}else{
+ latex(simplifier(limite(f(x),x=Z[r],-1)))}
+ +"$ etex,"+if(krm==1){
+ "1);"}else{"0);"}
+ +"debutNonDef;"
+ }//fsi Zr=Imin
+ else{
+ if (Z[r]==Imax) {"finNonDef;limDroite(btex $"+if(lmrp==1){
+ "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}
+ +"$ etex,"+if(krp==1){
+ "1);"}else{"0);"}
+ }
+ else {
+ if(member(Z[r],F)){
+ "limGauche(btex $"+if(lmrm==1){
+ "-\\infty"}else{
+ latex(simplifier(limite(f(x),x=Z[r],-1)))}
+ +"$ etex,"+if(krm==1){
+ "1);"}else{"0);"}
+ +"nonDefBarre;limDroite(btex $"+if(lmrp==1){
+ "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}
+ +"$ etex,"+if(krp==1){
+ "1);"}else{"0);"}
+ }//fsi (member Zr F)
+ else{"valPos(btex$"+latex(simplifier(f(Z[r])))+"$etex,"+
+ if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){
+ "0.5);"}else{
+ if(krp==1){
+ "1);"}else{"0);"}//felse(krp)
+ }//felse(valpos)
+ }//felse(member Zr F)
+ } //felse(Zr=Imax)
+ }//felse(Zr=Imin)
+ };//ffor
+ }//fsi nz
+
+lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
+ lf:=if(member(Z[nz-1],F)==0){"valPos(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}else{"nonDefBarre;limGauche(btex $"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$ etex,"}+
+ if(kz==1){"1);"}else{"0);
+"};
+
+
+intro:="input tableauVariation;
+ verbatimtex
+%&latex
+ \\documentclass{article}
+ \\?fonte
+ \\usepackage{amsmath}
+ \\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
+ \\begin{document}
+ etex;
+
+"
+
+
+MetaL:=if(ftt==2){if(nz>2){intro+"beginTableau("+nmr+")"+
+ l0+lsi+lsp+lsf+"
+endTableau;
+end
+";}else{
+intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+"
+endTableau;
+end";
+}
+}else{ if(ftt==0){if(nz>2){intro+"beginTableau("+nmr+")"+
+ l0+
+li+
+lp+
+lf
++"
+endTableau;
+end";}else{intro+"beginTableau("+nmr+")"+
+ l0+
+li+
+lf
++"
+endTableau;
+end";}}else{
+if(nz>2){intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsp+lsf+
+li+
+lp+
+lf
++"
+endTableau;
+end";}else{intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+
+li+
+lf
++"
+endTableau;
+end";}
+}}
+
+
+
+MetaLfc:=if(ftt==2){if(nz>2){"
+
+beginTableau("+nmr+")"+
+ l0+lsi+lsp+lsf+"
+endTableau;
+
+";}else{
+intro+"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+"
+endTableau;
+
+";
+}
+}else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+
+ l0+
+li+
+lp+
+lf
++"
+endTableau;
+
+";}else{"beginTableau("+nmr+")"+
+ l0+
+li+
+lf
++"
+endTableau;
+
+";}}else{
+if(nz>2){"beginTableau("+nmr+")"+
+ l0+
+lsi+lsp+lsf+
+li+
+lp+
+lf
++"
+endTableau;
+
+";}else{"beginTableau("+nmr+")"+
+ l0+
+lsi+lsf+
+li+
+lf
++"
+endTableau;
+
+";}
+}}
+
+
+sortie:=fopen("XCasmpfc.mp");
+fprint(sortie,Unquoted,MetaLfc);
+fclose(sortie);
+
+
+return(MetaL);
+ }
+:;
+
+\end{VerbatimOut}
%%
@@ -396,7 +641,7 @@ return(MetaL);
-\begin{VerbatimOut}{XcasTVapp.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTVapp.cxx}
@@ -493,7 +738,7 @@ intro:="input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -629,7 +874,7 @@ return(MetaL);
-\begin{VerbatimOut}{XcasTVI.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTVI.cxx}
TVI(L,F,nom,nomv,f,ftt,ao,nmr):={
@@ -769,7 +1014,7 @@ input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -898,7 +1143,7 @@ return(MetaL);
-\begin{VerbatimOut}{XcasTVIapp.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTVIapp.cxx}
TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={
@@ -1059,7 +1304,7 @@ input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1193,7 +1438,7 @@ return(MetaL);
-\begin{VerbatimOut}{XcasTabSignL.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTabSignL.cxx}
TS(L,D,nmr):={
@@ -1235,7 +1480,7 @@ MetaL:=" input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1310,7 +1555,7 @@ MetaL:=" input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1371,7 +1616,7 @@ return(MetaL);
-\begin{VerbatimOut}{XcasTabSignQ.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTabSignQ.cxx}
TSq(nomf,L,Fo,D,nmr):={
L:=apply(f->unapply(f,x),L);
Fo:=apply(f->unapply(f,x),Fo);
@@ -1436,7 +1681,7 @@ MetaL:=" input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1520,7 +1765,7 @@ MetaL:=" input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1598,7 +1843,7 @@ return(MetaL);
-\begin{VerbatimOut}{XcasTabSign.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTabSign.cxx}
TSa(a,b,c,d,nmr):={
zA:=resoudre(a*x+b=0,x)[0];
zB:=resoudre(c*x+d=0,x)[0];
@@ -1608,7 +1853,7 @@ zmax:=max(zA,zB);
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1660,7 +1905,7 @@ return(Meta);
-\begin{VerbatimOut}{XcasTSc.cxx}
+\begin{VerbatimOut}[commandchars=?§£]{XcasTSc.cxx}
TSc(g,D,nmr):={
f:=unapply(g,x);
Z:=NULL;
@@ -1725,7 +1970,7 @@ MetaL:=" input tableauVariation;
verbatimtex
%&latex
\\documentclass{article}
- \\usepackage[upright]{fourier}
+ \\?fonte
\\usepackage{amsmath}
\\newcommand{\\Mathbold}[1]{\\mbox{\\boldmath$#1$\\unboldmath}}
\\begin{document}
@@ -1876,7 +2121,7 @@ fclose(Sortie);
\end{VerbatimOut}
\newenvironment{TSa}
-{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCas.user}}
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCas.user}}
{\end{VerbatimOut}
\dresse{}
}
@@ -1905,7 +2150,7 @@ fclose(Sortie);
\end{VerbatimOut}
\newenvironment{TSq}%
-{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasQ.user}}
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasQ.user}}
{\end{VerbatimOut}\dresse{Q}}
@@ -1913,7 +2158,7 @@ fclose(Sortie);
\newenvironment{TSq*}[1]%
{\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
-\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasQ.user}}
+\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasQ.user}}
{\end{VerbatimOut}\dressetoile{Q}}
@@ -1933,14 +2178,14 @@ fclose(Sortie);
\end{VerbatimOut}
\newenvironment{TS}%
-{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasL.user}}
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasL.user}}
{\end{VerbatimOut}\dresse{L}}
\newenvironment{TS*}[1]
{\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
-\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasL.user}}
+\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasL.user}}
{\end{VerbatimOut}\dressetoile{L}}
@@ -1965,12 +2210,12 @@ fclose(Sortie);
\newenvironment{TSc*}[1]%
{\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
-\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTSc.user}}
+\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTSc.user}}
{\end{VerbatimOut}\dressetoile{TSc}}
\newenvironment{TSc}%
-{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTSc.user}}
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTSc.user}}
{\end{VerbatimOut}\dresse{TSc}}
@@ -1990,14 +2235,14 @@ fclose(Sortie);
\end{VerbatimOut}
\newenvironment{TV}%
-{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTV.user}}%
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTV.user}}%
{\end{VerbatimOut}
\dresse{TV}}
\newenvironment{TV*}[1]{%
\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
-\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTV.user}}%
+\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTV.user}}%
{\end{VerbatimOut}\dressetoile{TV}}
@@ -2006,6 +2251,45 @@ fclose(Sortie);
+
+
+
+
+\begin{VerbatimOut}{XCasTVZ.giac}
+maple_mode(0);
+read("XcasTVZ.cxx");
+Sortie:=fopen("XCasmpTVZ.mp");
+vect.xcas.user := read("XCasTVZ.user");
+vxo := vect.xcas.user;
+dim.vxo := dim(vxo);
+nbr.line.vxo := dim.vxo;
+Resultat:=cat(" ");
+rslt := vxo[0]; RslT:=cat(rslt);
+Resultat:=cat(Resultat,RslT);
+fprint(Sortie,Unquoted,Resultat);
+fclose(Sortie);
+\end{VerbatimOut}
+
+\newenvironment{TVZ}%
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVZ.user}}%
+{\end{VerbatimOut}
+\dresse{TVZ}}
+
+\newenvironment{TVZ*}[1]{%
+\setcounter{TVnbis}{\theTVn}
+\setcounter{TVn}{#1}
+\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVZ.user}}%
+{\end{VerbatimOut}\dressetoile{TVZ}}
+
+
+
+
+
+
+
+
+
+
\begin{VerbatimOut}{XCasTVapp.giac}
maple_mode(0);
read("XcasTVapp.cxx");
@@ -2022,14 +2306,14 @@ fclose(Sortie);
\end{VerbatimOut}
\newenvironment{TVapp}%
-{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTVapp.user}}%
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVapp.user}}%
{\end{VerbatimOut}
\dresse{TVapp}}
\newenvironment{TVapp*}[1]{%
\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
-\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTVapp.user}}%
+\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVapp.user}}%
{\end{VerbatimOut}\dressetoile{TVapp}}
@@ -2058,14 +2342,14 @@ fclose(Sortie);
\end{VerbatimOut}
\newenvironment{TVI}%
-{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTVI.user}}%
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVI.user}}%
{\end{VerbatimOut}\dresse{TVI}}
\newenvironment{TVI*}[1]%
{\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
-\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTVI.user}}%
+\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVI.user}}%
{\end{VerbatimOut}\dressetoile{TVI}}
@@ -2089,14 +2373,14 @@ fclose(Sortie);
\end{VerbatimOut}
\newenvironment{TVIapp}%
-{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTVIapp.user}}%
+{\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVIapp.user}}%
{\end{VerbatimOut}\dresse{TVIapp}}
\newenvironment{TVIapp*}[1]%
{\setcounter{TVnbis}{\theTVn}
\setcounter{TVn}{#1}
-\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\\#\~]{XCasTVIapp.user}}%
+\VerbatimEnvironment\begin{VerbatimOut}[commandchars=\\£µ]{XCasTVIapp.user}}%
{\end{VerbatimOut}\dressetoile{TVIapp}}