5
Lucrare de laborator 2. Tema: Rezolvarea aproximativă a ecuaiilor numerice prin metoda coardei Lucrarea de laborator constă în 2 etape: 1. Rezolvarea matematică a problemei formulate. a. Se separă soluţiile ecuaţiei date, adică se stabilesc astfel de segmente (intervale) de lungime cоt mai mică, ca fiecare din ele să conţină o singură soluţie ( metoda grafică, tabelară i a. ). b. Se determină soluţiile cu exactitatea dată ε>0. aceasta se poate realiza prin mai multe metode (mai jos expuse). Esenţa tuturor metodelor constă оn construirea după o lege sau alta a unui şir de numere (aproximaţii) x n , care converge la soluţia căutată. Se poate deduce anumite formule, care ne permit să calculăm soluţia cu exactitatea cerută ε >0. Exemplu 1. Fie ecuaţia x 3 3 x 2 +2 x1. Se pune problema de calculat una din rădăcinile reale ale acestei ecuaţii, folosind metoda coardei, unde ε = 10 −3 . Rezolvare. Mai întîi aflăm intervalul în care se află soluţia căutată folosind metoda lui Horner (descrisă în detalii în exemplul 2): Tabelul 3. 1 -3 2 -1 0 1 -3 2 -1 1 1 -2 0 -1 2 1 -1 0 -1 are 3 1 0 2 5 loc schimbare de semn. Avem schimbare de semn în întervalul [2,3], rezultă ca soluţia cautată se află în acest interva l. În continuare, vom determina termenii şirului de iteratii incepand cu x 2 , ce va tinde catre solutia cautata, folosind formula (1.4) x n+1 = x n1 f ( x n ) x n f ( x n1 ) f ( x n ) f ( x n1 ) Cunosc înd deja intervalul,calculăm valoarea funcţiei înextremităţile interva f ( x 0 ) =f ( 2 ) =−1 ,f ( x 1 ) =f ( 3) =5 Urmatorul pas este de a calcula solutia x2 f ( x 2 ) =−0,599

Metoda Coardei

Embed Size (px)

DESCRIPTION

Metoda Coardei

Citation preview

Page 1: Metoda Coardei

Lucrare de laborator 2.

Tema: Rezolvarea aproximativă a ecua₃iilor numerice prin metoda coardeiLucrarea de laborator constă în 2 etape:

1. Rezolvarea matematică a problemei formulate. a. Se separă soluţiile ecuaţiei date, adică se stabilesc astfel de segmente (intervale) de

lungime cоt mai mică, ca fiecare din ele să conţină o singură soluţie ( metoda grafică, tabelară i a. ).

b. Se determină soluţiile cu exactitatea dată ε>0. aceasta se poate realiza prin mai multe metode (mai jos expuse). Esenţa tuturor metodelor constă оn construirea după o lege sau alta a unui şir de numere (aproximaţii) xn , care converge la soluţia căutată. Se poate deduce anumite formule, care ne permit să calculăm soluţia cu exactitatea cerută ε >0.

Exemplu 1. Fie ecuaţia x3−3 x2+2 x−1. Se pune problema de calculat una dinrădăcinile reale ale acestei ecuaţii, folosind metoda coardei, unde ε = 10−3 .

Rezolvare. Mai întîi aflăm intervalul în care se află soluţia căutată folosind metoda lui Horner (descrisă în detalii în exemplul 2):

Tabelul 3.1 -3 2 -1

0 1 -3 2 -11 1 -2 0 -1

2 1 -1 0 -1 are3 1 0 2 5 loc schimbare de semn.

Avem schimbare de semn în întervalul [2,3], rezultă ca soluţia cautată se află în acestinterval.

În continuare, vom determina termenii şirului de iteratii incepand cu x2 , ce va tinde catre solutia cautata, folosind formula (1.4)

xn+1=xn−1 f ( xn )−xn f ( xn−1 )

f ( xn )−f ( xn−1 )Cunosc î nd dejaintervalul , calculăm valoarea funcţiei înextremităţile intervalului :f ( x0 )=f (2 )=−1 , f ( x1 )=f (3 )=5

Urmatorul pas este de a calcula solutia x2

f ( x2 )=−0,599

Vom determina urmatorul termen al sirului:

x3=x1 f ( x2 )−x2 f ( x1 )

f ( x2 )−f ( x1 )=

3∙ (−0,599 )−2,16 ∙5−0,599−5

=2,249

si verificam conditia de oprire|x3−x2|=|2,249−2,16|=0,089>ε

Deoarece nu se verifica conditia |x3−x2|>ε continuam cucalculelef ( x3 )=−0,3

x4=x2 f ( x3 )−x3 f ( x2 )

f ( x3 )−f ( x2 )=

2,16 ∙ (−0,3 )−2,249∙ (−0,599 )−0,3+0,599

=¿

Aflăm¿2,337

Page 2: Metoda Coardei

La fel se verifică|x4−x3|=|2,337−2,249|=0,088>ε

f ( x 4 )=0,0052

Pentru următorii termeni ai şirului se repetă aceeasi procedură.

x5=x3 f ( x4 )−x4 f ( x3 )

f ( x4 )−f ( x3 )=

2,249 ∙0,052−2,337 ∙ (−0,3 )0,052+0,3

=2,324

f ( x5 )=−0,003

|x5−x4|=|2,324−2,337|=0,013>ε

x6=x4 f ( x5 )−x5 f ( x4 )

f ( x5 )−f ( x 4 )=

2,324 ∙ (−0,003 )−2,337 ∙ (−0,052 )−0,003−0,052

=2,345

f ( x6 )=0,088

|x6−x5|=|2,345−2,324|=0,021>ε

x7=x5 f ( x6 )−x6 f ( x5 )

f ( x6 )−f ( x5 )=

2,324 ∙ 0,088−2,345 ∙ (−0,003 )0,088+0,003

=2,329

f ( x7 )=0,018

|x7−x6|=|2,329−2,345|=0,016>ε

x8=x6 f ( x7 )−x7 f ( x6 )

f ( x7 )−f ( x6 )=2,345 ∙ 0,018−2,329∙0,088

0,018−0,088=2,328

f ( x8 )=0,014

|x8−x7|=|2,328−2,329|=0,001=εDupă iteraţia a 8-a s-a verificat condiţia de oprire, prin urmare, am ajuns la o soluţieaproximativă 2,329 x8=2,329ce tinde catre solutia exacta.Răspuns: solutia aproximativă este x =2,329 .

const eps=1.0e-3; var x0,x1,x:real;

function f(x:real):real; begin f:=x*x*x-3*x*x+2*x-1 ; end;

procedure coarda(x0,x1:real; var x:real); var n:integer;dx:real;

begin

if abs(f(x0))<eps then x:=x0 elseif abs(f(x1))<eps then x:=x1 else

beginwriteln('eroarea eps=', eps:6:4); writeln;writeln('n x(n-1) x(n) x(n+1) f(x(n+1)) dx'); n:=0;repeat x:=(x0*f(x1)-x1*f(x0))/(f(x1)-

f(x0)); inc(n);

Page 3: Metoda Coardei

writeln(n:2, x0:10:4, x1:10:4); if f(x0)*f(x) <0 then

begin dx:=abs(x1-x);x1:=x;

endelse

begin dx:=abs(x-x0);x0:=x;

end;writeln(x:10:4,f(x):10:4, dx:10:4); until

(abs(b-a)<eps) and (abs(f(x))<eps);

end; end;

beginwriteln('----------------- metoda coardei---------------');writeln('capetele intervalului');write('x0=');read(x0); write('x1='); read(x1);

writeln('f(x0)=', f(x0):8:4,'f(x1)=',f(x1):8:4); if f(x0)*f(x1)>0.0 then

writeln(' radacina nu e in intervalulu [',x0:6:2,',',x1:2,']')else

begin coarda(x0,x1,x);writeln;writeln('radacina aproximativa este x=',x:10:5);

end;readln end

Rezultat:Radacina aproximativa este x 2,329 .