summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/tablor/tablor.html
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2008-10-26 15:41:28 +0000
committerKarl Berry <karl@freefriends.org>2008-10-26 15:41:28 +0000
commit2b0d1a47ccbd53571b1637c01f48e150ae5f471f (patch)
tree7d6582a6c3768ab916fb3334b8a34ca475c4ac68 /Master/texmf-dist/doc/latex/tablor/tablor.html
parent70da966888998bdc516ca75b91435d29746adb7d (diff)
tablor 4.0.2 (22oct08)
git-svn-id: svn://tug.org/texlive/trunk@11062 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/tablor/tablor.html')
-rw-r--r--Master/texmf-dist/doc/latex/tablor/tablor.html1722
1 files changed, 1128 insertions, 594 deletions
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.html b/Master/texmf-dist/doc/latex/tablor/tablor.html
index e4f32c8810f..7854e0762b3 100644
--- a/Master/texmf-dist/doc/latex/tablor/tablor.html
+++ b/Master/texmf-dist/doc/latex/tablor/tablor.html
@@ -7,7 +7,7 @@
<!--
body {
color: #f5deb3;
- background-color: #000000;
+ background-color: #262626;
font-weight: bold;
}
.comment {
@@ -22,7 +22,7 @@
}
.constant {
/* font-lock-constant-face */
- color: #9932cc;
+ color: #68228b;
font-weight: bold;
}
.flyspell-duplicate {
@@ -31,9 +31,15 @@
font-weight: bold;
text-decoration: underline;
}
+ .flyspell-incorrect {
+ /* flyspell-incorrect-face */
+ color: #ff4500;
+ font-weight: bold;
+ text-decoration: underline;
+ }
.font-latex-math {
/* font-latex-math-face */
- color: #ffa500;
+ color: #436eee;
}
.font-latex-sedate {
/* font-latex-sedate-face */
@@ -54,11 +60,11 @@
}
.function-name {
/* font-lock-function-name-face */
- color: #87ceeb;
+ color: #6ca6cd;
}
.keyword {
/* font-lock-keyword-face */
- color: #6495ed;
+ color: #32cd32;
font-weight: bold;
}
.variable-name {
@@ -81,15 +87,15 @@
<body>
<pre>
<span class="font-latex-sedate">\NeedsTeXFormat</span>{LaTeX2e}[1995/12/01]
-<span class="font-latex-sedate">\ProvidesPackage</span>{tablor}[12/06/2008 v3.00 la machine a creer des tableaux de signes et variations]
+<span class="font-latex-sedate">\ProvidesPackage</span>{<span class="flyspell-duplicate">tablor</span>}[21/10/2008 v4.02 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
</span><span class="comment-delimiter">% </span><span class="comment">or the LaTeX Project Public Licence, either v1.3 or (at your option)
-</span><span class="comment-delimiter">% </span><span class="comment">any later version. The latest version is in
+</span><span class="comment-delimiter">% </span><span class="comment">any later version. </span><span class="comment"><span class="flyspell-incorrect">The</span></span><span class="comment"> latest version is in
</span><span class="comment-delimiter">% </span><span class="comment">http://www.latex-project.org/lppl/
-</span><span class="comment-delimiter">% </span><span class="comment">This work consists of the files tablor.sty, tablor.cfg, tablor.tex,
-</span><span class="comment-delimiter">% </span><span class="comment">tablor.pdf and tablor.html
+</span><span class="comment-delimiter">% </span><span class="comment">This work consists of the files tablor.</span><span class="comment"><span class="flyspell-incorrect">sty</span></span><span class="comment">, </span><span class="comment"><span class="flyspell-incorrect">tablor-xetex</span></span><span class="comment">.</span><span class="comment"><span class="flyspell-duplicate">sty</span></span><span class="comment">, tablor.cfg, tablor.tex,
+</span><span class="comment-delimiter">% </span><span class="comment">tablor.pdf and tablor.</span><span class="comment"><span class="flyspell-incorrect">html</span></span><span class="comment">
</span>
<span class="comment-delimiter">%% </span><span class="comment">Cree 16 environnements :
@@ -100,29 +106,35 @@
</span><span class="comment-delimiter">% </span><span class="comment">%%%%%% Pour des tableaux de plus de 2 facteurs
</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TS}
-</span><span class="comment-delimiter">% </span><span class="comment">TS("P",[-2*x+3,x^2-1,x^2+1,x-1,x^2-2],[a,b],</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">);
+</span><span class="comment-delimiter">% </span><span class="comment">TS("P",[-2*x+3,x^2-1,x^2+1,x-1,x^2-2],[a,b],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">{TS}
</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="comment">pour les tableaux de signes avec quotient
</span><span class="comment-delimiter">%</span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TSq}
-</span><span class="comment-delimiter">%</span><span class="comment">TSq("Q",[-2*x+3,-4*x+5],[x^2-16,x-2],[a,b],</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">)
+</span><span class="comment-delimiter">%</span><span class="comment">TSq("Q",[-2*x+3,-4*x+5],[x^2-16,x-2],[a,b],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">{TSq}
</span><span class="comment-delimiter">% </span><span class="comment">un tableau de variation :
</span><span class="comment-delimiter">%</span><span class="comment">
+</span><span class="comment-delimiter">% </span><span class="comment">pour les tableaux de signes &#224; une seule ligne
+</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TSc}
+</span><span class="comment-delimiter">% </span><span class="comment"><span class="flyspell-duplicate">TSc</span></span><span class="comment">((x+10)/((x-5)*(x-2)),[-10,5],[2,5],n,0)
+</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\end</span></span><span class="comment">{TSc}
+</span><span class="comment-delimiter">%</span><span class="comment">
+</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TV}
-</span><span class="comment-delimiter">% </span><span class="comment">TV([0,+infinity],[0],"h","x",ln(x)-(ln(x))^2,1,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">)
+</span><span class="comment-delimiter">% </span><span class="comment">TV([0,+infinity],[0],"h","x",ln(x)-(ln(x))^2,1,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">{TV}
</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="comment">tableau de variation avec zones interdites
</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVZ}
-</span><span class="comment-delimiter">% </span><span class="comment">TVZ([-infinity,+infinity],[],[[-1,1]],"f","x",sqrt(x^2-1),1,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">)
+</span><span class="comment-delimiter">% </span><span class="comment">TVZ([-infinity,+infinity],[],[[-1,1]],"f","x",sqrt(x^2-1),1,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">{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 intermediares
</span><span class="comment-delimiter">%</span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVI}
-</span><span class="comment-delimiter">%</span><span class="comment">TVI([-1,+infinity],[-1],"f","x",x2/sqrt(x+1)-1,1,2,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">)
+</span><span class="comment-delimiter">%</span><span class="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}
</span><span class="comment-delimiter">%%%</span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="comment">tableau de variations avec f' sans zero formel
@@ -142,17 +154,26 @@
</span><span class="comment-delimiter">% </span><span class="comment">fichier metapost pour le modifier
</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">%</span><span class="comment">
-</span><span class="comment-delimiter">% </span><span class="comment">Courbes parametrees
+</span><span class="comment-delimiter">% </span><span class="comment">Courbes </span><span class="comment"><span class="flyspell-duplicate">parametrees</span></span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVP}
-</span><span class="comment-delimiter">% </span><span class="comment">TVP([-infinity,+infinity],[[-1,2],[-1]],["x","y"],"t",[t^2/((t+1)*(t-2)),t^2*(t+2)/(t+1)],1,0,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">)
+</span><span class="comment-delimiter">% </span><span class="comment">TVP([-infinity,+infinity],[[-1,2],[-1]],["x","y"],"t",[t^2/((t+1)*(t-2)),t^2*(t+2)/(t+1)],1,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">{TVP}
</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\begin</span></span><span class="comment">{TVP}
-</span><span class="comment-delimiter">% </span><span class="comment">TVP([0,pi/2],[[],[]],["x","y"],"t",[2*cos(t),sin(2*t)],1,1,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">)
+</span><span class="comment-delimiter">% </span><span class="comment">TVP([0,pi/2],[[],[]],["x","y"],"t",[2*cos(t),sin(2*t)],1,t,</span><span class="font-latex-sedate"><span class="comment">\tv</span></span><span class="comment">)
</span><span class="comment-delimiter">% </span><span class="font-latex-sedate"><span class="comment">\end</span></span><span class="comment">{TVP}
</span><span class="comment-delimiter">% </span><span class="comment">%
</span>
+<span class="comment-delimiter">% </span><span class="comment">Fonctions </span><span class="comment"><span class="flyspell-incorrect">prolongeables</span></span><span class="comment"> par continuit&#233;
+</span><span class="comment-delimiter">% </span><span class="comment"><span class="flyspell-duplicate">TVPC</span></span><span class="comment">([intervalles d'&#233;tude],[valeurs </span><span class="comment"><span class="flyspell-duplicate">prolongeables</span></span><span class="comment">],[valeurs interdites pour f'],"g","t",e^(-1/x^2),1,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">\begin</span></span><span class="comment">{TVPC}
+</span><span class="comment-delimiter">% </span><span class="comment">TVPC([-infinity,+infinity],[0],[0],"g","t",e^(-1/x^2),1,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">{TVPC}
+</span>
+
@@ -162,17 +183,17 @@
</span>
<span class="font-latex-sedate">\RequirePackage</span>{filecontents}
-<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-incorrect">ifthen</span>}
+<span class="font-latex-sedate">\RequirePackage</span>{<span class="flyspell-incorrect">fancyvrb</span>}
+<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 present
+<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>
-<span class="font-latex-sedate">\newboolean</span>{xcas}<span class="font-latex-sedate">\setboolean</span>{xcas}{false}
-<span class="font-latex-sedate">\DeclareOption</span>{xcas}{<span class="font-latex-sedate">\setboolean</span>{xcas}{true}}
+<span class="font-latex-sedate">\newboolean</span>{xcas}<span class="font-latex-sedate">\setboolean</span>{xcas}{<span class="flyspell-duplicate">false</span>}
+<span class="font-latex-sedate">\DeclareOption</span>{xcas}{<span class="font-latex-sedate">\setboolean</span>{xcas}{<span class="flyspell-incorrect">true</span>}}
<span class="font-latex-sedate">\ProcessOptions</span><span class="font-latex-sedate">\relax</span>
@@ -180,22 +201,23 @@
-<span class="comment-delimiter">%% </span><span class="comment">Initialisation du choix d'OS
-</span><span class="font-latex-sedate">\newboolean</span>{windows}<span class="font-latex-sedate">\setboolean</span>{windows}{false}
+<span class="comment-delimiter">%% </span><span class="comment">Initialisation du choix </span><span class="comment"><span class="flyspell-incorrect">d'OS</span></span><span class="comment">
+</span><span class="font-latex-sedate">\newboolean</span>{windows}<span class="font-latex-sedate">\setboolean</span>{windows}{<span class="flyspell-duplicate">false</span>}
+
<span class="comment-delimiter">%% </span><span class="comment">on configure tablor dans un fichier exterieur pour la plateforme
-</span><span class="comment-delimiter">%% </span><span class="comment">et l'editeur
+</span><span class="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="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>{windows}}<span class="comment">%
+</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"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\rem</span></span><span class="function-name">}</span>{DEL } <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cat</span></span><span class="function-name">}</span>{TYPE }
- <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cp</span></span><span class="function-name">}</span>{COPY }}<span class="comment">%
-</span> {<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\rem</span></span><span class="function-name">}</span>{rm }<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cat</span></span><span class="function-name">}</span>{cat }
- <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cp</span></span><span class="function-name">}</span>{cp }}
+ <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\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>{<span class="flyspell-duplicate">cat</span> }
+ <span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\cp</span></span><span class="function-name">}</span>{<span class="flyspell-duplicate">cp</span> }}
@@ -203,26 +225,26 @@
-<span class="comment-delimiter">%% </span><span class="comment">pour ceux compilant via pdflatex
+<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>
<span class="font-latex-sedate">\ifpdf</span>
-<span class="font-latex-sedate">\DeclareGraphicsRule</span>{*}{mps}{*}{}
+<span class="font-latex-sedate">\DeclareGraphicsRule</span>{*}{<span class="flyspell-incorrect">mps</span>}{*}{}
<span class="font-latex-sedate">\fi</span>
<span class="comment-delimiter">%% </span><span class="comment">pour nettoyer les fichiers auxiliaires
</span>
-<span class="font-latex-sedate">\AtEndDocument</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> *.user XCas* Xcas* *.mpx}
+<span class="font-latex-sedate">\AtEndDocument</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> *.user XCas* Xcas* *.<span class="flyspell-incorrect">mpx</span>}
}
-<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.mp}
+ <span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{queue.<span class="flyspell-duplicate">mp</span>}
- end
+ <span class="flyspell-duplicate">end</span>
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -235,7 +257,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>}
}
@@ -244,48 +266,48 @@
<span class="comment-delimiter">%% </span><span class="comment">Donne comme prefixe aux tableaux le prefixe courant
</span><span class="comment-delimiter">%% </span><span class="comment">Peut-&#234;tre modifie par </span><span class="font-latex-sedate"><span class="comment">\initablor</span></span><span class="comment">
</span>
-<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\Tableaux</span></span><span class="function-name">}</span>{<span class="font-latex-sedate">\jobname</span>}
+<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">\nomtravail</span></span><span class="function-name">}</span>{<span class="font-latex-sedate">\jobname</span>}
<span class="comment-delimiter">%% </span><span class="comment">initialise les compteurs
</span>
-<span class="font-latex-sedate"><span class="keyword">\newcounter</span></span><span class="function-name">{TVn}</span>
+<span class="font-latex-sedate"><span class="keyword">\newcounter</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TVn</span></span><span class="function-name">}</span>
<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\tv</span></span><span class="function-name">}</span>{<span class="font-latex-sedate">\theTVn</span>}
-<span class="font-latex-sedate"><span class="keyword">\newcounter</span></span><span class="function-name">{TVnbis}</span>
+<span class="font-latex-sedate"><span class="keyword">\newcounter</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TVnbis</span></span><span class="function-name">}</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">\tvbis</span></span><span class="function-name">}</span>{<span class="font-latex-sedate">\theTVnbis</span>}
<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">%
-</span><span class="font-latex-sedate"><span class="keyword">\renewcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\Tableaux</span></span><span class="function-name">}</span>{#1}<span class="comment">% Arret du nom des tableaux
+</span><span class="font-latex-sedate"><span class="keyword">\renewcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\nomtravail</span></span><span class="function-name">}</span>{#1}<span class="comment">% Arret du nom des tableaux
</span><span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{0}</span><span class="comment">% Initialisation du compteur de tableaux.
-</span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{xcas}}<span class="comment">% Avec l'option XCas
-</span>{<span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\Tableaux</span>.Tab.mp}<span class="comment">% Si Tableaux.mp est present...
-</span> {<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}}<span class="comment">% le detruire
+</span><span class="font-latex-sedate">\ifthenelse</span>{<span class="font-latex-sedate">\boolean</span>{xcas}}<span class="comment">% Avec l'option </span><span class="comment"><span class="flyspell-duplicate">XCas</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">% Si Tableaux.mp est </span><span class="comment"><span class="flyspell-duplicate">present</span></span><span class="comment">...
+</span> {<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\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">\Tableaux</span>.Tab.mp}<span class="comment">% Reconstituer l'ent&#234;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&#234;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">\Tableaux</span>.Tab.mp}<span class="comment">% Sans l'option XCas, si
+{<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">\Tableaux</span>.Tab}}<span class="comment">% l'executer pour reconstituer les figures
+</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost -interaction=batchmode <span class="font-latex-sedate">\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 &#234;tre presents )
+</span> <span class="comment">% peuvent &#234;tre </span><span class="comment"><span class="flyspell-incorrect">presents</span></span><span class="comment"> )
</span>}}<span class="comment">%
</span>
-<span class="comment-delimiter">%% </span><span class="comment">commande pour lancer giac selon l'OS
+<span class="comment-delimiter">%% </span><span class="comment">commande pour lancer giac selon </span><span class="comment"><span class="flyspell-duplicate">l'OS</span></span><span class="comment">
</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="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{giac &lt;#1 }}}
+</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">\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{<span class="flyspell-duplicate">giac</span> &lt;#1 }}}
<span class="font-latex-sedate">\makeatother</span>
@@ -293,7 +315,7 @@
<span class="comment-delimiter">%%%</span><span class="comment">
</span><span class="comment-delimiter">%</span><span class="comment">
-</span><span class="comment-delimiter">%%% </span><span class="comment">LES SCRIPTS GIAC/XCAS
+</span><span class="comment-delimiter">%%% </span><span class="comment">LES SCRIPTS GIAC/</span><span class="comment"><span class="flyspell-incorrect">XCAS</span></span><span class="comment">
</span><span class="comment-delimiter">%</span><span class="comment">
</span><span class="comment-delimiter">%%%</span><span class="comment">
</span>
@@ -306,83 +328,326 @@
</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">TV</span>(L,F,nom,nomv,f,ftt,trigo,nmr):={
+<span class="flyspell-duplicate">nl</span>:=size(L);
f:=unapply(f,x);
-fp:=fonction_derivee(f);
+<span class="flyspell-duplicate">fp</span>:=function_diff(f);
Z:=concat(L,F);
-S:=resoudre(fp(x),x);
- si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
- kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[nl-1]));
- if(kk==1){Z:=append(Z,simplifier(S[j]))};
- fpour
+S:=[];
+
+
+if(trigo==t){
+<span class="flyspell-duplicate">all</span>_trig_solutions:=1;
+<span class="flyspell-duplicate">reset</span>_solve_counter(-1,-1);
+<span class="flyspell-duplicate">SS</span>:=solve(factor(simplify(fp(x))),x);
+<span class="flyspell-duplicate">ns</span>:=size(SS);
+for(k:=0;k&lt;ns;k++){
+m:=0;
+<span class="flyspell-duplicate">while</span>(evalf(simplify(subst(SS[k],n_1=m)))&lt;=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))&gt;=L[0]){
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
+}
+}
+}else{
+S:=solve(fp(x),x);
+}
+
+
+ si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
+ qq:=member(simplify(S[j]),Z)==0;
+ kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[<span class="flyspell-duplicate">nl</span>-1]));
+ if(kk==1){if(qq==1){Z:=append(Z,simplify(S[j]))}};
+ <span class="flyspell-duplicate">fpour</span>
fsi;
+Z:=sort(Z);
+<span class="flyspell-duplicate">nz</span>:=size(Z);
+
+
+ tantque evalf(Z[0])==evalf(Z[1]) faire Z:=Z[1..nz-1];nz:=size(Z);
+ <span class="flyspell-duplicate">ftantque</span>;
+
+
+
+
+
+
+
+ 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]));
+ if(kk==1){Z:=append(Z,simplify(S[j]))};
+ <span class="flyspell-duplicate">fpour</span>
+ <span class="flyspell-duplicate">fsi</span>;
Z:=sort(Z);
-nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
+<span class="flyspell-duplicate">nz</span>:=size(Z);
+ si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=<span class="flyspell-duplicate">nz</span>-1;
fsi;
pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
+ 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;
-nz:=size(Z);
+<span class="flyspell-duplicate">fpour</span>;
+<span class="flyspell-duplicate">nz</span>:=size(Z);
l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" ";
-pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex);
-";fpour;
+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>;
- k0:= evalf(limite(f(x),x=Z[0],1))&gt; evalf(limite(f(x),x=Z[1],-1));
- kz:=evalf(limite(f(x),x=Z[nz-1],-1))&gt; evalf(limite(f(x),x=Z[nz-2],1));
+ k0:= evalf(limit(f(x),x=Z[0],1))&gt; evalf(limit(f(x),x=Z[1],-1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; evalf(limit(f(x),x=Z[<span class="flyspell-duplicate">nz</span>-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;"+
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;"} }}
-if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))&gt;0;
+if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.1))&gt;0;
lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}
}; }
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
+</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{"</span><span class="font-latex-math"><span class="flyspell-duplicate">nonDefBarre</span></span><span class="font-latex-math">;
"}
-lm0:=limite(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)==-</span><span class="font-latex-math"><span class="flyspell-duplicate">infinity</span></span><span class="font-latex-math">;
li:=lvic+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(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(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))&lt; evalf(limite(f(x),x=Z[r],-1));
- krp:=evalf(limite(f(x),x=Z[r],1))&gt; evalf(limite(f(x),x=Z[r+1],-1)) ;
- lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ krm:=evalf(limit(f(x),x=Z[r-1],1))&lt; evalf(limit(f(x),x=Z[r],-1));
+ krp:=evalf(limit(f(x),x=Z[r],1))&gt; 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"}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>
+ <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(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
"}}}
}; }
-lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
- lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}+
- if(kz==1){"1);"}else{"0);
-"};
+<span class="flyspell-duplicate">lnz</span>:=limit(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>;
+
+
+
+lf:=if(member(Z[nz-1],F)==0){"valPos(<span class="flyspell-duplicate">btex</span> <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);"}}
+ else{"limGauche(<span class="flyspell-duplicate">btex</span> <span class="font-latex-math">$"+
+ 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);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
-MetaLfc:=if(ftt==2){if(nz&gt;2){"
-beginTableau("+nmr+")"+
+
+
+<span class="flyspell-duplicate">MetaLfc</span>:=if(ftt==2){if(<span class="flyspell-duplicate">nz</span>&gt;2){"
+
+<span class="flyspell-duplicate">beginTableau</span>("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+lsi+lsp+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}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+"
+<span class="flyspell-duplicate">endTableau</span>;
+
+";
+}
+}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+ l0+
+li+
+<span class="flyspell-duplicate">lp</span>+
+<span class="flyspell-duplicate">lf</span>
++"
+<span class="flyspell-duplicate">endTableau</span>;
+
+";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+ l0+
+li+
+<span class="flyspell-duplicate">lf</span>
++"
+<span class="flyspell-duplicate">endTableau</span>;
+
+";}}else{
+if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+ l0+
+<span class="flyspell-duplicate">lsi</span>+lsp+lsf+
+li+
+<span class="flyspell-duplicate">lp</span>+
+<span class="flyspell-duplicate">lf</span>
++"
+<span class="flyspell-duplicate">endTableau</span>;
+
+";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
+ l0+
+<span class="flyspell-duplicate">lsi</span>+lsf+
+li+
+<span class="flyspell-duplicate">lf</span>
++"
+<span class="flyspell-duplicate">endTableau</span>;
+
+";}
+}}
+
+
+sortie:=fopen("XCasmpfc.mp");
+<span class="flyspell-duplicate">fprint</span>(sortie,Unquoted,<span class="flyspell-duplicate">MetaLfc</span>);
+<span class="flyspell-duplicate">fclose</span>(sortie);
+
+
+ }:;
+
+<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
+
+
+
+
+
+
+<span class="comment-delimiter">%%%%</span><span class="comment">
+</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 class="flyspell-duplicate">TVPC</span></span><span class="comment"> : pour les fonctions </span><span class="comment"><span class="flyspell-duplicate">prolongeables</span></span><span class="comment"> par continuit&#233;.
+</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">\begin</span></span><span class="function-name">{VerbatimOut}</span>{<span class="flyspell-incorrect">XcasTVPC</span>.cxx}
+<span class="flyspell-duplicate">TVPC</span>(L,F,<span class="flyspell-incorrect">FP</span>,nom,nomv,f,ftt,trigo,nmr):={
+nl:=size(L);
+f:=unapply(f,x);
+fp:=function_diff(f);
+Z:=concat(L,F);
+Z:=<span class="flyspell-duplicate">concat</span>(Z,<span class="flyspell-duplicate">FP</span>);
+S:=[];
+
+
+if(trigo==t){
+<span class="flyspell-duplicate">all</span>_trig_solutions:=1;
+<span class="flyspell-duplicate">reset</span>_solve_counter(-1,-1);
+<span class="flyspell-duplicate">SS</span>:=solve(factor(simplify(fp(x))),x);
+ns:=size(SS);
+for(k:=0;k&lt;ns;k++){
+m:=0;
+<span class="flyspell-duplicate">while</span>(evalf(simplify(subst(SS[k],n_1=m)))&lt;=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))&gt;=L[0]){
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
+}
+}
+}else{
+S:=solve(fp(x),x);
+}
+
+
+ si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
+ qq:=member(simplify(S[j]),Z)==0;
+ kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[nl-1]));
+ if(kk==1){if(qq==1){Z:=append(Z,simplify(S[j]))}};
+ <span class="flyspell-duplicate">fpour</span>
+ fsi;
+Z:=sort(Z);
+<span class="flyspell-duplicate">nz</span>:=size(Z);
+
+
+ tantque evalf(Z[0])==evalf(Z[1]) faire Z:=Z[1..nz-1];nz:=size(Z);
+ <span class="flyspell-duplicate">ftantque</span>;
+
+
+
+
+
+
+
+ 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]));
+ if(kk==1){Z:=append(Z,simplify(S[j]))};
+ <span class="flyspell-duplicate">fpour</span>
+ <span class="flyspell-duplicate">fsi</span>;
+
+Z:=sort(Z);
+<span class="flyspell-duplicate">nz</span>:=size(Z);
+ si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=<span class="flyspell-duplicate">nz</span>-1;
+ 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;
+<span class="flyspell-duplicate">fpour</span>;
+nz:=size(Z);
+l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" ";
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> <span class="flyspell-duplicate">etex</span>);
+";<span class="flyspell-duplicate">fpour</span>;
+
+ k0:= evalf(limit(f(x),x=Z[0],1))&gt; evalf(limit(f(x),x=Z[1],-1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; evalf(limit(f(x),x=Z[<span class="flyspell-duplicate">nz</span>-2],1));
+
+<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],FP)==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;"+
+ 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;"} }}
+
+if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.1))&gt;0;
+ lsp:=lsp+if(member(Z[r],FP)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ if(ksp==1){"plus;"}else{"moins;"}
+ }; }
+
+lsf:=if(member(Z[nz-1],</span><span class="font-latex-math"><span class="flyspell-duplicate">FP</span></span><span class="font-latex-math">)==0){""}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">lm</span></span><span class="font-latex-math">0:=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">;
+ li:=lvic+nom+"}$</span> etex);"+
+ if(member(Z[0],F)==0){"valPos(btex <span class="font-latex-math">$"+if(</span><span class="font-latex-math"><span class="flyspell-duplicate">lm</span></span><span class="font-latex-math">0==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[0],1)))}+"$</span> etex,"}
+ else{"limDroite(btex <span class="font-latex-math">$"+if(</span><span class="font-latex-math"><span class="flyspell-duplicate">lm</span></span><span class="font-latex-math">0==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[0],1)))}+"$</span> etex,"}+
+ if(k0==1){"1"}else{"0"}+
+ ");";
+
+ if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ krm:=evalf(limit(f(x),x=Z[r-1],1))&lt; evalf(limit(f(x),x=Z[r],-1));
+ krp:=evalf(limit(f(x),x=Z[r],1))&gt; 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)){
+ "valPos(btex
+ <span class="font-latex-math">$"+if(</span><span class="font-latex-math"><span class="flyspell-duplicate">lmrm</span></span><span class="font-latex-math">==1){"-\\infty"}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{latex(</span><span class="font-latex-math"><span class="flyspell-duplicate">simplify</span></span><span class="font-latex-math">(limit(f(x),x=Z[r],-1)))}+"$</span>
+ etex,"+if(krm==1){"1);"}else{"0);"} }
+ else{"valPos(btex <span class="font-latex-math">$"+latex(simplify(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:=limit(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>;
+
+
+
+<span class="flyspell-duplicate">lf</span>:=if(member(Z[nz-1],F)==0){"valPos(<span class="flyspell-duplicate">btex</span> <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);"}}
+ else{"limGauche(<span class="flyspell-duplicate">btex</span> <span class="font-latex-math">$"+
+ if(lnz==1){"-\\infty"}else{latex(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
+ if(<span class="flyspell-duplicate">kz</span>==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}};
+
+
+
+
+
+MetaLfc:=if(ftt==2){if(<span class="flyspell-duplicate">nz</span>&gt;2){"
+
+<span class="flyspell-duplicate">beginTableau</span>("+nmr+")"+
+ l0+lsi+lsp+lsf+"
+<span class="flyspell-duplicate">endTableau</span>;
+
+";}else{
+<span class="flyspell-duplicate">intro</span>+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";
}
@@ -390,41 +655,41 @@ endTableau;
l0+
li+
lp+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}}else{
-if(nz&gt;2){"beginTableau("+nmr+")"+
+if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
-lsi+lsp+lsf+
+<span class="flyspell-duplicate">lsi</span>+lsp+lsf+
li+
-lp+
+<span class="flyspell-duplicate">lp</span>+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
lsi+lsf+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}}
sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+<span class="flyspell-duplicate">fprint</span>(sortie,Unquoted,MetaLfc);
fclose(sortie);
@@ -433,6 +698,16 @@ fclose(sortie);
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
+
+
+
+
+
+
+
+
+
+
<span class="comment-delimiter">%%</span><span class="comment">
</span><span class="comment-delimiter">%%</span><span class="comment">
</span><span class="comment-delimiter">%% </span><span class="comment">TV avec une zone interdite : on rajoute comme argument la liste des intervalles interdits
@@ -442,9 +717,9 @@ fclose(sortie);
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVZ.cxx}
-TVZ(L,F,FF,nom,nomv,f,ftt,nmr):={
-nl:=size(L);
-nf:=size(FF);
+<span class="flyspell-duplicate">TVZ</span>(L,F,FF,nom,nomv,f,ftt,trigo,nmr):={
+<span class="flyspell-duplicate">nl</span>:=size(L);
+nf:=size(<span class="flyspell-duplicate">FF</span>);
Ff:=NULL;IMIN:=NULL;IMAX:=NULL;
for(k:=0;k&lt;nf;k++){
if(FF[k][0]&gt;L[0]){Imin[k]:=FF[k][0];LL:=L}else{Imin[k]:=L[0];LL:=[L[1]]};
@@ -453,57 +728,82 @@ if(FF[k][1]&lt;L[1]){Imax[k]:=FF[k][1];LL:=L}else{Imax[k]:=L[1];LL:=[L[0]]};
IMIN:=IMIN,Imin[k];
IMAX:=IMAX,Imax[k];
}
- FF:=[Ff];
- IMIN:=[IMIN];
+ FF:=[<span class="flyspell-duplicate">Ff</span>];
+ IMIN:=[<span class="flyspell-duplicate">IMIN</span>];
IMAX:=[IMAX];
f:=unapply(f,x);
-fp:=fonction_derivee(f);
+<span class="flyspell-duplicate">fp</span>:=function_diff(f);
Z:=concat(LL,F);
for(k:=0;k&lt;nf;k++){
Z:=concat(Z,FF[k]);
}
-S:=resoudre(fp(x),x);
+S:=[];
+
+
+if(trigo==t){
+all_trig_solutions:=1;
+<span class="flyspell-duplicate">reset</span>_solve_counter(-1,-1);
+SS:=solve(factor(simplify(fp(x))),x);
+ns:=size(SS);
+for(k:=0;k&lt;ns;k++){
+m:=0;
+while(<span class="flyspell-duplicate">evalf</span>(simplify(subst(SS[k],n_1=m)))&lt;=<span class="flyspell-duplicate">evalf</span>(L[nl-1])){
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1;
+};m:=-1;
+while(<span class="flyspell-duplicate">evalf</span>(subst(SS[k],n_1=m))&gt;=L[0]){
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
+}
+}
+}else{
+S:=solve(fp(x),x);
+}
+
+
+
+
+
+
si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
for(k:=0;k&lt;nf;k++){
- kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[nl-1]));
- kK:=(evalf(S[j])&lt;evalf(Imin[k])) or (evalf(S[j])&gt;evalf(Imax[k]));
+ kk:=(<span class="flyspell-duplicate">evalf</span>(S[j])&gt;=<span class="flyspell-duplicate">evalf</span>(L[0])) and (<span class="flyspell-duplicate">evalf</span>(S[j])&lt;=<span class="flyspell-duplicate">evalf</span>(L[<span class="flyspell-duplicate">nl</span>-1]));
+ kK:=(<span class="flyspell-duplicate">evalf</span>(S[j])&lt;<span class="flyspell-duplicate">evalf</span>(Imin[k])) or (<span class="flyspell-duplicate">evalf</span>(S[j])&gt;<span class="flyspell-duplicate">evalf</span>(Imax[k]));
Kk:=(kk) and kK;
- if(Kk==1){Z:=append(Z,simplifier(S[j]))};
+ if(Kk==1){Z:=append(Z,simplify(S[j]))};
}
fpour
- fsi;
+ <span class="flyspell-duplicate">fsi</span>;
Z:=sort(Z);
nz:=size(Z);
- si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=nz-1;
+ si Z[0]==Z[1] alors Z:=augment(Z[0],Z[2..nz-1]);nz:=<span class="flyspell-duplicate">nz</span>-1;
fsi;
pour u de 1 jusque nz-2 faire
- si Z[u]==Z[u+1] alors Z:=augment(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
+ 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;
-nz:=size(Z);
+<span class="flyspell-duplicate">fpour</span>;
+<span class="flyspell-duplicate">nz</span>:=size(Z);
for(j:=0;j&lt;nf;j++){
for(k:=1;k&lt;nz;k++){
- if ((Z[k]&gt;Imin[j])and(Z[k]&lt;Imax[j])){Z:=augment(Z[0..k-1],Z[k+1..nz-1]);nz:=nz-1;
+ if ((Z[k]&gt;Imin[j])and(Z[k]&lt;Imax[j])){Z:=augment(Z[0..k-1],Z[k+1..nz-1]);nz:=<span class="flyspell-duplicate">nz</span>-1;
}
}
}
nz:=size(Z);
-l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" ";
-pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex);
+l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; <span class="flyspell-duplicate">lf</span>:=" ";lsp:=" ";
+pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> <span class="flyspell-duplicate">etex</span>);
";fpour;
- k0:= evalf(limite(f(x),x=Z[0],1))&gt; evalf(limite(f(x),x=Z[1],-1));
- kz:=evalf(limite(f(x),x=Z[nz-1],-1))&gt; evalf(limite(f(x),x=Z[nz-2],1));
+ k0:= <span class="flyspell-duplicate">evalf</span>(limit(f(x),x=Z[0],1))&gt; <span class="flyspell-duplicate">evalf</span>(limit(f(x),x=Z[1],-1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; evalf(limit(f(x),x=Z[<span class="flyspell-duplicate">nz</span>-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(member(Z[0],IMIN)!=0){"debutNonDef;"}else{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;"+
@@ -512,121 +812,130 @@ if(member(Z[0],IMIN)!=0){"debutNonDef;"}else{if(Z[0]==-infinity){if(sign(evalf(f
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],IMIN)!=0){"debutNonDef;"}else{
- if(member(Z[r],IMAX)!=0){"finNonDef;"+
- if(ksp==1){"plus;"}else{"moins;"}}else{
+ lsp:=lsp+if(member(Z[r],IMIN)!=0){"debutNonDef;"}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{
+ if(member(Z[r],IMAX)!=0){"</span><span class="font-latex-math"><span class="flyspell-duplicate">finNonDef</span></span><span class="font-latex-math">;"+
+ if(ksp==1){"plus;"}else{"moins;"}}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{
if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
if(ksp==1){"plus;"}else{"moins;"}
}}}};
-lsf:=if(member(Z[0],IMAX)!=0){"finNonDef;"}else{if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
+</span><span class="font-latex-math"><span class="flyspell-duplicate">lsf</span></span><span class="font-latex-math">:=if(member(Z[0],IMAX)!=0){"finNonDef;"}else{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">;
"}}
-lm0:=limite(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)==-</span><span class="font-latex-math"><span class="flyspell-duplicate">infinity</span></span><span class="font-latex-math">;
li:=lvic +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(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(nz&gt;2){
for(r:=1; r&lt;=nz-2;r++){
- krm:=evalf(limite(f(x),x=Z[r-1],1))&lt; evalf(limite(f(x),x=Z[r],-1));
- krp:=evalf(limite(f(x),x=Z[r],1))&gt; evalf(limite(f(x),x=Z[r+1],-1)) ;
- lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ krm:=evalf(limit(f(x),x=Z[r-1],1))&lt; evalf(limit(f(x),x=Z[r],-1));
+ krp:=evalf(limit(f(x),x=Z[r],1))&gt; 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],IMIN)!=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);"}
- +"debutNonDef;"
- }//fsi Zr=Imin
+ latex(simplify(limit(f(x),x=Z[r],-1)))}
+ +"$</span> etex,"+if(<span class="flyspell-duplicate">krm</span>==1){
+ "1);"}<span class="flyspell-duplicate">else</span>{"0);"}
+ +"<span class="flyspell-duplicate">debutNonDef</span>;"
+ }//fsi Zr=<span class="flyspell-duplicate">Imin</span>
else{
if (member(Z[r],IMAX)!=0) {"finNonDef;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){
- "-\\infty"}else{latex(simplifier(limite(f(x),x=Z[r],1)))}
- +"$</span> etex,"+if(krp==1){
- "1);"}else{"0);"}
+ "-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}
+ +"$</span> etex,"+if(<span class="flyspell-duplicate">krp</span>==1){
+ "1);"}<span class="flyspell-duplicate">else</span>{"0);"}
}
else {
if(member(Z[r],F)){
"limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){
"-\\infty"}else{
- latex(simplifier(limite(f(x),x=Z[r],-1)))}
- +"$</span> etex,"+if(krm==1){
+ latex(simplify(limit(f(x),x=Z[r],-1)))}
+ +"$</span> etex,"+if(<span class="flyspell-duplicate">krm</span>==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);"}
+ "-\\infty"}else{latex(simplify(limit(f(x),x=Z[r],1)))}
+ +"$</span> etex,"+if(<span class="flyspell-duplicate">krp</span>==1){
+ "1);"}<span class="flyspell-duplicate">else</span>{"0);"}
}//fsi (member Zr F)
- else{"valPos(btex<span class="font-latex-math">$"+latex(simplifier(f(Z[r])))+"$</span>etex,"+
+ else{"valPos(btex<span class="font-latex-math">$"+latex(simplify(f(Z[r])))+"$</span>etex,"+
if(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){
- "0.5);"}else{
- if(krp==1){
- "1);"}else{"0);"}//felse(krp)
+ "0.5);"}<span class="flyspell-duplicate">else</span>{
+ if(<span class="flyspell-duplicate">krp</span>==1){
+ "1);"}else{"0);"}//felse(<span class="flyspell-duplicate">krp</span>)
}//felse(valpos)
}//felse(member Zr F)
} //felse(Zr=Imax)
- }//felse(Zr=Imin)
- };//ffor
- }//fsi nz
-
-lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
- lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}+
- if(kz==1){"1);"}else{"0);
-"};
+ }//felse(Zr=<span class="flyspell-duplicate">Imin</span>)
+ };//<span class="flyspell-incorrect">ffor</span>
+ }//fsi <span class="flyspell-duplicate">nz</span>
+
+lnz:=limit(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>;
+
+
+
+<span class="flyspell-duplicate">lf</span>:=if(member(Z[nz-1],F)==0){"valPos(<span class="flyspell-duplicate">btex</span> <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">$"+
+ 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);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
-MetaLfc:=if(ftt==2){if(nz&gt;2){"
-beginTableau("+nmr+")"+
+
+
+<span class="flyspell-duplicate">MetaLfc</span>:=if(ftt==2){if(nz&gt;2){"
+
+<span class="flyspell-duplicate">beginTableau</span>("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+lsi+lsp+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{
-intro+"beginTableau("+nmr+")"+
+intro+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
-lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">lsi</span>+lsf+"
+<span class="flyspell-duplicate">endTableau</span>;
";
}
-}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
+}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li+
lp+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}}else{
if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
-lsi+lsp+lsf+
+<span class="flyspell-duplicate">lsi</span>+lsp+lsf+
li+
lp+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
lsi+lsf+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}}
@@ -634,7 +943,7 @@ endTableau;
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
-fclose(sortie);
+<span class="flyspell-duplicate">fclose</span>(sortie);
}
:;
@@ -650,7 +959,7 @@ fclose(sortie);
</span>
-<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVapp.cxx}
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVapp.<span class="flyspell-duplicate">cxx</span>}
@@ -661,20 +970,32 @@ fclose(sortie);
TVapp(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);
+fp:=function_diff(f);
z0:=concat(L,F);z:=sort(z0);
nz:=size(z);
-if(L==[-infinity,+infinity]){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=-100..100);}
-else{if(L[0]==-infinity){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=-100..L[1]);}
-else{if(L[1]==+infinity){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=L[0]..100);}
-else{S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=z[0]..z[nz-1])}}};
+
+
+
+
+
+
+S:=NULL;
+if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
+<span class="flyspell-duplicate">else</span>{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
+else{if(L[1]==+infinity){j:=[seq(k,k=floor(L[0])..100)] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for;}
+else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for; }}};
+
+
+
+
+
si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])&gt;=L[0]) and (evalf(S[j])&lt;=L[1]);
- if(kk==1){if(kok==1){z:=append(z,simplifier(S[j]))}};
+ if(kk==1){if(kok==1){z:=append(z,simplify(S[j]))}};
fpour;
-fsi;
+<span class="flyspell-duplicate">fsi</span>;
S:=NULL;
@@ -686,7 +1007,7 @@ for(j:=1;j&lt;size(z);j++){
z:=[S];
Z:=sort(z);
-nz:=size(Z);
+<span class="flyspell-duplicate">nz</span>:=size(Z);
S:=NULL;
S:=S,Z[0];
@@ -697,13 +1018,13 @@ for(j:=1;j&lt;nz;j++){
Z:=[S];
-nz:=size(Z);
+<span class="flyspell-duplicate">nz</span>:=size(Z);
l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" ";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex);
-";fpour;
+";<span class="flyspell-duplicate">fpour</span>;
- k0:= evalf(limite(f(x),x=Z[0],1))&gt; evalf(limite(f(x),x=Z[1],-1));
- kz:=evalf(limite(f(x),x=Z[nz-1],-1))&gt; evalf(limite(f(x),x=Z[nz-2],1));
+ k0:= evalf(limit(f(x),x=Z[0],1))&gt; evalf(limit(f(x),x=Z[1],-1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; evalf(limit(f(x),x=Z[<span class="flyspell-duplicate">nz</span>-2],1));
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){
@@ -716,72 +1037,75 @@ if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp(Z[r]+0.01))&gt;0;
if(ksp==1){"plus;"}else{"moins;"}
}; }
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;
+</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{"</span><span class="font-latex-math"><span class="flyspell-duplicate">nonDefBarre</span></span><span class="font-latex-math">;
"}
-lm0:=limite(f(x),x=Z[0],1)==-infinity;
+lm0:=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(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(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(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ krm:=evalf(limite(f(x),x=Z[r-1],1))&lt; evalf(limite(f(x),x=Z[r],-1));
- krp:=evalf(limite(f(x),x=Z[r],1))&gt; evalf(limite(f(x),x=Z[r+1],-1)) ;
- lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ krm:=evalf(limit(f(x),x=Z[r-1],1))&lt; evalf(limit(f(x),x=Z[r],-1));
+ krp:=evalf(limit(f(x),x=Z[r],1))&gt; 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"}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>
+ "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(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);
"}}}
}; }
-lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
- lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}+
- if(kz==1){"1);"}else{"0);
-"};
-
-
+lnz:=limit(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(simplify(limit(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"+
+ if(kz==1){"1);"}<span class="flyspell-duplicate">else</span>{"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>;"}};
+
-MetaLfc:=if(ftt==2){if(nz&gt;2){"
+<span class="flyspell-duplicate">MetaLfc</span>:=if(ftt==2){if(nz&gt;2){"
-beginTableau("+nmr+")"+
+beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+lsi+lsp+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{
intro+"beginTableau("+nmr+")"+
l0+
-lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">lsi</span>+lsf+"
+<span class="flyspell-duplicate">endTableau</span>;
";
}
-}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
+}else{ if(ftt==0){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li+
lp+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
li+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}}else{
if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
lsi+lsp+lsf+
li+
-lp+
-lf
+<span class="flyspell-duplicate">lp</span>+
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
@@ -789,7 +1113,7 @@ lsi+lsf+
li+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}}
@@ -818,7 +1142,7 @@ fclose(sortie);
<span class="comment-delimiter">%%</span><span class="comment">
</span><span class="comment-delimiter">%% </span><span class="comment">Code giac/Xcas pour les Tableaux de Variations avec
-</span><span class="comment-delimiter">%% </span><span class="comment">Valeurs intermediaires
+</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">
</span>
@@ -828,58 +1152,78 @@ fclose(sortie);
<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,nmr):={
+<span class="flyspell-duplicate">TVI</span>(L,F,nom,nomv,f,ftt,ao,trigo,nmr):={
nl:=size(L);
f:=unapply(f,x);
-fp:=fonction_derivee(f);
+<span class="flyspell-duplicate">fp</span>:=function_diff(f);
Z:=concat(L,F);
-S:=resoudre(fp(x),x);
+S:=[];
+
+
+if(trigo==t){
+<span class="flyspell-duplicate">all</span>_trig_solutions:=1;
+<span class="flyspell-duplicate">reset</span>_solve_counter(-1,-1);
+SS:=solve(factor(simplify(fp(x))),x);
+<span class="flyspell-duplicate">ns</span>:=size(SS);
+for(k:=0;k&lt;ns;k++){
+m:=0;
+<span class="flyspell-duplicate">while</span>(evalf(simplify(subst(SS[k],n_1=m)))&lt;=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))&gt;=L[0]){
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
+}
+}
+}else{
+S:=solve(fp(x),x);
+}
+
si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[nl-1]));
- if(kk==1){Z:=append(Z,simplifier(S[j]))};
- fpour
+ if(kk==1){Z:=append(Z,simplify(S[j]))};
+ <span class="flyspell-duplicate">fpour</span>
fsi;
Z:=sort(Z);
-nz:=size(Z);
+<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:=nz-1;
fsi;
-fpour;
+<span class="flyspell-duplicate">fpour</span>;
nz:=size(Z);
-l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" ";
+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);
-LF:=limite(f(x),x,Z[nz-1],-1);
+LI:=limit(f(x),x,Z[0],1);
+LF:=limit(f(x),x,Z[nz-1],-1);
LP:=NULL;
-if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){LP:=LP,if(member(Z[r],F)){limite(f(x),x,Z[r],-1),limite(f(x),x,Z[r],1)}else{f(Z[r])}}};
-if(nz&gt;2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
+if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){LP:=LP,if(member(Z[r],F)){limit(f(x),x,Z[r],-1),limit(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;kk:=0;
if(NL==nz){for(k:=0;k&lt;nz-1;k++){TestS:=(sign(evalf(LL[k]-ao))==sign(evalf(LL[k+1]-ao))) or (sign(evalf(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
if(TestS==0){A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[k])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;}else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[k])+"$</span> etex);"}}
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);"};
+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(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
TestL:=(abs(LL[k])==abs(LL[k+1]));
if(TestS==0){ if( TestL==1 ){l0:=l0}else{
A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;kk:=kk+1}}else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[kk])+"$</span> etex);";kk:=kk+1}}
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);
+l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> <span class="flyspell-duplicate">etex</span>);
"};
-TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
- k0:= evalf(limite(f(x),x=Z[0],1))&gt; evalf(limite(f(x),x=Z[1],-1));
- kz:=evalf(limite(f(x),x=Z[nz-1],-1))&gt; evalf(limite(f(x),x=Z[nz-2],1));
+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(limit(f(x),x=Z[0],1))&gt; evalf(limit(f(x),x=Z[1],-1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; 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">-10))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
@@ -889,60 +1233,60 @@ lsi:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+
-if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
+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><span class="font-latex-math"><span class="flyspell-duplicate">ao</span></span><span class="font-latex-math">))==0.0);
ksp:=evalf(fp(Z[r]+0.01))&gt;0;
TestL:=(abs(LL[r])==abs(LL[r+1]));
lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
- if(ksp==1){"plus;"}else{"moins;"}+if(TestS==0){"valBarre(btex $</span> <span class="font-latex-math">$ etex);"}else{" "}+if(TestS==0){if(ksp==1){"plus;"}else{"moins;"}}else{" "};
+ 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;"}}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{" "};
}}
-else{for(r:=1; r&lt;=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))&gt;0;TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
+</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{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><span class="font-latex-math"><span class="flyspell-duplicate">ao</span></span><span class="font-latex-math">))==0.0);
TestL:=(abs(LL[r])==abs(LL[r+1]));
if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
- if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $</span> <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:=</span><span class="font-latex-math"><span class="flyspell-duplicate">rr</span></span><span class="font-latex-math">+1;}
} else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
- if(kspp==1){"plus;"}else{"moins;"};rr:=rr+1;}
+ 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;}
}}
};
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;"}
-lm0:=limite(f(x),x=Z[0],1)==-infinity;
+</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;"}
+</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)==-</span><span class="font-latex-math"><span class="flyspell-duplicate">infinity</span></span><span class="font-latex-math">;
TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
li:=lvic+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(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{" "};
if(nz&gt;2){if(nz==NL){for(r:=1; r&lt;=nz-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
- krm:=evalf(limite(f(x),x=Z[r-1],1))&lt; evalf(limite(f(x),x=Z[r],-1));
- krp:=evalf(limite(f(x),x=Z[r],1))&gt; evalf(limite(f(x),x=Z[r+1],-1)) ;
- lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ krm:=evalf(limit(f(x),x=Z[r-1],1))&lt; evalf(limit(f(x),x=Z[r],-1));
+ krp:=evalf(limit(f(x),x=Z[r],1))&gt; 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"}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>
+ "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(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+if(TestS==0){"valPos(btex
<span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"
}else{" "};
};//for
}else{rr:=1;for(r:=1; r&lt;=NL-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
- krm:=evalf(limite(f(x),x=Z[rr-1],1))&lt; evalf(limite(f(x),x=Z[rr],-1));
- krp:=evalf(limite(f(x),x=Z[rr],1))&gt; evalf(limite(f(x),x=Z[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]));
+ krm:=evalf(limit(f(x),x=Z[rr-1],1))&lt; evalf(limit(f(x),x=Z[rr],-1));
+ krp:=evalf(limit(f(x),x=Z[rr],1))&gt; evalf(limit(f(x),x=Z[rr+1],-1)) ;
+ 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(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);"}else{"0);"}}
- else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f(Z[rr])))+"$</span>
+ "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(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex
<span class="font-latex-math">$ "+ao+" $</span> etex,0.5);
";rr:=rr+1;
}// else testL==1
}//testS==0
else{lp:=lp+if(member(Z[rr],F)){
- "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
- else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f(Z[rr])))+"$</span>
+ "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[</span><span class="font-latex-math"><span class="flyspell-duplicate">rr</span></span><span class="font-latex-math">])))+"$</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);
"}}};rr:=rr+1;
}//else testS==0
@@ -952,57 +1296,63 @@ else{lp:=lp+if(member(Z[rr],F)){
};//if nz&gt;2
-lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
- lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}+
- if(kz==1){"1);"}else{"0);"};
+lnz:=limit(f(x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>;
+
+
+<span class="flyspell-duplicate">lf</span>:=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(kz==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
-MetaLfc:= if(ftt==2){if(nz&gt;2){"beginTableau("+nmr+")"+
+MetaLfc:= if(ftt==2){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+lsi+lsp+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{
"beginTableau("+nmr+")"+
l0+
-lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">lsi</span>+lsf+"
+<span class="flyspell-duplicate">endTableau</span>;
";
}
}else{
-if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
+if(ftt==0){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li+
lp+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}}else{
if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
lsi+lsp+lsf+
li+
-lp+
-lf
+<span class="flyspell-duplicate">lp</span>+
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
-lsi+lsf+
+<span class="flyspell-duplicate">lsi</span>+lsf+
li+
lf
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}};
@@ -1010,7 +1360,7 @@ endTableau;
sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+<span class="flyspell-duplicate">fprint</span>(sortie,Unquoted,MetaLfc);
fclose(sortie);
@@ -1037,23 +1387,37 @@ 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,nmr):={
+<span class="flyspell-duplicate">TVIapp</span>(L,F,nom,nomv,f,ftt,ao,<span class="flyspell-duplicate">nmr</span>):={
-nl:=size(L);
+<span class="flyspell-duplicate">nl</span>:=size(L);
f:=unapply(f,x);
-fp:=fonction_derivee(f);
+fp:=function_diff(f);
z0:=concat(L,F);z:=sort(z0);
-nz:=size(z);
-if(L==[-infinity,+infinity]){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=-100..100);}
-else{if(L[0]==-infinity){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=-100..L[1]);}
-else{if(L[1]==+infinity){S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=L[0]..100);}
-else{S:=seq(fsolve(fp(x),x,k/10,newton_solver),k=z[0]..z[nz-1])}}};
+<span class="flyspell-duplicate">nz</span>:=size(z);
+
+
+
+
+
+S:=NULL;
+if(L==[-infinity,+infinity]){j:=[seq(-100+k,k=0..200)]minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
+<span class="flyspell-duplicate">else</span>{if(L[0]==-infinity){j:=[seq(k,k=100..floor(L[1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for}
+else{if(L[1]==+infinity){j:=[seq(k,k=floor(L[0])..100)] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for;}
+else{ j:=[seq(k,k=floor(z[0])..floor(z[nz-1]))] minus F;for k in j do S:=S,fsolve(fp(x),x,k/10,newton_solver);end_for; }}};
+
+
+
+
+
+
+
+
si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
kk:=(re(S[j])==S[j]);kok:=(evalf(S[j])&gt;=L[0]) and (evalf(S[j])&lt;=L[1]);
- if(kk==1){if(kok==1){z:=append(z,simplifier(S[j]))}};
+ if(kk==1){if(kok==1){z:=append(z,simplify(S[j]))}};
fpour;
-fsi;
+<span class="flyspell-duplicate">fsi</span>;
S:=NULL;
@@ -1067,7 +1431,7 @@ z:=[S];
Z:=sort(z);
-nz:=size(Z);
+<span class="flyspell-duplicate">nz</span>:=size(Z);
S:=NULL;
S:=S,Z[0];
@@ -1078,38 +1442,38 @@ for(j:=1;j&lt;nz;j++){
Z:=[S];
-nz:=size(Z);
-l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:=" "; lf:=" ";lsp:=" ";
+<span class="flyspell-duplicate">nz</span>:=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);
-LF:=limite(f(x),x,Z[nz-1],-1);
-LP:=NULL;
-if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){LP:=LP,if(member(Z[r],F)){limite(f(x),x,Z[r],-1),limite(f(x),x,Z[r],1)}else{f(Z[r])}}};
+LI:=limit(f(x),x,Z[0],1);
+<span class="flyspell-duplicate">LF</span>:=limit(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)){limit(f(x),x,Z[r],-1),limit(f(x),x,Z[r],1)}else{f(Z[r])}}};
if(nz&gt;2){ LL:=[LI,LP,LF]}else{LL:=[LI,LF]};
-NL:=size(LL);
-A:=NULL;aa:=1;kk:=0;
+<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(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
if(TestS==0){A:=A,aa;l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[k])+"$</span> etex);"+"val(btex <span class="font-latex-math">$\\alpha_</span><span class="font-latex-subscript"><span class="font-latex-math">"</span></span><span class="font-latex-math">+aa+"$</span> etex);";aa:=aa+1;}else{l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[k])+"$</span> etex);"}}
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);"};
+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(LL[k]-ao))==0.0)or (sign(evalf(LL[k+1]-ao))==0.0);
-TestL:=(abs(LL[k])==abs(LL[k+1]));
+<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:=kk+1}}
-l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> etex);
+l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[nz-1])+"$</span> <span class="flyspell-duplicate">etex</span>);
"};
-TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
- k0:= evalf(limite(f(x),x=Z[0],1))&gt; evalf(limite(f(x),x=Z[1],-1));
- kz:=evalf(limite(f(x),x=Z[nz-1],-1))&gt; evalf(limite(f(x),x=Z[nz-2],1));
+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(limit(f(x),x=Z[0],1))&gt; evalf(limit(f(x),x=Z[1],-1));
+ kz:=evalf(limit(f(x),x=Z[nz-1],-1))&gt; evalf(limit(f(x),x=Z[<span class="flyspell-duplicate">nz</span>-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">-10))))==1){"plus;"}else{"moins;"}}else{"nonDefBarre;"+
@@ -1119,60 +1483,60 @@ lsi:=lsic+nom+"'("+nomv+")}<span class="font-latex-math">$ etex);"+
-if(nz&gt;2){rr:=1; if(nz==NL){for(r:=1; r&lt;=NL-2;r++){ TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
+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><span class="font-latex-math"><span class="flyspell-duplicate">ao</span></span><span class="font-latex-math">))==0.0);
ksp:=evalf(fp(Z[r]+0.01))&gt;0;
TestL:=(abs(LL[r])==abs(LL[r+1]));
- lsp:=lsp+if(member(Z[r],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
+ lsp:=lsp+if(member(Z[r],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(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&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><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{for(r:=1; r&lt;=NL-2;r++){kspp:=evalf(fp(Z[rr]+0.01))&gt;0;TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
TestL:=(abs(LL[r])==abs(LL[r+1]));
- if(TestS==0){if( TestL==1 ){lsp:=lsp}else{lsp:=lsp+if(member(Z[rr],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}+
- if(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $</span> <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:=rr+1;}
+ if(TestS==0){if( TestL==1 ){lsp:=lsp}else{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(kspp==1){"plus;"}else{"moins;"}+"valBarre(btex $</span> <span class="font-latex-math">$ etex);"+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;}
+ } else{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(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;}
}}
};
-lsf:=if(member(Z[nz-1],F)==0){""}else{"nomDefBarre;"}
-lm0:=limite(f(x),x=Z[0],1)==-infinity;
+</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{"</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">lm</span></span><span class="font-latex-math">0:=limit(f(x),x=Z[0],1)==-infinity;
-TestS:=(sign(evalf(LL[0]-ao))==sign(evalf(LL[1]-ao))) or (sign(evalf(LL[0]-ao))==0.0) or (sign(evalf(LL[1]-ao))==0.0);
+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><span class="font-latex-math"><span class="flyspell-duplicate">ao</span></span><span class="font-latex-math">))==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(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(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{" "};
if(nz&gt;2){if(nz==NL){for(r:=1; r&lt;=nz-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
- krm:=evalf(limite(f(x),x=Z[r-1],1))&lt; evalf(limite(f(x),x=Z[r],-1));
- krp:=evalf(limite(f(x),x=Z[r],1))&gt; evalf(limite(f(x),x=Z[r+1],-1)) ;
- lmrm:=limite(f(x),x=Z[r],-1)==-infinity;lmrp:=limite(f(x),x=Z[r],1)==-infinity;
+ krm:=evalf(limit(f(x),x=Z[r-1],1))&lt; evalf(limit(f(x),x=Z[r],-1));
+ krp:=evalf(limit(f(x),x=Z[r],1))&gt; 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"}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>
+ "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(sign(evalf(fp(Z[r]-0.01)))==sign(fp(Z[r]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+if(TestS==0){"valPos(btex
<span class="font-latex-math">$ "+ao+" $</span> etex,0.5);"
}else{" "};
};//for
}else{rr:=1;for(r:=1; r&lt;=NL-2;r++){TestS:=(sign(evalf(LL[r]-ao))==sign(evalf(LL[r+1]-ao))) or (sign(evalf(LL[r]-ao))==0.0)or (sign(evalf(LL[r+1]-ao))==0.0);
- krm:=evalf(limite(f(x),x=Z[rr-1],1))&lt; evalf(limite(f(x),x=Z[rr],-1));
- krp:=evalf(limite(f(x),x=Z[rr],1))&gt; evalf(limite(f(x),x=Z[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]));
+ krm:=evalf(limit(f(x),x=Z[rr-1],1))&lt; evalf(limit(f(x),x=Z[rr],-1));
+ krp:=evalf(limit(f(x),x=Z[rr],1))&gt; evalf(limit(f(x),x=Z[rr+1],-1)) ;
+ 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(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);"}else{"0);"}}
- else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f(Z[rr])))+"$</span>
+ "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(sign(evalf(fp(Z[rr]-0.01)))==sign(fp(Z[rr]+0.01))){"0.5);"}else{if(krp==1){"1);"}else{"0);"}}}+"valPos(btex
<span class="font-latex-math">$ "+ao+" $</span> etex,0.5);
";rr:=rr+1;
}// else testL==1
}//testS==0
else{lp:=lp+if(member(Z[rr],F)){
- "limGauche(btex <span class="font-latex-math">$"+if(lmrm==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],-1)))}+"$</span> etex,"+if(krm==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[rr],1)))}+"$</span> etex,"+if(krp==1){"1);"}else{"0);"}}
- else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f(Z[rr])))+"$</span>
+ "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[</span><span class="font-latex-math"><span class="flyspell-duplicate">rr</span></span><span class="font-latex-math">])))+"$</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);
"}}};rr:=rr+1;
}//else testS==0
@@ -1182,57 +1546,67 @@ else{lp:=lp+if(member(Z[rr],F)){
};//if nz&gt;2
-lnz:=limite(f(x),x=Z[nz-1],-1)==-infinity;
- lf:=if(member(Z[nz-1],F)==0){"valPos(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz==1){"-\\infty"}else{latex(simplifier(limite(f(x),x=Z[nz-1],-1)))}+"$</span> etex,"}+
- if(kz==1){"1);"}else{"0);"};
+lnz:=limit(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(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> <span class="flyspell-duplicate">etex</span>,"+
+ if(kz==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
-MetaLfc:= if(ftt==2){if(nz&gt;2){"beginTableau("+nmr+")"+
+
+
+
+<span class="flyspell-duplicate">MetaLfc</span>:= if(ftt==2){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+lsi+lsp+lsf+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{
-"beginTableau("+nmr+")"+
+"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
-lsi+lsf+"
-endTableau;
+<span class="flyspell-duplicate">lsi</span>+lsf+"
+<span class="flyspell-duplicate">endTableau</span>;
";
}
}else{
-if(ftt==0){if(nz&gt;2){"beginTableau("+nmr+")"+
+if(ftt==0){if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li+
-lp+
-lf
+<span class="flyspell-duplicate">lp</span>+
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
-";}else{"beginTableau("+nmr+")"+
+";}else{"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
endTableau;
";}}else{
if(nz&gt;2){"beginTableau("+nmr+")"+
l0+
-lsi+lsp+lsf+
+<span class="flyspell-duplicate">lsi</span>+lsp+lsf+
li+
lp+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
lsi+lsf+
li+
-lf
+<span class="flyspell-duplicate">lf</span>
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}};
@@ -1241,7 +1615,7 @@ endTableau;
sortie:=fopen("XCasmpfc.mp");
fprint(sortie,Unquoted,MetaLfc);
-fclose(sortie);
+<span class="flyspell-duplicate">fclose</span>(sortie);
}:;
@@ -1268,96 +1642,105 @@ fclose(sortie);
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTVP.cxx}
-
-
TVP(L,F,nom,nomv,ff,ftt,trigo,nmr):={
//local Z,LLL,FFF,nl,fp,f,S,d,t,ns,k,m,x,j,kk,nz,u,l0;
-nl:=size(L);
-fp:=[];
+<span class="flyspell-duplicate">nl</span>:=size(L);
+<span class="flyspell-duplicate">fp</span>:=[];
S:=[];
-f:=ff;
+f:=<span class="flyspell-duplicate">ff</span>;
Z:=[];
-LLL:=[];
+<span class="flyspell-duplicate">LLL</span>:=[];
+
+
+all_trig_solutions:=1;
+<span class="flyspell-duplicate">reset</span>_solve_counter(-1,-1);
+
for(d:=0;d&lt;=1;d++){
f:=subst(f,f[d]=unapply(f[d],t));
-fp:=append(fp,fonction_derivee(f[d]));
+<span class="flyspell-duplicate">fp</span>:=append(fp,function_<span class="flyspell-duplicate">diff</span>(f[d]));
LLL:=concat(L,F[d]);
Z:=LLL union Z;
+SS:=solve(factor(simplify(fp[d](t))),t);
+ns:=size(<span class="flyspell-duplicate">SS</span>);
-ns:=size(resoudre(factor(simplifier(fp[d](t))),t));
-reset_solve_counter(0);
for(k:=0;k&lt;ns;k++){
-if(trigo==1){
-all_trig_solutions:=1;
-reset_solve_counter(-1,-1);m:=0;
-while(simplifier(subst(resoudre(factor(simplifier(fp[d](t))),t)[k],n_1=m))&lt;=evalf(L[nl-1])){
-reset_solve_counter(-1,-1);
-S:=concat(S,simplifier(subst(resoudre(factor(simplifier(fp[d](t))),t)[k],n_1=m)));m:=m+1;
-reset_solve_counter(-1,-1);
+if(trigo==t){
+m:=0;
+while(evalf(simplify(subst(SS[k],n_1=m)))&lt;=evalf(L[nl-1])){
+
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m+1;
+
};m:=-1;
-while(evalf(subst(resoudre(factor(simplifier(fp[d](t))),t)[k],n_1=m))&gt;=L[0]){
-reset_solve_counter(-1,-1);
-S:=concat(S,simplifier(subst(resoudre(factor(simplifier(fp[d](t))),t)[k],n_1=m)));m:=m-1;
-reset_solve_counter(-1,-1);
+<span class="flyspell-duplicate">while</span>(evalf(subst(SS[k],n_1=m))&gt;=L[0]){
+
+S:=concat(S,simplify(subst(SS[k],n_1=m)));m:=m-1;
+
}
}else{
-S:=concat(S,resoudre(factor(simplifier(fp[d](x))),x));
+S:=concat(S,<span class="flyspell-duplicate">SS</span>);
}
}
- si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
- qq:=member(simplifier(S[j]),Z)==0;
- kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[nl-1]));
- if(kk==1){if(qq==1){Z:=append(Z,simplifier(S[j]))}};
- fpour
+
+
+ si size(S)&gt;0 alors pour j de 0 jusque size(S)-1 faire
+ qq:=member(simplify(S[j]),Z)==0;
+ kk:=(evalf(S[j])&gt;=evalf(L[0])) and (evalf(S[j])&lt;=evalf(L[<span class="flyspell-duplicate">nl</span>-1]));
+ if(kk==1){if(qq==1){Z:=append(Z,simplify(S[j]))}};
+ <span class="flyspell-duplicate">fpour</span>
fsi;
+Z:=sort(Z);
+<span class="flyspell-duplicate">nz</span>:=size(Z);
+
+
+ tantque evalf(Z[0])==evalf(Z[1]) faire Z:=Z[1..nz-1];nz:=size(Z);
+ <span class="flyspell-duplicate">ftantque</span>;
-Z:=sort(Z);
-nz:=size(Z);
-
- tantque simplifier(Z[0])==simplifier(Z[1]) faire Z:=Z[1..nz-1];nz:=size(Z);
- ftantque;
nz:=size(Z);
u:=1;
tantque (u&lt;nz-2) and (nz&gt;2) faire
- tantque Z[u]==Z[u+1] 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;
+ <span class="flyspell-duplicate">ftantque</span>;
+
+
};
+Z:=sort(Z);
+<span class="flyspell-duplicate">nz</span>:=size(Z);
+
-Z:=sort(Z);
-nz:=size(Z);
l0:=" newLigneVariables(btex <span class="font-latex-math">$"+nomv+"$</span> etex);";lp:="",""; lf:="","";lsp:="","";
pour m de 0 jusque nz-1 faire l0:=l0+"val(btex <span class="font-latex-math">$"+latex(Z[m])+"$</span> etex);
-";fpour;
+";<span class="flyspell-duplicate">fpour</span>;
lsi:="","";
-FFF:=[[],[]];
+<span class="flyspell-duplicate">FFF</span>:=[[],[]];
for(d:=0;d&lt;=1;d++){
-FFF[d]:=concat(F[d],[-infinity,+infinity]);
- k0:= evalf(limite(f[d](x),x=Z[0],1))&gt; evalf(limite(f[d](x),x=Z[1],-1));
- kz:=evalf(limite(f[d](x),x=Z[nz-1],-1))&gt; evalf(limite(f[d](x),x=Z[nz-2],1));
-
- lsi[d]:=lsic+nom[d]+"'("+nomv+")}<span class="font-latex-math">$ etex);"+if(member(Z[0],FFF[d])==0){"valBarre(btex $</span>"+latex(simplifier(fp[d](Z[0])))+"<span class="font-latex-math">$ etex);"}else{if(Z[0]==-infinity){" "}else{"nonDefBarre;
+<span class="flyspell-duplicate">FFF</span>[d]:=concat(F[d],[-infinity,+<span class="flyspell-duplicate">infinity</span>]);
+ k0:= evalf(limit(f[d](x),x=Z[0],1))&gt; evalf(limit(f[d](x),x=Z[1],-1));
+ kz:=evalf(limit(f[d](x),x=Z[nz-1],-1))&gt; 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{"<span class="flyspell-duplicate">nonDefBarre</span>;
"}}+
- if(Z[0]==-infinity){if(sign(evalf(fp[d](if(Z[1]==+infinity){0}else{Z[1]-10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F[d])==0){
- if(sign(fp[d](Z[0]+10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5)))==1){"plus;"}else{"moins;"}}else{
- if(sign(fp[d]((Z[0]+10^</span><span class="font-latex-superscript"><span class="font-latex-math">(</span></span><span class="font-latex-math">-5))))==1){"plus;"}else{"moins;"} }}
-
-if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp[d](Z[r]+0.01))&gt;0;
- lsp[d]:=lsp[d]+if(member(Z[r],F[d])==0){"valBarre(btex $</span>"+latex(simplifier(fp[d](Z[r])))+"<span class="font-latex-math">$ etex);"}else{"nonDefBarre;"}+
+ if(Z[0]==-infinity){if(sign(evalf(fp[d](if(Z[1]==+infinity){0}else{Z[1]-10^(-5)})))==1){"plus;"}else{"moins;"}}else{if(member(Z[0],F[d])==0){
+ if(sign(fp[d](Z[0]+10^(-5)))==1){"plus;"}else{"moins;"}}else{
+ if(sign(fp[d]((Z[0]+10^(-5))))==1){"plus;"}else{"moins;"} }}
+
+if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ ksp:=evalf(fp[d](Z[r]+0.01))&gt;0;
+ lsp[d]:=lsp[d]+if(member(Z[r],F[d])==0){"valBarre(btex <span class="font-latex-math">$"+latex(simplify(fp[d](Z[r])))+"$</span> etex);"}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}+
if(ksp==1){"plus;"}else{"moins;"}
}; }
-lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex $</span>"+latex(simplifier(fp[d](Z[nz-1])))+"<span class="font-latex-math">$ etex);"}else{if(Z[nz-1]==+infinity){" "}else{"nonDefBarre;"}}
+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{"<span class="flyspell-duplicate">nonDefBarre</span>;"}}
@@ -1378,31 +1761,39 @@ lsf[d]:=if(member(Z[nz-1],FFF[d])==0){"valBarre(btex $</span>"+latex(simplifier(
for(d:=0;d&lt;=1;d++){
- K0[d]:= evalf(limite(f[d](x),x=Z[0],1))&gt; evalf(limite(f[d](x),x=Z[1],-1));
- Kz[d]:=evalf(limite(f[d](x),x,Z[nz-1],-1))&gt; evalf(limite(f[d](x),x,Z[nz-2],1));
-lm0[d]:=limite(f[d](x),x,Z[0],1)==-infinity;
- li[d]:=lvic+nom[d]+"}$</span> etex);"+
- if(member(Z[0],F[d])==0){"valPos(btex <span class="font-latex-math">$"+if(lm0[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[0],1)))}+"$</span> etex,"}
- else{"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lm0[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[0],1)))}+"$</span> etex,"}+
+ K0[d]:= evalf(limit(f[d](x),x=Z[0],1))&gt; evalf(limit(f[d](x),x=Z[1],-1));
+ Kz[d]:=evalf(limit(f[d](x),x,Z[nz-1],-1))&gt; evalf(limit(f[d](x),x,Z[nz-2],1));
+//{
+//<span class="font-latex-math">$
+lm0[d]:=limit(f[d](x),x,Z[0],1)==-infinity;
+ li[d]:=lvic+nom[d]+"}$</span> <span class="flyspell-duplicate">etex</span>);"+
+ 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,"}
+ 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&gt;2){ for(r:=1; r&lt;=nz-2;r++){ krm[d]:=evalf(limite(f[d](x),x=Z[r-1],1))&lt; evalf(limite(f[d](x),x=Z[r],-1));
- krp[d]:=evalf(limite(f[d](x),x=Z[r],1))&gt; evalf(limite(f[d](x),x,Z[r+1],-1)) ;
- lmrm[d]:=limite(f[d](x),x,Z[r],-1)==-infinity;lmrp[d]:=limite(f[d](x),x,Z[r],1)==-infinity;
+
+ if(nz&gt;2){ for(r:=1; r&lt;=nz-2;r++){ krm[d]:=evalf(limit(f[d](x),x=Z[r-1],1))&lt; evalf(limit(f[d](x),x=Z[r],-1));
+ krp[d]:=evalf(limit(f[d](x),x=Z[r],1))&gt; 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(simplifier(limite(f[d](x),x,Z[r],-1)))}+"$</span>
- etex,"+if(krm[d]==1){"1);"}else{"0);"}+"nonDefBarre;limDroite(btex <span class="font-latex-math">$"+if(lmrp[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[r],1)))}+"$</span> etex,"+if(krp[d]==1){"1);"}else{"0);"}}
- else{"valPos(btex <span class="font-latex-math">$"+latex(simplifier(f[d](Z[r])))+"$</span>
- etex,"+if(sign(evalf(fp[d](Z[r]-0.001)))==sign(evalf((fp[d](Z[r]+0.001))) )){"0.5);"}else{if(krp[d]==1){"1);"}else{"0);
+ <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);"}}
+ 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);"}<span class="flyspell-duplicate">else</span>{"0);
"}}}
}; }
-lnz[d]:=limite(f[d](x),x=Z[nz-1],-1)==-infinity;
- lf[d]:=if(member(Z[nz-1],F[d])==0){"valPos(btex <span class="font-latex-math">$"+if(lnz[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[nz-1],-1)))}+"$</span> etex,"}else{"nonDefBarre;limGauche(btex <span class="font-latex-math">$"+if(lnz[d]==1){"-\\infty"}else{latex(simplifier(limite(f[d](x),x,Z[nz-1],-1)))}+"$</span> etex,"}+
- if(Kz[d]==1){"1);"}else{"0);
-"};
+<span class="flyspell-duplicate">lnz</span>[d]:=limit(f[d](x),x=Z[nz-1],-1)==-<span class="flyspell-duplicate">infinity</span>;
+
+
+<span class="flyspell-duplicate">lf</span>[d]:=if(member(Z[nz-1],F[d])==0){"valPos(<span class="flyspell-duplicate">btex</span> <span class="font-latex-math">$"+
+ if(lnz[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x=Z[nz-1],-1)))}+"$</span> <span class="flyspell-duplicate">etex</span>,"+
+ if(<span class="flyspell-duplicate">Kz</span>[d]==1){"1);"}<span class="flyspell-duplicate">else</span>{"0);"}}
+ else{"limGauche(<span class="flyspell-duplicate">btex</span> <span class="font-latex-math">$"+
+ if(lnz[d]==1){"-\\infty"}else{latex(simplify(limit(f[d](x),x=Z[nz-1],-1)))}+"$</span> <span class="flyspell-duplicate">etex</span>,"+
+ if(<span class="flyspell-duplicate">Kz</span>[d]==1){"1);nonDefBarre;"}else{"0);<span class="flyspell-duplicate">nonDefBarre</span>;"}};
+
@@ -1417,17 +1808,17 @@ lnz[d]:=limite(f[d](x),x=Z[nz-1],-1)==-infinity;
-MetaLfc:=if(ftt==2){if(nz&gt;2){"
+<span class="flyspell-duplicate">MetaLfc</span>:=if(ftt==2){if(nz&gt;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>;
";
}
@@ -1435,24 +1826,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;
+<span class="flyspell-duplicate">endTableau</span>;
";}}else{
-if(nz&gt;2){"beginTableau("+nmr+")"+
+if(nz&gt;2){"beginTableau("+<span class="flyspell-duplicate">nmr</span>+")"+
l0+
lsi[0]+lsp[0]+lsf[0]+
li[0]+
@@ -1463,18 +1854,18 @@ li[1]+
lp[1]+
lf[1]
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}else{"beginTableau("+nmr+")"+
l0+
lsi[0]+lsf[0]+
li[0]+
lf[0]+
-lsi[1]+lsf[1]+
+<span class="flyspell-duplicate">lsi</span>[1]+lsf[1]+
li[1]+
lf[1]
+"
-endTableau;
+<span class="flyspell-duplicate">endTableau</span>;
";}
}
@@ -1485,8 +1876,6 @@ fprint(sortie,Unquoted,MetaLfc);
fclose(sortie);
}:;
-
-
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -1502,26 +1891,62 @@ fclose(sortie);
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XcasTabSignL.cxx}
-TS(nomf,L,D,nmr):={
+TS(nomf,L,D,trigo,nmr):={
L:=apply(f-&gt;unapply(f,x),L)
n:=size(L);
Z:=NULL;
-
+<span class="flyspell-duplicate">nl</span>:=size(L);
+S:=[];
mini:=D[0]; maxi:=D[1];
pour k de 0 jusque n-1 faire
- S:=resoudre(L[k](x),x);
+
+
+
+
+if(trigo==t){
+all_trig_solutions:=1;
+reset_solve_counter(-1,-1);
+<span class="flyspell-duplicate">SS</span>:=solve(factor(simplify(L[k](x))),x);
+ns:=size(SS);
+for(j:=0;j&lt;ns;j++){
+m:=0;
+while(evalf(simplify(subst(SS[j],n_1=m)))&lt;=evalf(maxi)){
+S:=concat(S,simplify(subst(SS[j],n_1=m)));m:=m+1;
+};m:=-1;
+while(evalf(subst(SS[j],n_1=m))&gt;=evalf(mini)){
+S:=concat(S,simplify(subst(SS[j],n_1=m)));m:=m-1;
+}
+}
+
+}else{
+S:=solve(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]);}
+ if(S[j]&gt;mini and S[j]&lt;maxi){Z:=Z,simplify(S[j]);}
fpour;
fsi;
-fpour;
+<span class="flyspell-duplicate">fpour</span>;
+
+
+
+
+
Z:=sort(Z);
-nz:=size(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:=nz-1;
fsi;
-fpour;};
+<span class="flyspell-duplicate">fpour</span>;};
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);";
@@ -1537,8 +1962,8 @@ if(L[p]((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p
lf:=if(product(L[s]((mini+maxi)*.5),s,0,n-1)&gt;0){"plus;"}else{"moins;"};
-MetaLfc:=" beginTableau("+nmr+")
-newLigneVariables(btex $</span> {x}<span class="font-latex-math">$ etex);
+</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">$ </span><span class="font-latex-math"><span class="flyspell-duplicate">etex</span></span><span class="font-latex-math">);
"+l0+li+ lsic+nomf+"(x)}$</span> etex);"+
if(mini!=-infinity and product(L[s](mini),s,0,n-1)==0){"
valBarre(btex 0 etex);"}else{"
@@ -1553,9 +1978,9 @@ endTableau;
}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> etex);";
+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++){lp:="";
@@ -1566,25 +1991,25 @@ for(p:=0;p&lt;=n-1;p++){lp:="";
if(L[p](Z[0]-0.01)&gt;0){"plus;"}else{"moins;"};
for(r:=0; r&lt;=nz-2;r++){
- lp:=lp+if(simplifier(L[p](Z[r]))==0){"
+ lp:=lp+if(simplify(L[p](Z[r]))==0){"
valBarre(btex 0 etex);"}else{"barre;
"}+
if(L[p]((Z[r]+Z[r+1])*.5)&gt;0){"plus;"}else{"moins;"}};
- li:=li+lp+ if(simplifier(L[p](Z[nz-1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}+
+ 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)&gt;0){"plus;"}else{"moins;
"}+if(maxi!=+infinity and L[p](maxi)==0){"
- valBarre(btex 0 etex);"}else{"
+ valBarre(btex 0 etex);"}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{"
"}
};
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 etex);"
+ 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><span class="font-latex-math"><span class="flyspell-duplicate">etex</span></span><span class="font-latex-math">);"
fpour
MetaLfc:=" beginTableau("+nmr+")
-newLigneVariables(btex $</span> {x}<span class="font-latex-math">$ etex);
+</span><span class="font-latex-math"><span class="flyspell-duplicate">newLigneVariables</span></span><span class="font-latex-math">(btex $</span> {x}<span class="font-latex-math">$ etex);
"+l0+
li
+ lsic+nomf+"(x)}$</span> etex);"+
@@ -1619,51 +2044,98 @@ fclose(sortie);
<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):={
+TSq(nomf,L,Fo,D,trigo,nmr):={
L:=apply(f-&gt;unapply(f,x),L);
-Fo:=apply(f-&gt;unapply(f,x),Fo);
+<span class="flyspell-duplicate">Fo</span>:=apply(f-&gt;unapply(f,x),Fo);
L:=concat(L,Fo);
n:=size(L);
Z:=NULL;
m:=size(Fo);
-F:=NULL;FF:=NULL;
+F:=NULL;FF:=<span class="flyspell-duplicate">NULL</span>;
mini:=D[0]; maxi:=D[1];
-
+S:=[];
+<span class="flyspell-duplicate">SF</span>:=[];
pour k de 0 jusque n-1 faire
- S:=resoudre(L[k](x),x);
+
+
+
+if(trigo==t){
+<span class="flyspell-duplicate">all</span>_trig_solutions:=1;
+reset_solve_counter(-1,-1);
+<span class="flyspell-duplicate">SS</span>:=solve(factor(simplify(L[k](x))),x);
+ns:=size(SS);
+for(j:=0;j&lt;ns;j++){
+mm:=0;
+while(evalf(simplify(subst(SS[j],n_1=mm)))&lt;=evalf(maxi)){
+S:=concat(S,simplify(subst(SS[j],n_1=mm)));mm:=mm+1;
+};mm:=-1;
+while(evalf(subst(SS[j],n_1=mm))&gt;=evalf(mini)){
+S:=concat(S,simplify(subst(SS[j],n_1=mm)));mm:=mm-1;
+}
+}
+
+}else{
+S:=solve(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]);}
+ if(S[j]&gt;mini and S[j]&lt;maxi){Z:=Z,simplify(S[j]);}
fpour;
fsi;
-fpour;
+<span class="flyspell-duplicate">fpour</span>;
pour k de 0 jusque m-1 faire
- SF:=resoudre(Fo[k](x),x);
+
+
+
+if(trigo==1){
+<span class="flyspell-duplicate">all</span>_trig_solutions:=1;
+<span class="flyspell-duplicate">reset</span>_solve_counter(-1,-1);
+SSF:=solve(factor(simplify(Fo[k](x))),x);
+nsf:=size(SSF);
+for(j:=0;j&lt;nsf;j++){
+mm:=0;
+<span class="flyspell-duplicate">while</span>(evalf(simplify(subst(SSF[j],n_1=mm)))&lt;=evalf(maxi)){
+<span class="flyspell-duplicate">SF</span>:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm+1;
+};mm:=-1;
+while(evalf(subst(SSF[j],n_1=mm))&gt;=evalf(mini)){
+<span class="flyspell-duplicate">SF</span>:=concat(SF,simplify(subst(SSF[j],n_1=mm)));mm:=mm-1;
+}
+}
+
+}else{
+SF:=solve(Fo[j](x),x);
+}
+
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]);}
- fpour;
+ FF:=FF,simplify(SF[j]);
+ if(SF[j]&gt;mini and SF[j]&lt;maxi){F:=F,simplify(SF[j]);}
+ <span class="flyspell-duplicate">fpour</span>;
fsi;
-fpour;
+<span class="flyspell-duplicate">fpour</span>;
Z:=sort(Z); // on classe les zeros dans l'ordre croissant
-nz:=size(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:=nz-1; // pour les zeros en double
fsi;
-fpour;}
+<span class="flyspell-duplicate">fpour</span>;}
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:=nz-1;
+ 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;
-fpour;};
+<span class="flyspell-duplicate">fpour</span>;};
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);";
@@ -1681,9 +2153,9 @@ if(L[p]((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"}+if(maxi!=+infinity and L[p
-MetaLfc:="
+</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);
+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">);
"+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){"
@@ -1700,13 +2172,13 @@ endTableau;
-}else{
+}<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> 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> etex);";
+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++){lp:="";
@@ -1717,15 +2189,15 @@ for(p:=0;p&lt;=n-1;p++){lp:="";
if(L[p](Z[0]-0.01)&gt;0){"plus;"}else{"moins;"};
for(r:=0; r&lt;=nz-2;r++){
- lp:=lp+if(simplifier(L[p](Z[r]))==0){"
+ lp:=lp+if(simplify(L[p](Z[r]))==0){"
valBarre(btex 0 etex);"}else{"barre;
"}+
if(L[p]((Z[r]+Z[r+1])*.5)&gt;0){"plus;"}else{"moins;"}};
- li:=li+lp+ if(simplifier(L[p](Z[nz-1]))==0){"valBarre(btex 0 etex);"}else{"barre;"}+
+ 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)&gt;0){"plus;"}else{"moins;
"}+if(maxi!=+infinity and L[p](maxi)==0){"
- valBarre(btex 0 etex);"}else{" "}
+ valBarre(btex 0 etex);"}</span><span class="font-latex-math"><span class="flyspell-duplicate">else</span></span><span class="font-latex-math">{" "}
};
@@ -1733,14 +2205,14 @@ for(p:=0;p&lt;=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)&gt;0){"plus;"}else{"moins;"}+
if(member(Z[t+1],FF)==0){"valBarre(btex 0 etex);"}else{ "nonDefBarre;"}
- fpour
+ </span><span class="font-latex-math"><span class="flyspell-duplicate">fpour</span></span><span class="font-latex-math">
-MetaLfc:="
+</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);
+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">);
"+l0+
li
+
@@ -1765,7 +2237,7 @@ endTableau;
sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+<span class="flyspell-duplicate">fprint</span>(sortie,Unquoted,MetaLfc);
fclose(sortie);
@@ -1788,16 +2260,16 @@ 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):={
-zA:=resoudre(a*x+b=0,x)[0];
-zB:=resoudre(c*x+d=0,x)[0];
+zA:=solve(a*x+b=0,x)[0];
+<span class="flyspell-duplicate">zB</span>:=solve(c*x+d=0,x)[0];
zmin:=min(zA,zB);
-zmax:=max(zA,zB);
+<span class="flyspell-duplicate">zmax</span>:=max(zA,<span class="flyspell-duplicate">zB</span>);
Meta:= "
beginTableau("+nmr+")
- newLigneVariables(btex <span class="font-latex-math">$ {x}$</span> etex);
+ newLigneVariables(btex <span class="font-latex-math">$ {x}$</span> <span class="flyspell-duplicate">etex</span>);
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> etex);
+val(btex <span class="font-latex-math">$+\\infty$</span> <span class="flyspell-duplicate">etex</span>);
"+lsic+if(a==1){"x+"}else{if(a==-1){"-x+"}else{a+"x+"}}+b+"}<span class="font-latex-math">$ etex);"
+ if(a&gt;0){"moins;"}else{"plus;"}+
if(zmin==zA){"valBarre(btex 0 etex);"}else{"barre;"}+
@@ -1808,8 +2280,8 @@ val(btex <span class="font-latex-math">$+\\infty$</span> etex);
+lsic+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;";fsi}
- else{si c&gt;0 alors "moins;"; sinon "plus;"; fsi}+
+ if(zmin==zB){si c&gt;0 alors "plus;"; sinon "moins;";<span class="flyspell-duplicate">fsi</span>}
+ else{si c&gt;0 alors "moins;"; sinon "plus;"; <span class="flyspell-duplicate">fsi</span>}+
if(zmin==zB){"barre;"}else{"valBarre(btex 0 etex);"}+
if(c&gt;0){"plus;"}else{"moins;"}
@@ -1826,7 +2298,7 @@ endTableau;
sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,Meta);
+</span><span class="font-latex-math"><span class="flyspell-duplicate">fprint</span></span><span class="font-latex-math">(sortie,Unquoted,Meta);
fclose(sortie);
@@ -1838,71 +2310,101 @@ fclose(sortie);
-%%
-%% Code giac/Xcas pour les Tableaux de Signes d'expression ne contenant
-%% qu'un seul terme
-
+%%$</span>
+<span class="comment-delimiter">%% </span><span class="comment">Code giac/Xcas pour les Tableaux de Signes d'expression ne contenant
+</span><span class="comment-delimiter">%% </span><span class="comment">qu'un seul terme
+</span>
-</span><span class="font-latex-sedate"><span class="keyword"><span class="font-latex-math">\begin</span></span></span><span class="function-name"><span class="font-latex-math">{VerbatimOut}</span></span><span class="font-latex-math">{XcasTSc.cxx}
-TSc(g,D,nmr):={
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{<span class="flyspell-duplicate">XcasTSc</span>.<span class="flyspell-duplicate">cxx</span>}
+<span class="flyspell-duplicate">TSc</span>(g,D,F,trigo,nmr):={
f:=unapply(g,x);
-Z:=NULL;
mini:=D[0]; maxi:=D[1];lm:=" ";
-S:=resoudre(f(x),x);
+Z:=mini,maxi;
+S:=[];
+
+
+
+if(trigo==t){
+all_trig_solutions:=1;
+<span class="flyspell-duplicate">reset</span>_solve_counter(-1,-1);
+<span class="flyspell-duplicate">SS</span>:=solve(factor(simplify(f(x))),x);
+<span class="flyspell-duplicate">ns</span>:=size(SS);
+for(j:=0;j&lt;ns;j++){
+m:=0;
+while(evalf(simplify(subst(SS[j],n_1=m)))&lt;=evalf(maxi)){
+S:=concat(S,simplify(subst(SS[j],n_1=m)));m:=m+1;
+};m:=-1;
+<span class="flyspell-duplicate">while</span>(evalf(subst(SS[j],n_1=m))&gt;=evalf(mini)){
+S:=concat(S,simplify(subst(SS[j],n_1=m)));m:=m-1;
+}
+}
+
+}else{
+S:=<span class="flyspell-duplicate">solve</span>(f(x),x);
+}
+
+
+
+
+
if(size(S)==0){
-l0:="val(btex $</span>"+latex(D[0])+"<span class="font-latex-math">$ etex);val(btex $</span>"+latex(D[1])+"<span class="font-latex-math">$ etex);";
-li:=if(mini!=-infinity and f(mini)==0){"
- valBarre(btex 0 etex);"}else{"
- "}+
+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);";
+li:=if(member(mini,F)!=0){"nonDefBarre;"}else{if(mini!=-infinity and f(mini)==0){"
+ valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+ "}}+
if(mini!=-infinity or maxi!=+infinity){if(f((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"}}else{if(f(0)&gt;0){"plus;"}else{"moins;"}};
-lf:=if(maxi!=+infinity and f(maxi)==0){"
- valBarre(btex 0 etex);"}else{"
- "};
+<span class="flyspell-duplicate">lf</span>:=if(member(maxi,F)!=0){"nonDefBarre;"}else{if(maxi!=+infinity and f(maxi)==0){"
+ valBarre(btex 0 etex);"}<span class="flyspell-duplicate">else</span>{"
+ "}};
}
-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">else</span>{pour j de 0 jusque size(S)-1 faire
+ if(S[j]&gt;mini and S[j]&lt;maxi){Z:=Z,<span class="flyspell-duplicate">simplify</span>(S[j])};
fpour;
-
+Z:=concat([Z],F);
Z:=sort(Z);
-nz:=size(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:=nz-1;
+ si Z[u]==Z[u+1] alors Z:=concat(Z[0..u-1],Z[u+1..nz-1]);nz:=nz-1;
fsi;
-fpour;}
+<span class="flyspell-duplicate">fpour</span>;}
+if(Z[0]==Z[1]){Z:=Z[1..nz-1];nz:=nz-1;}
+if(Z[nz-2]==Z[nz-1]){Z:=Z[0..nz-2];nz:=<span class="flyspell-duplicate">nz</span>-1;}
nz:=size(Z);
l0:=" ";li:=" ";lr:=" ";
-if(nz==0){l0:="val(btex $</span>"+latex(D[0])+"<span class="font-latex-math">$ etex);val(btex $</span>"+latex(D[1])+"<span class="font-latex-math">$ etex);";
+if(nz==2){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);";
li:=if(mini!=-infinity and f(mini)==0){"
- valBarre(btex 0 etex);"}else{"
- "}+
-if(f((mini+maxi)*0.5&gt;0)){"plus;"}else{"moins;"};
-lf:=if(maxi!=+infinity and f(maxi)==0){"
- valBarre(btex 0 etex);"}else{"
- "};
-
-}else{
-l0:="val(btex $</span>"+latex(D[0])+"<span class="font-latex-math">$ etex);";li:=" ";
-pour m de 0 jusque nz-1 faire l0:=l0+"val(btex $</span>"+latex(Z[m])+"<span class="font-latex-math">$ etex);
+ valBarre(btex 0 etex);"}else{if(member(mini,F)==0){"
+ "}else{"nonDefBarre;"}}+
+if(f((mini+maxi)*0.5)&gt;0){"plus;"}else{"moins;"};
+lf:=if(maxi!=+infinity and f(<span class="flyspell-duplicate">maxi</span>)==0){"
+ valBarre(btex 0 etex);"}else{if(member(maxi,F)==0){"
+ "}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}
+ };
+
+}<span class="flyspell-duplicate">else</span>{
+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> <span class="flyspell-duplicate">etex</span>);
";
-fpour;
-l0:=l0+"val(btex $</span>"+latex(D[1])+"<span class="font-latex-math">$ etex);";
+<span class="flyspell-duplicate">fpour</span>;
+
li:= if(mini!=-infinity and f(mini)==0){"
- valBarre(btex 0 etex);"}else{"
- "}+
-if(f(Z[0]-0.01)&gt;0){"plus;"}else{"moins;"}+"valBarre(btex 0 etex);";
+ valBarre(btex 0 etex);"}else{if(member(mini,F)==0){"
+ "}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}
+ }
-lm:=if(nz&gt;=2){for(r:=0; r&lt;=nz-2;r++){lm:=lm+if(f((Z[r]+Z[r+1])*.5)&gt;0){"plus;"}else{"moins;"}+
- "valBarre(btex 0 etex);"
- }}else{" "};
+lm:=if(nz&gt;2){for(r:=0; r&lt;nz-2;r++){lm:=lm+if(f((Z[r]+Z[r+1])*.5)&gt;0){"plus;"}else{"moins;"}+
+ if(member(Z[r+1],F)==0){"valBarre(btex 0 etex);"}else{"nonDefBarre;"}
+ }}<span class="flyspell-duplicate">else</span>{" "};
-lf:=if(f(Z[nz-1]+1.0)&gt;0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi)==0){"valBarre(btex 0 etex);"}else{"
- "};
+<span class="flyspell-duplicate">lf</span>:=if(f(Z[<span class="flyspell-duplicate">nz</span>-2]+0.1)&gt;0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi)==0){"valBarre(btex 0 etex);"}else{if(member(maxi,F)==0){"
+ "}else{"<span class="flyspell-duplicate">nonDefBarre</span>;"}
+ };
}};
@@ -1911,8 +2413,8 @@ lf:=if(f(Z[nz-1]+1.0)&gt;0){"plus;"}else{"moins;"}+if(maxi!=+infinity and f(maxi
MetaLfc:="
beginTableau("+nmr+")
-newLigneVariables(btex $</span><span class="font-latex-warning">\\</span>displaystyle {x}<span class="font-latex-math">$ etex);
- "+l0+lsic+latex(f(x))+"}$</span> etex);"+
+<span class="flyspell-duplicate">newLigneVariables</span>(btex <span class="font-latex-math">$\\displaystyle {x}$</span> <span class="flyspell-duplicate">etex</span>);
+ "+l0+lsic+latex(f(x))+"}<span class="font-latex-math">$ etex);"+
li+lm+lf
+"
endTableau;
@@ -1923,14 +2425,12 @@ endTableau;
-sortie:=fopen("XCasmpfc.mp");
-fprint(sortie,Unquoted,MetaLfc);
+sortie:=fopen("XCasmpfc.</span><span class="font-latex-math"><span class="flyspell-duplicate">mp</span></span><span class="font-latex-math">");
+</span><span class="font-latex-math"><span class="flyspell-duplicate">fprint</span></span><span class="font-latex-math">(sortie,Unquoted,MetaLfc);
fclose(sortie);
-
-
}:;
-<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
+</span><span class="font-latex-sedate"><span class="keyword"><span class="font-latex-math">\end</span></span></span><span class="function-name"><span class="font-latex-math">{VerbatimOut}</span></span><span class="font-latex-math">
@@ -1938,14 +2438,16 @@ fclose(sortie);
+%%$</span>
<span class="comment-delimiter">%%</span><span class="comment">
-</span><span class="comment-delimiter">%%</span><span class="comment">
</span><span class="comment-delimiter">%% </span><span class="comment">traitement des fichiers produits par giac/xcas
</span><span class="comment-delimiter">%%</span><span class="comment">
</span><span class="comment-delimiter">%%</span><span class="comment">
</span>
-
-
+<span class="comment-delimiter">% </span><span class="comment">pour l'&#233;chelle des tableaux taper </span><span class="font-latex-sedate"><span class="comment">\ech</span></span><span class="comment">{facteur de r&#233;duction}
+</span>
+<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="font-latex-sedate">\echelle</span>{1}
+<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="font-latex-sedate">\ech</span>[1]{<span class="font-latex-sedate"><span class="keyword">\renewcommand</span></span><span class="font-latex-sedate">\echelle</span>{#1}}
<span class="font-latex-sedate"><span class="keyword">\newcommand</span></span><span class="function-name">{</span><span class="font-latex-sedate"><span class="function-name">\dresse</span></span><span class="function-name">}</span>[1]{<span class="comment">%
@@ -1954,63 +2456,64 @@ fclose(sortie);
</span> <span class="comment">% exporter le source mp
</span> <span class="comment">% puis lancer metapost pour creer
</span> <span class="comment">% l'image du tableau
-</span> <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> XCasmpfc.mp &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}
- <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> enteteMP.cfg &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp}
- <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> XCasmpfc.mp &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp}
- <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> queue.mp &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp}
- <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost -jobname=<span class="font-latex-sedate">\Tableaux</span>.Tab <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp}
- <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp}
+</span> <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> XCasmpfc.mp &gt;&gt; <span class="font-latex-sedate">\nomtravail</span>.Tab.mp}
+ <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> enteteMP.cfg &gt;&gt; <span class="font-latex-sedate">\nomtravail</span>.Tab#1.mp}
+ <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> XCasmpfc.mp &gt;&gt; <span class="font-latex-sedate">\nomtravail</span>.Tab#1.mp}
+ <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> queue.mp &gt;&gt; <span class="font-latex-sedate">\nomtravail</span>.Tab#1.mp}
+ <span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost -jobname=<span class="font-latex-sedate">\nomtravail</span>.Tab <span class="font-latex-sedate">\nomtravail</span>.Tab#1.mp}
+ <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#1.mp}
}<span class="comment">%
</span> {<span class="comment">% sinon, si le tableau est absent, alerte.
-</span> <span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\Tableaux</span>.Tab.<span class="font-latex-sedate">\theTVn</span>}{}{<span class="comment">%
+</span> <span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\nomtravail</span>.Tab.<span class="font-latex-sedate">\theTVn</span>}{}{<span class="comment">%
</span> <span class="font-latex-sedate">\PackageError</span>{tablor}{Tableau absent non
reconstituable.}{Pour compiler il faut, soit les fichiers de
- tableaux, soit le fichier <span class="font-latex-sedate">\Tableaux</span>.Tab.mp, soit disposer de
+ tableaux, soit le fichier <span class="font-latex-sedate">\nomtravail</span>.Tab.mp, soit disposer de
XCas.}}}
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{center}</span>
- <span class="font-latex-sedate"><span class="keyword">\includegraphics</span></span><span class="constant">{</span><span class="font-latex-sedate"><span class="constant">\Tableaux</span></span><span class="constant">.Tab.</span><span class="font-latex-sedate"><span class="constant">\theTVn</span></span><span class="constant">}</span>
+ <span class="font-latex-sedate">\includegraphics</span>[scale=<span class="font-latex-sedate">\echelle</span>]{<span class="font-latex-sedate">\nomtravail</span>.Tab.<span class="font-latex-sedate">\theTVn</span>}
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{center}</span>
-<span class="font-latex-sedate">\stepcounter</span>{TVn}}
+<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">traitement des fichiers produits par giac/xcas avec possibilite
-</span><span class="comment-delimiter">%% </span><span class="comment">de modifier le fichier metapost (environnement etoile))
+</span><span class="comment-delimiter">%% </span><span class="comment">de modifier le fichier metapost (environnement </span><span class="comment"><span class="flyspell-incorrect">etoile</span></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">\dressetoile</span></span><span class="function-name">}</span>[1]{<span class="comment">%
-</span><span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\Tableaux</span>.Tab.<span class="font-latex-sedate">\theTVn</span>}{<span class="comment">% Test sur l'existence du tableau
+</span><span class="font-latex-sedate">\IfFileExists</span>{<span class="font-latex-sedate">\nomtravail</span>.Tab.<span class="font-latex-sedate">\theTVn</span>}{<span class="comment">% Test sur l'existence du tableau
</span><span class="comment-delimiter">% </span><span class="comment">Si oui, inclusion du fichier source de sauvegarde mp dans Tableaux
-</span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> TSav-<span class="font-latex-sedate">\theTVn</span>.mp &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}}
+</span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> TSav-<span class="font-latex-sedate">\theTVn</span>.mp &gt;&gt; <span class="font-latex-sedate">\nomtravail</span>.Tab.mp}}
<span class="comment-delimiter">% </span><span class="comment">Si non, lancement des operations de fabrication
</span>{<span class="font-latex-sedate">\executGiacmp</span>{XCas#1.giac}<span class="comment">%
</span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\editeur</span> XCasmpfc.mp }
<span class="comment">% Modification avec l'editeur choisi
-</span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> XCasmpfc.mp &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}
+</span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> XCasmpfc.mp &gt;&gt; <span class="font-latex-sedate">\nomtravail</span>.Tab.mp}
<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cp</span> XCasmpfc.mp TSav-<span class="font-latex-sedate">\theTVn</span>.mp} <span class="comment">% Sauvegarde du
</span> <span class="comment">% source mp sur le disque pour une
</span> <span class="comment">% inclusion ulterieure dans Tableaux.mp.
-</span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> enteteMP.cfg &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp}
-<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> XCasmpfc.mp &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp}} <span class="comment">% Inclusion du
+</span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> enteteMP.cfg &gt;&gt; <span class="font-latex-sedate">\nomtravail</span>.Tab#1.mp}
+<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> XCasmpfc.mp &gt;&gt; <span class="font-latex-sedate">\nomtravail</span>.Tab#1.mp}} <span class="comment">% Inclusion du
</span> <span class="comment">% source dans le
</span> <span class="comment">% fichier
</span> <span class="comment">% Tableaux
-</span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> queue.mp &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp}
-<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost -jobname=<span class="font-latex-sedate">\Tableaux</span>.Tab <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp}<span class="comment">% Reconstitution des tableaux
+</span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> queue.mp &gt;&gt; <span class="font-latex-sedate">\nomtravail</span>.Tab#1.mp}
+<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{mpost -jobname=<span class="font-latex-sedate">\nomtravail</span>.Tab <span class="font-latex-sedate">\nomtravail</span>.Tab#1.mp}<span class="comment">% Reconstitution des tableaux
</span> <span class="comment">% et creation du dernier. L'option
</span> <span class="comment">% pallie l'absence de end en fin de
</span> <span class="comment">% fichier
-</span><span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\rem</span> <span class="font-latex-sedate">\Tableaux</span>.Tab#1.mp}
+</span><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#1.mp}
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{center}</span>
- <span class="font-latex-sedate"><span class="keyword">\includegraphics</span></span><span class="constant">{</span><span class="font-latex-sedate"><span class="constant">\Tableaux</span></span><span class="constant">.Tab.</span><span class="font-latex-sedate"><span class="constant">\theTVn</span></span><span class="constant">}</span>
+ <span class="font-latex-sedate">\includegraphics</span>[scale=<span class="font-latex-sedate">\echelle</span>]{<span class="font-latex-sedate">\nomtravail</span>.Tab.<span class="font-latex-sedate">\theTVn</span>}
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{center}</span>
-
-<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVnbis</span></span><span class="variable-name">}</span> <span class="comment">% Restauration du compteur TVn
+<span class="font-latex-sedate">\ech</span>{1}
+<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVnbis</span></span><span class="variable-name">}</span> <span class="comment">% Restauration du compteur </span><span class="comment"><span class="flyspell-duplicate">TVn</span></span><span class="comment">
</span>}
@@ -2032,7 +2535,7 @@ fclose(sortie);
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasa.giac}
-maple_mode(0);
+<span class="flyspell-duplicate">maple</span>_mode(0);
read("config.cxx");
read("XcasTabSigna.cxx");
read("XCasa.user");
@@ -2056,7 +2559,7 @@ read("XCasa.user");
maple_mode(0);
read("config.cxx");
read("XcasTabSignQ.cxx");
-read("XCasQ.user");
+<span class="flyspell-duplicate">read</span>("XCasQ.user");
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TSq}</span><span class="comment">%
@@ -2067,19 +2570,19 @@ read("XCasQ.user");
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TSq*}</span>[1]<span class="comment">%
</span>{<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
-<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
+<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{</span><span class="variable-name"><span class="flyspell-duplicate">TVn</span></span><span class="variable-name">}{#1}</span>
<span class="font-latex-sedate">\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>??]{XCasQ.user}}
{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{Q}}
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasL.giac}
maple_mode(0);
-read("config.cxx");
+<span class="flyspell-duplicate">read</span>("config.cxx");
read("XcasTabSignL.cxx");
read("XCasL.user");
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
-<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TS}</span><span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TS</span></span><span class="function-name">}</span><span class="comment">%
</span>{<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>??]{XCasL.user}}
{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dresse</span>{L}}
@@ -2092,7 +2595,7 @@ read("XCasL.user");
<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">maple</span>_mode(0);
read("config.cxx");
read("XcasTSc.cxx");
read("XCasTSc.user");
@@ -2101,11 +2604,11 @@ read("XCasTSc.user");
-<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TSc*}</span>[1]<span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TSc</span></span><span class="function-name">*}</span>[1]<span class="comment">%
</span>{<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
-<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
+<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{</span><span class="variable-name"><span class="flyspell-duplicate">TVn</span></span><span class="variable-name">}{#1}</span>
<span class="font-latex-sedate">\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>??]{XCasTSc.user}}
-{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{TSc}}
+{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TSc</span>}}
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TSc}</span><span class="comment">%
@@ -2116,7 +2619,7 @@ read("XCasTSc.user");
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTV.giac}
maple_mode(0);
read("config.cxx");
-read("XcasTV.cxx");
+<span class="flyspell-duplicate">read</span>("XcasTV.cxx");
read("XCasTV.user");
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
@@ -2127,9 +2630,9 @@ read("XCasTV.user");
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TV*}</span>[1]{<span class="comment">%
</span><span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
-<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
+<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{</span><span class="variable-name"><span class="flyspell-duplicate">TVn</span></span><span class="variable-name">}{#1}</span>
<span class="font-latex-sedate">\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>??]{XCasTV.user}}<span class="comment">%
-</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{TV}}
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TV</span>}}
@@ -2140,20 +2643,20 @@ read("XCasTV.user");
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTVP.giac}
maple_mode(0);
read("config.cxx");
-read("XcasTVP.cxx");
+<span class="flyspell-duplicate">read</span>("XcasTVP.cxx");
read("XCasTVP.user");
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
-<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVP}</span><span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TVP</span></span><span class="function-name">}</span><span class="comment">%
</span>{<span class="font-latex-sedate">\VerbatimEnvironment</span><span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=<span class="font-latex-warning">\\</span>??]{XCasTVP.user}}<span class="comment">%
</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
-<span class="font-latex-sedate">\dresse</span>{TVP}}
+<span class="font-latex-sedate">\dresse</span>{<span class="flyspell-duplicate">TVP</span>}}
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVP*}</span>[1]{<span class="comment">%
</span><span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
-<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
+<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{</span><span class="variable-name"><span class="flyspell-duplicate">TVn</span></span><span class="variable-name">}{#1}</span>
<span class="font-latex-sedate">\VerbatimEnvironment</span><span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=<span class="font-latex-warning">\\</span>??]{XCasTVP.user}}<span class="comment">%
-</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{TVP}}
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TVP</span>}}
@@ -2166,21 +2669,21 @@ read("XCasTVP.user");
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTVZ.giac}
maple_mode(0);
-read("config.cxx");
+<span class="flyspell-duplicate">read</span>("config.cxx");
read("XcasTVZ.cxx");
read("XCasTVZ.user");
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
-<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVZ}</span><span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TVZ</span></span><span class="function-name">}</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>??]{XCasTVZ.user}}<span class="comment">%
</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
-<span class="font-latex-sedate">\dresse</span>{TVZ}}
+<span class="font-latex-sedate">\dresse</span>{<span class="flyspell-duplicate">TVZ</span>}}
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVZ*}</span>[1]{<span class="comment">%
</span><span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
<span class="font-latex-sedate">\VerbatimEnvironment</span><span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=<span class="font-latex-warning">\\</span>??]{XCasTVZ.user}}<span class="comment">%
-</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{TVZ}}
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TVZ</span>}}
@@ -2194,20 +2697,20 @@ read("XCasTVZ.user");
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTVapp.giac}
maple_mode(0);
read("config.cxx");
-read("XcasTVapp.cxx");
+<span class="flyspell-duplicate">read</span>("XcasTVapp.cxx");
read("XCasTVapp.user");
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVapp}</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>??]{XCasTVapp.user}}<span class="comment">%
</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
-<span class="font-latex-sedate">\dresse</span>{TVapp}}
+<span class="font-latex-sedate">\dresse</span>{<span class="flyspell-duplicate">TVapp</span>}}
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVapp*}</span>[1]{<span class="comment">%
</span><span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
-<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
+<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{</span><span class="variable-name"><span class="flyspell-duplicate">TVn</span></span><span class="variable-name">}{#1}</span>
<span class="font-latex-sedate">\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>??]{XCasTVapp.user}}<span class="comment">%
-</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{TVapp}}
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TVapp</span>}}
@@ -2220,7 +2723,7 @@ read("XCasTVapp.user");
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTVI.giac}
-maple_mode(0);
+<span class="flyspell-duplicate">maple</span>_mode(0);
read("config.cxx");
read("XcasTVI.cxx");
read("XCasTVI.user");
@@ -2228,14 +2731,14 @@ read("XCasTVI.user");
<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>??]{XCasTVI.user}}<span class="comment">%
-</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dresse</span>{TVI}}
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dresse</span>{<span class="flyspell-duplicate">TVI</span>}}
-<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVI*}</span>[1]<span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TVI</span></span><span class="function-name">*}</span>[1]<span class="comment">%
</span>{<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
<span class="font-latex-sedate">\VerbatimEnvironment</span><span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=<span class="font-latex-warning">\\</span>??]{XCasTVI.user}}<span class="comment">%
-</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{TVI}}
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TVI</span>}}
@@ -2244,34 +2747,65 @@ read("XCasTVI.user");
<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{XCasTVIapp.giac}
maple_mode(0);
-read("config.cxx");
+<span class="flyspell-duplicate">read</span>("config.cxx");
read("XcasTVIapp.cxx");
read("XCasTVIapp.user");
<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
-<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVIapp}</span><span class="comment">%
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TVIapp</span></span><span class="function-name">}</span><span class="comment">%
</span>{<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>??]{XCasTVIapp.user}}<span class="comment">%
-</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dresse</span>{TVIapp}}
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dresse</span>{<span class="flyspell-duplicate">TVIapp</span>}}
<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{TVIapp*}</span>[1]<span class="comment">%
</span>{<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVnbis}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
<span class="font-latex-sedate">\VerbatimEnvironment</span><span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[commandchars=<span class="font-latex-warning">\\</span>??]{XCasTVIapp.user}}<span class="comment">%
-</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{TVIapp}}
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TVIapp</span>}}
+
+
+
+
+
+<span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>{<span class="flyspell-incorrect">XCasTVPC</span>.<span class="flyspell-duplicate">giac</span>}
+maple_mode(0);
+read("config.<span class="flyspell-duplicate">cxx</span>");
+read("<span class="flyspell-duplicate">XcasTVPC</span>.<span class="flyspell-duplicate">cxx</span>");
+read("<span class="flyspell-duplicate">XCasTVPC</span>.user");
+<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
+
+<span class="font-latex-sedate"><span class="keyword">\newenvironment</span></span><span class="function-name">{</span><span class="function-name"><span class="flyspell-duplicate">TVPC</span></span><span class="function-name">}</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>[<span class="flyspell-duplicate">commandchars</span>=<span class="font-latex-warning">\\</span>??]{<span class="flyspell-duplicate">XCasTVPC</span>.user}}<span class="comment">%
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span>
+<span class="font-latex-sedate">\dresse</span>{<span class="flyspell-duplicate">TVPC</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">TVPC</span></span><span class="function-name">*}</span>[1]{<span class="comment">%
+</span><span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{</span><span class="variable-name"><span class="flyspell-duplicate">TVnbis</span></span><span class="variable-name">}{</span><span class="font-latex-sedate"><span class="variable-name">\theTVn</span></span><span class="variable-name">}</span>
+<span class="font-latex-sedate"><span class="keyword">\setcounter</span></span><span class="variable-name">{TVn}{#1}</span>
+<span class="font-latex-sedate">\VerbatimEnvironment</span><span class="font-latex-sedate"><span class="keyword">\begin</span></span><span class="function-name">{VerbatimOut}</span>[<span class="flyspell-duplicate">commandchars</span>=<span class="font-latex-warning">\\</span>??]{<span class="flyspell-duplicate">XCasTVPC</span>.user}}<span class="comment">%
+</span>{<span class="font-latex-sedate"><span class="keyword">\end</span></span><span class="function-name">{VerbatimOut}</span><span class="font-latex-sedate">\dressetoile</span>{<span class="flyspell-duplicate">TVPC</span>}}
+
+
+
+
+
+
+
+
+
<span class="comment-delimiter">%% </span><span class="comment">pour nettoyer les fichiers auxiliaires
</span>
-<span class="font-latex-sedate">\AtEndDocument</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> queue.mp &gt;&gt; <span class="font-latex-sedate">\Tableaux</span>.Tab.mp}
+<span class="font-latex-sedate">\AtEndDocument</span>{<span class="font-latex-sedate">\immediate</span><span class="font-latex-sedate">\write</span>18{<span class="font-latex-sedate">\cat</span> queue.mp &gt;&gt; <span class="font-latex-sedate">\nomtravail</span>.Tab.<span class="flyspell-duplicate">mp</span>}
}
<span class="comment-delimiter">%%</span><span class="comment">
-</span><span class="comment-delimiter">%% </span><span class="comment">Zi end -&gt; enjoy :)
+</span><span class="comment-delimiter">%% </span><span class="comment">Zi end -&gt; </span><span class="comment"><span class="flyspell-incorrect">enjoy</span></span><span class="comment"> :)
</span></pre>
</body>
</html>