Sådan løses et system af ikke-lineære ligninger i MATLAB

Sadan Loses Et System Af Ikke Lineaere Ligninger I Matlab



Ikke-lineære ligninger er ligningstyper, der følger grafen og danner kurver og ikke-lineære former. At løse et sådant ligningssystem er et almindeligt problem, som ingeniører og videnskabsmænd står over for. Hovedårsagen til at løse disse typer ligninger er på grund af deres kompleksitet i at finde den nøjagtige løsning. Du kan finde flere løsninger, eller i nogle tilfælde findes der ingen løsning. MATLAB giver os forskellige måder at løse systemet med ikke-lineære ligninger på. En af dem bruger en indbygget fsolve() fungere.

Denne guide vil lære os, hvordan man beregner løsningen af ​​det ikke-lineære ligningssystem i MATLAB ved hjælp af fsolve() fungere.

Hvordan løses det ikke-lineære ligningssystem i MATLAB?

Det fsolve() er en indbygget funktion i MATLAB, der bruges til at løse en system af ikke-lineære ligninger med flere variabler. Hvis antallet af ligninger er det samme som antallet af ukendte, er løsningen af ​​et system af ikke-lineære ligninger vil være numerisk; ellers vil løsningen være symbolsk i forhold til den ønskede variabel. Hver variabel i system af ikke-lineære ligninger kan have en eller flere løsninger baseret på dens rækkefølge.







Syntaks

Det fsolve() funktion følger en simpel syntaks for at løse en system af ikke-lineære ligninger i MATLAB.





x = fløse ( sjovt, x0 )
x = fløse ( sjov, x0, muligheder )

Her:



Funktionen x = fsolves(sjov, x0) løser systemet af ikke-lineære ligninger startende fra punkt x0 .











Funktionen x = fsolves(sjov, x0, muligheder) løser det ikke-lineære ligningssystem ved hjælp af optimeringsmetoder specificeret i mulighederne.

Bemærk: Indstillingerne bruger som standard Newton Rapson metode til at beregne løsninger af systemer af ikke-lineære ligninger. Du kan angive andre metoder, såsom tillidsområde, Levenberg-Marquardt , og andre.



Eksempler

Følg de givne eksempler for at lære, hvordan man løser et system af ikke-lineære ligninger ved hjælp af fsolve() funktion i MATLAB.

Eksempel 1: Løsning af 2 ikke-lineære ligninger i MATLAB

Det givne eksempel opretter først en MATLAB brugerdefineret funktion med navnet ikke-lineært_system indeholdende systemet af to ikke-lineære ligninger.

fungere F = ikke-lineært_system ( x )
F ( 1 ) = eksp ( sqrt ( ( x ( 1 ) +x ( 2 ) ) ) ) - x ( 2 ) * ( 1 + sqrt ( x ( 1 ) ) ) ;
F ( 2 ) = x ( 1 ) * uden ( x ( 2 ) ) + x ( 2 ) * cos ( x ( 1 ) ) - 0,1 ;

Nu kalder vi funktionen i en anden scriptfil for at løse det definerede system af ikke-lineære ligninger ved hjælp af fsolve(sjov, x0) funktion startende fra punktet x0 = (0, 0).

sjov = @ikkelineært_system;
x0 = [ 0 , 0 ] ;
x = fløse ( sjovt, x0 )

Eksempel 2: Løsning af ikke-lineære ligninger med udgangspunkt i punkt [-5,5]

Overvej nu det definerede system af ligninger i den brugerdefinerede funktionsfil nonlinear_system.m og kald funktionen for at løse det system af ikke-lineære ligninger startende fra punktet x0 = [-5, 5] bruger fsolve() fungere.

sjov = @ikkelineært_system;
x0 = [ - 5 , 5 ] ;
x = fløse ( sjovt, x0 )

For flere detaljer, læs dette guide .

Konklusion

Løsning af et system af ikke-lineære ligninger er det mest almindelige problem i matematik og teknik. MATLAB giver os en indbygget fsolve() funktion, der giver os mulighed for at løse et system af ikke-lineære ligninger. Denne vejledning har dækket det grundlæggende i løsning af systemer af ikke-lineære ligninger, der vil hjælpe begyndere med at forstå, hvordan fsolve() funktion i MATLAB.