MATLAB

Le langage du calcul scientifique

Principales fonctionnalités

  • Langage de haut niveau pour le calcul numérique, la visualisation et le développement d'applications
  • Environnement interactif pour une exploration, une conception et une résolution de problèmes itératives.
  • Fonctions mathématiques pour l'algèbre linéaire, les statistiques, l'analyse de Fourier, le filtrage, l'optimisation, l'intégration numérique et la résolution d'équations différentielles ordinaires.
  • Graphiques intégrés pour la visualisation de données et outils pour la création de tracés personnalisés
  • Outils de développement pour l'amélioration de la qualité et la maintenabilité du code et l'optimisation de la performance
  • Outils pour la création d'applications avec interfaces graphiques personnalisées
  • Fonctions pour l'intégration d'algorithmes basés sur MATLAB avec des applications externes et des langages tels que C, Java, .NET et Microsoft® Excel®
Analyse et visualisation de données à l'aide du bureau MATLAB.
Agrandir Analyse et visualisation de données à l'aide du bureau MATLAB. L'environnement MATLAB permet également d'écrire des programmes et de développer des algorithmes et des applications.

Calcul numérique

MATLAB fournit un ensemble de méthodes de calculs numériques pour l'analyse de données, le développement d'algorithmes et la création de modèles. Le langage MATLAB comprend des fonctions mathématiques prenant en charge des opérations scientifiques et d'ingénierie communes. Les fonctions mathématiques principales utilisent des bibliothèques optimisées pour le processeur afin de fournir une exécution rapide des calculs de matrices et de vecteurs.

Les méthodes disponibles incluent :

  • Interpolation et régression
  • Différenciation et intégration
  • Systèmes linéaires d'équations
  • Analyse de Fourier
  • Valeurs propres et valeurs singulières
  • Équations différentielles ordinaires (EDO)
  • Matrices creuses

Les produits complémentaires MATLAB fournissent des fonctions dans des domaines spécialisés tels que les statistiques, l'optimisation, l'analyse de signaux et l'apprentissage machine.

Affinage des données maillées à l'aide de l'interpolation cubique 2D.
Agrandir Affinage des données maillées à l'aide de l'interpolation cubique 2D.

Analyse et visualisation des données

MATLAB fournit des outils pour l'acquisition, l'analyse et la visualisation de données, vous permettant d'obtenir des informations à partir de vos données en beaucoup moins de temps que si vous utilisiez les feuilles de calcul ou les langages de programmation traditionnels. Vous pouvez également documenter et partager vos résultats à travers des tracés et des rapports ou sous forme de code MATLAB publié.

L'analyse et la visualisation des données avec MATLAB
Explorez, visualisez et modélisez vos données avec MATLAB.

Acquisition de données

MATLAB permet d'accéder aux données à partir de fichiers, d'autres applications, de bases de données et d'appareils externes. Vous pouvez lire les données à partir des formats les plus fréquents, tels que Microsoft Excel ; les fichiers texte et binaires ; les images ; les fichiers son et vidéo ; les fichiers scientifiques tels que netCDF et HDF. Les fonctions E/S des fichiers vous permettent de travailler avec des fichiers de données dans tous les formats.

À l'aide des produits complémentaires MATLAB, vous pouvez acquérir des données à partir d'équipements matériels tels que le port en série ou la carte son de votre ordinateur, ainsi qu'introduire des données mesurées réelles directement dans MATLAB pour l'analyse et la visualisation. Vous pouvez également communiquer avec des instruments tels que des oscilloscopes, des générateurs de fonction et des analyseurs de signal.

Un fichier mixte numérique et texte pour importation dans MATLAB à l'aide de l'outil d'importation.
Agrandir Un fichier mixte numérique et texte pour importation dans MATLAB à l'aide de l'outil d'importation. MATLAB génère automatiquement un script ou une fonction pour importer le fichier de manière programmatique.

Analyse des données

MATLAB vous permet de gérer, filtrer et prétraiter vos données. Vous pouvez effectuer une analyse exploratoire de données pour découvrir les tendances, tester les hypothèses et construire des modèles descriptifs. MATLAB fournit des fonctions pour le filtrage et le lissage, l'interpolation, la convolution et les transformées de Fourier rapides (FFT). Les produits complémentaires fournissent des fonctionnalités pour l'ajustement de courbe et de surface, les statistiques multivariées, l'analyse spectrale, l'analyse d'image, l'identification système et autres tâches d'analyse.

Ajustement d'une surface à partir de données en utilisant un modèle personnalisé à l'aide de MATLAB et Curve Fitting Toolbox.
Agrandir Ajustement d'une surface à partir de données en utilisant modèle personnalisé à l'aide de MATLAB et Curve Fitting Toolbox.

Visualisation des données

MATLAB fournit des fonctions variées de tracé 2D et de visualisation 3D. Vous pouvez utiliser ces fonctions de manière interactive pour comprendre les données et communiquer les résultats. Les tracés peuvent être personnalisés facilement grâce aux outils de l’environnement.

La galerie des tracés MATLAB propose un ensemble d’affichages de données sous forme de graphique dans MATLAB. Pour chaque exemple, vous pouvez lire le code source à utiliser dans votre application MATLAB.

Modification du titre d'un tracé de contour de surface à l'aide de l'environnement de tracé interactif MATLAB.
Agrandir Modification du titre d'un tracé de contour de surface à l'aide de l'environnement de tracé interactif MATLAB.

Documentation et partage des résultats

Vous pouvez partager les résultats sous forme de tracés ou de rapports complets. Les tracés MATLAB peuvent être personnalisés pour répondre aux spécifications de publication et peuvent être sauvegardés sous des formats de fichiers de données et de graphiques communs.

Vous pouvez générer automatiquement un rapport lorsque vous exécutez un programme MATLAB. Le rapport contient votre code, les commentaires et les résultats du programme, dont les tracés. Les rapports peuvent être publiés dans un grand nombre de formats, tels que HTML, PDF, Word ou LaTeX.

Programme MATLAB publié sous format HTML à l'aide de l'Éditeur MATLAB.
Agrandir Programme MATLAB (à gauche) publié sous format HTML (à droite) à l'aide de l'Éditeur MATLAB. Les résultats qui s'affichent dans la fenêtre de commande ou sous forme de tracés sont capturés et inclus et les commentaires de code sont transformés en titres de sections et corps de texte dans le fichier HTML.

Programmation et développement d’algorithmes

MATLAB fournit un langage de haut niveau et des outils de développement qui vous permettent de développer et d'analyser rapidement des algorithmes et des applications.

Programmation et développement d'algorithmes avec MATLAB
Ecrivez des programmes et développez des algorithmes en utilisant un langage de haut niveau et des outils de développement dans MATLAB.

Le langage MATLAB

Le langage MATLAB fournit une prise en charge native des opérations matricielles et vectorielles fondamentales pour la résolution des problèmes scientifiques et techniques, permettant ainsi un développement et une exécution rapides.

Grâce au langage MATLAB, vous pouvez écrire des programmes et développer des algorithmes plus rapidement qu'avec les langages traditionnels, car vous n'avez plus besoin d'effectuer les tâches administratives de base telles que la déclaration de variables, l'indication du type de données et l'allocation de la mémoire. Dans de nombreux cas, la prise en charge des opérations matricielles et vectorielles élimine le besoin en boucles FOR. Par conséquent, une ligne de code MATLAB peut souvent remplacer plusieurs lignes de code C ou C++.

MATLAB fournit des fonctionnalités de langages de programmation traditionnels, dont le contrôle des flux, la gestion des erreurs et la programmation orientée objet. Vous pouvez utiliser des types de données fondamentaux, des structures de données avancées, ou vous pouvez définir des types de données personnalisées.

Vous pouvez produire immédiatement les résultats en exécutant l'une après l'autre et de manière interactive les commandes. Cette approche permet d'explorer rapidement plusieurs options et d'itérer pour arriver à une solution optimale. Vous pouvez capturer les étapes interactives sous forme de scripts et de fonctions pour réutiliser et automatiser votre travail.

Les produits complémentaires MATLAB fournissent des algorithmes intégrés pour le traitement et la communication de signal, le traitement des images et des vidéos, les systèmes de contrôle et de nombreux autres domaines. En combinant ces algorithmes avec les vôtres, vous pouvez créer des programmes et des applications complexes.

Un algorithme de communication générant 1 024 bits aléatoires, convertissant le vecteur en signal transmis, ajoutant le bruit gaussien complexe et traçant le résultat en neuf lignes de code MATLAB.
Agrandir Un algorithme de communication générant 1 024 bits aléatoires, convertissant le vecteur en signal transmis, ajoutant le bruit gaussien complexe et traçant le résultat en neuf lignes de code MATLAB.

Outils de développement

MATLAB comprend une variété d'outils pour un développement efficace d'algorithmes, dont :

  • La fenêtre de commande - Vous permet de saisir de manière interactive vos données, d'exécuter des commandes et des programmes et d'afficher les résultats.
  • L'Éditeur MATLAB - Fournit des fonctionnalités d'édition et de débogage, telles que la définition de points d'interruptions et la progression dans chaque ligne de code
  • L'analyseur de code - Contrôle automatiquement le code pour détecter les problèmes et recommande les modifications à apporter pour optimiser la performance et la maintenabilité
  • Le profileur MATLAB - Mesure la performance des programmes MATLAB et identifie les segments de code à modifier pour effectuer des améliorations

D'autres outils comparent les fichiers code et les fichiers de données et fournissent des rapports indiquant les dépendances des fichiers, les annotations de rappels et de couverture de code.

Programme MATLAB fonctionnant en mode débogage pour diagnostiquer les problèmes.
Agrandir Programme MATLAB fonctionnant en mode débogage pour diagnostiquer les problèmes.

Intégration dans d'autres langages et applications

Vous pouvez intégrer les applications MATLAB dans celles écrites dans d'autres langages. À partir de MATLAB, vous pouvez directement appeler le code écrit en C, C++, Java et .NET. À l'aide de la bibliothèque MATLAB, vous pouvez appeler le code MATLAB à partir de C, C++ ou des applications Fortran.

Performance

MATLAB utilise des bibliothèques optimisées pour le processeur pour une exécution rapide des calculs vectoriels et matriciels. Pour les calculs scalaires d'utilité générale, MATLAB utilise sa technologie de compilation JIT pour assurer des vitesses d'exécution pouvant rivaliser avec celles des langages de programmation traditionnels.

Pour profiter des ordinateurs multicœurs et multiprocesseurs, MATLAB fournit de nombreuses fonctions numériques et d'algèbre linéaire multithread. Ces fonctions sont automatiquement exécutées sur plusieurs « threads » informatiques dans une seule session MATLAB, ce qui leur permet d'être exécutées plus rapidement sur des ordinateurs multicœurs.

Vous pouvez également profiter du bureau multicœur et des autres ressources informatiques de haute performance telles que les GPU et les clusters avec des produits complémentaires de calculs parallèles. Ces produits fournissent des constructions de haut niveau qui vous permettent de paralléliser les applications avec seulement quelques modifications mineures apportées au code MATLAB.

Parallel Computing
Accélérez vos projets d'analyse de gros jeux de données grâce aux solutions de calcul parallèle.

Développement et déploiement d'applications

Les outils MATLAB et les produits complémentaires fournissent un ensemble d'options pour le développement et le déploiement d'applications. Vous pouvez partager des algorithmes individuels et des applications avec d'autres utilisateurs MATLAB ou les déployer gratuitement à ceux qui ne disposent pas de MATLAB.

Développement et déploiement d'applications
Développez et partagez des applications MATLAB sous forme de code, d'exécutables, ou des composants logiciels.

Conception d'interfaces utilisateur graphiques

À l'aide du GUIDE (environnement de développement de l'interface utilisateur graphique), vous pouvez mettre en forme, concevoir et modifier des interfaces utilisateur graphiques personnalisées. Vous pouvez inclure des commandes usuelles telles que des zones de liste, des menus déroulants, des boutons-poussoirs ainsi que des tracés MATLAB. Les interfaces utilisateur graphiques peuvent également être créées de manière programmatique à l'aide des fonctions MATLAB.

Mise en forme du GUIDE d'un GUI d'analyse du vent et interface terminée.
Agrandir Mise en forme du GUIDE d'un GUI d'analyse du vent (en haut) et interface terminée (en bas).

Déploiement d'applications

Pour distribuer une application directement aux utilisateurs MATLAB, vous pouvez la compiler en tant qu'application MATLAB, ce qui n'impliquera qu'un seul fichier pour la distribution. Les applications s'installent automatiquement dans la galerie d'applications MATLAB pour un accès simplifié.

Pour partager des applications avec d'autres utilisateurs qui ne disposent pas de MATLAB, vous pouvez utiliser les produits de déploiement d'applications. Ces produits complémentaires génèrent automatiquement des applications autonomes, des bibliothèques partagées et des composants logiciels pour l'intégration dans C, C++, Java, .NET et les environnements Excel. Les fichiers exécutables et les composants peuvent être distribués gratuitement.

MATLAB Production Server vous permet d'exécuter des programmes MATLAB compilés avec MATLAB Compiler dans vos systèmes de production, ce qui permet d'incorporer des mécanismes analytiques numériques sur le Web, dans des bases de données et dans des applications d'entreprise.

Vue d'ensemble de MATLAB Compiler
Déployez des composants et des applications autonomes MATLAB avec le MATLAB Compiler™

Génération du code C

Vous pouvez utiliser MATLAB Coder pour générer du code C autonome à partir du code MATLAB. MATLAB Coder prend en charge un sous-ensemble du langage MATLAB que les ingénieurs de conception utilisent normalement pour développer des algorithmes en tant que composants de systèmes plus complexes. Ce code peut être utilisé pour une exécution autonome, pour l'intégration dans d'autres applications ou dans le cadre d'une application embarquée.

Code MATLAB et rapport de génération de code indiquant le code C généré.
Agrandir Code MATLAB (à gauche) et rapport de génération de code (à droite) indiquant le code C généré.