Sunteți pe pagina 1din 3

Laboratorul nr.

4
Rezolvarea ecuaţiilor algebrice
Forma canonică a unei ecuaţii algebrice este: an  x n  an 1  x n 1  ...  a1  x  a0  0 unde n
este gradul polinomului (pentru a rezolva ecuaţia în Scilab n  100) şi ak sunt coeficienţii
polinomului care pot fi numere reale sau complexe.
Pentru a rezolva o ecuaţie algebrică mai întâi, se defineşte expresia polinomului cu
ajutorul funcţiei poly apoi, cu ajutorul funcţiei roots se determină rădăcinile ecuaţiei.
Exemplu: Să se rezolve ecuaţia x 4  12 x 3  22 x 2  20 x  0 .
Solutie:
-->p=poly([0,-20,22,-12,1],'x','coef');
-->sol=roots(p)
sol =
! 0 !
! 1. + i !
! 1. - i !
! 10. !
Rezolvarea ecuaţiilor transcendente
Orice ecuaţie se poate scrie sub forma f(x) = g(x) echivalentă cu f(x) – g(x) = 0. După ce
se reprezintă grafic funcţia f(x) – g(x) pe intervalul de interes putem să evaluăm valorile
aproximative în care funcţia se anulează. Pentru a determina soluţia ecuaţiei se apelează funcţia
fsolve a Scilab-ului.
Exemplu: Să se resolve ecuaţia sin( x )  1  2 x
Solutie:
function y=f(x)
y=sin(x)+2.*x-1
endfunction
[s]=fsolve(0,f,10^(-10))
s = 0.335418
Exerciţii: Sa se rezolve urmatoarele ecuatii:
 x
1) x4-2x3-x+2=0; 2) x3+3x+1=0; 3) ( x  1)2  2  e x ; 4) x  2  cos    .
 2
REZOLVAREA SISTEMELOR DE ECUATII LINIARE IN SCILAB
Exerciţii :Să se rezolve in Scilab urmatoarele sisteme de ecuatii:

 x1  2 x 2  3 x 3  4 x 4  11 9 x1  x2  x3  18  2
  x  9 y  z  2
2 x 
 1 2 3 43 x  4 x  x  12 x 
1 2 49 x  x  19 
1.  ; ; 8 x  2 y  3 z   1
3 x1  4 x 2  2 x 3  x 4  13  x1  9 x3  x4  8  x  2 y  5z  1
4 x1  x 2  2 x 3  3 x 4  14  x2  x3  9 x4  9 

 9 1 1 0 
 
 1 9 0  1
2. Să se calculeze factorul Cholesky al matricei: A ;
1 0 9 1 
 
 0 1 1 9 

factorizarea Cholesky constă în descompunera matricei într-un produs de forma
A=RtR; (R=chol(A)) apoi să se rezolve sistemul de la ex.1 punctul a.
Solutie:
-->a=[9 1 -1 0;1 9 0 -1;-1 0 9 1;0 -1 1 9]; b=[18;19;8;9];
-->R=chol(a);
-->y=(R')^(-1)*b;
-->x=R^(-1)*y
x =! 1.8831169 !
! 2.025974 !
! 0.9740260 !
! 1.1168831 !
 9 1 1 0 
 
 1 9 0  1
3. Să se factorizeze LU (lower – upper) matricea: A   ; prin
1 0 9 1 
 
 0 1 1 9 

factorizare LU, o matrice pătrată este descompusă sub forma produsului a două
matrice triunghiulare, una inferior triunghiulară, cu elemente 1 pe diagonala
principală şi cealaltă superior triunghiulară ([L,U]=lu(A)) apoi să se rezolve sistemul
de la ex.1 punctul a.
Solutie:
-->a=[9 1 -1 0;1 9 0 -1;-1 0 9 1;0 -1 1 9]; b=[18;19;8;9];
-->[L U]=lu(a);
-->y=L^(-1)*b
-->x=U^(-1)*y
x =! 1.8831169 !
! 2.025974 !
! 0.9740260 !
! 1.1168831 !

REZOLVAREA SISTEMELOR DE ECUATII NELINIARE IN SCILAB

Exemplu
 x 2  axy  y 2  x  sin( x )  4a  0
Fie sistemul 
2 x 2  ay 3  3,5  0
Să se rezolve sistemul pentru a=1; 1.1; 1.2; ... 2 folosind ca punct de start (1,1).
Solutie pentru a=1:
function y=f(x)
y=zeros(2,1);
y(1)=x(1)^2+x(1)*x(2)+x(2)^2+x(1)+sin(x(1))-4;
y(2)=2*x(1)^2+x(2)^3-3.5;
endfunction
[s]=fsolve([1;1],f,0.0001)

S-ar putea să vă placă și