TP 11 : Tracés en Scilab
Pré-requis : avant d’entamer ce TP, il faut avoir lu / compris / effectué les manipulations présentes dans le cours «Chapitre 8 : Tracés enScilab» ainsi que les précédents.
I Dans le dossierInfo_1a, créer le dossierTP_11.
I. Tracé de points
I.1. Tracés basiques
I Évaluer X = [1,2,3,4,5]; Y = [9,2,5,4,7]; plot(X,Y). Qu’obtient-on ?
I Évaluer Z = [1:5]; plot(X,Z). Quels sont les points tracés ? Où s’effectue le tracé ?
I Évaluer help clf. À quoi sert cette commande clf?
I Évaluer clf(); plot(X,Y). Le résultat est-il cohérent ?
I Évaluer scf(); plot(X,Y). Combien obtient-on de fenêtre graphique ? À quoi sert la commande scf?
I.2. Options de tracés
I Évaluer clf(); plot(X,Y,'r'); plot(X,Z,'m'). Qu’obtient-on ?
I Évaluer clf(); plot(X,Y,'ro'); plot(X,Z,'m+'). Qu’obtient-on ?
I Évaluer clf(); plot(X,Y,'ro:'); plot(X,Z,'m+–'). Qu’obtient-on ?
I Évaluer help Linespecet choisirLinespecdans le menu de gauche.
Compléter les tableaux suivants.
Commande Couleur obtenue
r Rouge
m
Noir b
Cyan Jaune w
Vert
Commande Marquage
Plus o
Croix Astérisque
^
^^
V
Pentagramme d
Commande Ligne obtenue
- Ligne continue (par défaut)
I.3. Partage de la fenêtre graphique
I Évaluer help subplot et lire la description expliquant la commande.
Recopier ci-dessous la 1ère phrase.
I Évaluer clf(); subplot(2,3,1); plot(X,Y,'r'); plot(X,Z,'m'). Qu’obtient-on ?
I Évaluer subplot(2,3,2); plot(X,Y,'ro'); plot(X,Z,'m+'). Qu’obtient-on ?
I Évaluer subplot(2,3,3); plot(X,Y,'ro:'); plot(X,Z,'m+–').
I Évaluer subplot(2,3,3); plot(X,Y,'bd-.'); plot(X,Z,'cx-').
II. Tracé d’une fonction
On considère la fonction f définie pour toutx2Rcomme suit.
f(x) =
⇢ 0 si x <0 1 e x si x>0 I Programmer la fonctionf dans un ongletSciNotes.
I Évaluer scf(); S=1:20; plot(S,f). Qu’obtient-on ?
I Comment obtenir un tracé plus lisse de la fonction f sur l’intervalle [1,20]? On pourra penser à introduire la commandelinspace.
III. Tracé d’une suite
On considère la suite (un) définie comme suit.
⇢ u1 = 1
8n2N, un+1 =f(un) I Programmer la fonctioncalculSuite qui :
⇥ prend en paramètre un entier N,
⇥ renvoie un vecteur ligneU qui contient lesN premiers éléments de la suite(un).
I Écrire les lignes de commande permettant le tracé des100 premiers éléments (avec un mar- quage Plus) de la suite(un).
I Émettre une conjecture sur la monotonie et la limite de la suite(un).
I On considère le vecteur ligne U = 1:5.
Que calcule la commandesum(U)? Et la commande cumsum(U)?
I On considère le programme suivant.
1 X = 1:100
2 U = calculSuite(100)
3 S = cumsum(U)
4 plot(X,log)
5 plot(X,S,'+') Que représente le vecteur ligne S?
I Quelle conjecture pouvez-vous émettre sur la nature de la sérieP un?
IV. Tracé d’une suite
Dans la suite, on considère la fonctionf et la suite(un) définies comme suit.
f(x) =
⇢ 0 six <0 1 e x six>0 et
⇢ u1 = 1
8n2N, un+1 =f(un) I Programmer la fonctioncalculSuite1 qui :
⇥ prend en paramètre un entier N,
⇥ renvoie un vecteur ligneU qui contient lesN premiers éléments de la suite(un).
I Écrire les lignes de commande permettant le tracé des100 premiers éléments (avec un mar- quage +) de la suite (un).
I Émettre une conjecture sur la monotonie et la limite de la suite(un).
V. Tracé d’une série
V.1. Commandes sum et cumsum
I On considère le vecteur ligne U = 1:5. Que calcule la commandesum(U)? Et la commande cumsum(U)?
I On considère le programme suivant.
1 X = 1:100
2 U = calculSuite1(100)
3 S = cumsum(U)
4 plot(X,log)
5 plot(X,S,'+')
Que représente le vecteur ligne S? On pourra se reporter à l’aide en ligne deScilab.
I Quelle conjecture pouvez-vous émettre sur la nature de la sérieP un?
V.2. Séries alternées
On souhaite effectuer une étude graphique de la série P
n>1
( 1)n n .
On note (Sn) la suite des sommes partielles associée, à savoir : 8n>1, Sn = Pn
k=1
( 1)k k . I Une sérieP
un est ditealternée si la suite(( 1)nun) est de signe constant.
Démontrer que la série P
n>1
( 1)n
n est alternée.
I Programmer la fonctioncalculSuite2 qui :
I Par quelle commande obtient-on la valeur de S100?
I Comment stocker dans un vecteurSles valeurs des100premiers éléments de la suite(Sn)n>1?
I Par quelle commande obtient-on la représentation graphique de ces 100valeurs ?
I Démontrer que les suites (S2n)n>1 et(S2n+1)n>0 sont adjacentes.
I Que peut-on en conclure ?
I Programmer la fonctionserieAlternee qui :
⇥ prend en paramètre un entier N,
⇥ stocke dans une variable Ules N premiers éléments de la suite
✓( 1)n n
◆
n>1
,
⇥ stocke dans une variable Sles N premiers éléments de la suite(Sn)n>1,
⇥ stocke dans une variable Tles éléments de la suite (S2n)n>1 d’indice plus petit que N,
⇥ stocke dans une variable Rles éléments de la suite (S2n+1)n>0 d’indice plus petit queN,
⇥ effectue la représentation graphique des points(2i, S2i) tels que2i6N. (ces points devront être représentés sous forme de losange rouge)
⇥ effectue la représentation graphique des points(2i+ 1, S2i+1) tels que2i+ 16N. (ces points devront être représentés sous forme de croix bleue)
On souhaite maintenant déterminer la limite commune ` de (S2n) et (S2n+1) à " près, où" est une valeur rentrée par l’utilisateur.
Ces suites étant adjacentes, on rappelle que l’on a :
8n2N, S2n+1 6 ` 6 S2n et S2n S2n+1 !
n!+10 I Proposer une stratégie permettant de résoudre ce problème.
I Programmer une fonction calculLApproch prenant en valeur un paramètreeps et mettant en œuvre cette stratégie.
I Comparer la valeur obtenue par votre fonction avec ln 2. Émettre une conjecture quant à la valeur de la somme +P1
k=1
( 1)k k .
I La série P
n>1
( 1)n
n est-elle absolument convergente ?