Système d'équation linéaire dans MATLAB
-
Résoudre le système d’équations linéaires à l’aide de la fonction
solve()
dans MATLAB -
Résoudre le système d’équations linéaires à l’aide de la fonction
linsolve()
dans MATLAB
Ce tutoriel abordera la résolution du système d’équations linéaires à l’aide des fonctions solve()
et linsolve()
dans Matlab.
Résoudre le système d’équations linéaires à l’aide de la fonction solve()
dans MATLAB
Nous pouvons utiliser la fonction intégrée de Matlab solve()
pour résoudre le système d’équations linéaires dans Matlab. Tout d’abord, nous pouvons définir les variables à l’aide de la variable syms
. Après cela, nous pouvons écrire les équations dans Matlab. Après cela, nous devons utiliser la fonction solve()
pour résoudre les équations. Par exemple, définissons des équations dans Matlab et trouvons leur solution à l’aide de la fonction solve()
. Voir le code ci-dessous.
syms x y z
eq1 = 2*x + y + 2*z == 1;
eq2 = 2*x + 5*y - z == 2;
eq3 = -3*x + 2*y + 6*z == 10;
matx = solve([eq1, eq2, eq3], [x, y, z]);
xValue = matx.x
yVlaue = matx.y
zValue = matx.z
Production:
xValue =
-82/93
yVlaue =
29/31
zValue =
85/93
Comme vous pouvez le voir, il y a trois variables dans l’équation, et il y a trois réponses. Vous pouvez également utiliser la fonction vapsolve()
au lieu de la fonction solve()
pour obtenir la réponse en numérique. Pour utiliser la fonction vpasolve()
, vous devez changer le nom de la fonction solve
en vpasolve
dans le code ci-dessus. Si les équations sont sous forme matricielle, vous pouvez utiliser la fonction linsolve()
.
Résoudre le système d’équations linéaires à l’aide de la fonction linsolve()
dans MATLAB
La fonction linsolve()
est utilisée à la place de la fonction solve()
si vous avez des matrices au lieu d’équations. Nous pouvons également convertir les équations sous forme matricielle en utilisant la fonction equationsToMatrix()
. Par exemple, définissons quelques équations dans Matlab et trouvons leur solution à l’aide de la fonction linsolve()
. Voir le code ci-dessous.
syms x y z
eq1 = 2*x + y + 2*z == 1;
eq2 = 2*x + 5*y - z == 2;
eq3 = -3*x + 2*y + 6*z == 10;
[matA,matB] = equationsToMatrix([eq1, eq2, eq3], [x, y, z])
matX = linsolve(matA,matB)
Production:
matA =
[ 2, 1, 2]
[ 2, 5, -1]
[ -3, 2, 6]
matB =
1
2
10
matX =
-82/93
29/31
85/93
Les fonctions solve()
et linsolve()
sont fournies avec la boîte à outils mathématique symbolique, alors assurez-vous d’avoir installé la boîte à outils pour utiliser ces fonctions.