summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/tablor
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2008-02-05 01:35:55 +0000
committerKarl Berry <karl@freefriends.org>2008-02-05 01:35:55 +0000
commitf29c1c301f32796c6ebbab9bf6ed2f9ee5f2b475 (patch)
treeebfd74b66688ae1b68ec18129fc059614fe8eb04 /Master/texmf-dist/doc/latex/tablor
parentc1e42f121f4b2839a33c365bd3b8bd621747fdfb (diff)
tablor update (2feb08)
git-svn-id: svn://tug.org/texlive/trunk@6500 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/tablor')
-rw-r--r--Master/texmf-dist/doc/latex/tablor/tablor.html641
-rw-r--r--Master/texmf-dist/doc/latex/tablor/tablor.pdfbin156708 -> 205297 bytes
-rw-r--r--Master/texmf-dist/doc/latex/tablor/tablor.tex73
3 files changed, 448 insertions, 266 deletions
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.html b/Master/texmf-dist/doc/latex/tablor/tablor.html
index 3a8dd19054a..340911ae97f 100644
--- a/Master/texmf-dist/doc/latex/tablor/tablor.html
+++ b/Master/texmf-dist/doc/latex/tablor/tablor.html
@@ -84,13 +84,13 @@
<pre>
<span class="font-latex-sedate">\NeedsTeXFormat</span>{LaTeX2e}[1995/12/01]
-<span class="font-latex-sedate">\ProvidesPackage</span>{<span class="flyspell-incorrect">tablor</span>}
- [23/01/2008 v1.4
+<span class="font-latex-sedate">\ProvidesPackage</span>{tablor}
+ [02/02/2008 v1.5
la machine &#224; cr&#233;er des tableaux de signes et variations]
-<span class="comment-delimiter">%% </span><span class="comment">Cr&#233;e 5 environnements :
+<span class="comment-delimiter">%% </span><span class="comment">Cr&#233;e 10 environnements :
</span><span class="comment-delimiter">%% </span><span class="comment">tableau de signes de 2 facteurs affines
</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TSa}
</span><span class="comment-delimiter">% </span><span class="comment">TSa(-2,3,-1,5,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">);
@@ -116,9 +116,17 @@
</span><span class="comment-delimiter">%</span><span class="comment">TVI([-1,+infinity],[-1],"f","x",x2/sqrt(x+1)-1,1,2,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">)
</span><span class="comment-delimiter">%</span><span class="font-latex-sedate"><span class="comment">\end</span></span><span class="comment">{TVI}
</span><span class="comment-delimiter">%%%</span><span class="comment">
+</span><span class="comment-delimiter">%</span><span class="comment">
+</span><span class="comment-delimiter">% </span><span class="comment">et leurs pendants &#233;toil&#233;s qui permet l'affichage interm&#233;diaire du
+</span><span class="comment-delimiter">% </span><span class="comment">fichier metapost pour le modifier
+</span><span class="comment-delimiter">%</span><span class="comment">
+</span><span class="comment-delimiter">%</span><span class="comment">
+</span><span class="comment-delimiter">%</span><span class="comment">
+</span><span class="comment-delimiter">%</span><span class="comment">
</span>
+
<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\nettoyer</span></span><span class="function-name">}</span>{
<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{rm XCasmp.mp* XCasmp.log XCasmp?.mp* XCasmp?.log XCasmpTV.mp* XCasmpTV.log *.user XCasmpTVI.mp* XCasmpTVI.log
*.giac *.cxx *<span class="flyspell-incorrect">mpx</span>* *~}}
@@ -141,19 +149,19 @@
</span>
<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="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="flyspell-incorrect">giac</span> &lt;#1 } }
+<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>
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTV.cxx}
TV(L,F,nom,nomv,f,ftt,nmr):={
-nl:=size(L);
+<span class="flyspell-duplicate">nl</span>:=size(L);
f:=unapply(f,x);
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[<span class="flyspell-duplicate">nl</span>-1]));
+ 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]))};
fpour
fsi;
@@ -166,7 +174,7 @@ 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>;
-<span class="flyspell-duplicate">nz</span>:=size(Z);
+nz:=size(Z);
l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex);
";<span class="flyspell-duplicate">fpour</span>;
@@ -176,20 +184,21 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+
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;"}<span class="flyspell-duplicate">else</span>{"moins;"}}else{if(member(Z[0],F)==0){
- if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"+
+ if(Z[0]==-<span class="flyspell-duplicate">infinity</span>){if(<span class="flyspell-duplicate">sign</span>(<span class="flyspell-duplicate">evalf</span>(<span class="flyspell-duplicate">fp</span>(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){
+ if(<span class="flyspell-duplicate">fp</span>(Z[0])==0){"<span class="flyspell-duplicate">valBarre</span>(<span class="flyspell-duplicate">btex</span> 0 <span class="flyspell-duplicate">etex</span>);"}<span class="flyspell-duplicate">else</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{"nonDefBarre;"}+
+ lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"<span class="flyspell-duplicate">nonDefBarre</span>;"}+
if(ksp==1){"plus;"}else{"moins;"}
}; }
-<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;
+lm0:=limite(f(x),x=Z[0],1)==-<span class="flyspell-duplicate">infinity</span>;
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> <span class="flyspell-duplicate">etex</span>);"+
+<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);"+
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"}<span class="flyspell-duplicate">else</span>{"0"}+
@@ -197,21 +206,21 @@ newLigneVariations(btex <span class="font-latex-math">$\\hbox{\</span><span clas
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)==-<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);"}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);"}<span class="flyspell-duplicate">else</span>{"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);"}}
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);
"}}}
}; }
-lnz:=limite(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</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{"<span class="flyspell-duplicate">nonDefBarre</span>;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}+
+<span class="flyspell-duplicate">lnz</span>:=limite(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</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);"}<span class="flyspell-duplicate">else</span>{"0);
"};
-intro:="input <span class="flyspell-duplicate">tableauVariation</span>;
+<span class="flyspell-duplicate">intro</span>:="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>
@@ -224,112 +233,113 @@ intro:="input <span class="flyspell-duplicate">tableauVariation</span>;
"
-<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{
-intro+"beginTableau("+nmr+")"+
+<span class="flyspell-duplicate">intro</span>+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
-<span class="flyspell-duplicate">lsi</span>+lsf+"
+lsi+lsf+"
endTableau;
-end";
+<span class="flyspell-duplicate">end</span>";
}
-}<span class="flyspell-duplicate">else</span>{ if(ftt==0){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
+}else{ if(ftt==0){if(nz&gt;2){intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li+
lp+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
<span class="flyspell-duplicate">endTableau</span>;
-end";}else{intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+<span class="flyspell-duplicate">end</span>";}else{intro+"beginTableau("+nmr+")"+
l0+
li+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
<span class="flyspell-duplicate">endTableau</span>;
-end";}}else{
+<span class="flyspell-duplicate">end</span>";}}else{
if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+
-<span class="flyspell-duplicate">lsi</span>+lsp+lsf+
+lsi+lsp+lsf+
li+
-lp+
+<span class="flyspell-duplicate">lp</span>+
<span class="flyspell-duplicate">lf</span>
+"
endTableau;
-<span class="flyspell-duplicate">end</span>";}else{intro+"beginTableau("+nmr+")"+
+end";}else{intro+"beginTableau("+nmr+")"+
l0+
-lsi+lsf+
+<span class="flyspell-duplicate">lsi</span>+lsf+
li+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
<span class="flyspell-duplicate">end</span>";}
}}
-<span class="flyspell-duplicate">return</span>(<span class="flyspell-duplicate">MetaL</span>);
+return(<span class="flyspell-duplicate">MetaL</span>);
}:;
<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">\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>{XcasTVI.cxx}
<span class="flyspell-duplicate">TVI</span>(L,F,nom,nomv,f,ftt,ao,nmr):={
-nl:=size(L);
+<span class="flyspell-duplicate">nl</span>:=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[<span class="flyspell-duplicate">nl</span>-1]));
+ 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);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=<span class="flyspell-duplicate">nz</span>-1;
+<span class="flyspell-duplicate">nz</span>:=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;
fsi;
-fpour;
-<span class="flyspell-duplicate">nz</span>:=size(Z);
+<span class="flyspell-duplicate">fpour</span>;
+nz:=size(Z);
l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";<span class="flyspell-duplicate">lsp</span>:=" ";
LI:=limite(f(x),x,Z[0],1);
-<span class="flyspell-duplicate">LF</span>:=limite(f(x),x,Z[nz-1],-1);
+LF:=limite(f(x),x,Z[nz-1],-1);
<span class="flyspell-duplicate">LP</span>:=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>]};
-NL:=size(LL);
+<span class="flyspell-duplicate">NL</span>:=size(LL);
A:=NULL;aa:=1;<span class="flyspell-duplicate">kk</span>:=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(<span class="flyspell-duplicate">LL</span>[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);"}}
+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:=<span class="flyspell-duplicate">aa</span>+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>);"};
-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(<span class="flyspell-duplicate">LL</span>[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
+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]));
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:=<span class="flyspell-duplicate">kk</span>+1}}
+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>);
"};
-<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(<span class="flyspell-duplicate">LL</span>[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]-<span class="flyspell-duplicate">ao</span>))==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[<span class="flyspell-duplicate">nz</span>-2],1));
-<span class="flyspell-duplicate">lsi</span>:="
-<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>);"+
- 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){
+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]==-<span class="flyspell-duplicate">infinity</span>){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);"}<span class="flyspell-duplicate">else</span>{" "}+
if(sign(fp((Z[0]+10^(-10))))==1){"plus;"}else{"moins;"}}else{"<span class="flyspell-duplicate">nonDefBarre</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(<span class="flyspell-duplicate">fp</span>(10^(-10)+Z[0]))==1){"plus;"}else{"moins;"}}<span class="flyspell-duplicate">else</span>{" "};
@@ -337,16 +347,16 @@ l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> <span
-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]-<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]-<span class="flyspell-duplicate">ao</span>))==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> <span class="flyspell-duplicate">etex</span>);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
+ 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);
+<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]-<span class="flyspell-duplicate">ao</span>))==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{"<span class="flyspell-duplicate">nonDefBarre</span>;"}+
- if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex <span class="font-latex-math">$ $</span> etex);"+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{"<span class="flyspell-duplicate">nonDefBarre</span>;"}+
if(kspp==1){"plus;"}else{"moins;"};rr:=<span class="flyspell-duplicate">rr</span>+1;}
}}
@@ -357,57 +367,57 @@ if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=NL-2;r++){ TestS:=(sign(evalf(LL[r
<span class="flyspell-duplicate">lsf</span>:=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(<span class="flyspell-duplicate">LL</span>[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]-<span class="flyspell-duplicate">ao</span>))==0.0);
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);
-"+ 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> <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> <span class="flyspell-duplicate">etex</span>,"}+
+"+ 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(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)==-<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){"<span class="flyspell-duplicate">valPos</span>(<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){"<span class="flyspell-duplicate">valPos</span>(btex
<span class="font-latex-math">$ "+ao+" $</span> <span class="flyspell-duplicate">etex</span>,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[<span class="flyspell-duplicate">rr</span>],-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)) ;
- lmrm:=limite(f(x),x=Z[rr],-1)==-infinity;lmrp:=limite(f(x),x=Z[rr],1)==-<span class="flyspell-duplicate">infinity</span>; TestL:=(abs(LL[r])==abs(LL[r+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> <span class="flyspell-duplicate">etex</span>,0.5);
";rr:=rr+1;
-}// else <span class="flyspell-incorrect">testL</span>==1
+}// else testL==1
}//testS==0
-<span class="flyspell-duplicate">else</span>{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);"}<span class="flyspell-duplicate">else</span>{"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);"}}
+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);"}}
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);
- "}}};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 <span class="flyspell-duplicate">testS</span>==0
-}//for nz&lt;<span class="flyspell-duplicate">NL</span>
+}//for nz&lt;NL
}// else nz&lt;<span class="flyspell-duplicate">NL</span>
-//if nz=<span class="flyspell-duplicate">NL</span>
-};//if <span class="flyspell-duplicate">nz</span>&gt;2
+//if nz=NL
+};//if nz&gt;2
-<span class="flyspell-duplicate">lnz</span>:=limite(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</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{"<span class="flyspell-duplicate">nonDefBarre</span>;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}+
+<span class="flyspell-duplicate">lnz</span>:=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{"<span class="flyspell-duplicate">nonDefBarre</span>;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);"};
-<span class="flyspell-duplicate">intro</span>:="
+intro:="
input tableauVariation;
verbatimtex
<span class="comment-delimiter">%</span><span class="comment">&amp;latex
@@ -421,21 +431,21 @@ verbatimtex
";
-MetaL:= if(<span class="flyspell-duplicate">ftt</span>==2){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
- l0+lsi+lsp+<span class="flyspell-duplicate">lsf</span>+"
-<span class="flyspell-duplicate">endTableau</span>;
-<span class="flyspell-duplicate">end</span>";}<span class="flyspell-duplicate">else</span>{
-<span class="flyspell-duplicate">intro</span>+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+MetaL:= if(ftt==2){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
+ l0+lsi+lsp+lsf+"
+endTableau;
+<span class="flyspell-duplicate">end</span>";}else{
+intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
-lsi+<span class="flyspell-duplicate">lsf</span>+"
+lsi+lsf+"
endTableau;
<span class="flyspell-duplicate">end</span>";
}
-}<span class="flyspell-duplicate">else</span>{
+}else{
if(ftt==0){if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+
li+
-<span class="flyspell-duplicate">lp</span>+
+lp+
<span class="flyspell-duplicate">lf</span>
+"
<span class="flyspell-duplicate">endTableau</span>;
@@ -446,19 +456,19 @@ li+
+"
<span class="flyspell-duplicate">endTableau</span>;
end";}}else{
-if(nz&gt;2){intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+if(nz&gt;2){intro+"beginTableau("+nmr+")"+
l0+
-<span class="flyspell-duplicate">lsi</span>+lsp+<span class="flyspell-duplicate">lsf</span>+
+<span class="flyspell-duplicate">lsi</span>+lsp+lsf+
li+
<span class="flyspell-duplicate">lp</span>+
lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
-<span class="flyspell-duplicate">end</span>";}else{intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+endTableau;
+<span class="flyspell-duplicate">end</span>";}else{intro+"beginTableau("+nmr+")"+
l0+
-<span class="flyspell-duplicate">lsi</span>+<span class="flyspell-duplicate">lsf</span>+
+<span class="flyspell-duplicate">lsi</span>+lsf+
li+
-<span class="flyspell-duplicate">lf</span>
+lf
+"
<span class="flyspell-duplicate">endTableau</span>;
<span class="flyspell-duplicate">end</span>";}
@@ -480,10 +490,10 @@ return(<span class="flyspell-duplicate">MetaL</span>);
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSignL<span class="flyspell-duplicate">.cxx</span>}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{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;
@@ -494,31 +504,31 @@ pour k de 0 jusque n-1 faire
S:=resoudre(L[k](x),x);
si size(S)&gt;0 alors 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;
fsi;
<span class="flyspell-duplicate">fpour</span>;
Z:=sort(Z);
<span class="flyspell-duplicate">nz</span>:=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;
<span class="flyspell-duplicate">fpour</span>;};
-<span class="flyspell-duplicate">nz</span>:=size(Z);
+nz:=size(Z);
-if(<span class="flyspell-duplicate">nz</span>==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> 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(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]((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p](maxi)==0){"
- valBarre(btex 0 <span class="flyspell-duplicate">etex</span>);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
"}
}
lf:=if(product(L[s]((mini+maxi)*.5),s,0,n-1)&gt;0){"plus;"}else{"moins;"};
-MetaL:=" input <span class="flyspell-duplicate">tableauVariation</span>;
+MetaL:=" input tableauVariation;
<span class="flyspell-duplicate">verbatimtex</span>
<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>
@@ -526,20 +536,20 @@ MetaL:=" input <span class="flyspell-duplicate">tableauVariation</span>;
<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>
- <span class="flyspell-duplicate">beginTableau</span>("+nmr+")
-<span class="flyspell-duplicate">newLigneVariables</span>(btex <span class="font-latex-math">$\\Mathbold{x}$</span> <span class="flyspell-duplicate">etex</span>);
+ etex
+ beginTableau("+nmr+")
+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> <span class="flyspell-duplicate">etex</span>);"+
if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
- "}+ <span class="flyspell-duplicate">lf</span>+
+ 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>;
-<span class="flyspell-duplicate">end</span>"
+end"
;
}<span class="flyspell-duplicate">else</span>{
@@ -547,17 +557,17 @@ MetaL:=" input <span class="flyspell-duplicate">tableauVariation</span>;
-l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);";li:=" ";<span class="flyspell-duplicate">lr</span>:=" ";
-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>);
+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++){lp:="";
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> <span class="flyspell-duplicate">etex</span>);"+
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;"};
@@ -569,45 +579,45 @@ for(p:=0;p&lt;=n-1;p++){lp:="";
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](<span class="flyspell-duplicate">maxi</span>)==0){"
+ "}+if(maxi!=+infinity and L[p](maxi)==0){"
valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
"}
};
pour t de 0 jusque nz-2 faire
- lr:=lr+if(product(L[s]((Z[t]+Z[t+1])*.5),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+"valBarre(btex 0 <span class="flyspell-duplicate">etex</span>);"
+ lr:=lr+if(product(L[s]((Z[t]+Z[t+1])*.5),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+"valBarre(btex 0 etex);"
fpour
-<span class="flyspell-duplicate">MetaL</span>:=" input <span class="flyspell-duplicate">tableauVariation</span>;
- <span class="flyspell-duplicate">verbatimtex</span>
+MetaL:=" input <span class="flyspell-duplicate">tableauVariation</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><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+")
-<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> <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 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>{"
"}+
- 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>);"+
- <span class="flyspell-duplicate">lr</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);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}else{"
"}+"
<span class="flyspell-duplicate">endTableau</span>;
-<span class="flyspell-duplicate">end</span>"
+end"
;}
-<span class="flyspell-duplicate">return</span>(<span class="flyspell-duplicate">MetaL</span>);
+return(<span class="flyspell-duplicate">MetaL</span>);
}:;
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -620,15 +630,15 @@ pour t de 0 jusque nz-2 faire
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSignQ<span class="flyspell-duplicate">.cxx</span>}
-<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>{XcasTabSignQ.cxx}
+TSq(nomf,L,Fo,D,nmr):={
L:=apply(f-&gt;unapply(f,x),L);
-<span class="flyspell-duplicate">Fo</span>:=<span class="flyspell-duplicate">apply</span>(f-&gt;unapply(f,x),Fo);
+Fo:=apply(f-&gt;unapply(f,x),Fo);
L:=concat(L,Fo);
n:=size(L);
Z:=NULL;
-m:=size(<span class="flyspell-duplicate">Fo</span>);
-F:=<span class="flyspell-duplicate">NULL</span>;<span class="flyspell-duplicate">FF</span>:=NULL;
+m:=size(Fo);
+F:=NULL;FF:=NULL;
mini:=D[0]; maxi:=D[1];
@@ -636,7 +646,7 @@ pour k de 0 jusque n-1 faire
S:=resoudre(L[k](x),x);
si size(S)&gt;0 alors 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;
fsi;
<span class="flyspell-duplicate">fpour</span>;
@@ -646,14 +656,14 @@ pour k de 0 jusque m-1 faire
si size(SF)&gt;0 alors pour j de 0 jusque size(SF)-1 faire
FF:=FF,simplifier(SF[j]);
if(SF[j]&gt;mini and SF[j]&lt;maxi){F:=F,simplifier(SF[j]);}
- <span class="flyspell-duplicate">fpour</span>;
+ fpour;
fsi;
-<span class="flyspell-duplicate">fpour</span>;
+fpour;
Z:=sort(Z); // on classe les z&#233;ros dans l'ordre croissant
-<span class="flyspell-duplicate">nz</span>:=size(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:=nz-1; // pour les z&#233;ros en double
fsi;
@@ -661,64 +671,64 @@ if(nz&gt;2){pour u de 1 jusque nz-2 faire
Z:=sort(Z);
-<span class="flyspell-duplicate">nz</span>:=size(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;
fsi;
-<span class="flyspell-duplicate">fpour</span>;};
-<span class="flyspell-duplicate">nz</span>:=size(Z);
+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> 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]((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);"}<span class="flyspell-duplicate">else</span>{"
"}
}
lf:=if(product(L[s]((mini+maxi)*.5),s,0,n-1)&gt;0){"plus;"}else{"moins;"};
-<span class="flyspell-duplicate">MetaL</span>:=" input <span class="flyspell-duplicate">tableauVariation</span>;
- <span class="flyspell-duplicate">verbatimtex</span>
+MetaL:=" input <span class="flyspell-duplicate">tableauVariation</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><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">beginTableau</span>("+nmr+")
-<span class="flyspell-duplicate">newLigneVariables</span>(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+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> <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 }\\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);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}else{"
"}}else{"nonDefBarre;"}+ <span class="flyspell-duplicate">lf</span>+
if(member(maxi,FF)==0){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{"
"}}else{"nonDefBarre;"}+"
-<span class="flyspell-duplicate">endTableau</span>;
-<span class="flyspell-duplicate">end</span>"
+endTableau;
+end"
;
}<span class="flyspell-duplicate">else</span>{
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> <span class="flyspell-duplicate">etex</span>);
+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>);";
-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+"
-<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);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}else{"
"}+
if(L[p](Z[0]-0.01)&gt;0){"plus;"}else{"moins;"};
@@ -728,20 +738,20 @@ for(p:=0;p&lt;=n-1;p++){<span class="flyspell-duplicate">lp</span>:="";
"}+
if(L[p]((Z[r]+Z[r+1])*.5)&gt;0){"plus;"}else{"moins;"}};
- li:=li+lp+ if(simplifier(L[p](Z[<span class="flyspell-duplicate">nz</span>-1]))==0){"valBarre(btex 0 <span class="flyspell-duplicate">etex</span>);"}else{"barre;"}+
- if(L[p](Z[<span class="flyspell-duplicate">nz</span>-1]+1.0)&gt;0){"plus;"}<span class="flyspell-duplicate">else</span>{"moins;
- "}+if(maxi!=+infinity and L[p](<span class="flyspell-duplicate">maxi</span>)==0){"
- <span class="flyspell-duplicate">valBarre</span>(<span class="flyspell-duplicate">btex</span> 0 <span class="flyspell-duplicate">etex</span>);"}<span class="flyspell-duplicate">else</span>{" "}
+ 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);"}else{" "}
};
pour t de 0 jusque nz-2 faire
lr:=lr+if(product(L[s]((Z[t]+Z[t+1])*.5),s,0,n-1)&gt;0){"plus;"}else{"moins;"}+
- if(member(Z[t+1],<span class="flyspell-duplicate">FF</span>)==0){"valBarre(btex 0 etex);"}else{ "<span class="flyspell-duplicate">nonDefBarre</span>;"}
- <span class="flyspell-duplicate">fpour</span>
+ if(member(Z[t+1],FF)==0){"valBarre(btex 0 etex);"}else{ "<span class="flyspell-duplicate">nonDefBarre</span>;"}
+ fpour
-<span class="flyspell-duplicate">MetaL</span>:=" input <span class="flyspell-duplicate">tableauVariation</span>;
+MetaL:=" input tableauVariation;
<span class="flyspell-duplicate">verbatimtex</span>
<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>
@@ -749,39 +759,39 @@ pour t de 0 jusque nz-2 faire
<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>
- beginTableau("+<span class="flyspell-duplicate">nmr</span>+")
-<span class="flyspell-duplicate">newLigneVariables</span>(btex <span class="font-latex-math">$\\Mathbold{x}$</span> <span class="flyspell-duplicate">etex</span>);
+ etex
+ beginTableau("+nmr+")
+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> <span class="flyspell-duplicate">etex</span>);"+
- if(member(mini,<span class="flyspell-duplicate">FF</span>)==0){if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</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 }\\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{"<span class="flyspell-duplicate">nonDefBarre</span>;"}+
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{ "<span class="flyspell-duplicate">nonDefBarre</span>;"}+
- <span class="flyspell-duplicate">lr</span>+
+ 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,<span class="flyspell-duplicate">FF</span>)==0){if(<span class="flyspell-duplicate">maxi</span>!=+<span class="flyspell-duplicate">infinity</span> and product(L[s](maxi),s,0,n-1)==0){"
- <span class="flyspell-duplicate">valBarre</span>(btex 0 <span class="flyspell-duplicate">etex</span>);"}<span class="flyspell-duplicate">else</span>{" "}}<span class="flyspell-duplicate">else</span>{"<span class="flyspell-duplicate">nonDefBarre</span>;"}+"
+ 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>"
+end"
;}
-<span class="flyspell-duplicate">return</span>(<span class="flyspell-duplicate">MetaL</span>);
+return(<span class="flyspell-duplicate">MetaL</span>);
}:;
<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">\begin</span></span><span class="function-name">{VerbatimOut}</span>{<span class="flyspell-duplicate">XcasTabSign.cxx</span>}
-<span class="flyspell-duplicate">TSa</span>(a,b,c,d,<span class="flyspell-duplicate">nmr</span>):={
-<span class="flyspell-duplicate">zA</span>:=resoudre(a*x+b=0,x)[0];
-<span class="flyspell-duplicate">zB</span>:=resoudre(c*x+d=0,x)[0];
-<span class="flyspell-duplicate">zmin</span>:=min(zA,<span class="flyspell-duplicate">zB</span>);
-<span class="flyspell-duplicate">zmax</span>:=max(zA,<span class="flyspell-duplicate">zB</span>);
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSign.cxx}
+TSa(a,b,c,d,nmr):={
+zA:=resoudre(a*x+b=0,x)[0];
+zB:=resoudre(c*x+d=0,x)[0];
+<span class="flyspell-duplicate">zmin</span>:=min(zA,zB);
+zmax:=max(zA,zB);
Meta:= " input <span class="flyspell-duplicate">tableauVariation</span>;
- <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>
@@ -790,37 +800,37 @@ pour t de 0 jusque nz-2 faire
<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("+<span class="flyspell-duplicate">nmr</span>+")
- 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);
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;";<span class="flyspell-duplicate">fsi</span>}
- else{si a&gt;0 alors "moins;"; sinon "plus;"; <span class="flyspell-duplicate">fsi</span>}+
- if(zmin==zA){"barre;"}else{"valBarre(btex 0 <span class="flyspell-duplicate">etex</span>);"}+
+ if(zmin==zA){si a&gt;0 alors "plus;"; sinon "moins;";fsi}
+ 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;"}
+"
-<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{"+if(c==1){"x+"}else{if(c==-1){"-x+"}else{c+"x+"}}+d+"}}$</span> <span class="flyspell-duplicate">etex</span>);"
+<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{"+if(c==1){"x+"}else{if(c==-1){"-x+"}else{c+"x+"}}+d+"}}$</span> etex);"
+ if(c&gt;0){"moins"}else{"plus"}+";"+
if(zmin==zB){"valBarre(btex 0 etex);"}else{"barre;"}+
- if(zmin==zB){si c&gt;0 alors "plus;"; sinon "moins;";<span class="flyspell-duplicate">fsi</span>}
+ 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(c&gt;0){"plus;"}else{"moins;"}
+"
-<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{("+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);"
+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>+";"+
- "valBarre(btex 0 <span class="flyspell-duplicate">etex</span>);"+
- si a*c&gt;0 alors moins; sinon plus;<span class="flyspell-duplicate">fsi</span>+";"+
- "valBarre(btex 0 <span class="flyspell-duplicate">etex</span>);"+
+ "valBarre(btex 0 etex);"+
+ si a*c&gt;0 alors moins; sinon plus;fsi+";"+
+ "valBarre(btex 0 etex);"+
si a*c&gt;0 alors plus; sinon moins;fsi+";"+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
<span class="flyspell-duplicate">end</span>"
;
-<span class="flyspell-duplicate">return</span>(<span class="flyspell-duplicate">Meta</span>);
+return(<span class="flyspell-duplicate">Meta</span>);
}:;
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -838,27 +848,27 @@ val(btex <span class="font-latex-math">$+\\infty$</span> <span class="flyspell-d
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{<span class="flyspell-incorrect">XcasTSc</span>.<span class="flyspell-duplicate">cxx</span>}
-<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>{XcasTSc.cxx}
+TSc(g,D,nmr):={
f:=unapply(g,x);
Z:=NULL;
-mini:=D[0]; maxi:=D[1];<span class="flyspell-duplicate">lm</span>:=" ";
+mini:=D[0]; maxi:=D[1];lm:=" ";
S:=resoudre(f(x),x);
if(size(S)==0){
-li:=if(f(0)&gt;0){"plus;"}<span class="flyspell-duplicate">else</span>{"moins;"};
-<span class="flyspell-duplicate">lm</span>:=" ";<span class="flyspell-duplicate">lf</span>:=" ";
+li:=if(f(0)&gt;0){"plus;"}else{"moins;"};
+lm:=" ";lf:=" ";
}
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);
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;
-<span class="flyspell-duplicate">fpour</span>;}
+fpour;}
nz:=size(Z);
l0:=" ";li:=" ";lr:=" ";
if(nz==0){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);";
@@ -866,33 +876,33 @@ li:=if(mini!=-infinity and f(mini)==0){"
valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
"}+
if(f((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"};
-lf:=if(maxi!=+infinity and f(maxi)==0){"
- valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+lf:=if(maxi!=+infinity and f(<span class="flyspell-duplicate">maxi</span>)==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);
+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>;
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> <span class="flyspell-duplicate">etex</span>);";
+fpour;
+l0:=l0+"val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);";
li:= if(mini!=-infinity and f(mini)==0){"
- <span class="flyspell-duplicate">valBarre</span>(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+ valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
"}+
-if(f(Z[0]-0.01)&gt;0){"plus;"}<span class="flyspell-duplicate">else</span>{"moins;"}+if(simplifier(f(Z[0]))==0){"<span class="flyspell-duplicate">valBarre</span>(<span class="flyspell-duplicate">btex</span> 0 <span class="flyspell-duplicate">etex</span>);"}<span class="flyspell-duplicate">else</span>{"barre;"};
+if(f(Z[0]-0.01)&gt;0){"plus;"}else{"moins;"}+if(simplifier(f(Z[0]))==0){"valBarre(btex 0 etex);"}else{"barre;"};
-<span class="flyspell-duplicate">lm</span>:=if(<span class="flyspell-duplicate">nz</span>&gt;=2){for(r:=0; r&lt;=nz-2;r++){if(f((Z[r]+Z[r+1])*.5)&gt;0){"plus;"}else{"moins;"}+
+lm:=if(nz&gt;=2){for(r:=0; r&lt;=nz-2;r++){if(f((Z[r]+Z[r+1])*.5)&gt;0){"plus;"}else{"moins;"}+
if(simplifier(f(Z[r+1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}
}}<span class="flyspell-duplicate">else</span>{" "};
-<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{"
"};
}};
-MetaL:=" input <span class="flyspell-duplicate">tableauVariation</span>;
- <span class="flyspell-duplicate">verbatimtex</span>
+<span class="flyspell-duplicate">MetaL</span>:=" 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>
@@ -900,16 +910,16 @@ MetaL:=" input <span class="flyspell-duplicate">tableauVariation</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
-<span class="flyspell-duplicate">beginTableau</span>("+nmr+")
+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> <span class="flyspell-duplicate">etex</span>);"+
- li+<span class="flyspell-duplicate">lm</span>+lf
+<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> <span class="flyspell-duplicate">etex</span>);"+
+ li+lm+lf
+"
-<span class="flyspell-duplicate">endTableau</span>;
+endTableau;
end"
;
-return(<span class="flyspell-duplicate">MetaL</span>);
+<span class="flyspell-duplicate">return</span>(MetaL);
}:;
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -938,26 +948,26 @@ return(<span class="flyspell-duplicate">MetaL</span>);
<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);
<span class="flyspell-duplicate">read</span>("XcasTabSign.cxx");
Sortie:=fopen("XCasmp.mp");
-<span class="flyspell-duplicate">vect</span>.xcas.user := read("XCas.user");
+vect.xcas.user := read("XCas.user");
vxo := vect.xcas.user;
-<span class="flyspell-duplicate">dim</span>.vxo := dim(vxo);
-<span class="flyspell-duplicate">nbr</span>.line.vxo := dim.vxo;
+dim.vxo := dim(vxo);
+nbr.line.vxo := dim.vxo;
<span class="flyspell-duplicate">Resultat</span>:=cat(" ");
-rslt := vxo[0]; RslT:=cat(<span class="flyspell-duplicate">rslt</span>);
+rslt := vxo[0]; RslT:=cat(rslt);
<span class="flyspell-duplicate">Resultat</span>:=cat(Resultat,RslT);
-fprint(Sortie,Unquoted,Resultat);
-<span class="flyspell-duplicate">fclose</span>(Sortie);
+<span class="flyspell-duplicate">fprint</span>(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">\executGiacmp</span>{XCas.giac}
+ <span class="font-latex-sedate">\executGiacmp</span>{XCas.<span class="flyspell-duplicate">giac</span>}
- <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost <span class="flyspell-duplicate">XCasmp</span>}
+ <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost XCasmp}
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{center}</span>
<span class="font-latex-sedate">\includegraphics</span>{XCasmp.<span class="font-latex-sedate">\theTVn</span>}
@@ -966,27 +976,54 @@ fprint(Sortie,Unquoted,Resultat);
}
+
+
+
+
+
+
+
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasQ.giac}
-<span class="flyspell-duplicate">maple</span>_mode(0);
+maple_mode(0);
<span class="flyspell-duplicate">read</span>("XcasTabSignQ.cxx");
Sortie:=fopen("XCasmpQ.mp");
vect.xcas.user := read("XCasQ.user");
-<span class="flyspell-duplicate">vxo</span> := vect.xcas.user;
+vxo := vect.xcas.user;
dim.vxo := dim(vxo);
nbr.line.vxo := dim.vxo;
<span class="flyspell-duplicate">Resultat</span>:=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">{TSq}</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">\executGiacmp</span>{XCasQ.giac}
+ <span class="font-latex-sedate">\executGiacmp</span>{XCasQ.<span class="flyspell-duplicate">giac</span>}
+
+ <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost XCasmpQ}
+
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{center}</span>
+ <span class="font-latex-sedate">\includegraphics</span>{XCasmpQ.<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"><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="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">\executGiacmp</span>{XCasQ.<span class="flyspell-duplicate">giac</span>}
+
+
+
+
+<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{texmaker XCasmpQ.mp}
- <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost <span class="flyspell-duplicate">XCasmpQ</span>}
+ <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost XCasmpQ}
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{center}</span>
<span class="font-latex-sedate">\includegraphics</span>{XCasmpQ.<span class="font-latex-sedate">\theTVn</span>}
@@ -996,18 +1033,20 @@ fclose(Sortie);
+
+
<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");
-<span class="flyspell-duplicate">vxo</span> := vect.xcas.user;
+vxo := vect.xcas.user;
dim.vxo := dim(vxo);
nbr.line.vxo := dim.vxo;
-<span class="flyspell-duplicate">Resultat</span>:=cat(" ");
-<span class="flyspell-duplicate">rslt</span> := vxo[0]; RslT:=cat(rslt);
+Resultat:=cat(" ");
+rslt := vxo[0]; RslT:=cat(rslt);
<span class="flyspell-duplicate">Resultat</span>:=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>
@@ -1024,30 +1063,55 @@ fclose(Sortie);
<span class="font-latex-sedate">\stepcounter</span>{<span class="flyspell-duplicate">TVn</span>}
}
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{<span class="flyspell-duplicate">XCasTSc</span>.giac}
-<span class="flyspell-duplicate">maple</span>_mode(0);
-read("<span class="flyspell-duplicate">XcasTSc.cxx</span>");
-Sortie:=<span class="flyspell-duplicate">fopen</span>("<span class="flyspell-duplicate">XCasmpTSc</span>.<span class="flyspell-duplicate">mp</span>");
-<span class="flyspell-duplicate">vect</span>.xcas.user := read("<span class="flyspell-duplicate">XCasTSc</span>.user");
+
+
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TS*}</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">\executGiacmp</span>{XCasL.<span class="flyspell-duplicate">giac</span>}
+
+<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{texmaker XCasmpL.mp}
+
+ <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost XCasmpL}
+
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{center}</span>
+ <span class="font-latex-sedate">\includegraphics</span>{XCasmpL.<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"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTSc.giac}
+maple_mode(0);
+<span class="flyspell-duplicate">read</span>("XcasTSc.cxx");
+Sortie:=fopen("XCasmpTSc.mp");
+vect.xcas.user := read("XCasTSc.user");
vxo := vect.xcas.user;
-dim.vxo := dim(<span class="flyspell-duplicate">vxo</span>);
-<span class="flyspell-duplicate">nbr</span>.line.vxo := dim.<span class="flyspell-duplicate">vxo</span>;
-Resultat:=<span class="flyspell-duplicate">cat</span>(" ");
+dim.vxo := dim(vxo);
+nbr.line.vxo := dim.vxo;
+<span class="flyspell-duplicate">Resultat</span>:=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">TSc</span></span><span class="function-name">}</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>[<span class="flyspell-duplicate">commandchars</span>=<span class="font-latex-warning">\\</span>&#163;&#181;]{<span class="flyspell-incorrect">XCasTSc</span>.user}}
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TSc*}</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">\executGiacmp</span>{<span class="flyspell-duplicate">XCasTSc</span>.<span class="flyspell-duplicate">giac</span>}
+ <span class="font-latex-sedate">\executGiacmp</span>{XCasTSc.<span class="flyspell-duplicate">giac</span>}
- <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="flyspell-duplicate">mpost</span> <span class="flyspell-duplicate">XCasmpTSc</span>}
+<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="flyspell-duplicate">texmaker</span> XCasmpTSc.mp}
+
+
+ <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost XCasmpTSc}
<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="flyspell-duplicate">XCasmpTSc</span>.<span class="font-latex-sedate">\theTVn</span>}
+ <span class="font-latex-sedate">\includegraphics</span>{XCasmpTSc.<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>}
}
@@ -1057,19 +1121,38 @@ fclose(Sortie);
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TSc}</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">\executGiacmp</span>{XCasTSc.giac}
+
+ <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost XCasmpTSc}
+
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{center}</span>
+ <span class="font-latex-sedate">\includegraphics</span>{XCasmpTSc.<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>{TVn}
+}
+
+
+
+
+
+
+
<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");
vect.xcas.user := read("XCasTV.user");
vxo := vect.xcas.user;
-<span class="flyspell-duplicate">dim</span>.vxo := dim(vxo);
+dim.vxo := dim(vxo);
<span class="flyspell-duplicate">nbr</span>.line.vxo := dim.vxo;
Resultat:=cat(" ");
rslt := vxo[0]; RslT:=cat(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">{TV}</span><span class="comment">%
@@ -1086,17 +1169,33 @@ fprint(Sortie,Unquoted,Resultat);
+<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="comment">%
+</span> <span class="font-latex-sedate">\executGiacmp</span>{XCasTV.<span class="flyspell-duplicate">giac</span>}
+
+<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="flyspell-incorrect">texmaker</span> <span class="flyspell-duplicate">XCasmpTV</span>.<span class="flyspell-duplicate">mp</span>}
+
+ <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost XCasmpTV}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{center}</span>
+ <span class="font-latex-sedate">\includegraphics</span>{XCasmpTV.<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>{TVn}
+}
+
+
+
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTVI.giac}
<span class="flyspell-duplicate">maple</span>_mode(0);
-read("XcasTVI.<span class="flyspell-duplicate">cxx</span>");
+read("XcasTVI.cxx");
Sortie:=fopen("XCasmpTVI.mp");
-<span class="flyspell-duplicate">vect</span>.xcas.user := read("XCasTVI.user");
+vect.xcas.user := read("XCasTVI.user");
vxo := vect.xcas.user;
-dim.vxo := dim(vxo);
+<span class="flyspell-duplicate">dim</span>.vxo := dim(vxo);
<span class="flyspell-duplicate">nbr</span>.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>
@@ -1113,14 +1212,28 @@ fclose(Sortie);
<span class="font-latex-sedate">\stepcounter</span>{<span class="flyspell-duplicate">TVn</span>}
}
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVI*}</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;]{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="comment">%
+</span> <span class="font-latex-sedate">\executGiacmp</span>{XCasTVI.<span class="flyspell-duplicate">giac</span>}
+
+<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="flyspell-duplicate">texmaker</span> XCasmpTVI.mp}
+
+ <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost XCasmpTVI}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{center}</span>
+ <span class="font-latex-sedate">\includegraphics</span>{XCasmpTVI.<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="comment-delimiter">%%</span><span class="comment">
-</span><span class="comment-delimiter">%% </span><span class="comment">Zi end
+</span><span class="comment-delimiter">%% </span><span class="comment">Zi </span><span class="comment"><span class="flyspell-duplicate">end</span></span><span class="comment">
</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 42f6060520b..be728b7f5ae 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 34cb3be545c..c7f07278895 100644
--- a/Master/texmf-dist/doc/latex/tablor/tablor.tex
+++ b/Master/texmf-dist/doc/latex/tablor/tablor.tex
@@ -106,7 +106,10 @@ pour installer une nouvelle extension \LaTeX{}.
rajouter dans le préambule~:\\
\verb+\DeclareGraphicsRule{*}{mps}{*}{}+
-\item il faut installer le fichier \texttt{tablor.sty} dans son \texttt{texmf} personnel.
+\item il faut installer le fichier \texttt{tablor.sty} dans son \texttt{texmf} personnel.
+
+
+
\ez
@@ -511,6 +514,68 @@ On peut également stocker les tableaux dans un autre dossier
+
+\section{Comment modifier les tableaux à partir des fichiers MetaPOST~?}
+
+
+Il est impossible de prévoir toutes les requêtes des différents utilisateurs. Le style du tableau
+produit peut néanmoins vous déplaire. Vous pouvez le modifier en intervenant directement sur le
+fichier MetaPOST crée pour chaque tableau. Pour cela, il suffit d'ajouter une étoile au nom de
+l'environnement utilisé.
+
+Si vous tapez~:
+
+\begin{lstlisting}
+\begin{TV*}
+ TV([-1,+infinity],[],"f","x",x-ln(x+1),1,\tv)
+\end{TV*}
+\end{lstlisting}
+
+le logiciel \TeX maker est directement lancé et le fichier MetaPOST correspondant à votre tableau
+est affiché. Vous pouvez alors le modifier, taper sur \Ctrl + \keystroke{S} pour l'enregistrer et
+\Ctrl + \keystroke{Q} pour fermer \TeX maker. La compilation s'achève alors automatiquement comme
+pour un environnement non étoilé.
+
+
+
+\begin{figure}
+ \begin{Idee}
+ Le logiciel \TeX maker a été choisi car il est libre, multi-plateforme et très rapide
+ de chargement. Vous pouvez tout à fait changer d'éditeur en modifiant le fichier
+ \texttt{tablor.sty}~:~il suffit de remplacer chaque occurrence de \texttt{texmaker}
+ par le nom de votre éditeur.
+ \end{Idee}
+ \end{figure}
+
+
+Par exemple, je tape~:
+
+\begin{lstlisting}
+\begin{TS*}
+ TS([3*x+2,5*x^2-1],[-50,50],\tv)
+\end{TS*}
+\end{lstlisting}
+
+
+et apparaît une fenêtre \TeX maker avec le fichier correspondant au tableau. Je le modifie à
+volonté~:
+
+\begin{center}
+ \includegraphics{capture.eps}
+\end{center}
+
+
+Je tape sur \Ctrl + \keystroke{S} puis \Ctrl + \keystroke{Q} et la compilation reprend
+automatiquement pour m'afficher le tableau voulu~:
+
+
+\begin{center}
+ \begin{TS*}
+ TS([3*x+2,5*x^2-1],[-50,50],\tv)
+ \end{TS*}
+\end{center}
+
+
\section{Merci...}
\bez
@@ -726,7 +791,11 @@ TSc((x-10)*(x+10),[-10,10],\tv)
-\nettoyer
+\pagebreak
+
+\tableofcontents
+
+%\nettoyer