TD 13 : Scilab (2
èmepartie)
Exercice 1 : Décrire les éléments définis par les instructions suivantes : u=linspace(8,2,3);v=-1:2:4;w=ones(1,3);M=[u;v;w]
Exercice 2 : On suppose que est déclaré numériquement et on considère le vecteur défini par x=1:n.
1. Que renvoie la commande s=sum(x) ? y=cumcum(x) ? 2. Que renvoie la commande p=prod(x) ? z=cumprod(x) ? 3. Que renvoie la commande x.^x ?
4. Que renvoie la commande x*ones(n,1) ?
5. Compléter la commande précédente pour qu’elle renvoie le réel 1
.
6. Écrire un programme permettant de déterminer le plus entier naturel tel que :
1
> 10.
Exercice 3 :
1. Comment créer le vecteur = "3,3 2 , 1,3
4 ,3 5 ,1
2 ,3 7 ,3
8 ,1 3 , 3
10) sans écrire ses coordonnées une à une ? 2. Même question avec le vecteur / = "1,1
4 ,1 9 , 1
16 , 1 25 , 1
36 , 1 49 , 1
64 , 1 81 , 1
100).
3. Même question avec le vecteur 2 = 31,3,9, … , 356.
Exercice 4 :
En utilisant min ou max, comment déterminer : 1) Le plus grand multiple de 7 inférieur à 1000 ? 2) Le plus petit multiple de 7 supérieur à 1000 ? Exercice 5 :
1. Soit A une matrice de ℳ893ℝ6à coefficients tous non nuls. Comment définir la matrice B dont tous les coefficients sont les inverses de A ?
2. Pour ;, < et rentrés par l’utilisateur, comment définir une matrice carrée d’ordre constituée de ; sur la diagonale et de < partout ailleurs ?
Exercice 6 :
Soit 3>6 la suite dé?inie par >5 et , pour tout entier naturel , >@ = 1
2A3 + >8
3a6 En définissant un vecteur u, écrire un programme qui calcule et affiche la valeur de > pour un entier naturel et un réel >5 entrés au clavier par l’utilisateur.
3b6 Ajouter une instruction qui calcule >
5
.
3c6 Toujours avec le vecteur u, Écrire une suite d’instructions permettant de déterminer le plus petit entier naturel tel que |> − 1| < 10I9.
Exercice 7 : Soit J la fonction définie, pour tout 3, /6 ∈ ℝ8, par J3, /6 = 9− 4/8.
1. Écrire un programme qui permet de tracer, en faisant varier 3, /6 dans [−2 ; 2] × [−2 ; 2], la nappe représentant la fonction J.
2. Scilab dispose d’une fonction appelée xarrows permettant de tracer le vecteur PQRRRRRS du plan d’origine 3T, /T6 et d’extrémité 3U, /U6 avec l’instruction : xarrows([xA;xB],[yA;yB])
On rappelle que VPQRRRRRSV = A3T− U68+ 3/T− /U68 désigne la distance euclidienne de P vers Q ou encore la longueur PQ.
On rappelle également que la fonction contour(x,y,f,[x1,x2,…,xn]), donne lignes de niveau choisies associées à une fonction de deux variables J.
3a6 Déterminer le vecteur X3J631,16 puis le vecteur 1
‖X3J631,16‖ X3J631,16.
En déduire l’extrémité d’un vecteur représentant > d’origine 31,16 et égal à 1
‖X3J631,16‖ X3J631,16.
3b6 Faire de même pour ^ d_origine31,06 et égal à 1
‖X3J631,06‖ X3J631,06 ainsi que pour ` d_origine 3−1,16 et égal à 1
‖X3J63−1,16‖ X3J63−1,16.
3c6 Sur quelles lignes de niveau se trouvent les points 31,16,30,16 et 3−1,16 ?
3d6 Tracer les lignes de niveau −3,1 et 3 de J et un représentant de chacun des vecteurs trouvés aux questions (a) et (b). Que remarque-t-on ?
Exercice 8 :
1. (a) On considère la série statistique x=grand(1,10000,’nor’,25,3).
Écrire un programme qui calcule la médiane, la moyenne et l’écart-type de cette série et tracer
l’histogramme en 40 classes de même amplitude pour des valeurs allant de 15 à 35, afin d’en déduire le mode de cette série. On complètera le graphique avec la densité de la loi normale associée à cette série.
(b) Mêmes questions avec la série x=grand(1,10000,’nor’,13,sqrt(5))et un histogramme en 15 classes de même amplitude pour des valeurs allant de 5 à 20.
(c) Mêmes questions avec la série x=grand(1,10000,’nor’,100,sqrt(50))et un histogramme en 40 classes de même amplitude pour des valeurs allant de 80 à 120.
2. Quels résultats concernant la loi normale ces résultats ont-ils illustrés ?
Exercice 9 :
On considère la série statistique double 3a, b6 générée par les instructions : x=rand(1,50) ; y=-2.1*x+2+0.4*grand(1,50,’nor’,-1,0.3)
Écrire un programme permettant de tracer le nuage de points associé ainsi que les deux droites de régression.
Exercice 10 :
Écrire un programme, utilisant la fonction rand, qui permet de simuler 10 000 lancers d’un dé à 6 faces numérotées de 1 à 6 et qui donne la fréquence d’apparition des faces.
Exercice 11 : Expliquer pourquoi le programme A=rand(20,20);x=sum(A<0.5) renvoie un nombre entier très proche de 200 ?
Exercice 12 : On considère le programme suivant : p=input(‘donner la valeur de p :’)
c=1, x=rand(), while x>p do x=rand(), c=c+1, end 1. Quelle est l’utilité de ce programme ?
2. En quoi diffère-t-il du programme suivant : p=input(‘donner la valeur de p :’) c=1, while rand()>p do c=c+1, end
Exercice 13 :
On désigne par c un réel de ]0,1[ et un entier naturel.
1. Écrire un programme simulant la réalisation d’une variable aléatoire d prenant la valeur 1 avec la probabilité c et la valeur −1 avec la probabilité 1 − c.
2. (a) Créer un vecteur > à une ligne et colonnes simulant les réalisations de variables aléatoires indépendantes de même loi que d, pour des valeurs de et c entrées par l’utilisateur.
(b) On considère de plus l’instruction a=sum(u==1)/n. De quelle valeur le contenu de a est-il proche ? 3. On assimile les n variables ci-dessus à des déplacements d’un point sur un axe d’origine O, les
déplacements se faisant d’une unité vers la droite avec la probabilité c et d’une unité vers la gauche avec la probabilité 1 − c.
On note a l’abscisse du point après déplacements et on pose a5 = 0 (le point est à l’origine avant le premier déplacement).
(a) Écrire un programme simulant les abscisses successives de ce point lors de ses n premiers déplacements, toujours avec et c entrés par l’utilisateur.
(b) Quelles instructions doit-on rajouter pour visualiser le trajet de ce point ? (c) Que renvoie l’instruction sum(x==0) ?
Exercice 14 :
Un mobile se déplace aléatoirement sur un axe d’origine O. A chaque instant il est soit en O d’abscisse 0, soit en A d’abscisse 1, soit en B d’abscisse 2 soit en C d’abscisse 3..
• Le mobile démarre en O ;
• Le point O est « réfléchissant », c’est-à-dire que, si à l’instant il est en O, il est certain qu’à l’instant + 1 il sera en A ;
• Si le mobile est en A à l’instant , il sera de façon équiprobable en O ou en B à l’instant + 1 ;
• S’il est en B à l’instant , il sera de façon équiprobable en A ou en C à l’instant + 1 ;
• Le point C est « absorbant », c’est-à-dire que, si à l’instant le mobile est en C, il est certain qu’à l’instant + 1 il sera encore en C.
Simuler le trajet de ce mobile sur les 20 premiers déplacements. Que remarque-t-on ?
Exercice 15 :
Un mobile se déplace aléatoirement sur les sommets d’un triangle ABC de la façon suivante :
• Le mobile se trouve sur le point A à l’instant 0 ;
• Si le mobile est sur un sommet quelconque à l’instant , alors, à l’instant + 1, il y reste avec la probabilité 2/3 ou il se place sur l’un des autres points avec la même probabilité.
1. En notant respectivement 1,2 et 3 les états associés à A, B et C, simuler le trajet de ce mobile sur les 20 premiers déplacements.
2. En simulant un grand nombre de déplacements, quel semble être l’état stable de cette chaîne ?
Exercice 16 :
On souhaite estimer la valeur de l’intégrale g 1 1 + 9h
5 par la méthode de Monte Carlo.
1. On pose b = 1
1 + a9 où a suit la loi uniforme sur [0; 1]. Comment interpréter l’intégrale du départ à l’aide de la variable aléatoire b ?
2. On pose b = 1
b
la moyenne empirique où 3b, b8, … , b6 est un échantillon de la loi de b.
Construire le vecteur 3b, b8, … , b6 avec Scilab puis donner une estimation de l’intégrale de départ.
Exercice 17 :
On souhaite estimer la valeur de la somme 3
! mI9
5 5
par la méthode de Monte Carlo.
1. Exprimer cette somme comme la probabilité d’un événement lié à une loi discrète usuelle.
2. En utilisant les fonctions find et length, estimer, à l’aide de Scilab, la valeur de cette somme.
Exercice 18 :
A l’aide de la méthode de Monte Carlo, donner une valeur approchée des sommes suivantes : 16 n10 o
√1 + q
5 5
26 1 m ×√
!
@r
36 1 92
@r
(Coup de pouce : on utilisera une loi binomiale, une loi de Poisson et une loi géométrique …)
Exercice 19 :
A l’aide de la méthode de Monte Carlo, donner une valeur approchée des intégrales suivantes : 16 g A1 + 8 sh
26 g mIt 1 + qh
@r
5 36 g mItu 1 + 8h
@r
5
(Coup de pouce : on utilisera une loi uniforme, une loi exponentielle et une loi normale …)
Exercice 20 :
On dispose d’un échantillon 3a, a8, … , a6 de la loi uniforme sur [0, v]. 1. Montrer que b =2
a
et d = + 1
Max3a, a8, … , a6 sont des estimateurs sans biais et convergents de v.
2. Simuler 1 000 fois chacun de ces deux estimateurs et comparer leurs performances pour une valeur de v et une valeur de saisies par l’utilisateur.
3. Donner leurs risques quadratiques et commenter.