MATLAB

De WikiDMS
Aller à : navigation, rechercher
Matlab Logo.png

MATLAB est à la fois un langage de programmation et un environnement de développement développé et commercialisé par la société américaine MathWorks. MATLAB est utilisé dans les domaines de l'éducation, de la recherche et de l'industrie pour le calcul numérique mais aussi dans les phases de développement de projets.


Guide

Démarrage

Pour démarrer MATLAB en mode graphique, entrez

matlab

depuis un terminal de commandes (icône TerminalIcone.png), ou encore cliquez sur l'icône au logo de MATLAB situé sur la barre du haut.

Vous pouvez également lancer MATLAB en mode ligne de commandes. Pour ce faire entrez

matlab -nodesktop

depuis une fenêtre de terminal.

Installation de Matlab (version standalone) sur un ordinateur personnel

Matlab est disponible pour tous les membres de la communauté UdeM.

  • Visiter la page : https://www.mathworks.com/academia/tah-portal/universite-de-montreal-40641121.html.
  • Dans la boîte intitulée 'Télécharger MATLAB', cliquer sur le lien intitulé 'Commencer dès aujourd'hui'
  • Vous devez d'abord vous créer un compte 'MathWorks', obligatoirement avec votre adresse départementale.
  • Un email d'activation vous sera envoyé afin de pouvoir vous connecter avec votre compte personnalisé sur le site de Mathworks.
  • Une fois connecté vous devrez cliquer sur le bouton 'Download installer'.
  • Cliquer sur le bouton 'Download R2018a'
  • Cliquer sur le bouton qui correspond à votre type de système, que se soit Windows, Linux ou MacOS.
  • Suivez la procédure de téléchargement et d'installation.
Attention.png

Pour obtenir la clé d'activation de Matlab, utilisez votre adresse @dms.umontreal.ca ou @umontreal.ca.

Démarrer une simulation en arrière-plan

Attention.png

Avant d'entreprendre des simulations numériques sur les machines du Département, vous êtes encouragé à consulter la page Simulations, en particulier la section traitant des consignes à respecter.

Pour démarrer le script test.m en arrière-plan (batch), employez la commande

nohup matlab -nodisplay -nodesktop -nojvm -nosplash < test.m > /dev/null &

ou, tout simplement,

matlabbg < test.m > /dev/null &
Attention.png

Il est à noter que lancer une simulation en arrière plan peut s’avérer problématique lorsque vous désirez générer des graphiques et des animations.

Exemple

Dans le script qui suit, deux matrices 3x3 de nombres aléatoires sont additionnées et le résultat est enregistré, avec la fonction fprintf, dans le fichier data.csv du compte de l'usager :

rng(123);                       % La graine (de départ) du générateur de nombres aléatoires est fixée à "123".
n=3;
A=rand(n,n); B=rand(n,n);

% Ci-dessous, le fichier "data.csv" est ouvert et le résultat "A+B" est écrit sur trois colonnes séparées par une virgule. 
% Finalement, le fichier est refermé.

fichier = fopen('~/data.csv','w');
fprintf(fichier,'%6.2f, %6.2f, %6.2f\n',A+B);
fclose(fichier);

Pour démarrer ce script, appelé exemple.m, il suffit d'entrer la commande

matlabbg < exemple.m > /dev/null &

Voici l'allure du résultat enregistré dans data.csv :

1.09,   0.63,   0.96
0.99,   0.78,   0.82
1.72,   0.87,   0.66

Calculs en parallèle

Lorsque vos calculs s'y prêtent (opérations sur matrices et vecteurs, boucle avec itérations indépendantes, etc.), l'exécution de votre script en parallèle peut être très avantageuse. Vous pouvez exécuter votre code en parallèle par le processeur de la carte graphique (GPU).

Exemples

Fichiers compilés MEX et programmation GPU

MATLAB offre la possibilité de compiler des programmes écrits en C et en CUDA en fichiers MEX (MATLAB Executables), fichiers d'extension MEXGLX (Linux 32 bits) ou MEXA64 (Linux 64 bits). Les fichiers MEX doivent être exécutés depuis MATLAB. Puisque ces fichiers sont déjà compilés, ils s'exécutent très rapidement et peuvent ainsi contribuer à accélérer considérablement l'exécution de votre code MATLAB.

Le dernier exemple de la liste montre comment écrire un fichier MEX pouvant interagir avec le toolbox GPUmat, un toolbox gratuit rendant possible la programmation GPU dans MATLAB.

Voir aussi

Séminaires MATLAB

L'équipe informatique offre, selon les besoins, Un séminaire MATLAB pour introduire les outils offerts par le programme. Les fichiers suivants sont présentés pendant le séminaire :

Articles connexes

Références externes