TP 1 Méca Init Matlab
TP 1 Méca Init Matlab
TP 1 Méca Init Matlab
Compétences techniques :
• Matlab comme une calculatrice.
• Tableaux : construction, et accès aux éléments—opérations basiques.
• la fonction plot
• boucles for
>> 5
>> 2+5
(1) >> a=10
>> a
>> disp(a)
(2) >> a+5
>> b=a+5
>> b=a+5;
>> c=[1,-2,7,0,10]
>> 2*c
>> d=[1;2;3;4;5]
>> size(a)
(3) >> size(c)
>> whos
(4) >> c(3)
>> d(1)+d(2)+d(3)+d(4)+d(5)
>> c(1)=0
(5) >> e=[0, 0; 0, 0]
>> pi
(6) >> cos(2*pi)
>> 2^3
Pour les lignes qui sont numérotées (1), (2), ... Décrire en une phrase ce que ces commandes font, exemple pour
(1) : ”la variable a est créée, et reçoit le scalaire 10, puis la valeur de a est affichée à l’écran” ; pour (2) : ”la
valeur contenue dans la variable a est additionnée à 5 et le résultat est affiché à l’écran”.
1.2. Messages d’erreur. Tapez l’une après l’autre les commandes suivantes, qui contiennent des
erreurs, lisez les messages d’erreur.
1 D. Vasic
TP n°1 de Mécanique Matlab L2 EEA
1.3. Boucle for. Tapez l’une après l’autre les commandes suivantes à l’invite de Matlab :
Décrivez en une phrase ce que fait la commande (1). Par exemple pour (0) : ”pour la variable ind allant de 1 à 10
par pas de 1, on affiche à l’écran la valeur de cette variable”.
1.4. Nous allons maintenant voir les tableaux en plus de détails. Tapez les commandes suivantes :
>> sin(2.5)^2+cos(2.5)^2
>> exp(log(3))
>> sqrt(-1)
1.6. Quelques fonctions associées aux tableaux
2 D. Vasic
TP n°1 de Mécanique Matlab L2 EEA
2.1. Charger cette image sous la forme d’une matrice dans le workspace à l’aide la fonction imread :
>> a=imread('pomme.png');
Les données sous forme d’une matrice sont maintenant stockées dans la matrice a qui était l’argument de sortie
de imread. Ensuite j’affiche l’image à l’écran dans une fenêtre graphique à l’aide de la commande image qui
prend la matrice a comme argument d’entrée.
>> image(a)
Ensuite, j’utilise :
>> axis equal; axis tight; xlabel(’Pixels: axe des X’); ylabel(’Pixels: axe des Y’)
Pour régler l’affichage et les labels.
2.2. Avec l’outil d’étiquetage (‘Tools/Data Tips’), mesurer la position en pixels de la pomme à l’instant t =
0.4s : la position mesurée en pixels est (X = 328, Y = 528).
Les pixels sont comptés de gauche à droite selon l’horizontale, c’est l’axe des X de l’image, et de haut en bas
selon la verticale, c’est l’axe des Y de l’image. L’outil d’étiquetage indique également la valeur en RGB de la
couleur du pixel sur lequel vous avez cliqué ; il s’agit de la proportion de Red/Blue/Green.
Mesurer ainsi les positions successives de la pomme au cours de sa chute, et sauver sous la forme d’un tableau,
le temps tvec, la position xpix et la position ypix.
>> tvec=[……….];
>> xpix=[…….....];
>> ypix=[…….....];
Il est important de bien noter ces valeurs dans votre script et pas seulement de les stocker dans un tableau en
mémoire, car la commande clear risque de tout effacer.
3 D. Vasic
TP n°1 de Mécanique Matlab L2 EEA
2.3. Mesurer sur l’image les pixels xpix0 et ypix0 correspondant à la position initiale x=0 et y=0, c’est
l’origine du repère physique qui est représenté sur les axes sur l’image.
>> xpix0=[.];
>> ypix0=[.];
2.4. Maintenant on cherche à convertir les mesures qui sont en pixel, pour obtenir des données physiques
en mètres. Pour cela j’utilise l’étalon de longueur visible sur l’image : la taille du personnage qui est
connue : un mètre et soixante centimètres.
Mesure la taille en pixels de ce personnage sur l’image perspix. En déduire la taille d’un pixel grâce à une règle
de trois :
>> taillepix=1.6/perspix
Ce personnage est notre étalon de longueur.
2.5. Procéder à la conversion de xpix et ypix en x et y en mètre. Attention, il faut tenir compte de la position
initiale xpix0 et ypix0.
2.6. Tracer la courbe qui décrit la chute de la pomme. Superposer à ce graphique la courbe théorique en
rouge.
>> xphys=ypix*taillepix;
>> yphys=xpix*taillepix;
>> plot(tvec,xphys,’b*-’);
>> title(’chute de pomme’); xlabel(’t’); ylabel(’x’);
>> hold on
>> tt=linspace(0,0.5,100);
>> plot(tt,9.81*tt.^2/2,’r-’);
Dans la figure ci-dessous, le disque a pour diamètre 9. L’aire du disque est légèrement supérieure à l’aire de
l’octogone irrégulier obtenu en rognant les coins du carré de côté 9. Cet octogone a pour aire 63, l’aire du disque
est alors évaluée à 64 soit l’aire d’un carré de côté 8. On en tire :
Cette approximation nous vient d’un ancien papyrus égyptien (cf. Wikipédia Papyrus Rhind). Les
développements limités nous offrent une méthode itérative pour calculer les décimales de π. Par exemple :
4 D. Vasic
TP n°1 de Mécanique Matlab L2 EEA
3.1. Nous allons utiliser ce développement limité pour calculer une approximation de π.
Sachant que arctan(1) = π/4, en vous aidant de la question 1.3, écrivez une boucle for qui calcule la valeur de pn
pour un entier n=40. :
5 D. Vasic