Résolution d'une équation sous Matlab

Je vais vous expliquer comment résoudre une équation avec Matlab. La procédure est assez simple, alors entrons dans le vif du sujet.

Il existe deux approches pour résoudre une équation sur Matlab. La première se base sur l'utilisation de polynômes, tandis que la seconde fait appel au calcul symbolique.

La fonction roots()

Abordons la fonction roots(). Cette fonction vous permet de déterminer les racines d'un polynôme.

roots(P)

Vous devez simplement saisir les coefficients numériques de l'équation comme paramètre P.

Mais que sont les racines ? Il s'agit des valeurs pour la variable inconnue x qui intersectent l'axe des x et rendent l'équation nulle de part et d'autre.

Voici un exemple concret.

Considérons une équation du second degré simple avec une variable inconnue :

$$ x^2 + 3x = 4 $$

Pour la résoudre, nous commençons par reformuler l'équation sous une forme équivalente :

$$ x^2 + 3x - 4 = 0 $$

Les coefficients numériques de x, soit 1, 3 et -4, sont ensuite disposés dans un tableau par ordre décroissant de degré : [1 3 -4].

>> P = [1 3 -4];

Si un des coefficients est absent, il convient d'ajouter un zéro à sa place.

Pour obtenir les solutions de l'équation, il suffit d'utiliser la fonction roots() :

>> roots(P)

Cela nous fournira les racines de l'équation, qui dans notre exemple sont -4 et 1.

ans =
-4
1

Pour confirmer ces solutions, nous pouvons employer la fonction polyval().

>> polyval(P,roots(P))

ans =
0
0

En insérant polyval([1 3 -4], roots([1 3 -4])), nous obtenons [0 0], confirmant que les deux valeurs de x satisfont l'équation.

Vérification. Testons la première solution en remplaçant x par -4 dans l'équation. $$ x^2 + 3x - 4 = 0 $$ $$ (-4)^2 + 3 \cdot (-4) - 4 = 0 $$ $$ 16 - 12 - 4 = 0 $$ $$ 0 = 0 $$ Examinons maintenant la seconde solution en substituant x par 1. $$ x^2 + 3x - 4 = 0 $$ $$ (1)^2 + 3 \cdot 1 - 4 = 0 $$ $$ 1 + 3 - 4 = 0 $$ $$ 0 = 0 $$ Les deux valeurs répondent donc à l'équation.

Que se passe-t-il si l'équation n'a pas de solutions réelles ?

Dans ce cas, la fonction roots() nous révélera les solutions complexes de l'équation.

Par exemple, pour une équation de quatrième degré x4+3x2-2x+1=0

$$ x^4 + 3x^2 - 2x + 1 = 0 $$

Utiliser roots([1 0 3 -2 1]) nous permet de découvrir les solutions, qui sont des nombres complexes.

>> roots([1 0 3 -2 1])

Ne vous inquiétez pas, la fonction roots() fournit toujours les réponses adéquates, même s'il s'agit de nombres non réels.

ans =
-0.34975 + 1.74698i
-0.34975 - 1.74698i
0.34975 + 0.43899i
0.34975 - 0.43899i

La fonction solve()

Matlab propose une fonction très pratique, nommée "solve()", qui permet de trouver les solutions d'une équation symbolique.

solve(eqz)

Elle est extrêmement utile. Vous devez simplement passer l'équation symbolique que vous voulez résoudre en tant que paramètre à la fonction solve().

Lorsqu'il s'agit de résoudre l'équation, il est nécessaire de recourir au calcul symbolique. Cela implique de définir les variables inconnues du problème comme des symboles, d'établir l'équation symbolique, puis de trouver les solutions avec la fonction solve().

Voici un exemple.

Imaginons une équation du second degré avec une variable inconnue :

$$ x^2 + 3x = 4 $$

Pour la résoudre à l'aide de la fonction solve(), nous devons d'abord la réécrire sous forme normale, en regroupant tous les termes à gauche :

$$ x^2 + 3x - 4 = 0 $$

Nous définissons alors la variable inconnue comme une variable symbolique en utilisant la fonction "syms".

>> syms x

Ensuite, nous définissons l'équation symbolique et l'attribuons à la variable "eqz".

>> eqz = x^2+3*x-4

Enfin, nous employons la fonction solve() pour trouver les solutions de l'équation.

>> solve(eqz)

Et voilà, la fonction solve() nous offre les solutions de l'équation, qui sont dans ce cas x1=-4 et x2=1.

ans=
-4
1

Il est important de noter que la fonction solve() et le calcul symbolique peuvent être utilisés pour résoudre des équations comportant deux variables inconnues ou plus.

Cela en fait un outil extrêmement puissant pour résoudre des équations de tout degré sous Matlab.

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin

Mathématiques avec Matlab

Calcul

FAQ