Comment résoudre un système d'équations non linéaires dans MATLAB

Comment Resoudre Un Systeme D Equations Non Lineaires Dans Matlab



Équations non linéaires sont des types d'équations qui suivent le graphique formant des courbes et des formes non linéaires. Résoudre un tel système d'équations est un problème courant auquel sont confrontés les ingénieurs et les scientifiques. La principale raison derrière la résolution de ces types d'équations est due à leur complexité à trouver la solution exacte. Vous pouvez trouver plusieurs solutions ou, dans certains cas, aucune solution n'existe. MATLAB nous propose différentes manières de résoudre le système d'équations non linéaires. L'un d'entre eux utilise un fsolve() fonction.

Ce guide nous apprendra comment calculer la solution du système d'équations non linéaires dans MATLAB en utilisant le fsolve() fonction.

Comment résoudre le système d'équations non linéaires dans MATLAB ?

Le fsolve() est une fonction intégrée dans MATLAB utilisée pour résoudre un système d'équations non linéaires avec plusieurs variables. Si le nombre d'équations est égal au nombre d'inconnues, la solution d'un système de équations non linéaires sera numérique ; sinon, la solution sera symbolique en fonction de la variable souhaitée. Chaque variable dans le système d'équations non linéaires peut avoir une ou plusieurs solutions en fonction de sa commande.







Syntaxe

Le fsolve() fonction suit une syntaxe simple pour résoudre un système d'équations non linéaires dans MATLAB.





x = frésoudre ( amusant, x0 )
x = frésoudre ( plaisir,x0,options )

Ici:



La fonction x = frésout(fun, x0) résout le système d'équations non linéaires à partir du point x0 .











La fonction x = frésout(fun, x0, options) résout le système d'équations non linéaires à l'aide des méthodes d'optimisation spécifiées dans les options.

Note: Les options par défaut utilisent le Newton Rappson méthode pour calculer des solutions de systèmes d'équations non linéaires. Vous pouvez spécifier d'autres méthodes, telles que la région de confiance, Levenberg-Marquardt , et d'autres.



Exemples

Suivez les exemples donnés pour apprendre à résoudre un système d'équations non linéaires en utilisant le fsolve() fonction dans MATLAB.

Exemple 1 : Résolution de 2 équations non linéaires dans MATLAB

L'exemple donné crée d'abord une fonction définie par l'utilisateur MATLAB nommée système_non-linéaire contenant le système de deux équations non linéaires.

fonction F = système_non-linéaire ( X )
F ( 1 ) = exp ( sqrt ( ( X ( 1 ) +x ( 2 ) ) ) ) - X ( 2 ) * ( 1 + sqrt ( X ( 1 ) ) ) ;
F ( 2 ) =x ( 1 ) * sans ( X ( 2 ) ) +x ( 2 ) * parce que ( X ( 1 ) ) - 0,1 ;

Maintenant, nous appelons la fonction dans un autre fichier de script pour résoudre le système défini d'équations non linéaires en utilisant le frésoudre(amusant, x0) fonction à partir du point x0 = (0, 0).

fun = @nonlinear_system;
x0 = [ 0 , 0 ] ;
x = frésoudre ( amusant, x0 )

Exemple 2 : Résolution d'équations non linéaires à partir du point [-5,5]

Considérez maintenant le système d'équations défini dans le fichier de fonction défini par l'utilisateur nonlinear_system.m et appelez la fonction pour résoudre ce système d'équations non linéaires à partir du point x0 = [-5, 5] en utilisant le fsolve() fonction.

fun = @nonlinear_system;
x0 = [ - 5 , 5 ] ;
x = frésoudre ( amusant, x0 )

Pour plus de détails, lisez ceci guide .

Conclusion

Résoudre un système d'équations non linéaires est le problème le plus courant en mathématiques et en ingénierie. MATLAB nous fournit une solution intégrée fsolve() fonction qui permet de résoudre un système d'équations non linéaires. Ce guide a couvert les bases de la résolution de systèmes d'équations non linéaires qui aideront les débutants à comprendre le fonctionnement de fsolve() fonction dans MATLAB.