1 TP d’initiation (4 séances TP)
1.1 Acces à Matlab
1.2 Variables et Matrices
1.2.1 Matrices
1.2.2 Opérations usuelles
1.2.3 Opérations sur les tableaux
1.2.4 Manipulations sur les matrices
1.3 Boucles et tests
1.4 Fonctions de base
1.4.1 Fonctions scalaires
1.4.2 Fonctions vectorielles
1.4.3 Fonctions matricielles
1.5 Graphiques
1.5.1 Visualisation des courbes en 2D
1.5.2 Visualisation des courbes en 3D
1.5.3 Visualisation des surfaces
1.6 M-fichiers
1.6.1 Fichiers « scripts » ou fichiers d’instructions
1.6.2 Fichiers ”functions”
1.6.3 Fichiers de sauvegarde
1.7 Utiliser les aides en ligne
1.7.1 La recherche par mot clef
1.7.2 La documentation hypertexte
1.8 Expressions et fonctions MATLAB utilisées
2 TP1 : Programmation structurée, tracés de courbes (4 séances TP)
2.1 Méthodologie
2.2 Premiers pas
2.3 Définition de fonctions
2.4 Représentation de fonctions
2.5 Développement de Taylor d’une fonction de plusieurs variables
2.6 Annotation d’un tracé, fonctionnalités avancées
2.7 Expressions et fonctions MATLAB utilisées
3 TP2 : Intégration numérique – Sensibilité à la discrétisation (2 séances TP)
3.1 Méthodologie
3.2 Méthode du point milieu
3.2.1 Eléments théoriques
3.2.2 Algorithme et programmation
3.2.3 Implémentation
3.2.4 Application numérique
3.3 Méthode des trapèzes
3.3.1 Eléments théoriques
3.3.2 Algorithme
3.3.3 Implémentation
3.3.4 Application numérique
3.4 Expressions et fonctions Matlab utilisées
4 TP3 : Recherche des zéros d’une fonction réelle à variable réelle (2 séances TP) 46
4.1 Objectif
4.2 Méthodologie
4.3 Méthode de dichotomie (sans test de bornes)
4.3.1 Eléments théoriques
4.3.2 Illustration théorique
4.3.3 Algorithme
4.3.4 Implémentation
4.3.5 Application numérique
4.3.6 Contre-exemple
4.4 Méthode de dichotomie (avec test de bornes)
4.4.1 Eléments théoriques
4.4.2 Algorithme
4.4.3 Implémentation
4.4.4 Application numérique
4.5 Expressions et fonctions Matlab utilisées
4.6 Complément théorique sur la précision de calcul
5 TP4 : Diagonalisation de matrices (2 séances TP) 53
5.1 Méthodologie
5.2 Quelques rappels mathématiques (*)
5.3 Position du problème physique
5.4 Programmation
5.5 Expressions et fonctions MATLAB utilisées
6 TP5 : Application de l’analyse en composantes principales à des données de procédé de traitement biologique en lit bactérien (4 séances TP)
6.1 Méthodologie
6.2 Introduction au traitement biologique en lit bactérien
Chapitre 1 TP d’initiation (4 séances TP)
Programmation Matlab
Matlab est un logiciel de calcul et de visualisation, dont les entités de base sont des matrices : Matlab est une abréviation de Matrix Laboratory.
Matlab est un langage interprété : il propose des facilités de programmation et de visualisation, ainsi qu’un grand nombre de fonctions réalisant diverses méthodes numériques. La meilleure façon d’apprendre à utiliser ce logiciel est de l’utiliser vous même, en faisant des essais, en commettant des erreurs et en essayant de comprendre les messages d’erreur qui vous seront renvoyés. Ces messages sont en anglais ! Ce document est destiné à vous aider pour quelques premiers pas avec Matlab. Les sections et sous-sections signalées par (*) donnent des compléments qui pourront vous être utiles à l’avenir, mais peuvent être réservées pour une lecture ultérieure.
1.1 Acces à Matlab
Les ordinateurs sur lesquels vous allez travailler sont configurés sous un environnement Linux. Si vous pouvez en général naviguer dans vos dossiers de manière assez naturelle comme sous Windows, il est important de connaître quelques commandes Unix qui vous permettent certains raccourcis.
Pour ouvrir une session, vous devez taper votre login et votre mot de passe. Si le login est unique pour chaque utilisateur, le mot de passe est modifiable ! Pour fermer votre session, allez dans le menu “démarrer” et choisissez “logout” ou “quittez l’environnement”(cf figure 1.1).
1.2 Variables et Matrices
1.2.1 Matrices
Dans Matlab, toutes les variables représentent des matrices. Par exemple, on multiplie deux matrices a et b par a*b, et le produit de deux scalaires s’écrit de la même façon :
ils sont interprétés comme des matrices 1X1. On peut définir une matrice dans Matlab de plusieurs façons :
– par la liste de ses éléments,
– en la générant par une suite d’instructions et de fonctions,
– en la lisant dans un fichier extérieur.
Si l’on représente la touche enter de votre clavier par le symbole ← -, les instructions
suivantes :
» A=[3 2 -2;-1 0 1;1 1 0] ← –
et
» A=[ ← –
3 2 -2 ← –
-1 0 1 ← –
1 1 0 ] ← –
créent la même matrice 3X3. Dans la suite, le symbole ← – ne sera plus indiqué.
En ayant éxecuté l’une ou l’autre de ces commandes, vous aurez remarqué que Matlab affiche la valeur de la variable A que vous venez de définir. Vous pouvez éviter l’affichage
1.2.2 Opérations usuelles
Matlab permet d’effectuer les opérations usuelles en étendant leur définition aux matrices selon les règles de l’algèbre linéaire.
L’addition et la soustraction ne méritent aucun commentaire particulier, sinon que les tailles des matrices doivent être égales, essayez :
>> 3+5
>> ans -2
>> A + ones(3)
>> m + x
La dernière commande aura entrainé cette réponse cinglante :
??? Error using ==> +
Matrix dimensions must agree.
Matlab autorise que les dimensions ne soient pas égales lorsqu’une des variables est un scalaire. A + 1 fournit la même valeur que A + ones(3).
1.3 Boucles et tests
Les principales instructions de contrôle proposées par Matlab sont for, while et if ; elles fonctionnent à peu près comme leurs équivalents dans les autres langages de programmation.
La boucle for doit respecter la syntaxe suivante :
for compteur = expression
instructions
end
1.4 Fonctions de base
1.4.1 Fonctions scalaires
Programmation Matlab
Ce sont les fonctions usuelles. Par exemple :
sin exp abs round
cos log sqrt tanh
tan rem sign acosh
Ces fonctions font partie des fonctions élémentaires proposées par Matlab. Pour en avoir la liste, vous pouvez taper :
>> help elfun
Comme la liste est longue, vous pouvez contrôler son défilement :
>> more on, help elfun, more off
Le défilement se fait ligne à ligne (en tapant une touche quelconque) ou par pages de 20 lignes (en tapant la barre d’espacements). Vous pouvez maintenant comparer la variable s calculée précédemment avec e 10 ;
>> s – exp(10)
Quelle commande devrez-vous entrer pour obtenir la valeur absolue de l’erreur relative ?
Ces fonctions traitent les variables matricielles comme des tableaux de nombres ; si la variable A représente une matrice A, la variable S = sin(A) représentera une matrice S dont les coefficients sont s i,j = sin(a i,j ). Pour l’exponentielle et la racine carrée, qui possèdent une version « matricielle », Matlab propose les fonctions expm et sqrtm.
Travaux pratiques de programmation Matlab (676 KO) (Cours PDF)