Hur man löser ett system av icke-linjära ekvationer i MATLAB

Hur Man Loser Ett System Av Icke Linjara Ekvationer I Matlab



Icke-linjära ekvationer är typer av ekvationer som följer grafen som bildar kurvor och icke-linjära former. Att lösa ett sådant ekvationssystem är ett vanligt problem för ingenjörer och vetenskapsmän. Den främsta anledningen till att lösa dessa typer av ekvationer är på grund av deras komplexitet när det gäller att hitta den exakta lösningen. Du kan hitta flera lösningar eller i vissa fall finns det ingen lösning. MATLAB ger oss olika sätt att lösa systemet med olinjära ekvationer. En av dem använder en inbyggd fsolve() fungera.

Denna guide kommer att lära oss hur man beräknar lösningen av det olinjära ekvationssystemet i MATLAB med hjälp av fsolve() fungera.

Hur löser man det olinjära ekvationssystemet i MATLAB?

De fsolve() är en inbyggd funktion i MATLAB som används för att lösa en system av icke-linjära ekvationer med flera variabler. Om antalet ekvationer är detsamma som antalet okända, lösningen av ett system av olinjära ekvationer kommer att vara numerisk; annars kommer lösningen att vara symbolisk vad gäller den önskade variabeln. Varje variabel i system av icke-linjära ekvationer kan ha en eller flera lösningar baserat på dess ordning.







Syntax

De fsolve() funktion följer en enkel syntax för att lösa en system av icke-linjära ekvationer i MATLAB.





x = fsolve ( kul, x0 )
x = fsolve ( kul,x0,alternativ )

Här:



Funktionen x = fsolves(roligt, x0) löser systemet med olinjära ekvationer med början från punkt x0 .











Funktionen x = fsolves(roligt, x0, alternativ) löser det olinjära ekvationssystemet med hjälp av optimeringsmetoder som anges i alternativen.

Notera: Alternativen använder som standard Newton Rapson metod för att beräkna lösningar av system av icke-linjära ekvationer. Du kan ange andra metoder, såsom förtroenderegion, Levenberg-Marquardt , och andra.



Exempel

Följ de givna exemplen för att lära dig hur man löser ett system av olinjära ekvationer med hjälp av fsolve() funktion i MATLAB.

Exempel 1: Lösa 2 ickelinjära ekvationer i MATLAB

Det givna exemplet skapar först en MATLAB användardefinierad funktion med namnet olinjärt_system som innehåller systemet med två olinjära ekvationer.

fungera F = olinjärt_system ( x )
F ( 1 ) = exp ( sqrt ( ( x ( 1 ) +x ( 2 ) ) ) ) - x ( 2 ) * ( 1 + sqrt ( x ( 1 ) ) ) ;
F ( 2 ) = x ( 1 ) * utan ( x ( 2 ) ) + x ( 2 ) * cos ( x ( 1 ) ) - 0,1 ;

Nu anropar vi funktionen i en annan skriptfil för att lösa det definierade systemet av olinjära ekvationer med hjälp av fsolve(kul, x0) funktion med start från punkten x0 = (0, 0).

roligt = @ickelineärt_system;
x0 = [ 0 , 0 ] ;
x = fsolve ( kul, x0 )

Exempel 2: Lösa ickelinjära ekvationer med början från punkten [-5,5]

Betrakta nu det definierade ekvationssystemet i den användardefinierade funktionsfilen nonlinear_system.m och anropa funktionen för att lösa det systemet av olinjära ekvationer med början från punkten x0 = [-5, 5] använda fsolve() fungera.

roligt = @ickelineärt_system;
x0 = [ - 5 , 5 ] ;
x = fsolve ( kul, x0 )

För mer information, läs detta guide .

Slutsats

Att lösa ett system av olinjära ekvationer är det vanligaste problemet inom matematik och teknik. MATLAB förser oss med en inbyggd fsolve() funktion som låter oss lösa ett system av olinjära ekvationer. Den här guiden har täckt grunderna för att lösa system av olinjära ekvationer som hjälper nybörjare att förstå hur fsolve() funktion i MATLAB.