Mathematica
Mathematica est un logiciel propriétaire de calcul formel conçu par la société Wolfram Research.
Le système de Mathematica est formé d'un noyau, qui réalise les calculs et peut être exécuté sur une autre machine que celle de l'utilisateur, et d'une interface interactive pour entrer les données. Celle-ci attend des entrées de l'utilisateur exprimées dans le langage de Mathematica, selon une syntaxe définie, et affiche le résultat des calculs sous forme de texte simple, de formules, ou d'images.
Guide
Démarrer Mathematica
Pour démarrer le logiciel, vous pouvez soit entrer la commande
mathematica
soit cliquer sur l'icône représentant le logo de Mathematica, situé dans le menu du haut.
Apprentissage de Mathematica
Si vous êtes un nouvel utilisateur de Mathematica, ou encore si vous souhaitez approfondir vos connaissances de ce langage, les liens suivants sauront vous aider:
- Wolfram Mathematica Tutorial Collection, Core Language - Pour apprendre à utiliser le langage Mathematica
- Documentation Center - Centre complet de documentation sur Mathematica
- Excellent guide Mathematica employé pour le cours MAT 1681, écrit par Yvan Saint-Aubin, Alexandre Girouard et Laurent Delisle
Le centre documentation est également accessible depuis Mathematica, en cliquant sur le menu Help et ensuite Documentation Center, ou encore en appuyant sur la touche F1.
Exemples
Dans ce qui suit, quelques exemples très simples vous sont proposés dans l'optique de vous familiariser avec les commandes de base de Mathematica.
Opérations arithmétiques et simplifications
Pour additionner (+), soustraire (-), diviser (/), multiplier (* ou espace) ou élever à une puissance (^), il suffit d'entrer les opérandes en les espaçant par le symbole approprié, comme si vous faisiez usage d'une calculatrice. De plus, la priorité des opérations est respectée par Mathematica; l'usage de parenthèses () est nécessaire par endroit.
Chaque fois que vous souhaitez faire évaluer une expression ou une commande par Mathematica, vous devez appuyer sur NumPad Enter, c'est-à-dire la touche Enter sur le pavé numérique, ou encore sur Shift+Enter, en vous assurant que le pointeur de votre souris se trouve bien dans la cellule à évaluer.
Il arrive fréquemment que la réponse fournit par Mathematica ne soit pas complètement simplifiée, ou encore que vous souhaitiez que Mathematica tente de simplifier une expression pour vous. Ceci est effectué par la commande FullSimplify. Par exemple,
FullSimplify[x^3 - 6*x^2 + 11*x - 6]
retourne .
À l'opposé, si vous souhaitez développer une expression, c'est la commande Expand qu'il faut employer:
Expand[(-3 + x) (-2 + x) (-1 + x)]
ce qui donne , le résultat attendu.
Assignation d'une variable
Pour assigner une valeur numérique, par exemple 3.14159 à une variable x, vous n'avez qu'à entrer
x = 3.14159
dans une nouvelle ligne. Veuillez noter que Mathematica possède une constante désignée pour , nommée Pi, qu'il est possible d'évaluer à une précision arbitrairement élevée. Par exemple, pour obtenir jusqu'à la 100e décimale:
N[Pi,100]
ce qui renvoie 3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117068. La commande N sert à approximer une constante exacte (comme , , etc.) par un certain nombre de chiffres significatifs (100 dans l'exemple précédant, 6 par défaut).
Définition d'une fonction
Mathematica vous offre la possibilité de définir vos propres fonctions. Par exemple, pour définir , vous devez entrer
f[x_] = x^2
Si vous souhaitez plutôt définir une fonction mais sans l'évaluer immédiatement, vous devez utiliser l'opérateur ":=" plutôt que "=". Par exemple, l'expression
f[x_] = Expand[x^2]
signifie, pour Mathematica, que . Si le résultat espéré est la création d'une fonction qui développe le carré de son argument, alors c'est la commande
f[x_] := Expand[x^2]
qu'il vous faut entrer. Une fois que vous avez demandé à Mathematica d'évaluer la commande, si vous entrez ensuite f[a + b] dans une nouvelle ligne, vous obtiendrez maintenant , et non , comme c'était le cas avec la définition précédente.
Dérivation et intégration
L'opération de dérivation partielle s'obtient avec la commande D. Par exemple, si vous souhaitez calculer , vous n'avez qu'à entrer
D[Sin[2 x^2], x]
En général, si vous souhaitez calculer , vous devez écrire:
D[f[x1, x2, ... , xn], {x1, m1}, {x2, m2}, ... , {xn, mn}]
Par exemple, pour que Mathematica calcule , il suffit d'entrer
D[x^2 + y^2 + x^2 y^3 z, {x, 2}, {y, 3}]
Le résultat retourné est bien .
Similairement, la dérivation totale est obtenue avec Dt. Dans l'exemple qui suit, on cherche la dérivée totale de l'expression :
Dt[x y[x] z[x], x]
avec y[x] z[x] + x z[x] y'[x] + x y[x] z'[x] comme résultat.
L'intégration d'une fonction est donnée par la commande Integrate. Par exemple, si vous souhaitez que Mathematica calcule pour vous, entrez:
Integrate[f[x1, x2, ... , xn], {x1, a1, b1}, ... , {xn, an, bn}]
Veuillez noter que Mathematica peut également calculer des intégrales indéfinies: pour ce faire, il suffit d'omettre les bornes d'intégration comme arguments de la commande. Vous pouvez aussi intégrer numériquement une expression avec la commande NIntegrate.
Résolution d'équations
Pour résoudre une équation algébrique, on emploie la commande Solve:
Solve[x^2 == 1, x]
ce qui donne {{x -> -1}, {x -> 1}} pour l'exemple précédent. Il est important d'employer "==" pour signifier une égalité dans une équation, le symbole "=" étant une assignation pour Mathematica. Similairement, la commande NSolve tente de trouver une approximation numérique à la solution de l'équation, si celle-ci existe.
Il est également possible de résoudre une équation différentielle avec la commande DSolve. Lorsque cette commande est appelée par l'utilisateur, Mathematica tente de trouver une solution algébrique à l'équation différentielle. Pour les situations où une approximation numérique de la solution est préférable, il convient alors d'employer NDSolve.
Algèbre linéaire
Pour Mathematica, vecteurs, matrices ou tenseurs, ne sont rien de plus que des listes d'éléments.
{a, b, c}.{c, b, a}
est l'équivalent de . Similairement,
{{1, 2}, {3, 4}, {5, 6}}.{{0, 1}, {1, 0}}
est l'équivalent de .
Le symbole ".", employé comme opérateur binaire dans Mathematica, sert à désigner le produit scalaire ou matriciel.
Pour inverser ou transposer une matrice, on emploie les commandes Inverse et Transpose, respectivement. Pour élever une matrice carrée à une puissance réelle, il faut employer la commande MatrixPower:
MatrixPower[A, r]
où A est une matrice carrée et r est un nombre réel.
La commande Eigensystem permet d'obtenir à la fois les valeurs propres d'une matrice ainsi que ses vecteurs associés. Par exemple, en entrant
Eigensystem[{{a, b}, {c, d}}]
Mathematica retourne . Les deux premiers éléments de la liste précédente sont les valeurs propres, et les deux derniers les vecteurs propres correspondant.
Il est également possible d'obtenir uniquement les valeurs propres, avec Eigenvalues, ou uniquement les vecteurs propres, avec Eigenvectors.
Génération de graphiques
Mathematica peut générer plusieurs types de graphiques pour vous:
- Plot: Pour tracer une fonction sur un certain domaine. Voici un exemple simple d'un graphique généré avec Plot:
Plot[{Sin[x], Sin[2 x], Sin[3 x]}, {x, 0, 2 Pi}]
- ListPlot: Pour afficher une liste de points. Par exemple:
ListPlot[Table[{i, i^2}, {i, 0, 10}]]
où la commande Table est employée pour générer la liste affichée sur la figure ci-haut.
- Plot3D: Pour générer un graphique tridimensionnel. Par exemple:
Plot3D[Sqrt[1 - x^2 - y^2], {x, -1, 1}, {y, -1, 1}, Mesh -> 8, ColorFunction -> Hue, MeshShading -> {{Yellow, Orange}, {Pink, Red}}]
- DensityPlot: À l'instar de la commande Plot3D, cette commande permet de tracer une fonction de deux variables. Par exemple:
DensityPlot[Sin[x] Sin[y], {x, -4, 4}, {y, -3, 3}, ColorFunction -> "SunsetColors"]
- ContourPlot: Cette commande trace, tout comme Plot3D et DensityPlot, une fonction de deux variables. Par exemple:
ContourPlot[Cos[x] + Cos[y], {x, 0, 4 Pi}, {y, 0, 4 Pi}]
L'affichage d'un graphique s'accompagne souvent d'une ou plusieurs options relatives au rendu de l'image. Pour connaître les options disponibles pour une commande donnée, n'oubliez pas de consulter le Documentation Center (aide) de Mathematica.