diff options
author | Karl Berry <karl@freefriends.org> | 2009-05-16 18:56:14 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-05-16 18:56:14 +0000 |
commit | 64af07dd2e1f98360294c12eab5db723fccb13b4 (patch) | |
tree | 5da6d64f8cc23f7d3b2a9f3d32e970abe8b7c728 | |
parent | 093e62dd5e34a8c932b37eeec419a37cae5560f0 (diff) |
tablor 4.04-g (14may09)
git-svn-id: svn://tug.org/texlive/trunk@13125 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/latex/tablor/tablor.html | 372 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty | 90 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/tablor/tablor.sty | 45 |
3 files changed, 255 insertions, 252 deletions
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.html b/Master/texmf-dist/doc/latex/tablor/tablor.html index 50dfc3084de..74c0c505ef4 100644 --- a/Master/texmf-dist/doc/latex/tablor/tablor.html +++ b/Master/texmf-dist/doc/latex/tablor/tablor.html @@ -87,7 +87,7 @@ <body> <pre> <span class="font-latex-sedate">\NeedsTeXFormat</span>{LaTeX2e}[1995/12/01] -<span class="font-latex-sedate">\ProvidesPackage</span>{<span class="flyspell-duplicate">tablor</span>}[19/04/2009 v4.04-d la machine a creer des tableaux de signes et variations] +<span class="font-latex-sedate">\ProvidesPackage</span>{tablor}[14/05/2009 v4.04-f la machine a creer des tableaux de signes et variations] <span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\copyleft</span></span><span class="comment"> Connan le Barbare (aka Guillaume Connan) </span><span class="font-latex-sedate"><span class="comment">\copyright</span></span><span class="comment"> </span><span class="comment-delimiter">% </span><span class="comment">This work may be distributed and/or mofified under the conditions @@ -132,7 +132,7 @@ </span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\end</span></span><span class="comment">{TVZ} </span><span class="comment-delimiter">%</span><span class="comment"> </span><span class="comment-delimiter">%</span><span class="comment"> -</span><span class="comment-delimiter">% </span><span class="comment">tableau avec valeurs </span><span class="comment"><span class="flyspell-duplicate">intermediares</span></span><span class="comment"> +</span><span class="comment-delimiter">% </span><span class="comment">tableau avec valeurs intermediares </span><span class="comment-delimiter">%</span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVI} </span><span class="comment-delimiter">%</span><span class="comment">TVI([-1,+infinity],[-1],"f","x",x2/sqrt(x+1)-1,1,2,n,</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} @@ -190,11 +190,11 @@ </span> <span class="font-latex-sedate">\RequirePackage</span>{filecontents} -<span class="font-latex-sedate">\RequirePackage</span>{<span class="flyspell-incorrect">ifthen</span>} +<span class="font-latex-sedate">\RequirePackage</span>{ifthen} <span class="font-latex-sedate">\RequirePackage</span>{fancyvrb} -<span class="font-latex-sedate">\RequirePackage</span>{ifpdf} +<span class="font-latex-sedate">\RequirePackage</span>{<span class="flyspell-duplicate">ifpdf</span>} -<span class="font-latex-sedate">\fvset</span>{gobble=0} +<span class="font-latex-sedate">\fvset</span>{<span class="flyspell-incorrect">gobble</span>=0} <span class="comment-delimiter">% </span><span class="comment">option xcas </span><span class="comment"><span class="flyspell-duplicate">present</span></span><span class="comment"> </span> @@ -208,21 +208,21 @@ -<span class="comment-delimiter">%% </span><span class="comment">Initialisation du choix </span><span class="comment"><span class="flyspell-incorrect">d'OS</span></span><span class="comment"> -</span><span class="font-latex-sedate">\newboolean</span>{windows}<span class="font-latex-sedate">\setboolean</span>{windows}{false} +<span class="comment-delimiter">%% </span><span class="comment">Initialisation du choix d'OS +</span><span class="font-latex-sedate">\newboolean</span>{windows}<span class="font-latex-sedate">\setboolean</span>{windows}{<span class="flyspell-duplicate">false</span>} <span class="comment-delimiter">%% </span><span class="comment">on configure tablor dans un fichier exterieur pour la plateforme -</span><span class="comment-delimiter">%% </span><span class="comment">et </span><span class="comment"><span class="flyspell-duplicate">l'editeur</span></span><span class="comment"> +</span><span class="comment-delimiter">%% </span><span class="comment">et l'editeur </span> -<span class="font-latex-sedate">\IfFileExists</span>{tablor.cfg}{<span class="font-latex-sedate"><span class="keyword">\input</span></span><span class="constant">{tablor.cfg}</span>}<span class="comment">%</span><span class="font-latex-sedate"><span class="comment">\typeout</span></span><span class="comment">{pas de fichier tablor.cfg}} +<span class="font-latex-sedate">\IfFileExists</span>{tablor.cfg}{<span class="font-latex-sedate"><span class="keyword">\input</span></span><span class="constant">{tablor.cfg}</span>}<span class="comment">%</span><span class="font-latex-sedate"><span class="comment">\typeout</span></span><span class="comment">{pas de fichier tablor.</span><span class="comment"><span class="flyspell-duplicate">cfg</span></span><span class="comment">}} </span> <span class="comment-delimiter">%% </span><span class="comment">Definit des commandes disque selon l'OS utilise -</span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{<span class="flyspell-duplicate">windows</span>}}<span class="comment">% +</span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{windows}}<span class="comment">% </span> {<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\rem</span></span><span class="function-name">}</span>{DEL } <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cat</span></span><span class="function-name">}</span>{TYPE } - <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cp</span></span><span class="function-name">}</span>{COPY }}<span class="comment">% + <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cp</span></span><span class="function-name">}</span>{<span class="flyspell-incorrect">COPY</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">\rem</span></span><span class="function-name">}</span>{rm }<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cat</span></span><span class="function-name">}</span>{cat } <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cp</span></span><span class="function-name">}</span>{<span class="flyspell-duplicate">cp</span> }} @@ -232,7 +232,7 @@ -<span class="comment-delimiter">%% </span><span class="comment">pour ceux compilant via </span><span class="comment"><span class="flyspell-incorrect">pdflatex</span></span><span class="comment"> +<span class="comment-delimiter">%% </span><span class="comment">pour ceux compilant via pdflatex </span> <span class="font-latex-sedate">\ifpdf</span> <span class="font-latex-sedate">\DeclareGraphicsRule</span>{*}{mps}{*}{} @@ -246,12 +246,12 @@ -<span class="comment-delimiter">%% </span><span class="comment">Pour clore les fichiers metapost +<span class="comment-delimiter">%% </span><span class="comment">Pour clore les fichiers </span><span class="comment"><span class="flyspell-duplicate">metapost</span></span><span class="comment"> </span> - <span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{queue.<span class="flyspell-duplicate">mp</span>} + <span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{queue.mp} - end + <span class="flyspell-duplicate">end</span> <span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span> @@ -264,7 +264,7 @@ <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\nettoyer</span></span><span class="function-name">}</span>[1][<span class="font-latex-sedate">\jobname</span>]<span class="comment">% -</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> #1.Tab.log queue.mp enteteMP.cfg session.tex config.cxx} +</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> #1.Tab.log queue.mp enteteMP.cfg session.tex config.<span class="flyspell-duplicate">cxx</span>} } @@ -286,7 +286,7 @@ <span class="comment-delimiter">%% </span><span class="comment">permet de donner un prefixe aux tableaux produits (</span><span class="font-latex-sedate"><span class="comment">\jobname</span></span><span class="comment"> par defaut) -</span><span class="comment-delimiter">%% </span><span class="comment">effectue quelques verifications : +</span><span class="comment-delimiter">%% </span><span class="comment">effectue quelques </span><span class="comment"><span class="flyspell-incorrect">verifications</span></span><span class="comment"> : </span> <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\initablor</span></span><span class="function-name">}</span>[1][<span class="font-latex-sedate">\jobname</span>]{<span class="comment">% @@ -294,16 +294,16 @@ </span><span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{0}</span><span class="comment">% Initialisation du compteur de tableaux. </span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{xcas}}<span class="comment">% Avec l'option XCas </span>{<span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\nomtravail</span>.Tab.mp}<span class="comment">% Si Tableaux.mp est present... -</span> {<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> <span class="font-latex-sedate">\nomtravail</span>.Tab.mp}}<span class="comment">% le detruire +</span> {<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> <span class="font-latex-sedate">\nomtravail</span>.Tab.mp}}<span class="comment">% le </span><span class="comment"><span class="flyspell-incorrect">detruire</span></span><span class="comment"> </span> {}<span class="comment">% -</span> <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cp</span> enteteMP.cfg <span class="font-latex-sedate">\nomtravail</span>.Tab.mp}<span class="comment">% Reconstituer l'entête de Tableaux.mp +</span> <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cp</span> enteteMP.cfg <span class="font-latex-sedate">\nomtravail</span>.Tab.mp}<span class="comment">% Reconstituer l'entête de Tableaux.</span><span class="comment"><span class="flyspell-duplicate">mp</span></span><span class="comment"> </span>} {<span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\nomtravail</span>.Tab.mp}<span class="comment">% Sans l'option XCas, si </span> <span class="comment">% Tableaux.mp existe </span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost -interaction=batchmode <span class="font-latex-sedate">\nomtravail</span>.Tab}}<span class="comment">% l'executer pour reconstituer les figures </span>{<span class="font-latex-sedate">\PackageWarning</span>{tablor}{Pas de source metapost pour creer les tableaux.}}<span class="comment">% sinon message d'erreur </span> <span class="comment">% (mais pas d'arret car les tableaux -</span> <span class="comment">% peuvent être presents ) +</span> <span class="comment">% peuvent être </span><span class="comment"><span class="flyspell-incorrect">presents</span></span><span class="comment"> ) </span>}}<span class="comment">% </span> @@ -313,7 +313,7 @@ <span class="font-latex-sedate">\makeatletter</span> <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\executGiacmp</span></span><span class="function-name">}</span>[1]{<span class="comment">% </span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{windows}}<span class="comment">% -</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{giac #1 }}<span class="comment">% +</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="flyspell-duplicate">giac</span> #1 }}<span class="comment">% </span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{giac <#1 }}} <span class="font-latex-sedate">\makeatother</span> @@ -335,22 +335,22 @@ </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,trigo,nmr):={ -nl:=size(L); +<span class="flyspell-duplicate">TV</span>(L,F,nom,nomv,f,ftt,trigo,nmr):={ +<span class="flyspell-duplicate">nl</span>:=size(L); f:=unapply(f,x); -fp:=function_diff(f); +<span class="flyspell-duplicate">fp</span>:=function_diff(f); Z:=concat(L,F); S:=[]; if(trigo==t){ -all_trig_solutions:=1; +<span class="flyspell-duplicate">all</span>_trig_solutions:=1; reset_solve_counter(-1,-1); SS:=solve(factor(simplify(fp(x))),x); ns:=size(SS); for(k:=0;k<ns;k++){ m:=0; -while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){ +<span class="flyspell-duplicate">while</span>(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){ S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1; };m:=-1; while(evalf(subst(SS[k],n_1=m))>=L[0]){ @@ -373,7 +373,7 @@ nz:=size(Z); tantque evalf(Z[0])==evalf(Z[1]) faire Z:=Z[1..nz-1];nz:=size(Z); - ftantque; + <span class="flyspell-duplicate">ftantque</span>; @@ -385,7 +385,7 @@ nz:=size(Z); kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1])); if(kk==1){Z:=append(Z,simplify(S[j]))}; fpour - fsi; + <span class="flyspell-duplicate">fsi</span>; Z:=sort([op(set[op(Z)])]); @@ -398,7 +398,7 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+ k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1)); kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); -lsi:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+ +<span class="flyspell-duplicate">lsi</span>:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+ if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ if(sign(fp(Z[0]+10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ @@ -411,7 +411,7 @@ if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.1))>0; lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre; "} -lm0:=limit(f(x),x=Z[0],1)==-infinity; +</span><span class="font-latex-math"><span class="flyspell-duplicate">lm</span></span><span class="font-latex-math">0:=limit(f(x),x=Z[0],1)==-infinity; li:=lvic+nom+"}$</span> etex);"+ if(member(Z[0],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$</span> etex,"} else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$</span> etex,"}+ @@ -430,7 +430,7 @@ lm0:=limit(f(x),x=Z[0],1)==-infinity; "}}} }; } -lnz:=limit(f(x),x=Z[nz-1],-1)==-infinity; +lnz:=limit(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>; @@ -438,24 +438,24 @@ lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+ if(kz==1){"1);"}else{"0);"}} else{"limGauche(btex <span class="font-latex-math">$"+ - if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+ + if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> <span class="flyspell-duplicate">etex</span>,"+ if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}}; -MetaLfc:=if(ftt==2){if(nz>2){" +<span class="flyspell-duplicate">MetaLfc</span>:=if(ftt==2){if(nz>2){" beginTableau("+nmr+")"+ l0+lsi+lsp+lsf+" -endTableau; +<span class="flyspell-duplicate">endTableau</span>; ";}else{ intro+"beginTableau("+nmr+")"+ l0+ lsi+lsf+" -endTableau; +<span class="flyspell-duplicate">endTableau</span>; "; } @@ -463,7 +463,7 @@ endTableau; l0+ li+ lp+ -lf +<span class="flyspell-duplicate">lf</span> +" endTableau; @@ -480,7 +480,7 @@ if(nz>2){"beginTableau("+nmr+")"+ lsi+lsp+lsf+ li+ lp+ -lf +<span class="flyspell-duplicate">lf</span> +" endTableau; @@ -490,13 +490,13 @@ lsi+lsf+ li+ lf +" -endTableau; +<span class="flyspell-duplicate">endTableau</span>; ";} }} -sortie:=fopen("XCasmpfc.mp"); +sortie:=<span class="flyspell-duplicate">fopen</span>("XCasmpfc.mp"); fprint(sortie,Unquoted,MetaLfc); fclose(sortie); @@ -685,7 +685,7 @@ endTableau; }} -sortie:=fopen("XCasmpfc.mp"); +sortie:=<span class="flyspell-duplicate">fopen</span>("XCasmpfc.mp"); fprint(sortie,Unquoted,MetaLfc); fclose(sortie); @@ -929,7 +929,7 @@ endTableau; }} -sortie:=fopen("XCasmpfc.mp"); +sortie:=<span class="flyspell-duplicate">fopen</span>("XCasmpfc.mp"); fprint(sortie,Unquoted,MetaLfc); fclose(sortie); @@ -969,7 +969,7 @@ nz:=size(z); -S:=op(fsolve(fp(x),x)); +S:=op(<span class="flyspell-duplicate">fsolve</span>(fp(x),x)); if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F; for k in j do for(m:=-5;m<=5;m++){S:=S,fsolve(fp(x),x,k+m*0.1,newton_solver)};end_for} else{if(L[0]==-infinity){j:=[seq(k,k=-100..floor(L[1]))] minus F; @@ -991,7 +991,7 @@ si size(S)>0 alors pour j de 0 jusque size(S)-1 faire kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])>=L[0]) and (evalf(S[j])<=L[1]); if(kk==1){if(kok==1){z:=append(z,simplify(S[j]))}}; fpour; -<span class="flyspell-duplicate">fsi</span>; +fsi; S:=NULL; @@ -1022,7 +1022,7 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+ k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1)); kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); -<span class="flyspell-duplicate">lsi</span>:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+ +lsi:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+ if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ if(sign(fp(Z[0]+10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ @@ -1033,7 +1033,7 @@ if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))>0; if(ksp==1){"plus;"}else{"moins;"} }; } -</span><span class="font-latex-math"><span class="flyspell-duplicate">lsf</span></span><span class="font-latex-math">:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre; +lsf:=if(member(Z[nz-1],F)==0){""}else{"nonDefBarre; "} lm0:=limit(f(x),x=Z[0],1)==-infinity; li:=lvic+nom+"}$</span> etex);"+ @@ -1052,15 +1052,15 @@ lm0:=limit(f(x),x=Z[0],1)==-infinity; "}}} }; } -lnz:=limit(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>; +lnz:=limit(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(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+ - if(kz==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}} + if(kz==1){"1);"}else{"0);"}} else{"limGauche(btex <span class="font-latex-math">$"+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+ - if(kz==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}}; + if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}}; @@ -1068,30 +1068,30 @@ MetaLfc:=if(ftt==2){if(nz>2){" beginTableau("+nmr+")"+ l0+lsi+lsp+lsf+" -<span class="flyspell-duplicate">endTableau</span>; +endTableau; ";}else{ intro+"beginTableau("+nmr+")"+ l0+ lsi+lsf+" -<span class="flyspell-duplicate">endTableau</span>; +endTableau; "; } }else{ if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+ l0+ li+ -<span class="flyspell-duplicate">lp</span>+ +lp+ lf +" endTableau; -";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+ +";}else{"beginTableau("+nmr+")"+ l0+ li+ lf +" -<span class="flyspell-duplicate">endTableau</span>; +endTableau; ";}}else{ if(nz>2){"beginTableau("+nmr+")"+ @@ -1099,17 +1099,17 @@ if(nz>2){"beginTableau("+nmr+")"+ lsi+lsp+lsf+ li+ lp+ -<span class="flyspell-duplicate">lf</span> +lf +" endTableau; ";}else{"beginTableau("+nmr+")"+ l0+ -<span class="flyspell-duplicate">lsi</span>+lsf+ +lsi+lsf+ li+ lf +" -<span class="flyspell-duplicate">endTableau</span>; +endTableau; ";} }} @@ -1117,7 +1117,7 @@ lf sortie:=fopen("XCasmpfc.mp"); fprint(sortie,Unquoted,MetaLfc); -<span class="flyspell-duplicate">fclose</span>(sortie); +fclose(sortie); }:; @@ -1138,14 +1138,14 @@ fprint(sortie,Unquoted,MetaLfc); <span class="comment-delimiter">%%</span><span class="comment"> </span><span class="comment-delimiter">%% </span><span class="comment">Code giac/Xcas pour les Tableaux de Variations avec -</span><span class="comment-delimiter">%% </span><span class="comment">Valeurs </span><span class="comment"><span class="flyspell-incorrect">intermediaires</span></span><span class="comment"> +</span><span class="comment-delimiter">%% </span><span class="comment">Valeurs intermediaires </span><span class="comment-delimiter">%%</span><span class="comment"> </span> -<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{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} TVI(L,F,nom,nomv,f,ftt,ao,trigo,nmr):={ @@ -1159,7 +1159,7 @@ S:=[]; if(trigo==t){ all_trig_solutions:=1; reset_solve_counter(-1,-1); -<span class="flyspell-duplicate">SS</span>:=solve(factor(simplify(fp(x))),x); +SS:=solve(factor(simplify(fp(x))),x); ns:=size(SS); for(k:=0;k<ns;k++){ m:=0; @@ -1175,7 +1175,7 @@ S:=solve(fp(x),x); } si size(S)>0 alors pour j de 0 jusque size(S)-1 faire - kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[<span class="flyspell-duplicate">nl</span>-1])); + kk:=(evalf(S[j])>=evalf(L[0])) and (evalf(S[j])<=evalf(L[nl-1])); if(kk==1){Z:=append(Z,simplify(S[j]))}; fpour fsi; @@ -1186,7 +1186,7 @@ Z:=sort([op(set[op(Z)])]); nz:=size(Z); -l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";<span class="flyspell-duplicate">lsp</span>:=" "; +l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" "; @@ -1203,7 +1203,7 @@ if(nz>2){ LL:=[LI,LP,LF]; PB:=[PB,1]}else{LL:=[LI,LF];PB:=[1,1]}; NL:=size(LL); A:=NULL;aa:=1; -<span class="flyspell-duplicate">kk</span>:=0; +kk:=0; @@ -1215,7 +1215,7 @@ if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(L if(PB[k]==1){if(TestS==0){ 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}}; +else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);";kk:=kk+1}}; } l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);" @@ -1223,7 +1223,7 @@ else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> et }; -TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-<span class="flyspell-duplicate">ao</span>))==0.0) or (evalf(sign(LL[1]-ao))==0.0); +TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0); k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1)); kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); @@ -1242,22 +1242,22 @@ if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(evalf(sign(LL[r 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> <span class="font-latex-math">$ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "}; }} -</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0); +else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0); - if(PB[r]==1){if(TestS==0){lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"</span><span class="font-latex-math"><span class="flyspell-duplicate">nonDefBarre</span></span><span class="font-latex-math">;"}+ + if(PB[r]==1){if(TestS==0){lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+ if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $</span> <span class="font-latex-math">$ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;} else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+ - if(kspp==1){"plus;"}else{"moins;"};rr:=</span><span class="font-latex-math"><span class="flyspell-duplicate">rr</span></span><span class="font-latex-math">+1;} + if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;} }}}}; - lsf:=if(member(Z[nz-1],F)==0){" "}else{"</span><span class="font-latex-math"><span class="flyspell-duplicate">nonDefBarre</span></span><span class="font-latex-math">;"} + lsf:=if(member(Z[nz-1],F)==0){" "}else{"nonDefBarre;"} -lm0:=limit(f(x),x=Z[0],1)==-</span><span class="font-latex-math"><span class="flyspell-duplicate">infinity</span></span><span class="font-latex-math">; +lm0:=limit(f(x),x=Z[0],1)==-infinity; @@ -1287,35 +1287,35 @@ TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))= lmrm:=limit(f(x),x=Z[rr],-1)==-infinity;lmrp:=limit(f(x),x=Z[rr],1)==-infinity; TestL:=(abs(LL[r])==abs(LL[r+1])); if(PB[r]==1){if(TestS==0){lp:=lp+if(member(Z[rr],F)){ - "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(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(simplify(limit(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}} + "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(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(simplify(limit(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}} else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[rr])))+"$</span> - etex,"+if(evalf(sign(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(evalf(sign(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex <span class="font-latex-math">$ "+ao+" $</span> etex,0.5); ";rr:=rr+1; }// testS==0 else{lp:=lp+if(member(Z[rr],F)){ "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(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(simplify(limit(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}} else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[rr])))+"$</span> - etex,"+if(evalf(sign(fp(Z[<span class="flyspell-duplicate">rr</span>]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0); + etex,"+if(evalf(sign(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0); "}}};rr:=rr+1; }//else testS==0 }//PB[r]==1 }//for nz<NL -}// else nz<<span class="flyspell-duplicate">NL</span> +}// else nz<NL //if nz=NL };//if nz>2 -lnz:=limit(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>; +lnz:=limit(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(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+ - if(kz==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}} + if(kz==1){"1);"}else{"0);"}} else{"limGauche(btex <span class="font-latex-math">$"+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+ - if(kz==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}}; + if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}}; @@ -1323,14 +1323,14 @@ lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+ -MetaLfc:= if(ftt==2){if(nz>2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+ +MetaLfc:= if(ftt==2){if(nz>2){"beginTableau("+nmr+")"+ l0+lsi+lsp+lsf+" endTableau; ";}else{ "beginTableau("+nmr+")"+ l0+ -<span class="flyspell-duplicate">lsi</span>+lsf+" +lsi+lsf+" endTableau; "; @@ -1342,12 +1342,12 @@ li+ lp+ lf +" -<span class="flyspell-duplicate">endTableau</span>; +endTableau; ";}else{"beginTableau("+nmr+")"+ l0+ li+ -<span class="flyspell-duplicate">lf</span> +lf +" endTableau; ";}}else{ @@ -1358,7 +1358,7 @@ li+ lp+ lf +" -<span class="flyspell-duplicate">endTableau</span>; +endTableau; ";}else{"beginTableau("+nmr+")"+ l0+ @@ -1366,7 +1366,7 @@ lsi+lsf+ li+ lf +" -<span class="flyspell-duplicate">endTableau</span>; +endTableau; ";} }}; @@ -1377,8 +1377,8 @@ lf -sortie:=fopen("XCasmpfc.mp"); -<span class="flyspell-duplicate">fprint</span>(sortie,Unquoted,MetaLfc); +sortie:=<span class="flyspell-duplicate">fopen</span>("XCasmpfc.mp"); +fprint(sortie,Unquoted,MetaLfc); fclose(sortie); @@ -1401,24 +1401,24 @@ fclose(sortie); </span><span class="comment-delimiter">%%%%%%%%%</span><span class="comment"> </span> -<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVIex.<span class="flyspell-duplicate">cxx</span>} +<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVIex.cxx} TVIex(L,F,nom,nomv,f,ftt,ao,trigo,nmr):={ nl:=size(L); f:=unapply(f,x); -<span class="flyspell-duplicate">fp</span>:=function_diff(f); +fp:=function_diff(f); Z:=concat(L,F); S:=[]; Sex:=NULL; Zex:=solve(f(x)=ao); -<span class="flyspell-duplicate">Zex</span>:=sort(Zex); +Zex:=sort(Zex); for(j:=0;j<size(Zex);j++){ if((evalf(Zex[j])>=evalf(L[0])) and (evalf(Zex[j])<=evalf(L[nl-1]))){Sex:=Sex,Zex[j]}; }; -Sex:=[<span class="flyspell-duplicate">Sex</span>]; +Sex:=[Sex]; @@ -1431,13 +1431,13 @@ if(trigo==t){ all_trig_solutions:=1; reset_solve_counter(-1,-1); SS:=solve(factor(simplify(fp(x))),x); -<span class="flyspell-duplicate">ns</span>:=size(SS); +ns:=size(SS); for(k:=0;k<ns;k++){ m:=0; while(evalf(simplify(subst(SS[k],n_1=m)))<=evalf(L[nl-1])){ S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1; };m:=-1; -<span class="flyspell-duplicate">while</span>(evalf(subst(SS[k],n_1=m))>=L[0]){ +while(evalf(subst(SS[k],n_1=m))>=L[0]){ S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1; } } @@ -1457,7 +1457,7 @@ S:=solve(fp(x),x); nz:=size(Z); -l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";<span class="flyspell-duplicate">lsp</span>:=" "; +l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" "; @@ -1470,11 +1470,11 @@ if(nz>2){ for(r:=1; if(member(Z[r],F)){PB:=PB,0,1}else{PB:=PB,1}; } }; -if(nz>2){ LL:=[LI,LP,LF]; PB:=[PB,1]}else{LL:=[LI,LF];<span class="flyspell-duplicate">PB</span>:=[1,1]}; +if(nz>2){ LL:=[LI,LP,LF]; PB:=[PB,1]}else{LL:=[LI,LF];PB:=[1,1]}; NL:=size(LL); A:=NULL;aa:=0; -<span class="flyspell-duplicate">kk</span>:=0; +kk:=0; @@ -1484,17 +1484,17 @@ l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex) //chgmt NL->nz if(NL>nz){for(k:=0;k<NL-1;k++){TestS:=(evalf(sign(LL[k]-ao))==evalf(sign(LL[k+1]-ao))) or (evalf(sign(LL[k]-ao))==0.0)or (evalf(sign(LL[k+1]-ao))==0.0); -if(PB[k]==1){if(<span class="flyspell-duplicate">TestS</span>==0){ +if(PB[k]==1){if(TestS==0){ A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);"+"val(btex <span class="font-latex-math">$"+latex(simplify(Sex[aa]))+"$</span> etex);";aa:=aa+1;kk:=kk+1} else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);";kk:=kk+1}}; } - l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> <span class="flyspell-duplicate">etex</span>);" + l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);" }; -TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-<span class="flyspell-duplicate">ao</span>))==0.0); +TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0); k0:= evalf(limit(f(x),x=Z[0],1))> evalf(limit(f(x),x=Z[1],-1)); kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); @@ -1507,28 +1507,28 @@ lsi:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+ -if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(evalf(sign(LL[r]-</span><span class="font-latex-math"><span class="flyspell-duplicate">ao</span></span><span class="font-latex-math">))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0); +if(nz>2){rr:=1; if(nz==NL){for(r:=1; r<=NL-2;r++){ TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0); ksp:=evalf(fp(Z[r]+0.01))>0; TestL:=(abs(LL[r])==abs(LL[r+1])); - lsp:=lsp+if(member(Z[r],F)==0){"valBarre(</span><span class="font-latex-math"><span class="flyspell-duplicate">btex</span></span><span class="font-latex-math"> 0 etex);"}else{"nonDefBarre;"}+ + 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> <span class="font-latex-math">$ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "}; }} else{for(r:=1; r<=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))>0;TestS:=(evalf(sign(LL[r]-ao))==evalf(sign(LL[r+1]-ao))) or (evalf(sign(LL[r]-ao))==0.0)or (evalf(sign(LL[r+1]-ao))==0.0); if(PB[r]==1){if(TestS==0){lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+ - if(kspp==1){"plus;"}else{"moins;"}+"valBarre(</span><span class="font-latex-math"><span class="flyspell-duplicate">btex</span></span><span class="font-latex-math"> $</span> <span class="font-latex-math">$ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;} + if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $</span> <span class="font-latex-math">$ etex);"+if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;} else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+ - if(kspp==1){"plus;"}else{"moins;"};rr:=</span><span class="font-latex-math"><span class="flyspell-duplicate">rr</span></span><span class="font-latex-math">+1;} + if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;} }}}}; - lsf:=if(member(Z[nz-1],F)==0){" "}else{"</span><span class="font-latex-math"><span class="flyspell-duplicate">nonDefBarre</span></span><span class="font-latex-math">;"} + lsf:=if(member(Z[nz-1],F)==0){" "}else{"nonDefBarre;"} -lm0:=limit(f(x),x=Z[0],1)==-</span><span class="font-latex-math"><span class="flyspell-duplicate">infinity</span></span><span class="font-latex-math">; +lm0:=limit(f(x),x=Z[0],1)==-infinity; @@ -1536,7 +1536,7 @@ lm0:=limit(f(x),x=Z[0],1)==-</span><span class="font-latex-math"><span class="fl TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))==0.0) or (evalf(sign(LL[1]-ao))==0.0); li:=lvic+nom+"}$</span> etex); -"+ if(member(Z[0],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(</span><span class="font-latex-math"><span class="flyspell-duplicate">simplify</span></span><span class="font-latex-math">(limit(f(x),x=Z[0],1)))}+"$</span> etex,"} +"+ if(member(Z[0],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$</span> etex,"} else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$</span> etex,"}+ if(k0==1){"1);"}else{"0);"}+if(TestS==0){"valPos(btex <span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"}else{" "}; @@ -1546,7 +1546,7 @@ TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))= krp:=evalf(limit(f(x),x=Z[r],1))> evalf(limit(f(x),x=Z[r+1],-1)) ; lmrm:=limit(f(x),x=Z[r],-1)==-infinity;lmrp:=limit(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"}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{latex(simplify(limit(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(simplify(limit(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(simplify(limit(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(simplify(limit(f(x),x=Z[r],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}} else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[r])))+"$</span> etex,"+if(evalf(sign(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+if(TestS==0){"valPos(btex <span class="font-latex-math">$ "+ao+" $</span> etex,0.5);" @@ -1560,33 +1560,33 @@ TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))= if(PB[r]==1){if(TestS==0){lp:=lp+if(member(Z[rr],F)){ "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(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(simplify(limit(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}} else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[rr])))+"$</span> - etex,"+if(evalf(sign(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(evalf(sign(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex <span class="font-latex-math">$ "+ao+" $</span> etex,0.5); ";rr:=rr+1; }// testS==0 else{lp:=lp+if(member(Z[rr],F)){ - "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(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(simplify(limit(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}} + "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplify(limit(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(simplify(limit(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}} else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f(Z[rr])))+"$</span> - etex,"+if(evalf(sign(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}<span class="flyspell-duplicate">else</span>{"0); + etex,"+if(evalf(sign(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0); "}}};rr:=rr+1; }//else testS==0 }//PB[r]==1 }//for nz<NL }// else nz<NL -//if nz=<span class="flyspell-duplicate">NL</span> +//if nz=NL };//if nz>2 -lnz:=limit(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>; +lnz:=limit(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(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+ if(kz==1){"1);"}else{"0);"}} - else{"limGauche(<span class="flyspell-duplicate">btex</span> <span class="font-latex-math">$"+ + else{"limGauche(btex <span class="font-latex-math">$"+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+ - if(kz==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}}; + if(kz==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}}; @@ -1596,48 +1596,48 @@ lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+ MetaLfc:= if(ftt==2){if(nz>2){"beginTableau("+nmr+")"+ l0+lsi+lsp+lsf+" -<span class="flyspell-duplicate">endTableau</span>; +endTableau; ";}else{ "beginTableau("+nmr+")"+ l0+ lsi+lsf+" -<span class="flyspell-duplicate">endTableau</span>; +endTableau; "; } }else{ -if(ftt==0){if(nz>2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+ +if(ftt==0){if(nz>2){"beginTableau("+nmr+")"+ l0+ li+ lp+ lf +" -<span class="flyspell-duplicate">endTableau</span>; +endTableau; ";}else{"beginTableau("+nmr+")"+ l0+ li+ lf +" -<span class="flyspell-duplicate">endTableau</span>; +endTableau; ";}}else{ if(nz>2){"beginTableau("+nmr+")"+ l0+ lsi+lsp+lsf+ li+ -<span class="flyspell-duplicate">lp</span>+ +lp+ lf +" endTableau; -";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+ +";}else{"beginTableau("+nmr+")"+ l0+ lsi+lsf+ li+ lf +" -<span class="flyspell-duplicate">endTableau</span>; +endTableau; ";} }}; @@ -1647,7 +1647,7 @@ lf -sortie:=fopen("XCasmpfc.mp"); +sortie:=<span class="flyspell-duplicate">fopen</span>("XCasmpfc.mp"); fprint(sortie,Unquoted,MetaLfc); fclose(sortie); @@ -1673,7 +1673,7 @@ fclose(sortie); <span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVIapp.cxx} -TVIapp(L,F,nom,nomv,f,ftt,ao,<span class="flyspell-duplicate">nmr</span>):={ +TVIapp(L,F,nom,nomv,f,ftt,ao,nmr):={ nl:=size(L); @@ -1688,7 +1688,7 @@ nz:=size(z); -S:=op(fsolve(fp(x),x)); +S:=op(<span class="flyspell-duplicate">fsolve</span>(fp(x),x)); if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F; for k in j do for(m:=-5;m<=5;m++){S:=S,fsolve(fp(x),x,k+m*0.1,newton_solver)};end_for} else{if(L[0]==-infinity){j:=[seq(k,k=-100..floor(L[1]))] minus F; @@ -1972,7 +1972,7 @@ fp:=append(fp,function_diff(f[d])); LLL:=concat(L,F[d]); Z:=LLL union Z; SS:=solve(factor(simplify(fp[d](t))),t); -ns:=size(SS); +ns:=size(<span class="flyspell-duplicate">SS</span>); for(k:=0;k<ns;k++){ if(trigo==t){ @@ -1988,7 +1988,7 @@ S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1; } }else{ -S:=concat(S,SS); +S:=concat(S,<span class="flyspell-duplicate">SS</span>); } } @@ -2009,12 +2009,12 @@ nz:=size(Z); -nz:=size(Z); +<span class="flyspell-duplicate">nz</span>:=size(Z); u:=1; tantque (u<nz-2) and (nz>2) faire tantque evalf(Z[u])==evalf(Z[u+1]) faire Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=size(Z); - ftantque; + <span class="flyspell-duplicate">ftantque</span>; u:=u+1; ftantque; @@ -2032,12 +2032,12 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+ lsi:="",""; -FFF:=[[],[]]; +<span class="flyspell-duplicate">FFF</span>:=[[],[]]; for(d:=0;d<=1;d++){ FFF[d]:=concat(F[d],[-infinity,+infinity]); k0:= evalf(limit(f[d](x),x=Z[0],1))> evalf(limit(f[d](x),x=Z[1],-1)); - kz:=evalf(limit(f[d](x),x=Z[nz-1],-1))> evalf(limit(f[d](x),x=Z[nz-2],1)); + kz:=evalf(limit(f[d](x),x=Z[nz-1],-1))> evalf(limit(f[d](x),x=Z[<span class="flyspell-duplicate">nz</span>-2],1)); //} //<span class="font-latex-math">$ lsi[d]:=lsic+nom[d]+"'("+nomv+")}$</span> etex);"+if(member(Z[0],FFF[d])==0){"valBarre(btex <span class="font-latex-math">$"+latex(simplify(fp[d](Z[0])))+"$</span> etex);"}else{if(Z[0]==-infinity){" "}else{"nonDefBarre; @@ -2051,7 +2051,7 @@ if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp[d](Z[r]+0.01))>0; if(ksp==1){"plus;"}else{"moins;"} }; } -lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex <span class="font-latex-math">$"+latex(simplify(fp[d](Z[nz-1])))+"$</span> etex);"}else{if(Z[nz-1]==+infinity){" "}else{"nonDefBarre;"}} +lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex <span class="font-latex-math">$"+latex(simplify(fp[d](Z[nz-1])))+"$</span> etex);"}<span class="flyspell-duplicate">else</span>{if(Z[nz-1]==+infinity){" "}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}} @@ -2073,37 +2073,37 @@ lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex <span class="font-latex-mat for(d:=0;d<=1;d++){ K0[d]:= evalf(limit(f[d](x),x=Z[0],1))> evalf(limit(f[d](x),x=Z[1],-1)); - Kz[d]:=evalf(limit(f[d](x),x,Z[nz-1],-1))> evalf(limit(f[d](x),x,Z[nz-2],1)); + Kz[d]:=evalf(limit(f[d](x),x,Z[nz-1],-1))> evalf(limit(f[d](x),x,Z[<span class="flyspell-duplicate">nz</span>-2],1)); //{ //<span class="font-latex-math">$ lm0[d]:=limit(f[d](x),x,Z[0],1)==-infinity; li[d]:=lvic+nom[d]+"}$</span> etex);"+ - if(member(Z[0],F[d])==0){"valPos(btex <span class="font-latex-math">$"+if(lm0[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[0],1)))}+"$</span> etex,"} + if(member(Z[0],F[d])==0){"valPos(btex <span class="font-latex-math">$"+if(lm0[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[0],1)))}+"$</span> <span class="flyspell-duplicate">etex</span>,"} else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[0],1)))}+"$</span> etex,"}+ if(K0[d]==1){"1"}else{"0"}+ ");"; - if(nz>2){ for(r:=1; r<=nz-2;r++){ krm[d]:=evalf(limit(f[d](x),x=Z[r-1],1))< evalf(limit(f[d](x),x=Z[r],-1)); + if(nz>2){ for(r:=1; r<=nz-2;r++){ krm[d]:=evalf(limit(f[d](x),x=Z[r-1],1))< <span class="flyspell-duplicate">evalf</span>(limit(f[d](x),x=Z[r],-1)); krp[d]:=evalf(limit(f[d](x),x=Z[r],1))> evalf(limit(f[d](x),x,Z[r+1],-1)) ; lmrm[d]:=limit(f[d](x),x,Z[r],-1)==-infinity;lmrp[d]:=limit(f[d](x),x,Z[r],1)==-infinity; lp[d]:=lp[d]+if(member(Z[r],F[d])){ "limGauche(btex <span class="font-latex-math">$"+if(lmrm[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[r],-1)))}+"$</span> - etex,"+if(krm[d]==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[r],1)))}+"$</span> etex,"+if(krp[d]==1){"1);"}else{"0);"}} + etex,"+if(krm[d]==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x,Z[r],1)))}+"$</span> etex,"+if(krp[d]==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}} else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(f[d](Z[r])))+"$</span> etex,"+if(sign(evalf(fp[d](Z[r]-0.001)))==sign(evalf((fp[d](Z[r]+0.001))) )){"0.5);"}else{if(krp[d]==1){"1);"}else{"0); "}}} }; } -lnz[d]:=limit(f[d](x),x=Z[nz-1],-1)==-infinity; +<span class="flyspell-duplicate">lnz</span>[d]:=limit(f[d](x),x=Z[nz-1],-1)==-infinity; lf[d]:=if(member(Z[nz-1],F[d])==0){"valPos(btex <span class="font-latex-math">$"+ if(lnz[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x=Z[nz-1],-1)))}+"$</span> etex,"+ - if(Kz[d]==1){"1);"}else{"0);"}} + if(Kz[d]==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}} else{"limGauche(btex <span class="font-latex-math">$"+ if(lnz[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x=Z[nz-1],-1)))}+"$</span> etex,"+ - if(Kz[d]==1){"1);nonDefBarre;"}else{"0);nonDefBarre;"}}; + if(Kz[d]==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}}; @@ -2119,17 +2119,17 @@ lf[d]:=if(member(Z[nz-1],F[d])==0){"valPos(btex <span class="font-latex-math">$" -MetaLfc:=if(ftt==2){if(nz>2){" +<span class="flyspell-duplicate">MetaLfc</span>:=if(ftt==2){if(nz>2){" beginTableau("+nmr+")"+ l0+lsi[0]+lsp[0]+lsf[0]+lsi[1]+lsp[1]+lsf[1]+" -endTableau; +<span class="flyspell-duplicate">endTableau</span>; ";}else{ intro+"beginTableau("+nmr+")"+ l0+ lsi[0]+lsf[0]+lsi[1]+lsf[1]+" -endTableau; +<span class="flyspell-duplicate">endTableau</span>; "; } @@ -2137,24 +2137,24 @@ endTableau; l0+ li[0]+ lp[0]+ -lf[0]+ +<span class="flyspell-duplicate">lf</span>[0]+ li[1]+ lp[1]+ lf[1] +" -endTableau; +<span class="flyspell-duplicate">endTableau</span>; ";}else{"beginTableau("+nmr+")"+ l0+ li[0]+ lf[0]+ li[1]+ -lf[1] +<span class="flyspell-duplicate">lf</span>[1] +" endTableau; ";}}else{ -if(nz>2){"beginTableau("+nmr+")"+ +if(nz>2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+ l0+ lsi[0]+lsp[0]+lsf[0]+ li[0]+ @@ -2165,7 +2165,7 @@ li[1]+ lp[1]+ lf[1] +" -endTableau; +<span class="flyspell-duplicate">endTableau</span>; ";}else{"beginTableau("+nmr+")"+ l0+ @@ -2176,7 +2176,7 @@ lsi[1]+lsf[1]+ li[1]+ lf[1] +" -endTableau; +<span class="flyspell-duplicate">endTableau</span>; ";} } @@ -2241,7 +2241,7 @@ S:=solve(L[k](x),x); if(S[j]>mini and S[j]<maxi){Z:=Z,simplify(S[j]);} fpour; fsi; -fpour; +<span class="flyspell-duplicate">fpour</span>; @@ -2251,12 +2251,12 @@ Z:=sort(Z); nz:=size(Z); - Z:=sort([op(set[op(Z)])]); + Z:=sort([op(set[(Z)])]); nz:=size(Z); -if(nz==0){li:="";l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);"; +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>);"; for(p:=0;p<=n-1;p++){li:=li+lsic+latex(L[p](x))+"}<span class="font-latex-math">$ etex);"+ if(mini!=-infinity and L[p](mini)==0){" valBarre(btex 0 etex);"}else{" @@ -2269,7 +2269,7 @@ if(L[p]((mini+maxi)*0.5>0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p lf:=if(product(L[s]((mini+maxi)*.5),s,0,n-1)>0){"plus;"}else{"moins;"}; -MetaLfc:=" beginTableau("+nmr+") +</span><span class="font-latex-math"><span class="flyspell-duplicate">MetaLfc</span></span><span class="font-latex-math">:=" beginTableau("+nmr+") newLigneVariables(btex $</span> {x}<span class="font-latex-math">$ etex); "+l0+li+ lsic+nomf+"(x)}$</span> etex);"+ if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){" @@ -2351,7 +2351,7 @@ fclose(sortie); <span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSignQ.cxx} -<span class="flyspell-duplicate">TSq</span>(nomf,L,Fo,D,trigo,nmr):={ +TSq(nomf,L,Fo,D,trigo,nmr):={ L:=apply(f->unapply(f,x),L); Fo:=apply(f->unapply(f,x),Fo); L:=concat(L,Fo); @@ -2361,7 +2361,7 @@ m:=size(Fo); F:=NULL;FF:=NULL; mini:=D[0]; maxi:=D[1]; S:=[]; -<span class="flyspell-duplicate">SF</span>:=[]; +SF:=[]; pour k de 0 jusque n-1 faire @@ -2369,7 +2369,7 @@ pour k de 0 jusque n-1 faire if(trigo==t){ all_trig_solutions:=1; -<span class="flyspell-duplicate">reset</span>_solve_counter(-1,-1); +reset_solve_counter(-1,-1); SS:=solve(factor(simplify(L[k](x))),x); ns:=size(SS); for(j:=0;j<ns;j++){ @@ -2383,7 +2383,7 @@ S:=concat(S,simplify(subst(SS[j],n_1=mm)));mm:=mm-1; } }else{ -S:=<span class="flyspell-duplicate">concat</span>(S,<span class="flyspell-duplicate">solve</span>(L[k](x),x)); +S:=concat(S,solve(L[k](x),x)); } @@ -2392,7 +2392,7 @@ S:=<span class="flyspell-duplicate">concat</span>(S,<span class="flyspell-duplic si size(S)>0 alors pour j de 0 jusque size(S)-1 faire if(S[j]>mini and S[j]<maxi){Z:=Z,simplify(S[j]);} - <span class="flyspell-duplicate">fpour</span>; + fpour; fsi; <span class="flyspell-duplicate">fpour</span>; @@ -2402,29 +2402,29 @@ pour k de 0 jusque m-1 faire if(trigo==t){ -<span class="flyspell-duplicate">all</span>_trig_solutions:=1; -<span class="flyspell-duplicate">reset</span>_solve_counter(-1,-1); +all_trig_solutions:=1; +reset_solve_counter(-1,-1); SSF:=solve(factor(simplify(Fo[k](x))),x); -<span class="flyspell-duplicate">nsf</span>:=size(SSF); +nsf:=size(SSF); for(j:=0;j<nsf;j++){ mm:=0; -<span class="flyspell-duplicate">while</span>(evalf(simplify(subst(SSF[j],n_1=mm)))<=evalf(maxi)){ -<span class="flyspell-duplicate">SF</span>:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm+1; +while(evalf(simplify(subst(SSF[j],n_1=mm)))<=evalf(maxi)){ +SF:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm+1; };mm:=-1; -<span class="flyspell-duplicate">while</span>(evalf(subst(SSF[j],n_1=mm))>=evalf(mini)){ +while(evalf(subst(SSF[j],n_1=mm))>=evalf(mini)){ SF:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm-1; } } }else{ -<span class="flyspell-duplicate">SF</span>:=<span class="flyspell-duplicate">concat</span>(<span class="flyspell-duplicate">SF</span>,<span class="flyspell-duplicate">solve</span>(<span class="flyspell-duplicate">Fo</span>[k](x),x)); +SF:=concat(SF,solve(Fo[k](x),x)); } si size(SF)>0 alors pour j de 0 jusque size(SF)-1 faire FF:=FF,simplify(SF[j]); if(SF[j]>mini and SF[j]<maxi){F:=F,simplify(SF[j]);} fpour; - <span class="flyspell-duplicate">fsi</span>; + fsi; <span class="flyspell-duplicate">fpour</span>; @@ -2436,7 +2436,7 @@ Z:=sort([op(set[op(Z)])]); nz:=size(Z); -if(nz==0){li:="";l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);val(btex <span class="font-latex-math">$"+latex(D[1])+"$</span> etex);"; +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>);"; for(p:=0;p<=n-1;p++){li:=li+lsic+latex(L[p](x))+"}<span class="font-latex-math">$ etex);"+ if(mini!=-infinity and L[p](mini)==0){" valBarre(btex 0 etex);"}else{" @@ -2451,9 +2451,9 @@ if(L[p]((mini+maxi)*0.5>0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p -</span><span class="font-latex-math"><span class="flyspell-duplicate">MetaLfc</span></span><span class="font-latex-math">:=" -</span><span class="font-latex-math"><span class="flyspell-duplicate">beginTableau</span></span><span class="font-latex-math">("+nmr+") -newLigneVariables(btex $</span> {x}<span class="font-latex-math">$ </span><span class="font-latex-math"><span class="flyspell-duplicate">etex</span></span><span class="font-latex-math">); +MetaLfc:=" +beginTableau("+nmr+") +newLigneVariables(btex $</span> {x}<span class="font-latex-math">$ etex); "+l0+li+ lsic+nomf+"(x)}$</span> etex);"+ if(member(mini,FF)==0){if((mini!=-infinity) and (product(L[s](mini),s,0,n-1)==0)){" valBarre(btex 0 etex);"}else{" "}}else{"nonDefBarre;"}+ lf+ @@ -2466,13 +2466,13 @@ endTableau; -}<span class="flyspell-duplicate">else</span>{ +}else{ l0:="val(btex <span class="font-latex-math">$"+latex(D[0])+"$</span> etex);";li:=" ";lr:=" "; -pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex); +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>); ";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<=n-1;p++){lp:=""; @@ -2485,7 +2485,7 @@ for(p:=0;p<=n-1;p++){lp:=""; li:=li+lp+ if(simplify(L[p](Z[nz-1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}+ if(L[p](Z[nz-1]+1.0)>0){"plus;"}else{"moins; - "}+if(maxi!=+infinity and L[p](</span><span class="font-latex-math"><span class="flyspell-duplicate">maxi</span></span><span class="font-latex-math">)==0){"</span><span class="font-latex-math"><span class="flyspell-duplicate">valBarre</span></span><span class="font-latex-math">(btex 0 etex);"}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{" "} + "}+if(maxi!=+infinity and L[p](maxi)==0){"valBarre(btex 0 etex);"}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{" "} }; @@ -2493,18 +2493,18 @@ for(p:=0;p<=n-1;p++){lp:=""; pour t de 0 jusque nz-2 faire lr:=lr+if(product(L[s]((Z[t]+Z[t+1])*.5),s,0,n-1)>0){"plus;"}else{"moins;"}+ if(member(Z[t+1],FF)==0){"valBarre(btex 0 etex);"}else{ "</span><span class="font-latex-math"><span class="flyspell-duplicate">nonDefBarre</span></span><span class="font-latex-math">;"} - </span><span class="font-latex-math"><span class="flyspell-duplicate">fpour</span></span><span class="font-latex-math"> + fpour </span><span class="font-latex-math"><span class="flyspell-duplicate">MetaLfc</span></span><span class="font-latex-math">:=" -</span><span class="font-latex-math"><span class="flyspell-duplicate">beginTableau</span></span><span class="font-latex-math">("+</span><span class="font-latex-math"><span class="flyspell-duplicate">nmr</span></span><span class="font-latex-math">+") -newLigneVariables(btex $</span> {x}<span class="font-latex-math">$ </span><span class="font-latex-math"><span class="flyspell-duplicate">etex</span></span><span class="font-latex-math">); +</span><span class="font-latex-math"><span class="flyspell-duplicate">beginTableau</span></span><span class="font-latex-math">("+nmr+") +newLigneVariables(btex $</span> {x}<span class="font-latex-math">$ etex); "+l0+ li + - </span><span class="font-latex-math"><span class="flyspell-duplicate">lsic</span></span><span class="font-latex-math">+</span><span class="font-latex-math"><span class="flyspell-duplicate">nomf</span></span><span class="font-latex-math">+"(x)}$</span> etex);"+ + lsic+nomf+"(x)}$</span> etex);"+ if(member(mini,FF)==0){if((mini!=-infinity) and (product(L[s](mini),s,0,n-1)==0)){" valBarre(btex 0 etex);"}else{" "}}else{"nonDefBarre;"}+ if(product(L[s](Z[0]-0.01),s,0,n-1)>0){"plus;"}else{"moins;"}+ if(member(Z[0],FF)==0){"valBarre(btex 0 etex);"}else{ "nonDefBarre;"}+ @@ -2544,17 +2544,17 @@ fclose(sortie); <span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSigna.cxx} -TSa(a,b,c,d,nmr):={ +<span class="flyspell-duplicate">TSa</span>(a,b,c,d,nmr):={ zA:=solve(a*x+b=0,x)[0]; zB:=solve(c*x+d=0,x)[0]; zmin:=min(zA,zB); -zmax:=max(zA,<span class="flyspell-duplicate">zB</span>); - Meta:= " +zmax:=max(zA,zB); + <span class="flyspell-duplicate">Meta</span>:= " beginTableau("+nmr+") newLigneVariables(btex <span class="font-latex-math">$ {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); "+lsic+if(a==1){"x+"}else{if(a==-1){"-x+"}else{a+"x+"}}+b+"}<span class="font-latex-math">$ etex);" + if(a>0){"moins;"}else{"plus;"}+ if(zmin==zA){"valBarre(btex 0 etex);"}else{"barre;"}+ @@ -2566,8 +2566,8 @@ val(btex <span class="font-latex-math">$+\\infty$</span> <span class="flyspell-d + if(c>0){"moins"}else{"plus"}+";"+ if(zmin==zB){"valBarre(btex 0 etex);"}else{"barre;"}+ if(zmin==zB){si c>0 alors "plus;"; sinon "moins;";fsi} - else{si c>0 alors "moins;"; sinon "plus;"; <span class="flyspell-duplicate">fsi</span>}+ - if(zmin==zB){"barre;"}else{"valBarre(btex 0 etex);"}+ + else{si c>0 alors "moins;"; sinon "plus;"; fsi}+ + if(zmin==zB){"barre;"}else{"valBarre(btex 0 <span class="flyspell-duplicate">etex</span>);"}+ if(c>0){"plus;"}else{"moins;"} +lsic+"{("+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 class="font-latex-math">$ etex);" @@ -2582,7 +2582,7 @@ endTableau; -sortie:=fopen("XCasmpfc.mp"); +sortie:=</span><span class="font-latex-math"><span class="flyspell-duplicate">fopen</span></span><span class="font-latex-math">("XCasmpfc.mp"); fprint(sortie,Unquoted,Meta); fclose(sortie); @@ -2644,7 +2644,7 @@ lf:=if(member(maxi,F)!=0){"nonDefBarre;"}else{if(maxi!=+infinity and f(maxi)==0) valBarre(btex 0 etex);"}else{" "}}; } -else{pour j de 0 jusque size(S)-1 faire +<span class="flyspell-duplicate">else</span>{pour j de 0 jusque size(S)-1 faire if(S[j]>mini and S[j]<maxi){Z:=Z,simplify(S[j])}; fpour; @@ -2667,7 +2667,7 @@ lf:=if(maxi!=+infinity and f(maxi)==0){" }else{ l0:="val(btex <span class="font-latex-math">$"+latex(Z[0])+"$</span> etex);";li:=" "; -pour m de 1 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex); +pour m de 1 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> <span class="flyspell-duplicate">etex</span>); "; fpour; @@ -2685,7 +2685,7 @@ if(f((Z[r+1]-1))>0){"plus;"}else{"moins;"} }}else{" "}; lf:=if(f(Z[nz-2]+0.1)>0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi)==0){"valBarre(btex 0 etex);"}else{if(member(maxi,F)==0){" - "}else{"nonDefBarre;"} + "}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"} }; }}; @@ -2709,7 +2709,7 @@ endTableau; sortie:=fopen("XCasmpfc.mp"); fprint(sortie,Unquoted,MetaLfc); -fclose(sortie); +</span><span class="font-latex-math"><span class="flyspell-duplicate">fclose</span></span><span class="font-latex-math">(sortie); }:; diff --git a/Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty b/Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty index 58c3d1df703..074f4b1eac8 100644 --- a/Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty +++ b/Master/texmf-dist/tex/latex/tablor/tablor-xetex.sty @@ -1,5 +1,5 @@ \NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{tablor-xetex}[19/04/2009 v4.04-d la machine a creer des +\ProvidesPackage{tablor-xetex}[14/05/2009 v4.04-g la machine a creer des tableaux de signes et variations compatible xetex] % \copyleft Connan le Barbare (aka Guillaume Connan) \copyright @@ -346,10 +346,10 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex); kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ - if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ + if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1.0){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ - if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }} + if(evalf(sign(fp(Z[0]+10^(-5))))==1.0){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ + if(evalf(sign(fp((Z[0]+10^(-5)))))==1.0){"plus;"}else{"moins;"} }} if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.1))>0; lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+ @@ -535,10 +535,10 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex); kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ - if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],FP)==0){ + if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1.0){"plus;"}else{"moins;"}}else{if(member(Z[0],FP)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ - if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }} + if(evalf(sign(fp(Z[0]+10^(-5))))==1.0){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ + if(evalf(sign(fp((Z[0]+10^(-5)))))==1.0){"plus;"}else{"moins;"} }} if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.1))>0; lsp:=lsp+if(member(Z[r],FP)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+ @@ -740,10 +740,10 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex); kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ -if(member(Z[0],IMIN)!=0){if((member(Z[0],F)==0) and (fp(Z[0])!=undef)){"debutNonDef;"}else{"debutNonDefStrict;"}}else{if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ +if(member(Z[0],IMIN)!=0){if((member(Z[0],F)==0) and (fp(Z[0])!=undef)){"debutNonDef;"}else{"debutNonDefStrict;"}}else{if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1.0){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ - if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}} + if(evalf(sign(fp(Z[0]+10^(-5))))==1.0){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ + if(evalf(sign(fp((Z[0]+10^(-5)))))==1.0){"plus;"}else{"moins;"} }}} @@ -915,6 +915,7 @@ nz:=size(z); + S:=op(fsolve(fp(x),x)); if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F; for k in j do for(m:=-5;m<=5;m++){S:=S,fsolve(fp(x),x,k+m*0.1,newton_solver)};end_for} @@ -930,6 +931,9 @@ else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F; + + + si size(S)>0 alors pour j de 0 jusque size(S)-1 faire kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])>=L[0]) and (evalf(S[j])<=L[1]); if(kk==1){if(kok==1){z:=append(z,simplify(S[j]))}}; @@ -966,10 +970,10 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex); kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ - if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ + if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1.0){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ - if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }} + if(evalf(sign(fp(Z[0]+10^(-5))))==1.0){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ + if(evalf(sign(fp((Z[0]+10^(-5)))))==1.0){"plus;"}else{"moins;"} }} if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))>0; lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+ @@ -1171,10 +1175,13 @@ TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))= kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ - if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ + if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1.0){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ - if(sign(fp((Z[0]+10^(-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ $ etex);"+ if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; + if(evalf(sign(fp((Z[0]+10^(-3)))))==1.0){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ + if(evalf(sign(fp(10^(-3)+Z[0])))==1.0){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ + $ etex);"+ +if(evalf(sign(fp(10^(-3)+ifte(Z[0]==-infinity,ifte(Z[1]==+infinity,ifte(member(0,F)==0,0,0.01),ifte(member(Z[1]-1,F)==0,Z[1]-1,Z[1]-1.1)),Z[0]))))==1.0){"plus;"}else{"moins;"}}else{" "}; + @@ -1445,7 +1452,9 @@ lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ if(sign(fp((Z[0]+10^(-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ $ etex);"+ if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; + if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ + $ etex);"+ +if(evalf(sign(fp(10^(-3)+ifte(Z[0]==-infinity,ifte(Z[1]==+infinity,ifte(member(0,F)==0,0,0.01),ifte(member(Z[1]-1,F)==0,Z[1]-1,Z[1]-1.1)),Z[0]))))==1.0){"plus;"}else{"moins;"}}else{" "}; @@ -1629,6 +1638,8 @@ nz:=size(z); + + S:=op(fsolve(fp(x),x)); if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F; for k in j do for(m:=-5;m<=5;m++){S:=S,fsolve(fp(x),x,k+m*0.1,newton_solver)};end_for} @@ -1647,6 +1658,7 @@ else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F; + si size(S)>0 alors pour j de 0 jusque size(S)-1 faire kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])>=L[0]) and (evalf(S[j])<=L[1]); if(kk==1){if(kok==1){z:=append(z,simplify(S[j]))}}; @@ -1721,8 +1733,10 @@ lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ if(sign(fp((Z[0]+10^(-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ $ etex);"+ if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; + if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ + $ etex);"+ +if(evalf(sign(fp(10^(-3)+ifte(Z[0]==-infinity,ifte(Z[1]==+infinity,ifte(member(0,F)==0,0,0.01),ifte(member(Z[1]-1,F)==0,Z[1]-1,Z[1]-1.1)),Z[0]))))==1.0){"plus;"}else{"moins;"}}else{" "}; @@ -2191,7 +2205,7 @@ Z:=sort(Z); nz:=size(Z); - Z:=sort([op(set[op(Z)])]); + Z:=sort([op(set[(Z)])]); nz:=size(Z); @@ -2369,16 +2383,9 @@ fpour; -Z:=sort(Z); // on classe les zeros dans l'ordre croissant -nz:=size(Z); -if(nz>2){pour u de 1 jusque nz-2 faire - si Z[u]==Z[u+1] alors Z:=Z[0..u-1],Z[u+1..nz-1];nz:=nz-1; // pour les zeros en double - fsi; -fpour;} - - Z:=[Z,F]; + Z:=sort([op(set[op(Z)])]); nz:=size(Z); @@ -2403,12 +2410,8 @@ beginTableau("+nmr+") newLigneVariables(btex $ {x}$ etex); "+l0+li+ lsic+nomf+"(x)}$ etex);"+ - if(member(mini,FF)==0){if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){" - valBarre(btex 0 etex);"}else{" - "}}else{"nonDefBarre;"}+ lf+ - if(member(maxi,FF)==0){if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){" - valBarre(btex 0 etex);"}else{" - "}}else{"nonDefBarre;"}+" + if(member(mini,FF)==0){if((mini!=-infinity) and (product(L[s](mini),s,0,n-1)==0)){" valBarre(btex 0 etex);"}else{" "}}else{"nonDefBarre;"}+ lf+ + if(member(maxi,FF)==0){if((maxi!=+infinity) and (product(L[s](maxi),s,0,n-1)==0)){" valBarre(btex 0 etex);"}else{" "}}else{"nonDefBarre;"}+" endTableau; " @@ -2428,21 +2431,15 @@ l0:=l0+"val(btex $"+latex(D[1])+"$ etex);"; for(p:=0;p<=n-1;p++){lp:=""; li:=li+lsic+latex(L[p](x))+"}$ etex);"+ - if(mini!=-infinity and L[p](mini)==0){" - valBarre(btex 0 etex);"}else{" - "}+ + if(mini!=-infinity and L[p](mini)==0){" valBarre(btex 0 etex);"}else{" "}+ if(L[p](Z[0]-0.01)>0){"plus;"}else{"moins;"}; - for(r:=0; r<=nz-2;r++){ - lp:=lp+if(simplify(L[p](Z[r]))==0){" - valBarre(btex 0 etex);"}else{"barre; - "}+ + for(r:=0; r<=nz-2;r++){lp:=lp+if(simplify(L[p](Z[r]))==0){" valBarre(btex 0 etex);"}else{"barre;"}+ if(L[p]((Z[r]+Z[r+1])*.5)>0){"plus;"}else{"moins;"}}; li:=li+lp+ if(simplify(L[p](Z[nz-1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}+ if(L[p](Z[nz-1]+1.0)>0){"plus;"}else{"moins; - "}+if(maxi!=+infinity and L[p](maxi)==0){" - valBarre(btex 0 etex);"}else{" "} + "}+if(maxi!=+infinity and L[p](maxi)==0){"valBarre(btex 0 etex);"}else{" "} }; @@ -2462,15 +2459,12 @@ newLigneVariables(btex $ {x}$ etex); li + lsic+nomf+"(x)}$ etex);"+ - if(member(mini,FF)==0){if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){" - valBarre(btex 0 etex);"}else{" - "}}else{"nonDefBarre;"}+ + if(member(mini,FF)==0){if((mini!=-infinity) and (product(L[s](mini),s,0,n-1)==0)){" valBarre(btex 0 etex);"}else{" "}}else{"nonDefBarre;"}+ if(product(L[s](Z[0]-0.01),s,0,n-1)>0){"plus;"}else{"moins;"}+ if(member(Z[0],FF)==0){"valBarre(btex 0 etex);"}else{ "nonDefBarre;"}+ lr+ if(product(L[s](Z[nz-1]+0.01),s,0,n-1)>0){"plus;"}else{"moins;"}+ - if(member(maxi,FF)==0){if(maxi!=+infinity and product(L[s](maxi),s,0,n-1)==0){" - valBarre(btex 0 etex);"}else{" "}}else{"nonDefBarre;"}+" + if(member(maxi,FF)==0){if((maxi!=+infinity) and (product(L[s](maxi),s,0,n-1)==0)){"valBarre(btex 0 etex);"}else{" "}}else{"nonDefBarre;"}+" endTableau; " @@ -2681,6 +2675,8 @@ fclose(sortie); + + %%$ %% %% traitement des fichiers produits par giac/xcas diff --git a/Master/texmf-dist/tex/latex/tablor/tablor.sty b/Master/texmf-dist/tex/latex/tablor/tablor.sty index 33e97a36a1b..1ebaddb78d2 100644 --- a/Master/texmf-dist/tex/latex/tablor/tablor.sty +++ b/Master/texmf-dist/tex/latex/tablor/tablor.sty @@ -1,5 +1,5 @@ \NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{tablor}[19/04/2009 v4.04-d la machine a creer des tableaux de signes et variations] +\ProvidesPackage{tablor}[14/05/2009 v4.04-g la machine a creer des tableaux de signes et variations] % \copyleft Connan le Barbare (aka Guillaume Connan) \copyright % This work may be distributed and/or mofified under the conditions @@ -311,10 +311,10 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex); kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ - if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ + if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1.0){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ - if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }} + if(evalf(sign(fp(Z[0]+10^(-5))))==1.0){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ + if(evalf(sign(fp((Z[0]+10^(-5)))))==1.0){"plus;"}else{"moins;"} }} if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.1))>0; lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+ @@ -500,10 +500,10 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex); kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ - if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],FP)==0){ + if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1.0){"plus;"}else{"moins;"}}else{if(member(Z[0],FP)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ - if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }} + if(evalf(sign(fp(Z[0]+10^(-5))))==1.0){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ + if(evalf(sign(fp((Z[0]+10^(-5)))))==1.0){"plus;"}else{"moins;"} }} if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.1))>0; lsp:=lsp+if(member(Z[r],FP)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+ @@ -705,10 +705,10 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex); kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ -if(member(Z[0],IMIN)!=0){if((member(Z[0],F)==0) and (fp(Z[0])!=undef)){"debutNonDef;"}else{"debutNonDefStrict;"}}else{if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ +if(member(Z[0],IMIN)!=0){if((member(Z[0],F)==0) and (fp(Z[0])!=undef)){"debutNonDef;"}else{"debutNonDefStrict;"}}else{if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1.0){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ - if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}} + if(evalf(sign(fp(Z[0]+10^(-5))))==1.0){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ + if(evalf(sign(fp((Z[0]+10^(-5)))))==1.0){"plus;"}else{"moins;"} }}} @@ -935,10 +935,10 @@ pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $"+latex(Z[m])+"$ etex); kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ - if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ + if(Z[0]==-infinity){if(sign(evalf(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1.0){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ - if(sign(fp(Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }} + if(evalf(sign(fp(Z[0]+10^(-5))))==1.0){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ + if(evalf(sign(fp((Z[0]+10^(-5)))))==1.0){"plus;"}else{"moins;"} }} if(nz>2){ for(r:=1; r<=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))>0; lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+ @@ -1140,10 +1140,13 @@ TestS:=(evalf(sign(LL[0]-ao))==evalf(sign(LL[1]-ao))) or (evalf(sign(LL[0]-ao))= kz:=evalf(limit(f(x),x=Z[nz-1],-1))> evalf(limit(f(x),x=Z[nz-2],1)); lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ - if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ + if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1.0){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ - if(sign(fp((Z[0]+10^(-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ $ etex);"+ if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; + if(evalf(sign(fp((Z[0]+10^(-3)))))==1.0){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ + if(evalf(sign(fp(10^(-3)+Z[0])))==1.0){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ + $ etex);"+ +if(evalf(sign(fp(10^(-3)+ifte(Z[0]==-infinity,ifte(Z[1]==+infinity,ifte(member(0,F)==0,0,0.01),ifte(member(Z[1]-1,F)==0,Z[1]-1,Z[1]-1.1)),Z[0]))))==1.0){"plus;"}else{"moins;"}}else{" "}; + @@ -1414,7 +1417,9 @@ lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ if(sign(fp((Z[0]+10^(-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ $ etex);"+ if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; + if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ + $ etex);"+ +if(evalf(sign(fp(10^(-3)+ifte(Z[0]==-infinity,ifte(Z[1]==+infinity,ifte(member(0,F)==0,0,0.01),ifte(member(Z[1]-1,F)==0,Z[1]-1,Z[1]-1.1)),Z[0]))))==1.0){"plus;"}else{"moins;"}}else{" "}; @@ -1693,8 +1698,10 @@ lsi:=lsic+nom+"'("+nomv+")}$ etex);"+ if(Z[0]==-infinity){if(evalf(sign(fp(if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F)==0){ if(fp(Z[0])==0){"valBarre(btex 0 etex);"}else{" "}+ if(sign(fp((Z[0]+10^(-3))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+ - if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ $ etex);"+ if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"}}else{" "}; + if(sign(fp(10^(-3)+Z[0]))==1){"plus;"}else{"moins;"} }}+if(TestS==0){"valBarre(btex$ + $ etex);"+ +if(evalf(sign(fp(10^(-3)+ifte(Z[0]==-infinity,ifte(Z[1]==+infinity,ifte(member(0,F)==0,0,0.01),ifte(member(Z[1]-1,F)==0,Z[1]-1,Z[1]-1.1)),Z[0]))))==1.0){"plus;"}else{"moins;"}}else{" "}; @@ -2163,7 +2170,7 @@ Z:=sort(Z); nz:=size(Z); - Z:=sort([op(set[op(Z)])]); + Z:=sort([op(set[(Z)])]); nz:=size(Z); |