Come risolvere un sistema di equazioni non lineari in MATLAB

Come Risolvere Un Sistema Di Equazioni Non Lineari In Matlab



Equazioni non lineari sono tipi di equazioni che seguono il grafico formando curve e forme non lineari. Risolvere un tale sistema di equazioni è un problema comune affrontato da ingegneri e scienziati. Il motivo principale alla base della risoluzione di questo tipo di equazioni è dovuto alla loro complessità nel trovare la soluzione esatta. Potresti trovare più soluzioni o, in alcuni casi, non esiste alcuna soluzione. MATLAB ci fornisce vari modi per risolvere il sistema di equazioni non lineari. Uno di questi sta usando un built-in fsolve() funzione.

Questa guida ci insegnerà come calcolare la soluzione del sistema di equazioni non lineari in MATLAB usando il fsolve() funzione.

Come risolvere il sistema di equazioni non lineari in MATLAB?

IL fsolve() è una funzione integrata in MATLAB usata per risolvere a sistema di equazioni non lineari con più variabili. Se il numero di equazioni è uguale al numero di incognite, la soluzione di un sistema di equazioni non lineari sarà numerico; in caso contrario, la soluzione sarà simbolica in termini della variabile desiderata. Ogni variabile in sistema di equazioni non lineari può avere una o più soluzioni in base al suo ordine.







Sintassi

IL fsolve() La funzione segue una semplice sintassi per risolvere a sistema di equazioni non lineari in MATLAB.





x = fsolve ( divertente,x0 )
x = fsolve ( divertimento,x0,opzioni )

Qui:



La funzione x = fsolve(divertimento, x0) risolve il sistema di equazioni non lineari a partire dal punto x0 .











La funzione x = fsolves(divertimento, x0, opzioni) risolve il sistema di equazioni non lineare utilizzando i metodi di ottimizzazione specificati nelle opzioni.

Nota: Le opzioni per impostazione predefinita utilizzano il Newton Rapson metodo per il calcolo delle soluzioni di sistemi di equazioni non lineari. Puoi specificare altri metodi, come la regione di fiducia, Levenberg-Marquardt , e altri.



Esempi

Segui gli esempi forniti per imparare a risolvere un sistema di equazioni non lineari usando il fsolve() funzione in MATLAB.

Esempio 1: Risoluzione di 2 equazioni non lineari in MATLAB

L'esempio fornito crea prima una funzione MATLAB definita dall'utente denominata sistema_non lineare contenente il sistema di due equazioni non lineari.

funzione F = sistema_non lineare ( X )
F ( 1 ) = esp ( sqrt ( ( X ( 1 ) +x ( 2 ) ) ) ) - X ( 2 ) * ( 1 + sqrt ( X ( 1 ) ) ) ;
F ( 2 ) = x ( 1 ) * senza ( X ( 2 ) ) + x ( 2 ) * cos ( X ( 1 ) ) - 0.1 ;

Ora chiamiamo la funzione in un altro file di script per risolvere il sistema definito di equazioni non lineari utilizzando il fsolve(divertimento, x0) funzione a partire dal punto x0 = (0, 0).

divertimento = @sistema_non lineare;
x0 = [ 0 , 0 ] ;
x = fsolve ( divertente,x0 )

Esempio 2: Risoluzione di equazioni non lineari a partire dal punto [-5,5]

Consideriamo ora il sistema di equazioni definito nel file di funzione definito dall'utente nonlinear_system.m e chiamiamo la funzione per risolvere quel sistema di equazioni non lineari partendo dal punto x0 = [-5, 5] usando il fsolve() funzione.

divertimento = @sistema_non lineare;
x0 = [ - 5 , 5 ] ;
x = fsolve ( divertente,x0 )

Per maggiori dettagli, leggi questo guida .

Conclusione

Risolvere un sistema di equazioni non lineari è il problema più comune in matematica e ingegneria. MATLAB ci fornisce un built-in fsolve() funzione che permette di risolvere un sistema di equazioni non lineari. Questa guida ha trattato le basi della risoluzione di sistemi di equazioni non lineari che aiuteranno i principianti a comprenderne il funzionamento fsolve() funzione in MATLAB.