Sunteți pe pagina 1din 120

UNIVERSITATEA DE STIINTE AGRONOMICE SI MEDICINA VETERINARA BUCURESTI

FACULTATEA DE IMBUNATATIRI FUNCIARE SI INGINERIA MEDIULUI


DEPARTAMENTUL DE INVATAMINT CU FRECVENTA REDUSA

ANALIZA NUMERICĂ
Note de curs

PROF. DR. ALEXE GHEORGHE

2013
Analiză Numerică

Cuprins

1.0 Obiectivele unităţii de învăţare nr.1 3


1.1 Sisteme de numeraţie 3
1.2 Reprezentarea unui număr într-o bază oarecare 4
1.3 Schimbarea bazei 5
1.4 Numere aproximative 6
1.5 Metode de rotunjire a numerelor 7
1.5.1 Normalizarea numerelor 8
1.5.2 Rotunjirea prin tăiere 8
1.5.3 Rotunjirea prin simetrie 10
1.6 Reprezentarea numerelor în memoria internă a calculatoarelor 12
1.6.1 Biţi, byte şi alte unităţi de măsură ale memoriei unui calculator electronic 12
1.6.2 Reprezentarea numerelor în virgulă fixă 12
1.6.3 Reprezentarea numerelor în virgulă mobilă 13
1.6.4 Aproximarea numerelor în calculatoarele electronice 13
1.7 O clasificare a erorilor 13
1.8 Aproximarea prin lipsă şi aproximarea prin adaos 14
1.9 Eroarea unei aproximaţii 14
1.10 Eroarea absolută 16
1.11 Eroarea absolută maximă 16
1.12 Eroarea absolută maximă la rotunjiri 17
1.12.1 Eroarea absolută maximă la rotunjirea prin tăiere 17
1.12.2 Eroarea absolută maximă la rotunjirea prin simetrie 19
1.13 Eroarea relativă 23
1.14 Eroarea relativă maximă 24
2.0 Obiectivele unităţii de învăţare nr. 2
2.1 Soluţii exacte şi soluţii aproximative
2.2 Metode numerice
2.3 Formule de recurenţă
2.4 Calculul rădăcinii pătrate aproximative dintr-un număr pozitiv
3.0 Obiectivele unităţii de învăţare nr. 3
3.1 O clasificare a ecuaţiilor neliniare
3.2 Metoda înjumătăţirii intervalelelor
3.3 Metoda lui Newton
3.4 Formule de recurenţă pentru calcul radicalilor de ordin n
4.0 Obiectivele unităţii de învăţare nr. 4
4.1 Forma generală a unui sistem algebric neliniar de ecuaţii
4.2 Metoda aproximaţiilor successive
4.3 Metoda lui Newton
4.4 O metodă de gradient
4.5 Despre alegerea primei aproximaţii
5.0 Obiectivele unităţii de învăţare nr. 5
5.1 Problemele lui Cauchy date ca exemple în această unitate
5.2 O clasificare a metodelor numerice pentru probleme de tip Cauchy
5.3 Despre consistenţa, stabilitatea şi convergenţa metodelor numerice
5.4 Ordinul unei metode numerice

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 1


Analiză Numerică

5.5 Stabilirea formulelor de recurenţă ale metodelor de tip Euler cu ajutorul ecuaţiilor integrale
5.6 Stabilirea formulei de recurenţă a metodei de tip Euler cu ajutorul seriilor Taylor
5.7 Stabilirea formulei de recurenţă a metodei lui Euler pe considerente geometrice
5.8 Stabilirea formulei de recurenţă a metodei lui Euler îmbunătăţită
5.9 Stabilirea formulei de recurenţă a metodei lui Euler modificată
5.10 Consistenţa, stabilitatea şi convergenţa metodelor de tip Euler
5.11 Ordinul metodelor de tip Euler
5.12 Rezolvarea sistemelor de ecuaţii diferenţiale de ordinul întâi
5.12.1 Utilizarea metodei lui Euler
5.12.2 Utilizarea metodei lui Euler îmbunătăţită
5.12.3 Utilizarea metodei lui Euler modificată
5.13 Rezolvarea ecuaţiilor diferenţiale de ordin superior cu metode de tip Euler
5.14 Determinarea soluţiilor cu o precizie dată
5.15 Observaţii privind pasul reţelei

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 2


Analiză Numerică

Unitatea de învăţare nr. 1

Elemente de teoria erorilor

Cuprins

1.0 Obiectivele unităţii de învăţare nr.1


1.1 Sisteme de numeraţie
1.2 Reprezentarea unui număr într-o bază oarecare
1.3 Schimbarea bazei
1.4 Numere aproximative
1.5 Metode de rotunjire a numerelor
1.5.1 Normalizarea numerelor
1.5.2 Rotunjirea prin tăiere
1.5.3 Rotunjirea prin simetrie
1.6 Reprezentarea numerelor în memoria internă a calculatoarelor
1.6.1 Biţi, byte şi alte unităţi de măsură ale memoriei unui calculator electronic
1.6.2 Reprezentarea numerelor în virgulă fixă
1.6.3 Reprezentarea numerelor în virgulă mobilă
1.6.4 Aproximarea numerelor în calculatoarele electronice
1.7 O clasificare a erorilor
1.8 Aproximarea prin lipsă şi aproximarea prin adaos
1.9 Eroarea unei aproximaţii
1.10 Eroarea absolută
1.11 Eroarea absolută maximă
1.12 Eroarea absolută maximă la rotunjiri
1.12.1 Eroarea absolută maximă la rotunjirea prin tăiere
1.12.2 Eroarea absolută maximă la rotunjirea prin simetrie
1.13 Eroarea relativă
1.14 Eroarea relativă maximă

1.0. Obiectivele unităţii de învăţare nr. 1

Precizarea tipurilor de erori care apar în analiza numerică

1.1 Sisteme de numeraţie

Omenirea a intuit importanţa numerelor încă din cele mai vechi timpuri. Babilonienii, chinezii,
egiptenii, grecii şi romanii reprezentau numerele cu ajutorul unor semne. Astfel, romanii utilizau
semnele:

I pentru numărul unu


V pentru numărul cinci
X pentru numărul zece
L pentru numărul cincizeci
C pentru numărul o sută
D pentru numărul cinci sute
M pentru numărul o mie

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 3


Analiză Numerică

Operaţiile cu numere romane se fac destul de greu. Ca urmare, acest sistem de numeraţie se foloseşte
rar.
Un moment, important în istoria civilizaţiei l-a jucat apariţia numerelor arabe, numere care
utilizează semnele:

0, 1, 2, 3, 4, 5, 6, 7, 8, 9

Aceste semne au fost preluate de arabi de la indieni.


Sistemul de numeraţie arab este un sistem poziţional. De pildă, numărul 1987 se poate scrie
sub forma:

1987  1 103  9  102  8  101  7  100

Scrierea aceasta ne permite să observăm că poziţiile cifrelor în număr sunt unice. Pe parcursul acestei
cărţi vom folosi numai sistemul de numeraţie arab.

1.2 Reprezentarea unui număr într-o bază oarecare

Dacă b este un număr natural nenul şi a0 ,a1 ,...,an sunt toate numerele naturale mai mici strict
decât b, atunci orice număr natural c se poate scrie în mod unic sub forma:

c=c m  bm + c m1  bm1 +...+ c 0  b0

unde  este semnul pentru înmulţire, iar c i  { a0 , a1 ,..., an } pentru orice i  { 0,1,...,m} şi c m  0 .
Numărul b se numeşte baza sistemului de numeraţie, iar numărul c se scrie în mod unic sub forma:

c=c mc m1....c 0

Evident, numerele c m ,c m1 ,...,c 0 sunt scrise în ordinea descrescătoare a puterilor bazei b.
Dacă b este un număr real nenul şi a0 ,a1 ,...,an sunt numere naturale mai mici strict decât b,
atunci pentru orice număr real c  1 putem scrie:

c=c m  bm + c m1  bm1 +...+ c 0  b0  c 1  b-1  c 2  b 2  ...

unde x este semnul pentru înmulţire, iar c i  {a0 , a1 ,..., an } pentru orice i  {m,m  1,...,0, 1, 2,...} şi
c m  0 . Această relaţie este valabilă şi pentru orice număr real c subunitar pozitiv. În acest caz
valoarea lui m este 0. Numărul real b care apare în reprezentarea de înainte se numeşte şi acum baza
sistemului de numeraţie. În acest sistem numărul c se scrie sub forma:

c=c mc m1...c 0 .c 1c 2 ...

Aici este pus în evidenţă faptul că numărul se poate scrie cu o infinitate de zecimale. În reprezentarea
numărului c am folosit punctul în locul virgulei zecimale. Acest mod de scriere îl vom folosi pe tot
parcursul acestei cărţi.
Ca prim exemplu considerăm numărul 269.08 . El este un număr scris în baza 10. Pentru el
avem reprezentarea:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 4


Analiză Numerică

269.08=2  102 + 6  101 + 9  100 + 0  10-1 + 8  10-2

Considerăm acum numărul 2 . Aşa cum ştim, numărul 2 are o infinitate de cifre
2  1.1421... . Acest număr se poate reprezenta sub forma:

2=1  100 + 1  101 +4  102 + 2  103 + 1  104 +...

Valoarea fracţiei 1/ 3 este un număr cu o infinitate de zecimale 0,33... . Acum putem scrie
reprezentarea:

1/3=0  100 + 3  101 + 3  102 +...

Orice număr raţional se poate scrie sub formă de număr cu o infinitate de cifre. De pildă,
numărul:

0.35

îl putem scrie sub forma:

0.34999...

deoarece:

0.34999...=0  100 + 3  101 + 4  102 +9(1 103 +1 104 +...)

iar suma progresiei geometrice din paranteză este egală cu 10-2 / 9 .


Un rol important în informatică îl au sistemele de numeraţie cu bazele 2, 8 şi 16. Aceste sisteme
sunt numite sistemul de numeraţie binar, octal şi, respectiv, hexazecimal. Sistemul de numeraţie binar
foloseşte cifrele 0 şi 1, sistemul de numeraţie octal foloseşte cifrele 0, 1, 2, 3, 4, 5, 6 şi 7, iar sistemul de
numeraţie hexazecimal foloseşte cifrele 0, 1, 2, …, 9 şi literele a, b, c, d, e şi f. Literele a, b, c, d, e şi f
reprezintă numerele 10, 11, 12, 13, 14 şi, respectiv, 15.

1.3 Schimbarea bazei

Un număr scris într-un sistem de numeraţie se poate scrie uşor în alt sistem de numeraţie. Este
bine să ştim că la schimbarea bazei se pot produce inexactităţi care conduc la erori grave dacă nu se
ţine seama de existenţa lor.
Pentru a evita unele confuzii, baza în care este scris un număr o vom ataşa acestuia sub forma
de indice. De pildă, prin notaţiile 54610 , 5468 şi 54616 precizăm că numărul 546 este scris în bazele 10,
8 şi, respectiv, 16.
Trecerea unui număr dintr-un sistem de numeraţie cu baza b10 în sistemul de numeraţie
zecimal se face imediat. De pildă, numărul 1d16 se poate scrie sub forma:

1d16 =1  161 +13  160 =29

Prin urmare:

1d16 =2910

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 5


Analiză Numerică

Trecerea unui număr întreg din sistemul de numeraţie zecimal într-un sistem de numeraţie cu
baza b  0 se face prin împărţiri succesive la b. Mai întâi, se împarte numărul dat la b şi se reţine restul
acestei împărţiri. Câtul de la această primă împărţire se împarte din nou la b şi se reţine noul rest.
Aceste împărţiri se repetă până când se obţine un cât mai mic decât baza. Resturile obţinute pe
parcursul calculelor, scrise în ordinea inversă a obţinerii lor, formează reprezentarea numărului dat în
baza aleasă.
Ca exemplu, considerăm numărul 2910 . Trecerea acestui număr în baza 2 se face pe baza
relaţiilor:

29  14  2  1;
14  7  2  0 ;
7  3  2  1;
3  1 2  1 ;
1  0  2  1;

Prin urmare:

2910  111012

Trecerea unui număr subunitar din sistemul de numeraţie zecimal într-un sistem de numeraţie
cu o bază b  0 se face prin înmulţiri repetate cu b. După prima înmulţire a numărului cu b se reţine
partea întreagă a rezultatului, iar partea fracţionară se înmulţeşte din nou cu b. Calculele se repetă în
acest fel până când după o înmulţire se obţine un număr întreg sau se constată o periodicitate în
rezultate.
Ca exemplu, considerăm numărul 0.210 . Trecerea acestui număr în baza 2 se face pe baza
relaţiilor:

0.2  2  0.4 ;
0.4  2  0.8 ;
0.8  2  1.6 ;
0.6  2  1.2 ;
0.2  2  0.4 ;

În acest caz înmulţirile pot continua indefinit. Prin urmare:

0.210  0,00110011...2

Aşadar numărului 0.210 îi corespunde în baza 2 un număr cu o infinitate de cifre. Evident, dacă ne
oprim la un număr finit de cifre, atunci avem un număr care este o aproximaţie a numărului 0.210 .

1.4 Numere aproximative

Este bine ştiut că în ştiinţele naturii şi ştiinţele inginereşti sunt elaborate modele matematice
care descriu cantitativ fenomemele studiate. Cu aceste modele se determină evoluţia în timp a
fenomenelor. Coeficienţii care apar în modele se determină prin măsurare.
Primele unităţi de măsură folosite în antichitate au fost cele pentru măsurarea lungimilor. Ca
unităţi de măsură ale lungimii se foloseau unele părţi ale corpului. Dintre acestea menţionăm cotul, care
reprezenta distanţa de la cot până la încheietura palmei şi stănjenul care reprezenta lungimea dintre
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 6
Analiză Numerică

vârfurile degetelor mâinilor întinse lateral.


Etalonul pentru lungimi a fost confecţionat în 1801. Acest etalon se păstrează la Sévres, lângă
Paris. Metrul etalon reprezintă a 40000000 parte din lungimea meridianului care trece prin Paris.
Această lungime a fost determinată în 1790 de renumiţii geodezi Delambre şi Mechain. La Conferinţa
generală de măsuri şi greutăţi din 1960 metrul etalon a fost definit ca fiind egal cu 1650763.73 lungimi
de undă din vid ale radiaţiei portocalii emisă de gazul radioactiv Kripton 84.
După război, la noi în mediul rural, se mai folosea cotul şi stâjenul. În Moldova cotul standard
avea 0.637 m, iar în Muntenia 0.664 m. Lungimea stânjenului a variat după epocă şi regiune între 1.966
m şi 2.296 m. Stâjenul introdus în Muntenia avea 1.966 m, iar stânjenul introdus în Moldova avea 2.02
m. În Moldova s-a mai folosit şi stânjenul de 2.23. S-a mai folosit şi stânjenul pescăresc cu o lungime de
1.5 m şi stâjenul marin cu o lungime de 1.83 m. Au fost perioade când pentru recunoaşterea terenurilor
se utiliza ca unitate de măsură pasul omului considerat a fi de 0.80 m. Pentru măsurarea terenului s-a
folosit şi prăjina cu o lungime care varia între şi 5 şi 7 m.
Este clar că prin măsurare nu se obţin valorile exacte ale mărimilor măsurate. Rezultatele
măsurătorilor depind de precizia aparatelor folosite, de condţiile meteorologice, de nivelul de pregătire al
persoanei care face măsurătorile, etc. De pildă, la măsurarea cu panglica de 50 m se recomandă o
corecţie bazată pe o formulă în care parametrii principali sunt distanţa măsurată, temperatura la care s-
a efectuat măsurarea şi temperatura de etalonare a panglicii.
De multe ori pentru a determina valoarea unui parametru se fac mai multe măsurători. În acest
fel se obţine un şir de valori x1 ,x 2 ,...,xn şi se ia ca valoare a parametrului măsurat media aritmetică x
definită de relaţia:

x1  x 2  ...  x n
x
n

Formula de calcul a mediei aritmetice x este determinată cu metoda celor mai mici pătrate. Mai exact,
se determină valoarea lui x astfel ca suma de pătrate:

S( x)  ( x  x1 )2  ( x  x 2 )2  ....  ( x  x n )2

să aibă valoarea minimă.


Măsurătorile introduc o serie de erori numite erori aleatoare. Studierea erorilor de măsurare se
poate face cu metode specifice teoriei probabilităţilor. Această teorie dispune de metode care permit
determinarea numărului de măsurători pentru a obţine o precizie acceptabilă.
Din cele prezentate mai sus deducem că valorile unor parametri care apar în modelele
matematice ale fenomenelor studiate nu sunt valori exacte. Aceste valori se numesc valori
aproximative. De aceea, numerele asociate acestor parametri prin măsurători se numesc numere
aproximative.
Modelele matematice în care apar numere aproximative conduc prin calcule tot la numere
aproximative. Orice calcul aproximativ necesită cunoaşterea precizei rezultatelor. Pentru a obţine
rezultate cât mai precise se impune să utilizăm ca valori ale parametrilor care intervin în modele numere
cu o precizie cât mai mare. Nu trebuie nici să exagerăm cu precizia valorilor parametrilor. Este posibil
ca o precizie mare să ducă la cheltuieli prea mari.

1.5 Metode de rotunjire a numerelor

În multe calcule inginereşti nu este necesară a precizie prea mare. De aceea, numerele
obţinute din măsurători sau din calcule se rotunjesc de cele mai multe ori. Rotunjirea numerelor se face
prin două metode care sunt cunoscute sub denumirile de rotunjire prin tăiere şi rotunjire prin simetrie.
Prin rotunjirea unui număr real x obţinem un alt număr real x . Numărul real x reprezintă o aproximaţie

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 7


Analiză Numerică

a numărului real x. Prin urmare, x este un număr aproximativ. Pentru a prezenta aceste metode vom
folosi forma normalizată a unui număr real scris în baza 10.

1.5.1 Normalizarea numerelor

Normalizarea unui număr real x este un procedeu prin care numărul se scrie sub forma:

x  f  10e

unde f este un număr subunitar, numit mantisă, care are prima zecimală nenulă, iar e este un număr
întreg numit exponent. De obicei, secvenţa f  10e se numeşte forma normalizată a numărului x.
Ca exemple, considerăm numerele:

235.61, 783, 0.00342

Aceste numere se scriu sub forma normalizată:

0.23561 103 , 0.783  103 , 0.342  102

Şi aici în locul virgulei zecimale am folosit punctul.


În secţiunile următoare presupunem că x este un număr real care poate avea o infinitate de
zecimale:

x  c mc m1...c 0 .c 1c 2 ...c  n ...

cu c m  0 . Acest număr îl scriem sub forma normalizată:

x= 0.a1a2 ...ak ak 1...amn+1...  10m1

în care:

a1  c m , a2  c m1 , …, am1  c 0 , am 2  c 1 , …, amn1  c  n

1.5.2 Rotunjirea prin tăiere

Rotunjirea prin tăiere păstrează primele k cifre ale mantisei din forma normalizată
x= 0.a1a2 ...ak ak 1...amn+1...  10m1 . Prin urmare, numărul x se aproximează cu numărul:

x  0.a1a2 ...ak  10m1

Ca exemplu, considerăm numărul:

x  59.14763

care se scrie sub forma normalizată:

x  0.5914763  102

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 8


Analiză Numerică

Ne propunem să păstrăm primele cinci cifre ale mantisei. Ca urmare, aproximaţia x va fi:

x  0.59147  102

care se scrie uzual sub forma:

x  59.147

Tot ca exemplu considerăm şi numărul:

x  68359.14

care se scrie sub forma normalizată:

x  0.6835914  105

Ne propunem să păstrăm primele două cifre ale mantisei. Ca urmare, aproximaţia x va fi:

x  0.68  105

care se scrie uzual sub forma:

x  68000

Considerăm acum numărul  . Aşa cum ştim,  este un număr cu o infinitate de zecimale:

=3.1415926535...

Acest număr se scrie sub forma normalizată:

=0.31415926535...  10 1

Ne propunem să păstrăm primele patru cifre ale mantisei. Ca urmare, aproximaţia  va fi:

 =0.3141 10 1

care se scrie uzual sub forma:

 =3.141

Mai dăm un exemplu. Aşa cum am văzut în secţiunea 1.3 numărul 0.2 se exprimă în baza doi
cu o infinitate de zecimale:

0.210  0.00110011...2

Evident, dacă în membrul drept ne oprim la un număr finit de cifre, atunci avem un număr care este o
aproximare a numărului 0.210 . Numerele aproximative care se obţin în acest fel sunt cu atât mai
apropiate de 0.2 cu cât numărul de cifre reţinute este mai mare. Vom nota cu x 1 , x 2 ,...,x 8 aproximaţiile
numărului 0.2 care se obţin reţinând din numărul 0.00110011...2 prima cifră de după punct, a doua

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 9


Analiză Numerică

cifră de după punct şi aşa mai departe. Prin calcul direct se constată că:

x 1  0 , x 2  0 , x 3  0.125
x 4  0.1875 , x 5  0.1875 , x 6  0.1875
x 7  0.1953125 , x 8  0.19921875

De pilldă, pentru a determina valoarea x 8  0.19921875 am făcut calculele:

0.00110011  1 23  1 24  1 27  1 28

sau:

0.00110011  0.125  0.0625  0.0078125  0.00390625  0.19921875

Denumirea mai potrivită a rotunjirii prin tăiere este rotunjirea prin trunchiere. Această denumire
a fost rezervată altei rotunjiri. Este vorba de trunchieri care se fac dezvoltărilor în serie Taylor ale unor
funcţii elementare.

1.5.3 Rotunjirea prin simetrie

Rotunjirea prin simetrie este rotunjirea pe care o facem uzual. Pentru a prezenta modul în care
se face această rotunjire scriem numărul x sub forma:

x  0.a1a2 ...ak  10m1  0.ak 1...  10m1k  fx  10m1  gx  10m1k

unde:

fx  0.a1a2 ...ak  10m1 , gx  0.ak 1...  10m1k

Aproximarea care foloseşte rotunjirea prin simetrie se face folosind relaţia:

f  10m1 , dacă g x  1/ 2
x   x m 1 m 1k
 fx  10  10 dacă g x  1/ 2

Această relaţie se exprimă simplu în cuvinte: dacă prima cifră neglijată este mai mică decât 5, atunci se
lasă nemodificată ultima cifră păstrată, iar dacă prima cifră neglijată este mai mare sau egală cu 5,
atunci se măreşte cu unu ultima cifră păstrată.
Ca exemplu, considerăm numărul:

x  59.14763

care se scrie normalizat sub forma:

x  0.5914763  102

Ne propunem să păstrăm primele 5 cifre ale mantisei. Ca urmare, aproximaţia x va fi:

x  0.59148  102
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 10
Analiză Numerică

care se scrie sub forma uzuală:

x  59.148

Tot ca exemplu considerăm şi numărul:

x  68359.14

care se scrie sub forma normalizată:

x  0.6835914  105

Ne propunem să păstrăm primele 4 cifre ale mantisei. Ca urmare, aproximaţia x va fi:

x  0.6836  105

care se scrie sub forma uzuală:

x  68360

Considerăm acum numărul:

=3.1415926535...

Acest număr se scrie sub forma normalizată:

=0.31415926535...  10 1

Ne propunem să păstrăm primele patru cifre ale mantisei. Ca urmare, aproximaţia  va fi:

 =0.3142  10 1

care se scrie sub forma uzuală:

 =3.142

În exemplele pe care le-am dat primele k-1 cifre reţinute în numerele aproximative x coincid cu
cifrele corespunzătoare ale numerelor aproximate x. Acest fapt nu are loc însă în general. Ca un
contraexemplu. considerăm numărul:

x  6349.999

care se scrie sub forma normalizată:

x  0.6349999  104

Dacă păstrăm primele cinci cifre ale mantisei, atunci:

x  0.63500  104

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 11


Analiză Numerică

care se scrie sub forma uzuală:

x  6350

1.6 Reprezentarea numerelor în memoria internă a calculatoarelor


1.6.1 Biţi, byte şi alte unităţi de măsură a memoriei unui calculator electronic

Calculatoarele efectuează operaţii cu informaţii codificate în şiruri formate din cifrele 0 şi 1.


Aceste cifre se numesc biţi. Codificarea datelor şi programelor de prelucrare a lor în succesiuni de biţi
se face automat de calculator. Denumirea de bit provine din cuvintele englezeşti binary digit(=cifră
binară). Bitul este cea mai mică unitate de măsură a informaţiei. Un multiplu al acestei unităţi de măsură
a informaţiei este byteul. Un byte(se citeşte bait) este format din opt biţi. Pentru a elimina pericolul unor
confuzii, specialiştii francezi au introdus denumirea de octet. Aşadar:

1 byte = 1 octet = 8 biţi

De obicei, pentru volumele mari de informaţii se folosesc multiplii octetului. Aceştia sunt:

1Ko( kilooctet ) = 210 octeţi = 1024 octeţi


1Mo( megaoctet ) = 220 octeţi = 1024 Ko
1Go( gigaoctet ) = 230 octeţi = 1024 Mo

Unităţile de măsură precizate aici se utilizează, de regulă, pentru a specifica dimensiunile memoriei
interne şi ale suporţilor externi de informaţii.

1.6.2 Reprezentarea numerelor în virgulă fixă

Numerele întregi se memorează în 8 biţi, 16 biţi, 32 biţi sau 64 de biţi. Este clar că în 8 biţi se
pot înregistra numere întregi mici, în timp ce în 16 biţi, în 32 biţi sau în 64 de biţi se pot înregistra
numere întregi mai mari.
Pentru a prezenta mecanismul prin care se înregistrează numerele întregi în calculatoare ne
vom referi la numerele care se pot memora în 8 biţi. Folosind 8 biţi putem înregistra numerele 0, 1, 2,
…, 255, adică primele 256 numere naturale (256=28). Numerele naturale din intervalul [0, 255] se pot
pune în corespondenţă cu numerele întregi din intervalul [-128, 127], sau, altfel scris, [-27, 27-1]. În
adevăr, dacă a este un număr întreg din intervalul [-128, 127], atunci lui i se poate asocia un număr
natural b din intervalul [0, 255] definit astfel:

a dacã a0
b 8
2  a dacã a0

Numărul b se numeşte codul complementar al numărului a. Evident codurile complementare ale


numerelor -128, -127, …, -1 sunt, respectiv, numerele 128, 129, …, 255. Prin urmare, folosind codurile
putem memora în 8 biţi orice număr întreg din intervalul [-128, 127].
Numărul 127 se reprezintă în baza 2 sub forma 11111112 . Aşadar, acest număr se reprezintă
pe 8 biţi prin secvenţa 01111111 . Numărul 128 şi toate care urmează până la 255 au în prima poziţie a
reprezentării pe 8 biţi numărul 1. Prin urmare, numerele 0, 1,…, 127 au cifra 0 în prima poziţie a
reprezentării lor binare pe 8 biţi, iar numerele negative -128, -127, …,-1 au cifra 1 pe prima poziţie a
reprezentării lor binare pe 8 biţi.
Forma de reprezentare a numerelor întregi în memoria calculatoarelor, pe care am expus-o aici,
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 12
Analiză Numerică

se numeşte reprezentare în virgulă fixă. În această reprezentare, virgula nu este prezentă. Poziţia
virgulei se subînţelege a fi într-o poziţie fixă, după ultima cifră a numărului.

1.6.3 Reprezentarea numerelor în virgulă mobilă

Aşa cum am văzut, un număr real x se poate scrie sub forma normalizată:

x  f  10e

unde f este un număr subunitar, numit mantisă, care are prima zecimală nenulă, iar e este un număr
întreg numit exponent.
Este clar că nu orice număr real se poate reprezenta în memoria calculatoarelor în forma cu
mantisă şi exponent. De fapt, un număr real care are un număr mare de cifre se aproximează printr-un
număr real apropiat care se poate memora în forma cu mantisă şi exponent. Precizia este determinată
de numărul de cifre ale mantisei, iar ordinul de mărime al numărului este dat de exponent.
Numerele reale se înregistrează în memoria calculatoarelor în 32 de biţi sau 64 de biţi. Unul din
aceşti biţi este rezervat semnului, iar ceilalţi biţi sunt rezervaţi mantisei şi exponentului. Dacă un număr
este memorat în 32 sau 64 de biţi, atunci mantisei îi sunt rezervaţi 23 biţi sau, respectiv, 52 de biţi, iar
exponentului îi sunt rezervaţi 8 sau, respectiv, 11 biţi. Evident, numerele care se reprezintă în 64 de biţi
sunt mai mari şi precizia cu care se reprezintă este mai mare. Dacă ţinem seama că echivalentul binar
al unui număr zecimal are de 3,3 ori mai multe cifre, deducem că numerele reale care se reprezintă în
32 de biţi au aproximativ 7 cifre exacte, iar numerele reale care se reprezintă în 64 de biţi au
aproximativ 16 cifre exacte. Aşadar, precizia numerelor reale care se reprezintă în 64 de biţi este de
două ori şi ceva mai mare faţă de precizia numerelor reale care se reprezintă în 32 de biţi. De aceea,
numerele reale care se reprezintă în 32 de biţi se numesc numere în virgulă mobilă cu precizie simplă,
iar cele care se reprezintă în 64 de biţi se numesc numere în virgulă mobilă cu precizie dublă.

1.6.4 Aproximarea numerelor în calculatoarele electronice

Calculatoarele electronice efectueaază calculele cu numerele scrise, de regulă, în baza 2.


Trecerea de la baza 10 la baza 2 şi invers este făcută automat de calculator. Aşa cum am văzut, la
trecerea dintr-o bază în alta se produc anumite aproximări.
Proiectanţii de calculatoare au avut două opţiuni pentru rotunjirea numerelor rezultate în urma
efectuării calculelor: rotunjirea prin tăiere şi rotunjirea prin simetrie. Rotunjirea prin simetrie asigură o
precizie mai mare a calculelor, dar necesită mai mult timp de calcul. De aceea, mulţi proiectanţi au
adoptat rotunjirea prin tăiere care asigură o precizie suficient de bună a calculelor numerice într-un timp
de calcul scăzut. .

1.7 O clasificare a erorilor

Literatura de specialitate conţine diferite clasificări ale erorilor care apar la rezolvarea
problemelor din ştiinţele naturii şi ştiinţele inginereşti. Principalele clase de erori sunt:

- erori iniţiale
- erori de calcul

Clasa erorilor iniţiale cuprinde erorile datorate modelării matematice necorespunzătoare sau
determinării greşite a valorilor parametrilor care apar în modelul matematic al fenomenului studiat.
Evident, aceste erori influenţează rezultatele calculculelor. Este posibil ca erorile iniţiale să conducă le
rezultate care contravin realităţii.
Dintre erorile care conduc la valori greşite ale parametrilor problemelor care trebuie rezolvate
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 13
Analiză Numerică

menţionăm erorile grosolane şi erorile sistematice. Erorile grosolane sunt provocate de persoana care
efectuează măsurătorile. Este posibil ca asemenea erori să fie cauzate de neatenţie, nivelul redus de
calificare, etc. De obicei, erorile grosolane se elimină chiar din perioada măsurătorilor. Erorile
sistematice sunt provocate de diferite cauze. Dintre acestea menţionăm condiţiile meteorologice. Aşa
cum am spus în una din secţiunile anterioare, dacă se face o măsurătoare terestră cu panglica de 50 m
la o temperatură diferită de temperatura de etalonare a panglicii, care este temperatura de 25 de grade
Celsius, atunci lungimii obţinute i se aplică o corecţie.
Clasa erorilor de calcul este cea care ne interesează în această carte. Această clasă include, în
principal, erorile de trunchiere şi erorile de rotunjire. La aceste tipuri de erori ne vom referi în secţiunile
următoare.

1.8 Aproximarea prin lipsă şi aproximarea prin adaos

Fie un număr real x şi o aproximaţie a sa x . Dacă:

x  x

atunci se spune că aproximarea lui x s-a făcut prin adaos, iar dacă:

x  x

atunci se spune că aproximarea lui x s-a făcut prin lipsă. De obicei, dacă x este un număr care
aproximează pe x prin lipsă sau adaos, atunci se foloseşte notaţia:

x  x

Este clar că un număr x se poate aproxima cu orice număr real x .


Ca exemplu, considerăm numărul:

=3.1415926535...

Este clar că aproximaţia:

 =3.142

este o aproximaţie prin adaos, iar aproximaţia:

 =3.141

este o aproximaţie prin lipsă.

1.9 Eroarea unei aproximaţii

Fie x un număr real şi x o aproximaţie a sa. Diferenţa:

a x  x  x

se numeşte eroarea aproximaţiei x .


Ca exemplu, considerăm numărul real:

x  59.14763
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 14
Analiză Numerică

Dacă alegem aproximaţia:

x  59.147

obţinută la rotunjirea prin tăiere a ultimilor două zecimale ale formei normalizate a numărului, atunci:

a x  x  x  59.14763  59.147  0.00063

iar dacă facem rotunjirea prin simetrie cu reţinerea primelor cinci zecimale din forma normalizată a
numărului, atunci:

x  59.148

şi:

a x  x  x  59.14763  59.148  0.00037

Considerăm acum numărul:

=3.1415926535...

Dacă alegem aproximaţia:

  3.142

atunci:

a x      3.1415926535...  3.142  0.0004073465...

iar dacă luăm aproximaţia:

  3.141

atunci:

a x      3.1415926535...  3.141  0.0005926535...

Evident, prima aproximaţie este prin adaos, iar a doua este o aproximaţie prin lipsă.
Mai considerăm şi aproximaţiile numărului 0.2 pe care le-am calculat în secţiunea 1.5.2. Erorile
acestor aproximaţii sunt:

a x1  0.2 , a x2  0.2 , a x3  0.075


a x4  0.0125 , a x5  0.0125 , a x6  0.0125
a x7  0.0046875 , a x8  0.00078125

Eroarea cea mai mică, dintre cele calculate, este ultima.

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 15


Analiză Numerică

1.10 Eroarea absolută

Pentru a aprecia mai uşor precizia aproximărilor se foloseşte eroarea absolută. Ca şi înainte,
presupunem că x este un număr real şi x o aproximaţie a sa. Numărul real e x definit de relaţia:

e x | x  x |

se numeşte eroare absolută a aproximaţiei x .


Eroarea absolută a aproximaţiei numărului:

x  59.14763

cu numărul:

x  59.147

este:

e1x  0.00063

iar eroarea absolută a aproximaţiei numărului:

x  59.14763

cu numărul:

x  59.148

este:

e 2x  0.00037

Prin urmare, eroarea absolută comisă la rotunjirea prin lipsă este de aproape două ori mai mare decât
eroarea absolută comisă la rotunjirea prin simetrie.
Mai considerăm şi aproximaţiile numărului 0.2 pe care le-am calculat în secţiunea 1.5.2. Erorile
absolute ale acestor aproximaţii sunt:

e x1  0.2 e x2  0.2 e x3  0.075


e x4  0.0125 e x5  0.0125 e x6  0.0125
e x7  0.0046875 e x8  0.00078125

Evident, erorile absolute coincid cu erorile calculate în secţiunea anterioară.

1.11 Eroarea absolută maximă

În secţiunea anterioară am determinat eroarea absolută comisă la aproximarea unor numere cu


alte numere determinate după regulile precizate la rotunjirea prin tăiere şi la rotunjirea prin simetrie. Aşa
cum ştim, prin măsurători se obţin valori aproximative ale mărimilor reale. Prin urmare, valorile exacte
ale mărimilor măsurate nu sunt cunoscute. De aceea, nici eroarea absolută nu se poate determina.
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 16
Analiză Numerică

Manualele de utilizare ale instrumentelor cu care se fac măsurători conţin preciziile de


măsurare pe care le asigură. De pildă, dacă un instrument de măsurare a lungimilor are o precizie de 5
mm, atunci ştim că eroarea absolută poate fi de cel mult 5mm.
În teoria erorilor se foloseşte noţiunea de eroare absolută maximă. Această mărime notată
cu e x reprezintă cel mai mic număr pentru care este valabilă relaţia:

| x  x | e x  e x

Prin urmare:

x  e x  x  x  e x

Ultimele inegalităţi precizează intervalul în care se află valoarea exactă, dar necunoscută, a lui x.

1.12 Eroarea absolută maximă la rotunjiri

Considerăm numărul:

x  c mc m1...c 0 .c 1c 2 ...c  n ...

cu c m  0 . Acest număr îl scriem sub forma normalizată:

x= 0.a1a2 ...ak ak 1...amn+1...  10m1

în care:

a1  c m , a2  c m1 , …, am1  c 0 , am 2  c 1 , …, amn1  c  n

Numărul x se poate scrie şi sub forma:

x  0.a1a2 ...ak  10m1  0.ak 1ak  2 ...amn+1...  10m1k

pe care o vom utiliza în secţiunile următoare.

1.12.1 Eroarea absolută maximă la rotunjirea prin tăiere

La rotunjirea prin tăiere se păstrează primele k cifre ale mantisei din forma normalizată
x= 0.a1a2 ...ak ak 1...amn+1...  10m1 . Prin urmare, numărul:

x= 0.a1a2 ...ak ak 1...amn+1...  10m1

se aproximează cu numărul:

x  0.a1a2 ...ak  10m1

În consecinţă, eroarea absolută este:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 17


Analiză Numerică

e x | x  x | 0.ak 1ak  2 ...amn1...  10m1k

Aşadar:

e x  10m1k

adică eroarea absolută maximă este:

e x  10m1k

Evident, eroarea absolută maximă depinde de rangul k al ultimei cifre păstrate.


Ca exemplu, considerăm numărul:

x  59.14763

care se scrie sub forma normalizată:

x  0.5914763  102

Din acest număr păstrăm primele cinci zecimale ale mantisei. Aşadar, aproximaţia x va fi:

x  0.59147  102

care se scrie uzual sub forma:

x  59.147

Prin urmare:

e x | 59.14763  59.147 | 0.00063  0.001  103  10m1k

cu:

m  1, k  5

Tot ca exemplu considerăm şi numărul:

x  68359.14

care se scrie sub forma normalizată:

x  0.6835914  105

Din acest număr păstrăm primele două zecimale ale mantisei. Aşadar, aproximaţia x va fi:

x  0.68  105

care se scrie uzual sub forma:


USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 18
Analiză Numerică

x  68000

Prin urmare:

e x | 68359.14  68000 | 359.14  103  10m1k

cu:

m 4, k 2

Considerăm acum numărul:

=3.1415926535...

Acest număr se scrie sub forma normalizată:

=0.31415926535...  10 1

Din acest număr păstrăm primele patru zecimale ale mantisei. Aşadar, aproximaţia  va fi:

 =0.3141 10

care se scrie uzual sub forma:

 =3.141

Prin urmare:

e x | 3.1415926535...  3.141 | 0.0005926535  103  10m1k

cu:

m0, k 4

1.12.2 Eroarea absolută maximă la rotunjirea prin simetrie

La rotunjirea prin simetrie numărul x s scrie sub forma:

x  0.a1a2 ...ak  10m1  0.ak 1...  10m1k  fx  10m1  gx  10m1k

Aproximarea care foloseşte rotunjirea prin simetrie se face folosind relaţia:

fx  10m1 ,
 dacă g x  1/ 2
x   m 1 m 1k
 fx  10  10 dacă g x  1/ 2

Dacă prima cifră neglijată este mai mică decât 5, atunci se lasă nemodificată ultima cifră păstrată, iar
dacă prima cifră neglijată este mai mare sau egală cu 5, atunci se măreşte cu 1 ultima cifră păstrată.
În consecinţă, eroarea absolută este:
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 19
Analiză Numerică

 gx  10
m1k
, dacă g x  1/ 2
ex   m 1k
(1  gx )  10 dacă g x  1/ 2

Aşadar:

1
e x  10m1k
2

adică eroarea absolută maximă este:

1
e x  10m1k
2

Evident, eroarea absolută maximă depinde de rangul k al ultimei cifre păstrate.


Ca exemplu, considerăm numărul:

x  59.14763

care se scrie normalizat sub forma:

x  0.5914763  102

Din acest număr păstrăm primele cinci cifre ale mantisei. Aşadar, aproximaţia x va fi:

x  0.59148  102

care se scrie uzual sub forma:

x  59.148

Evident, putem scrie:

x  59.14763  59.147  0.00063  59.148  0.001  0.00063

adică:

x  x  0.001  0.00063

Ca urmare:

1 1
e x | 0.001 0.00063 |  | 0.001 0.0005 | 0.0005  103  10m1k
2 2
cu:

m  1, k  5

Tot ca exemplu considerăm şi numărul:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 20


Analiză Numerică

x  68359.14

care se scrie sub forma normalizată:

x  0.6835914  105

Din acest număr păstrăm primele două zecimale ale mantisei. Aşadar, aproximaţia x va fi:

x  0.68  105

care se scrie sub forma uzuală:

x  68000

Evident, putem scrie:

x  68359.14  68000  359.14  x  359.14

Ca urmare:

1 1
e x  359.14  500  103  10m1k
2 2
cu:

m 4, k 2

Considerăm acum numărul:

=3.1415926535...

Acest număr se scrie sub forma normalizată:

=0.31415926535...  101

Din acest număr păstrăm primele patru cifre ale mantisei. Aşadar, aproximaţia  va fi:

 =0.3142  101

care se scrie sub forma uzuală:

 =3.142

Evident, putem scrie:

=3.1415926535...  3.141  0.0005926535

sau:

=3.142  0.001  0.0005926535...

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 21


Analiză Numerică

adică:

x  x  0.001  0.0005926535...

Ca urmare:

e x | 0.001 0.0005926535 |  | 0.001 0.0005 |

sau:

1 1
e x  0.0005  103  10m1k
2 2

cu:

m0, k 4

În fine, mai considerăm şi numărul:

x  6349.999

care se scrie sub forma normalizată:

x  0.6349999  104

Dacă păstrăm primele cinci cifre ale mantisei, atunci:

x  0.63500  104

care se scrie sub forma uzuală:

x  6350

Evident, putem scrie:

x=6349.999  6349.9  0.099  6350  0.1  0.099

adică:

x  x  0.1  0.099

Ca urmare:

e x | 0.1 0.099 |  | 0.1 0.05 |

sau:

1 1
e x  0.05  101  10m1k
2 2

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 22


Analiză Numerică

cu:

m3, k 5

1.13 Eroarea relativă

Presupunem că lungimile laturilor unui teren de formă dreptunghiulară sunt:

a  10m

şi:

b  1000m

Admitem că după măsurătorile efectuate s-au obţinut valorile aproximative:

a  9.99m

şi, respectiv:

b  999.9m

Este clar că eroarea absolută comisă la măsurarea laturii a este:

a  0.01m  10mm

iar eroarea absolută comisă la măsurarea laturii b este:

b  0.1m  100mm

Aşa cum observăm, eroarea absolută comisă la măsurarea laturii a este de 10 ori mai mică decât
eroarea absolută comisă la măsurarea laturii b.
Măsurătoarea laturii b este însă mai bună. În adevăr, în cazul măsurării laturii b la fiecare 1000
m măsuraţi s-a comis o eroare de 100 mm. Prin urmare, în cazul măsurării laturii b la fiecare 10 m
măsuraţi s-a comis o eroare de 1mm, în timp ce în cazul măsurării lalurii a la cei 10 m măsuraţi s-a
comis o eroare de 10 mm adică o eroare de 10 ori mai mare. Aşadar, eroarea absolută nu este o
noţiune pe care să o putem folosi la precizia măsurătorilor. Pentru aceasta se foloseşte altă noţiune,
eroarea relativă.
Eroarea relativă care se comite la aproximarea unui număr x cu o aproximaţie a sa x se
notează cu  x şi se defineşte cu relaţia:

| x  x |
x 
x

Este clar că eroarea relativă este un număr adimensional. Acest număr se exprimă, de regulă, în
procente.
Revenim acum la măsurătorile la care ne-am referit la începutul acestei secţiuni. Putem scrie:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 23


Analiză Numerică

e a 0.01
a    0.001
a 10

în cazul măsurării laturii a şi:

eb 0.1
b    0.0001
b 1000

în cazul măsurării laturii b. Eroarea relativă a măsurării laturii b este de 10 de ori mai mică decât
eroarea relativă a măsurării laturii a. De obicei, eroarea relativă se exprimă în procente. Astfel spunem
că precizia măsurării laturii a este 0.1%, iar precizia măsurării laturii b este 0.01%.
În expresia erorii relative apare numărul x care, de regulă, este necunoscut. Pentru a obţine o
formulă a erorii relative în care să nu apară x se foloseşte dezvoltarea:

ex e e 1 e e
 x  x  x (1  x  ...)
e
x x  e x x 1  x x x
x

Dacă ţinem seama că, de regulă:

ex | x |

atunci deducem:

ex ex
x  
x x

De aceea, pentru eroarea relativă  x se foloseşte formula:

ex
x 
x

Erorile relative calculate cu această formulă pentru laturile a şi b ale terenului pe care l-am
considerat mai sus sunt:

e a 0.01
a    0.001001001...  0.001
a 9.99

în cazul măsurării laturii a şi:

eb 0.1
b    0.000100010001...  0.0001
b 999.9

în cazul măsurării laturii b. Prin urmare, formulele dau aproximativ aceleaşi rezultate.

1.14 Eroarea relativă maximă

Ultima formulă de calcul a erorii relative din secţiunea precedentă foloseşte eroare absolută e x .

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 24


Analiză Numerică

Aşa cum ştim, în formula erorii absolute e x apare valoarea lui x, valoarea care în general este
necunoscută. De aceea, ca şi în cazul erorii absolute se foloseşte eroarea relatvă maximă. Această
mărime notată cu  x reprezintă cel mai mic număr pentru care este valabilă relaţia:

 x   x

Şi eroarea relativă se măsoară în procente.


Dăm şi un exemplu. Presupunem că în urma unei măsurări s-a obţinut distanţa de 563.24 m
între două puncte. Admitem că precizia aparatului cu care s-a efectuat măsurătoarea a fost de 5 mm şi
ne propunem să determinăm eroarea relativă maximă a măsurătorii. Calcule simple arată că:

0.005 0.5
 x   105  0.88772  109
563.24 0.56324

Test de autoevaluare
1. Rotunjiţi prin simetrie, la două zecimale, numerele 34.5483 şi 32.5634.
2. Rotunjiţi prin tăiere la două zecimale numerele 34.5483 şi 32.5634.
3. Care sunt principalele unităţi de măsură ale informaţiei.

După parcurgerea unităţii 1 de învăţare trebuie să reţineţi:

Ce sunt sistemele de numeraţie.


Cum se reprezintă un număr într-o bază.
Cum se schimbă baza de numeraţie
Ce sunt numerele aproximative.
Care sunt metodele de rotunjire.
Cum se reprezintă numerele în memoria internă a calculatoarelor.
Cum se clasifică erorile.
Cum se aproximează numerele prin lipsă şi prin adios.
Care sunt erorile care se fac la proximarea numerelor.

Răspunsuri la întrebările din testul de autoevaluare

1. Numerele 34.5483 şi 32.5634 rotunjite prin simetrie la două zecimale sunt 34.55 şi, respectiv, 32.56.
2. Numerele 34.5483 şi 32.5634 rotunjite prin tăiere la două zecimale sunt 34.54 şi, respectiv, 32.56.
3. Principalele unităţi de măsură ale informaţiei sunt octetul, kilooctetul, 1Ko=1024 octeţi, megaoctetul,
un Mo=1024Ko şi gigaoctetul, 1Go=1024Mo.

Bibliografie minimală

1.Iacob Caius, Matematici clasice şi moderne, Editura tehnică, Bucureşti, 1983


2.Marinescu Gheorghe, Analiza numerică, Editura Academiei, Bucureşti, 1974
3. Akai Terrence, Aplplied Numerical Methods for Engineers, John Wiley & Sons, New York
(Carte disponibilă la Biblioteca USAMVB)

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 25


Analiză Numerică

Unitatea de învăţare nr. 2

Soluţii exacte şi aproximative

Cuprins

2.0 Obiectivele unităţii de învăţare nr. 2


2.1 Soluţii exacte şi soluţii aproximative
2.2 Metode numerice
2.3 Formule de recurenţă
2.4 Calculul rădăcinii pătrate aproximative dintr-un număr pozitiv

2.1 Soluţii exacte şi soluţii aproximative

Aşa cum ştim, rădăcinile ecuaţiei de gradul al doilea:

ax 2  bx  c  0

se determină cu formula:

b  b2  4ac
x1,2 
2a

Ca exemplu, considerăm ecuaţia:

x 2  7x  12  0

Se constată că:

b2 - 4ac  ( 7)2 - 4  12  1  1

Prin urmare:

7 1 7 1
x1   3 , x2  4
2 2

şi:

x12  7x1  12  32  7  3  12  0
x 22  7x 2  12  42  7  4  12  0

Tot ca exemplu considerăm şi ecuaţia:

4x 2  4x  1  0

Acum avem:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 26


Analiză Numerică

b2 - 4ac  42 - 4  4  (-1)  32

astfel că după simplificări putem scrie:

1  2 1  2
x1  , x2 
2 2

Pentru a obţine valorile numerice ale lui x1 şi x 2 trebuie să înlocuim pe 2 cu valoarea sa şi


să efectuăm calculele. Ştim însă că 2 este un număr care se scrie cu o infinitate de zecimale
1.41421356237... . Calculele se pot face însă cu un număr finit de zecimale. Prin urmare, valorile
exacte ale lui x1 şi x 2 nu le putem determina.
Dacă înlocuim pe 2 cu o aproximaţie a sa şi efectuăm calculele, atunci obţinem două
numere x 1 şi x 2 care aproximează valorile exacte ale rădăcinilor x1 şi, respectiv, x 2 , valori pe care nu
le putem determina. De pildă, dacă înlocuim pe 2 cu 1.41, atunci obţinem:

x 1  1.205 , x 2  0.205

Se constată că:

4x 12  4x 1  1  0.0119  0


4x 22  4x 2  1  0.0119  0

Aşadar, aproximaţiile x 1  1.205 şi x 2  0.205 ale valorilor lui x1 şi, respectiv, x 2 , satisfac ecuaţia
4x 2  4x  1  0 cu o anumită aproximaţie.
Să reţinem că pentru ecuaţia x 2  7x  12  0 am reuşit să determinăm soluţiile x1 şi x 2 în
timp ce pentru ecuaţia 4x 2  4x  1  0 am reuşit să determinăm numai aproximaţiile x 1 şi x 2 ale
soluţiilor x1 şi, respectiv, x 2 . Valorile lui x1 şi x 2 pentru care:

ax12  bx1  c  0
ax 22  bx 2  c  0

se numesc soluţii exacte ale ecuaţiei ax 2  bx  c  0 , iar valorile lui x 1 şi x 2 pentru care:

ax12  bx1  c  0
ax 22  bx 2  c  0

se numesc soluţii aproximative ale ecuaţiei.

2.2 Metode numerice

Exemplele pe care le-am dat în secţiunea anterioară arată că soluţiile exacte ale ecuaţiilor nu
se pot obţine nici măcar pentru toate ecuaţiile de gradul al doilea. Acest fapt este valabil chiar şi pentru
ecuaţia de gradul unu. În cazul ecuaţiilor de grad mai mare situaţia este şi mai dificilă. Pentru aceste
ecuaţii nu există nici măcar formule pentru calcuul soluţiilor. Situaţia se complică în cazul ecuaţiilor
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 27
Analiză Numerică

transcendente care se exprimă cu funcţii diferite de funcţia polinomială. De aceea, atenţia oamenilor de
ştiinţă s-a îndreptat spre elaborarea unor metode de determinare a soluţiilor aproximative ale ecuaţiilor
algebrice sau transcendente. Este binecunscută metoda tangentelor de rezolvare a ecuaţiilor algebrice
sau transcendente elaborată de Isaac Newton, metodă cunoscută astăzi şi sub numele de metoda lui
Newton.
Metoda lui Newton face parte dintr-o clasă bogată de metode, clasă cunoscută sub denumirea
de metode numerice. Literatura de specialitate cunoaşte metode numerice pentru determinarea
soluţiilor aproximative ale ecuaţiilor algebrice sau transcendente, pentru determinarea soluţiilor
aproximative ale ecuaţiilor şi sistemelor de ecuaţii diferenţiale, pentru determinarea soluţiilor
aproximative ale ecuaţiilor şi sistemelor de ecuaţii cu derivate parţiale şi altele.
De cele mai multe ori, metodele numerice sunt singurele cu care putem să obţinem soluţii ale
problemelor rezultate din modelarea matematică a fenomemelor studiate în ştiinţele naturii şi ştiinţele
inginereşti. Exemplul care urmează este concludent.

Fig. 2.1

Considerăm o problemă în care se cere să determinăm debitul unui râu într-o secţiune
transversală a sa. Pentru aceasta trebuie să calculăm aria domeniului delimitat de conturul albiei, contur
reprezentat printr-o funcţie f(x), şi suprafaţa liberă a râului, figura 2.1.

Fig. 2.2

Calculul ariei unei secţiuni revine la calculul unei integrale definite:


b
s   f(x)dx
a

în care a şi b sunt abscisele punctelor de intersecţie ale graficului funcţiei f(x) cu axa Ox. Aproape
întotdeauna nu se cunoaşte însă expresia funcţiei f(x). În asemenea situaţii valoarea lui s se
aproximează cu o valoare s n care reprezintă suma ariilor dreptunghiurilor care acoperă secţiunea,
figura 2.2.
Pentru a calcula valoarea aproximativă s n , alegem pe suprafaţa liberă o reţea de puncte
x 0  a,x1 ,x 2 ,...,xn  b , care pot fi echidistante, şi determinăm, prin măsurare, valorile lui f(x) în punctele
reţelei. După ce determinăm valorile f(x 0 ),f(x1 ),...,f(xn ) putem calcula ariile dreptunghiurilor care au
latura superioară situată pe intervalele [x 0 ,x1 ] , [x1 ,x 2 ] ,…, [x n1 ,x n ] . Este clar că aria dreptunghiului cu

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 28


Analiză Numerică

latura superioară situată pe intervalul [xi ,x i1 ] este:

(xi  x i1 )f(x i )

Ca urmare, valoarea s a integralei se poate aproxima cu suma:

s n  (x1  x 0 )f(x1 )  (x 2  x1 )f(x 2 )  ...  (x n  x n1 )f(x n )

Această metodă de aproximare a valorii integralei se numeşte metoda dreptunghiurilor.


În problema pe care am formulat-o apar mai multe tipuri de erori. Menţionăm numai câteva
dintre ele. În primul rând, valorile f(x 0 ),f(x1 ),...,f(xn ) sunt determinate prin măsurare. Rezultatele
măsurării sunt afectate de diferite erori. Pe de altă parte, aria secţiunii este aproximată cu suma ariilor
dreptunghiurilor care acoperă secţiunea. Este clar că eroarea aproximaţiei se reduce pe măsură ce
creşte valoarea lui n, adică pe măsură ce acoperim secţiunea cu dreptunghiuri care au baza din ce în ce
mai mică. Un număr mai mare de puncte conduce însă la costuri mai mari.
Orice calcul inteligent făcut cu o metodă numerică necesită o evaluare a erorii care se face.
Studiul erorilor de calcul care se comit la aproximarea prin metode numerice face obiectul Analizei
numerice. Tot în cadrul Analizei numerice se studiază şi alte probleme cum sunt stabilitatea soluţiilor
aproximative şi convergenţa lor către soluţiile exacte. Pentru aceasta, Analiza numerică foloseşte
mijloace specifice Analizei funcţionale.
Teoremele de existenţă şi unicitate a soluţiilor care se studiază în diferite ramuri ale matematicii
îşi au importanţa lor. Nu putem trece la determinarea unei soluţii aproximative, care se numeşte şi
soluţie numerică, înainte de a ne asigura că soluţia exactă există. Determinarea soluţiilor aproximative
este una din etaple rezolvării. În această etapă se folosesc algoritmi bazaţi pe metode numerice care se
transpun în proceduri de calcul în diferite medii de programare.

2.3 Formule de recurenţă

Un şir { x n } n de numere reale se poate da printr-o relaţie de forma:

x n  x(n)

cu x funcţie cunoscută sau printr-o formulă de forma:

x n  x(x 0 ,x1 ,...,x n1 )

cu x funcţie cunoscută şi x 0 , x1 , …, x n1 date. În primul caz spunem că şirul este dat prin termenul său
general, iar în al doilea caz spunem că şirul este dat printr-o formulă de recurenţă.
Ca exemplu, considerăm şirul { xn } n dat prin termenul general:

n3
xn 
2n  1

Evident, în acest caz funcţia f are expresia:

n3
x(n) 
2n  1

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 29


Analiză Numerică

iar elementele şirului sunt:

4 n3
x 0  3 , x1  , x 2  1 , ..., x n  ,…
3 2n  1

1
Acest şir este convergent şi limita sa este x  .
2
Tot ca exemplu, considerăm şi şirul { xn } n definit prin relaţiile:

1 a
x n  (x n1  )
2 x n1

cu:

x0  a

în care a este un număr real şi pozitiv. Acest şir este dat printr-o formulă de recurenţă în care funcţia x
are expresia:

1 a
x(x n1 )  (x n1  )
2 xn1

Şirul { xn } n definit de formula de recurenţă:

1 a
x n  (x n1  )
2 x n1

cu:

x0  a

este convergent şi limita sa este a . În adevăr, prin calcule simple obţinem:

(x n1  a)2
xn  a 
2x n1

şi:

(x n1  a)2
xn  a 
2x n1

Pe baza acestei relaţii deducem:

xn  a x  a 2n
( 0 )
xn  a x0  a

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 30


Analiză Numerică

Dacă introducem notaţia:

x0  a
b
x0  a

atunci din ultima relaţie obţinem:


n
b2
x n  a(1  2 n )
1  b2

pentru n=1,2,... . Această relaţie arată că şirul { xn } n este convergent şi limita sa este a.

2.4 Calculul rădăcinii pătrate aproximative dintr-un număr pozitiv

Elementele şirului definit de formula de recurenţă:

1 a
x n  (x n1  )
2 x n1

cu:

x0  a

care are limita a , se numesc aproximaţii succesive ale numărului a . Elementul x 0 se numeşte
prima aproximaţie a lui a , x1 se numeşte a doua aproximaţie a lui a şi aşa mai departe. Cu
ajutorul acestui şir putem determina valoarea rădăcinii pătrate a astfel ca eroarea absolută să nu
depăşească o valoare  dată.
Numărul a din formula de recurenţă care defineşte şirul { xn } n este pozitiv. Ca urmare, toţi
termenii şirului sunt pozitivi. Din relaţia:

(x n1  a)2
xn  a 
2x n1

deducem:

xn  a

pentru n=1,2,… . Pe de altă parte, din:

1 a 1 a
x n  xn1  (xn1  )  x n1  (  x n1  )
2 x n1 2 x n1

obţinem:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 31


Analiză Numerică

1 a x2  a (x  a)(xn1  a)
x n  xn1  (  xn1  )  n1   n1 0
2 x n1 xn1 xn1

Aşadar, şirul {xn } n pe care l-am considerat este descrescător:

x1  x 2  ...x n  ...  a

Din relaţia:

x n1  a

deducem:

a
x n1  a  xn1 
x n1

Dacă folosim şi relaţia:

1 a
x n  xn1  (  x n1  )
2 xn1

atunci putem scrie:

x n1  a  2(x n1  x n )

sau:

x n  a  x n1  x n

Prin urmare:

| x n  a |  | x n1  x n |

Aşadar, pentru a calcula valoarea lui a astfel ca eroarea absolută să nu depăşească o valoare 
dată este suficient să determinăm succesiv termenii şirului până când:

| xn1  xn |  

Ca exemplu numeric concret, ne propunem să calculăm valoarea aproximativă a lui 2 astfel


ca eroarea absolută să nu depăşească valoarea:

 = 0.001

Prin urmare, trebuie să calculăm valorile x1 ,x 2 ,...,x n1 ,x n pe baza formulei:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 32


Analiză Numerică

1 a
x n  (x n1  )
2 x n1

cu:

x0  a  2

Începem cu calculul valorii lui x1 . Evident, avem:

1 a 1 2
x1  (x 0  )  (2  )  1.5
2 x0 2 2

Prin urmare:

x 0  x1  2  1.5  0.5  0.001  

Calculăm acum valoarea lui x 2 . Avem:

1 a 1 2
x 2  (x1  )  (1.5  )  1.416667
2 x1 2 1.5

Aşadar:

x1  x 2  1.5  1.416667  0.083333  0.001  

N xn | xn-1-xn | | xn-1-xn
| 
0 2.000000 - -
1 1.500000 0.500000 Nu
2 1.416667 0.083333 Nu
3 1.414216 0.002451 Nu
4 1.414214 0.000002 Da
Fig. 2.3

Determinăm acum valoarea lui x 3 . Avem:

1 a 1 2
x 3  (x 2  )  (1.416667  )  1.414216
2 x2 2 1.416667

În consecinţă:

x 2  x 3  1.416667  1.414216  0.002451  0.001  

În continuare calculăm valoarea lui x 4 . Acum avem:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 33


Analiză Numerică

1 a 1 2
x 4  (x 3  )  (1.414216  )  1.414214
2 x3 2 1.414216

Ca urmare:

x 3  x 4  1.414216  1.41421467  0.000002  0.001  

Calculele efectuate ne arată că valoarea aproximativă a lui 2 determinată este:

2  1.414214

Aşa cum ştim, 2 este un număr iraţional. Valoarea sa este:

2  1.41421356237...

Rezultatele calculelor efectuate sunt concentrate în tabelul din figura 2.3 .

Test de autoevaluare
Calculaţi valoarea rădăcinii pătrate 5 cu 6 zecimale cu ajutorul formulei
de recurenţă:

1 a
x n  (xn1  )
2 x n1

cu:

x0  a

După parcurgerea unităţii 2 de învăţare trebuie să reţineţi:

Ce sunt soluţiile exacte şi soluţiile numerice.


Ce sunt metodele numerice.

Răspunsuri la întrebările din testul de autoevaluare

Valoarea rădăcinii pătrate 5 cu 6 zecimale este 2.236068.

Bibliografie minimală
1.Iacob Caius, Matematici clasice şi moderne, Editura tehnică, Bucureşti, 1983
2.Marinescu Gheorghe, Analiza numerică, Editura Academiei, Bucureşti, 1974
3. Akai Terrence, Aplplied Numerical Methods for Engineers, John Wiley & Sons, New York
(Carte disponibilă la Biblioteca USAMVB)

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 34


Analiză Numerică

Unitatea de învăţare nr. 3

Metode iterative de rezolvare a ecuaţiilor neliniare

Cuprins

3.0 Obiectivele unităţii de învăţare nr. 3


3.1 O clasificare a ecuaţiilor neliniare
3.3 Metoda înjumătăţirii intervalelelor
3.4 Metoda lui Newton
3.5 Formule de recurenţă pentru calcul radicalilor de ordin n

3.0 Obiectivele unităţii de învăţare nr. 3

Rezolvarea ecuaţiilor algebrice sau transcendente cu metoda înjumătăţirii intervalelor şi cu


metoda lui Newton

3.1 O clasificare a ecuaţiilor neliniare

În acest capitol considerăm ecuaţii de forma:

F(x)  0

unde F este o funcţie continuă definită pe un interval din mulţimea R a numerelor reale. O ecuaţie de
această formă se numeşte ecuaţie algebrică dacă F este un polinom şi transcendentă în caz contrar. De
pildă, ecuaţia:

x 3  15x 2  71x  105  0

3.2 Metoda înjumătăţirii intervalelelor

Metoda înjumătăţirii intervalelor este o metodă simplă de determinare a soluţiilor aproximative


ale ecuaţiilor neliniare. În această metodă se presupune că funcţia F care apare în ecuaţia:

F(x)  0

este continuă şi are o singură rădăcină într-un interval [a,b] . Pentru a determina un şir de aproximaţii
ale rădăcinii exacte din intervalul [a,b] se determină un şir de intervale [ak ,bk ] , cu k  0,1,... a0  a ,
b0  b , incluse unul în altul [ak ,bk ]  [ak 1 ,bk 1 ] . Drept soluţie aproximativă cu aproximaţia  se ia
mijlocul:

ak 1  bk 1
x k 1 
2

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 35


Analiză Numerică

al intervalului [ak 1 ,bk 1 ] pentru care:

bk 1  ak 1  

Pentru a prezenta metoda înjumătăţirii intervalelor, considerăm că funcţia F are pe intervalul


[a,b] graficul din figura 3.1. Soluţia exactă a ecuaţiei F(x)  0 este abscisa punctului în care graficul
funcţiei intersectează axa absciselor Ox . În desen am notat cu a 0 valoarea lui a şi cu b 0 valoarea lui
b.

Fig. 3.1

Ca primă aproximaţie a soluţiei exacte a ecuaţiei F(x)  0 se ia mijlocul intervalului [a0 ,b0 ] ,
adică:

a0  b0
x0  .
2

Dacă:

F(x 0 )  0

atunci x 0 este chiar soluţia exactă a ecuaţiei. În caz contrar, calculele se continuă cu intervalul [a0 ,x 0 ]
sau cu intervalul [x 0 ,b0 ] după cum soluţia exactă se află în intervalul [a0 ,x 0 ] sau în intervalul [x 0 ,b0 ] .
Noul interval se notează cu [a1 ,b1 ] . Pentru a decide cu ce interval se continuă calculele, [a0 ,x 0 ] sau
[x 0 ,b0 ] , se calculează valoarea produsului F(a0 )F(x 0 ) . Desigur, dacă F(a0 )F(x 0 )  0 , atunci calculele
se continuă cu intervalul [a0 ,x 0 ] , iar dacă F(a0 )F(x 0 )  0 , atunci calculele se continuă cu intervalul
[x 0 ,b0 ] . Evident, în primul caz noul interval [a1 ,b1 ] este definit de relaţiile:

a1  a0 , b1  x 0

iar în al doilea caz noul interval [a1 ,b1 ] este definit de relaţiile:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 36


Analiză Numerică

a1  x 0 , b1  b0

Este clar că în cazul din figura 3.1 calculele se continuă cu intervalul [x 0 ,b0 ] . La iteraţia următoare se
repetă calculele cu intervalul [a1 ,b1 ] . Ca urmare, a doua aproximaţie a soluţiei va fi:

a1  b1
x1 
2

În cazul din figura 3.1 calculele se continuă cu intervalul [x1 ,b1 ] . Acest interval a fost notat cu [a2 ,b2 ] .
Desigur, la iteraţia următoare se repetă calculele cu intervalul [a2 ,b2 ] . Ca urmare, a treia aproximaţie a
soluţiei va fi:

a2  b2
x2 
2

În cazul din figura 3.1, calculele se continuă cu intervalul [a2 ,x 2 ] . Acest interval a fost notat cu [a3 ,b3 ] .
Din cele prezentate rezultă că în metoda înjumătăţirii intervalelor se construieşte un şir de
intervale [ak ,bk ] cu k=0, 1, 2,... cu proprietatea:

ba
b k  ak 
2k

Dacă notăm cu  soluţia exactă a ecuaţiei, atunci putem scrie:

ba
| x k   | bk  ak 
2k

Prin urmare:

ba
lim | x k   | lim 0
k  k  2k

adică:

lim xk  
k 

Aşadar, şirul de aproximaţii ale soluţiei ecuaţiei F(x)  0 este convergent şi limita sa este chiar
rădăcina exactă a ecuaţiei din intervalul (a,b) .
Desigur, soluţia exactă  a ecuaţiei F(x)  0 se aproximează cu unul din elementele şirului
{xk } k construit prin înjumătăţirea intervalelor. Drept soluţie se ia mijlocul intervalului [ak ,bk ] pentru care
se îndeplineşte condiţia:

b k  ak  

sau condiţia:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 37


Analiză Numerică

| F(xk ) | 

cu  număr real pozitiv suficient de mic. Este clar că a doua condiţie include şi cazul în care la un
moment dat a fost obţinută chiar soluţia exactă a ecuaţiei.

Fig. 3.2

Ca exemplu, considerăm ecuaţia:

x 3  15x 2  71x  105  0

pe care am utilizat-o şi în alte exemple pe care le-am dat în secţiunile anterioare. Ne propunem să
determinăm o aproximaţie a soluţiei care se află în intervalul [4.5,6] . În acest scop am structurat
calculele sub forma din figura 3.2.
Aşa cum se observă, în celulele A2, B2 şi C2 am introdus numerele 0, 4.5, şi, respectiv, 6, iar în
celelalte celule din liniile 2, 3 am introdus formulele:

(B2+C2)/2 în celula D2
+B2^3-15*B2^2+713B2-105 în celula E2
+D2^3-15*D2^2+71*D2-105 în celula F2
@IF(C2-B2<0.001,”Stop”,”Next”) în celula G2
@IF(@ABS(F2)<0.001,”Stop”,”Next”) în celula H2
+A2+1 în celula A3
@IF(E2*F2<0,B2,D2) în celula B3
@IF(E2*F2<0,D2,C2) în celula C3

După ce am introdus aceste formule am copiat blocul E2..H2 în blocul E3..H3 şi apoi am copiat blocul
A3..H3 în blocul A4..H13.
Rezultatele din figura 3.2 arată că la iteraţia k=10 se îndeplineşte condiţia:

|F(x10 ) | 0.001

Prin urmare, la iteraţia k=10 am obţinut soluţia aproximativă:

x10  5.000244140625

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 38


Analiză Numerică

Această soluţie este o aproximaţie foarte bună a soluţiei exacte:

x=5

Tot din rezultatele afişate, observăm că la iteraţia 11 s-a îndeplinit şi condiţia:

b11  a11  0.001

La această iteraţie am obţinut soluţia:

x11  4.9998779296875

Şi această soluţie reprezintă o aproximaţie foarte bună a soluţiei exacte:

x=5

Fig. 3.3

Eroarea comisă la aproximarea soluţiei exacte x=5 cu soluţia aproximativă


x10  5.000244140625 este:

x | 5  5.000244140625 | 0.000244140625

iar eroarea comisă la aproximarea soluţiei exacte x=5 cu soluţia aproximativă x11  4.9998779296875
este:

x | 5  4.9998779296875 | 0.0001220703125

Aşadar, eroarea comisă la aproximarea soluţiei exacte cu soluţia aproximativă x11  4.9998779296875
este mai mică decât eroarea comisă la aproximarea soluţiei exacte x=5 cu soluţia aproximativă
x10  5.000244140625 .
În figura 3.3 apar alte rezultate ale calculelor bazate pe formulele pe care le-am introdus mai
înainte. Acum am înlocuit numărul 4.5 din celula B2 cu numărul 4. Aşa cum se observă, chiar de la

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 39


Analiză Numerică

prima iteraţie, în celula H2 a apărut cuvântul Stop. Prin urmare, chiar de la prima iteraţie calculată s-a
îndeplinit condiţia:

|F(x 0 ) | 0.001

De fapt, acum:

F(x 0 )  0

Aşadar, chiar de la prima iteraţie s-a obţinut soluţia exactă:

x=5

Calculele au continuat şi, la iteraţia k=11, s-a obţinut şi soluţia aproximativă:

x11  5.99951171875

care îndeplineşte condiţia:

b11  a11  0.001

Fig. 3.4

3.3 Metoda lui Newton

Metoda lui Newton, cunoscută şi sub numele de metoda tangentei, este o metodă de
determinare a soluţiilor aproximative ale ecuaţiilor neliniare. Şi în această metodă se presupune că în
intervalul [a,b] în care se caută soluţia, ecuaţia:

F(x)  0

are o singură rădăcină. În plus, se presupune că funcţia F(x) este derivabilă de două ori pe intervalul
[a,b] în care se află soluţia exactă.
Formula de recurenţă care generează şirul {xk } k care aproximează soluţia exactă se poate
construi printr-un procedeu geometric, figura 3.13. Pentru aceasta, presupunem că am reuşit să
determinăn elementul x k . Din punctul Nk de coordonate (xk ,0) ridicăm o perpendiculată care
intersectează graficul funcţiei în punctul Mk de coordonate (xk ,y k ) . Evident, avem y k  F(xk ) . Acum
ducem tangenta la graficul funcţiei prin punctul Mk . Aşa cum se ştie, ecuaţia acestei tangente este:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 40


Analiză Numerică

y  y k  F'(xk )(x  xk )

iar:

F'(xk )  tg k

k fiind unghiul pe care tangenta îl face cu direcţia pozitivă a axei Ox . Pentru a obţine abscisa
punctului de intersecţie al tangentei cu axa Ox înlocuim în ecuaţia tangentei pe y cu 0. Ca urmare,
putem scrie:

y k  F'(xk )(xk 1  x k )

Cum:

y k  F(xk )

deducem:

x k 1  xk  F(xk ) / F'(x k )

Aceasta este relaţia de recurenţă pe baza căreia se determină şirul de aproximaţii în metoda lui
Newton.

Fig. 3.5

Ca exemplu, considerăm ecuaţia:

x 3  15x 2  71x  105  0

pe care am utilizat-o şi în alte exemple pe care le-am dat în secţiunile anterioare. Ne propunem să
determinăn o aproximaţie a soluţiei care se află în intervalul [4.5,6] . În acest scop am structurat
calculele sub forma din figura 3.6..
Aşa cum se observă, în celulele A2 şi B2 am introdus numerele 0 şi, respectiv, 4.5, iar în
celelalte celule din liniile 2, 3 am introdus formulele:

+B2^3-15*B2^2+71*B2-105 în celula C2
3*B2^2-30*B2+71 în celula D2
+A2+1 în celula A3
+B2-C2/D2 în celula B3
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 41
Analiză Numerică

În continuare am copiat formulele din blocul C2..D2 în blocul C3..D3 şi am introdus formula:

@IF(@ABS(B3-B2)<0.001,”Stop”,”Next”) în celula E3

după care am copiat blocul A3..E3 în blocul A4..E5. Formula din celula E3 verifică îndeplinirea condiţiei:

|x k 1  x k | 0.001

Fig. 3.6

Rezultatele afişate în figura 3.6 arată că la iteraţia k=3 se îndeplineşte condiţia


|x k 1  x k | 0.001 . Prin urmare, la iteraţia k=3 am obţinut soluţia aproximativă:

x 3  5.000000000005970

care este o aproximaţie foarte bună a soluţiei exacte:

x=5

3.4 Formule de recurenţă pentru calcul radicalilor de ordin n

Metoda lui Newton ne permite să deducem formule de recurenţă pentru determinarea radicalilor
de ordin n din numere reale şi pozitive. Pentru a deduce aceste formule considerăm că a este un număr
real şi pozitiv şi ne punem problema aproximării valorii n a . Este clar că valoarea lui n a este soluţia
ecuaţiei:

xn  a  0

Această ecuaţie este o ecuaţie algebrică de forma:

F(x)  0

cu:

F(x)  xn  a

Formula de recurenţă a metodei lui Newton corespunzătoare acestei ecuaţii este:

1 a
x k 1  [(n  1)x k  n1 ]
n xk

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 42


Analiză Numerică

De aici, deducem că formula de recurenţă pentru determinarea rădăcinii pătrate dintr-un număr a este:

1 a
x k 1  (xk  )
2 xk

iar formula de recurenţă pentru determinarea rădăcinii cubice dintr-un număr a este:

1 a
x k 1  (2x k  2 )
3 xk

Formula de recurenţă cu care se poate calcula rădăcina pătrată am folosit-o deja în capitolul
anterior. Acum dăm un exemplu de utilizare a formulei de recurenţă pentru calculul rădăcinii cubice. Mai
exact, ne propunem să calculăm valoarea 3 8 . În acest scop am structurat calculele sub forma din
figura 3.7. Numărul 8 l-am introdus în celula B2. Acest număr l-am luat şi ca aproximaţie iniţială x 0 . De
asemenea, am introdus formulele:

+A2+1 în celula A3
(2*B2+$B$2/B2^2)/3 în celula B3
@IF(@ABS(B3-B2)<0.001) în celula C3

Este clar că formula @IF(@ABS(B3-B2)<0.001) verifică îndeplinirea condiţiei:

| x k 1  x k | 

Blocul A3..C3 l-am copiat în blocul A4..C10. Valorile afişate arată că la iteraţia k=7 s-a obţinut soluţia:

x 7  2.000000001071190

Fig. 3.7

Evident, valoarea x 7  2.000000001071190 aproximează foarte bine valoarea 3


8 . Să mai observăm
că la iteraţia k=8 s-a obţinut chiar valoarea exactă a rădăcinii cubice 3 8 . Este clar că pentru a calcula
rădăcina cubică din alt număr, introducem numărul respectiv în celula B2 şi copiem blocul A10..C10 mai
jos dacă soluţia aproximativă nu se obţine până la iteraţia k=8.

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 43


Analiză Numerică

Test de autoevaluare
Calculaţi valoarea rădăcinii pătrate 11 cu ajutorul procedurii din
secţiunea 3.4.

După parcurgerea unităţii 3 de învăţare trebuie să reţineţi:

Cum se calculează soluţiile ecuaţiilor algebrice sau transcendente cu ajutorul


metodei înjumătăţirii intervalelor şi cu ajutorul metodei lui Newton.

Răspunsuri la întrebările din testul de autoevaluare

Valoarea rădăcinii pătrate 11 calculată cu ajutorul procedurii din secţiunea 3.4 este
3.316624790355400.

Bibliografie minimală

1.Iacob Caius, Matematici clasice şi moderne, Editura tehnică, Bucureşti, 1983


2.Marinescu Gheorghe, Analiza numerică, Editura Academiei, Bucureşti, 1974
3. Akai Terrence, Aplplied Numerical Methods for Engineers, John Wiley & Sons, New York
(Carte disponibilă la Biblioteca USAMVB)

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 44


Analiză Numerică

Unitatea de învăţare nr. 4

Metode iterative de rezolvare a sistemelor algebrice neliniare de ecuaţii

Cuprins

4.0 Obiectivele unităţii de învăţare nr. 4


4.1 Forma generală a unui sistem algebric neliniar de ecuaţii
4.2 Metoda aproximaţiilor successive
4.3 Metoda lui Newton
4.4 O metodă de gradient
4.5 Despre alegerea primei aproximaţii

4.0 Obiectivele unităţii de învăţare nr. 4

Rezolvarea sistemelor algebrice de ecuaţii neliniare cu metode iterative

4.1 Forma generală a unui sistem algebric neliniar de ecuaţii

Forma generală a unui sistem algebric de ecuaţii neliniare este:

f1 (x1 , x 2 , ..., xn )  0
f2 (x1 , x 2 , ..., xn )  0
…………………
fm (x1 , x 2 , ..., x n )  0

în care cel puţin una din funcţiile f1 (x1 , x 2 , ..., xn ) , f2 (x1 , x 2 , ..., x n ) , ..., fm (x1 , x 2 , ..., xn ) este
neliniară, iar x1 , x 2 , ..., x n sunt necunoscutele sistemului.
În acest capitol vom prezenta câteva metode iterative de rezolvare a sistemelor algebrice
neliniare de ecuaţii. Aceste metode pornesc de la un element:

x (0)  (x1(0) , x (0) (0)


2 , ...,x n )

şi construiesc un şir de elemente {x(i) } i numite iteraţii. Dacă şirul de iteraţii {x(i) } i este convergent,
atunci elementul:

x (k)  (x1(k) , x (k) (k)


2 , ..., x n )

pentru care au loc relaţiile:

| x1(k)  x1(k 1) |  , | x (k) (k 1)


2  x2 |  ,..., | x (k) (k 1)
n  xn | 

se ia drept soluţie aproximativă cu aproximaţia . Aproximaţia  este un număr real şi pozitiv suficient
de mic, de exemplu 0.001 sau 0.0001.
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 45
Analiză Numerică

În cele ce urmează vom considera sisteme algebrice neliniare de două ecuaţii cu două
necunoscute scrise sub forma generală:

F(x, y)  0
G(x, y)  0

cu F şi G funcţii date.

4.2. Metoda aproximaţiilor succesive

Considerăm un sistem algebric neliniar de două ecuaţii cu două necunoscute x şi y scris sub
forma:

F(x, y)  0
G(x, y)  0

Presupunem că sistemul se poate scrie şi sub forma:

x  f(x, y)
y  g(x, y)

Admitem că sistemul are soluţia:

x , y 

şi notăm cu x (0) şi, respectiv, y (0) o aproximaţie a acestei soluţii.


Pornind de la aproximaţia iniţială x(0) , y (0) a soluţiei, construim şirul de aproximaţii:

x (k)  f(x(k 1) , y (k 1) )


y (k)  g(x (k 1) , y (k 1) )

cu k=1, 2, …. Pentru convergenţa şirurilor {x(k) )} k şi {y (k) )} k sunt suficiente condiţiile:

| fx (x,y) |  | gx (x,y) | 1
| fy (x,y) |  | gy (x,y) | 1

în care fx şi gx reprezintă derivatele parţiale ale lui f şi, respectiv, g în raport cu x, iar fy şi gy
reprezintă derivatele parţiale ale lui f şi, respectiv, g în raport cu y.
În calculele efective se determină un şir finit de iteraţii. Drept soluţie se ia prima pereche
(k) (k)
(x , y ) , pentru care sunt satisfăcute simultan inegalităţile:

| x (k)  x (k 1) |  , | y (k)  y (k 1) | 

cu  pozitiv şi suficient de mic.


Pentru a da un exemplu, considerăm sistemul algebric de două ecuaţii liniare cu două
necunoscute:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 46


Analiză Numerică

a11x  a12 y  b1
a21x  a22 y  b2

Dacă a11 şi a 22 sunt nenule, atunci putem scrie acest sistem şi sub forma:

x  (b1  a12 y) / a11


y  (b2  a21x) / a22

Pe baza acestor formule construim şirurile:

x (k)  (b1  a12 y (k 1) ) / a11


y (k)  (b2  a21x(k 1) ) / a22

Se demonstrează că:

„Şirurile {x(k) } k şi {y (k) } k converg către soluţia sistemului, pentru orice valori x (0) şi y (0) date,
dacă şi numai dacă se îndeplineşte condiţia:

a12 a21
| | 1
a11a22

în care a11 , a12 , a21 , a22 sunt coeficienţii sistemului.”

Fig. 4.1

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 47


Analiză Numerică

Considerăm acum un caz concret. Mai exact, considerăm sistemul:

2x  3y  1
x  4y  6

pe care îl scriem sub forma:

x  (1  3y) / 2
y  (6  x) / 4

În acest caz avem:

a11  2 , a12  3 , a21  1 , a22  4

Prin urmare, se îndeplineşte condiţia necesară şi suficientă:

a12 a21
| | 1
a11a22

pentru convergenţa şirurilor:

x (k)  (1  3y (k 1) ) / 2
y (k)  (6  x(k 1) ) / 4

În figura 4.1 apar rezultatele calculelor pe care le-am efectuat pentru a determina soluţia
sistemului pe care l-am considerat cu metoda aproximaţiilor succesive. În celulele A3, B3, C3 am
introdus numărul 0. Prin urmare, am luat:

x (0) = 0 , y (0) = 0

Pentru a determina iteraţiile următoare, în celulele A4, B4, C4, D4 am introdus, respectiv, formulele:

+ A3 + 1
(1+ 3*C3)/2
(6 - B3)/4

@IF(@AND(@ABS(B4 - B3)<$B$1, @ABS(C4 - C3)<$B$1),"Da","Nu")

Să observăm că a doua şi a treia formulă determină valorile iteraţiilor x (1) , y (1) . Ultima formulă
verifcă îndeplinirea condiţiilor:

| x (k)  x (k 1) |  , | y (k)  y (k 1) | 

corespunzătoare valorii:

k= 1

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 48


Analiză Numerică

Mai exact, ultima formulă returnează cuvântul Da atunci când se îndeplinesc ultimele inegalităţi şi
cuvântul Nu în caz contrar.
Cum observăm, la iteraţia:

k= 1

nu se îndeplinesc ultimele inegalităţi. Pentru a continua calculele, am copiat blocul A4..D4 în blocul
A5..D20.
Rezultatele calculelor ne arată că la iteraţia:

k = 17

se îndeplinesc condiţiile:

| x (k)  x (k 1) |  , | y (k)  y (k 1) | 

Prin urmare, pentru:

 = 0.001

am obţinut soluţia aproximativă:

x (17)  1.999413 , y (17)  1.000196

Această soluţie aproximează foarte bine soluţia exactă a sistemului:

x  2, y  1

Se poate constata uşor că pentru:

 = 0.01

obţinem soluţia aproximativă:

x (13)  1.995829 , y (13)  1.001390

iar pentru:

 = 0.0001

obţinem soluţia aproximativă:

x (21)  1.999918 , y (21)  1.000027

Pentru a determina soluţia aproximativă corespunzătoare lui:

 = 0.0001

a trebuit să copiem blocul A20..D20 în blocul A21..D26.


Numărul de iteraţii necesar determinării unei soluţii aproximative depinde de valoarea lui  .
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 49
Analiză Numerică

Cum observăm, numărul de iteraţii necesar determinării unei soluţii aproximative creşte pe măsură ce
valoarea lui  scade.
Metoda aproximaţiilor succesive am testat-o şi pe sistemul:

xy 1
xy 7

Acum am construit şirurile:

x (k)  1  y (k 1)
y (k)  7  x (k 1)

În acest caz în celulele A4, B4, C4, D4 am introdus, respectiv, formulele:

+ A3 + 1
1+ C3
7 - B3

@IF(@AND(@ABS(B4 - B3)<$B$1, @ABS(C4 - C3)<$B$1),"Da","Nu")

Cum observăm, figura 4.2, la iteraţia:

k= 1

nu se îndeplinesc condiţiile:

| x (k)  x (k 1) |  , | y (k)  y (k 1) | 

Pentru a determina şi iteraţiile următoare, am copiat blocul A4..D4 în blocul A5..D7.

Fig. 4.2

Rezultatele calculelor ne arată că la iteraţia:

k= 4

reapar valorile de la iteraţia:

k=0

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 50


Analiză Numerică

Aşadar, şirurile:

x (k)  1  y (k 1)
y (k)  7  x (k 1)

cu:

x (0) = 0 , y (0) = 0

nu sunt convergente.
Sistemul pe care l-am considerat acum are totuşi soluţie. Aceasta este:

x 4, y 3

Şirurile de iteraţii nu sunt convergente deoarece nu se îndeplineşte condiţia necesară şi suficientă de


convergenţă:

a12 a21
| | 1
a11a22

Fig. 4.3

Pentru a mai da un exemplu, considerăm sistemul algebric neliniar de două ecuaţii cu două
necunoscute:

x2  y  8
x  2y  1

Este vorba de sistemul pe care l-am considerat şi în secţiunea 9.29. În figură 17.3 apar graficele
funcţiilor:

y  x2  8
y  (x  1) / 2

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 51


Analiză Numerică

asociate celor două ecuaţii ale sistemului.


Cum am mai spus, soluţiile sistemului sunt coordonatele punctelor de intersecţie ale parabolei
de ecuaţie:

y  x2  8

cu dreapta de ecuaţie:

y  (x  1) / 2

În acest caz simplu, prin calcule directe, deducem că cele două soluţii ale sistemului sunt:

x1  3 , y 1  1
x 2  5 / 2 , y 2  7 / 4

Pentru a determina o aproximaţie a primei soluţii exacte, am utilizat formulele de recurenţă:

x (k)  y (k 1)  8
y (k)  (x (k 1)  1) / 2

pe care le-am dedus din ecuaţiile sistemului. Pe baza acestor formule de recurenţă, am obţinut
rezultatele din figura 4.4. Şi acum am luat:

x (0) = 0 , y (0) = 0

iar în celulele A4, B4, C4, D4 am introdus, respectiv, formulele:

+ A3 + 1
@SQRT(C3 + 8)
(B3 - 1)/2

@IF(@AND(@ABS(B4 - B3)<$B$1, @ABS(C4 - C3)<$B$1),"Da","Nu")

Să observăm că a doua şi a treia formulă determină valorile iteraţiilor x (1) , y (1) . Ultima formulă
verifică îndeplinirea condiţiilor:

| x (k)  x (k 1) |  , | y (k)  y (k 1) | 

corespunzătoare valorii:

k= 1

Mai exact, ultima formulă returnează cuvântul Da atunci când se îndeplinesc ultimele inegalităţi şi
cuvântul Nu în caz contrar.

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 52


Analiză Numerică

Fig. 4.4

Cum observăm, la iteraţia:

k= 1

nu se îndeplinesc ultimele inegalităţi. Pentru a continua calculele, am copiat blocul A4..D4 în blocul
A5..D11.

Fig. 4.5

Rezultatele calculelor ne arată că la iteraţia:

k= 8

se îndeplinesc condiţiile:

| x (k)  x (k 1) |  , | y (k)  y (k 1) | 

Prin urmare, pentru:

 = 0.001

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 53


Analiză Numerică

am obţinut soluţia aproximativă:

x (8)  2.999848 , y (8)  0.999950

Această soluţie aproximează foarte bine soluţia exactă a sistemului:

x  3, y 1

Pentru a determina o aproximaţie a celeilalte soluţii exacte, am utilizat formulele de recurenţă:

x (k)   y (k 1)  8
y (k)  (x (k 1)  1) / 2

pe care le-am dedus, de asemenea, din ecuaţiile sistemului. Pe baza acestor formule de recurenţă, am
obţinut rezultatele din figura 17.5. Acum am luat tot:

x (0) = 0 , y (0) = 0

iar în celulele A4, B4, C4, D4 am introdus, respectiv, formulele:

+ A3 + 1
- @SQRT(C3 + 8)
(B3 - 1)/2

@IF(@AND(@ABS(B4 - B3)<$B$1, @ABS(C4 - C3)<$B$1),"Da","Nu")

Cum observăm, la iteraţia:

k= 1

nu se îndeplinesc condiţiile:

| x (k)  x (k 1) |  , | y (k)  y (k 1) | 

Pentru a continua calculele, am copiat blocul A4..D4 în blocul A5..D12.


Rezultatele calculelor ne arată că la iteraţia:

k= 9

se îndeplinesc condiţiile:

| x (k 1)  x(k) |  , | y (k 1)  y (k) | 

Prin urmare, pentru:

 = 0.001

am obţinut soluţia aproximativă:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 54


Analiză Numerică

x (9)  2.500033 , y (8)  1.749880

Această soluţie aproximează foarte bine soluţia exactă a sistemului:

x  2.5 , y  1.75

Ecuaţiile sistemului pe care l-am considerat în această secţiune se pot scrie şi sub forma:

x  2y  1
y  x2  8

Aşadar, în acest caz avem:

f(x,y)  2y  1
g(x,y)  x 2  8

Aceste funcţii nu satisfac condiţiile suficiente care asigură convergenţa şirurilor de iteraţii {x(i) } i , {y (i) } i
corespunzătoare formulelor x  2y  1 , y  x 2  8 . De aceea, este posibil ca aceste şiruri să nu fie
convergente pentru orice valori iniţiale.

4.3. Metoda lui Newton

Şi în secţiunea de faţă considerăm un sistem algebric neliniar de două ecuaţii cu două


necunoscute x şi y scris sub forma:

F(x, y)  0
G(x, y)  0

Admitem că sistemul are soluţia:

x , y 

şi notăm cu x (0) şi, respectiv, y (0) o aproximaţie a acestei soluţii.


Metoda lui Newton utilizează şirurile de aproximaţii:

x (k)  x (k 1)  (F(x (k 1) , y (k 1) )Gy (x (k 1) , y (k 1) ) 


Fy (x (k 1) , y (k 1) )G(x (k 1) , y (k 1) )) / J(x (k 1) , y (k 1) )
y (k)  y (k 1)  (Fx (x(k 1) , y (k 1) )G(x (k 1) , y (k 1) ) 
F(x(k 1) , y (k 1) )G x (x(k 1) , y (k 1) )) / J(x (k 1) , y (k 1) )

unde:

J(x (k 1) , y (k 1) )  Fx (x (k 1) , y (k 1) )G y (x (k 1) , y (k 1) ) 


Fy (x (k 1) , y (k 1) )G x (x (k 1) , y (k 1) )

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 55


Analiză Numerică

Pentru ca şirurile {x(k) } k şi {y (k) } k să fie convergente către  şi, respectiv,  trebuie ca aproximaţiile
iniţiale x(0) şi y (0) să fie suficient de apropiate de  şi, respectiv, . În plus, funcţiile F(x, y) , G(x, y) şi
derivatele lor parţiale de ordinul întâi în raport cu x şi y trebuie să fie continue, iar funcţia J(x, y) să fie
diferită de zero pentru x=, y=.
Pentru a da un exemplu, considerăm sistemul algebric de două ecuaţii liniare cu două
necunoscute:

a11x + a12 y = b1
a21x + a22 y = b2

Evident, acum avem:

F(x,y) = a11x + a12 y - b1


G(x,y) = a21x + a22 y - b2

Prin urmare:

J(x,y)  a11a22  a21a12

Aşadar, în cazul unui sistem algebric de ecuaţii liniare, J(x,y) este egal cu determinantul sistemului. În
plus, prin calcule directe deducem că:

b1 a12
b a22
x (k)  (b1a 22  b 2a12 ) /(a11a 22  a12 a21 )  2
a11 a12
a21 a22

a11 b1
a b
y (k)  (b2 a11  b1a 21 ) /(a11a22  a12 a21 )  21 2
a11 a12
a21 a22

Aceasta este chiar soluţia exactă a sistemului care se obţine cu metoda lui Cramer. Prin urmare, în
metoda lui Newton se obţine soluţia exactă chiar de la prima iteraţie.
Pentru a mai da un exemplu, am considerat din nou sistemul algebric neliniar de două ecuaţii
cu două necunoscute:

x2  y  8
x  2y  1

pe care l-am rezolvat şi în secţiunea precedentă. Aşadar, avem:

F(x,y)  x 2  y  8
G(x,y)  x  2y  1

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 56


Analiză Numerică

Prin calcule directe, deducem că:

x (k)  (2(x(k 1) )2  15) /(4x (k 1)  1)


y (k)  ((x (k 1) )2  2x(k 1)  8) /(4x (k 1)  1)

Fig. 4.6

Pentru a determina o aproximaţie a uneia din cele două soluţii exacte ale sistemului cu metoda
lui Newton am luat:

x (0) = 0 , y (0) = 0

iar în celulele A4, B4, C4, D4 am introdus, respectiv, formulele:

+ A3 + 1
(2*B3^2 + 15)/(4*B3 - 1)
(B3^2 - 2*B3 + 8)/(4*B3 - 1)

@IF(@AND(@ABS(B4 - B3)<$B$1, @ABS(C4 - C3)<$B$1),"Da","Nu")

Să observăm că a doua şi a treia formulă determină valorile iteraţiilor x (1) , y (1) . Ultima formulă
verifcă îndeplinirea condiţiilor:

| x (k)  x (k 1) |  , | y (k)  y (k 1) | 

corespunzătoare valorii:

k= 1

Mai exact, ultima formulă returnează cuvântul Da atunci când se îndeplinesc ultimele inegalităţi şi
cuvântul Nu în caz contrar.
Cum observăm, figura 4.6, la iteraţia:

k= 1

nu se îndeplinesc ultimele inegalităţi. Pentru a continua calculele, am copiat blocul A4..D4 în blocul
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 57
Analiză Numerică

A5..D10.

Fig. 4.7

Rezultatele calculelor ne arată că la iteraţia:

k= 7

se îndeplinesc condiţiile:

| x (k)  x (k 1) |  , | y (k)  y (k 1) | 

Prin urmare, pentru:

 = 0.001

am obţinut soluţia aproximativă:

x (7)  2.500000 , y (7)  1.750000

Soluţia pe care am obţinut-o nu este chiar soluţia exactă. De aceasta ne putem convingem dacă afişăm
valorile din celulele B10, C10 cu 15 zecimale. În adevăr, constatăm că:

x (7)  2.500000000402870 , y (7)  1.750000000201430

Această soluţie aproximează foarte bine souluţia exactă:

x  5 / 2 , y  7 / 4

Pentru a determina o aproximaţie a celeilalte soluţii exacte, în procedura pe care am prezentat-


o am luat:

x (0) = 0.5 , y (0) = 0

Acum am obţinut rezultatele din figura 4.7.


Rezultatele calculelor ne arată că la iteraţia:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 58


Analiză Numerică

k= 7

se îndeplinesc condiţiile:

| x (k 1)  x(k) |  , | y (k 1)  y (k) | 

Prin urmare, pentru:

 = 0.001

am obţinut soluţia:

x (7)  3.000000 , y (7)  1.000000

Soluţia pe care am obţinut-o nu este chiar soluţia exactă. De aceasta ne putem convingem
dacă afişăm valorile din celulele B10, C10 cu 15 zecimale. În adevăr, constatăm că:

x (7)  3.00000000040287 , y (7)  1.00000000020143

Această soluţie aproximează foarte bine soluţia exactă:

x  3, y 1

17.4. O metodă de gradient

Ca şi în secţiunea anterioară, considerăm un sistem algebric neliniar de două ecuaţii cu două


necunoscute x şi y scris sub forma:

F(x, y)  0
G(x, y)  0

Admitem că sistemul are soluţia exactă:

x , y 

şi notăm cu x (0) şi, respectiv, y (0) o aproximaţie a acestei soluţii.


Metoda de tip gradient pe care o prezentăm în această secţiune utilizează funcţia:

H(x,y)  F(x,y)2  G(x,y)2

şi relaţiile de recurenţă:

x (k)  x (k 1)  H(x(k 1) , y (k 1) )Hx (x(k 1) , y (k 1) ) /


(Hx (x (k 1) , y (k 1) )2  Hy (x (k 1) , y (k 1) )2 )
y (k)  y (k 1)  H(x (k 1) , y (k 1) )Hy (x (k 1) , y (k 1) ) /
(Hx (x (k 1) , y (k 1) )2  Hy (x (k 1) , y (k 1) )2 )

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 59


Analiză Numerică

în care Hx şi Hy reprezintă derivatele parţiale ale lui H în raport cu x şi, respectiv, y.

Fig. 4.8

Relaţiile de recurenţă se deduc din condiţiile de minimizare a funcţiei H(x, y). Pentru ca
descreşterea funcţiei H(x, y) să fie maximă, se aleg ca direcţii de variaţie direcţiile gradientului funcţiei
H în punctul de coordonate (x(k) , y (k) ) , adică direcţiile vectorului:
 
grad H(x (k) , y (k) )  Hx (x(k) , y (k) )i  Hy (x(k) , y (k) )j

Pentru a da un exemplu, considerăm din nou sistemul algebric neliniar de două ecuaţii cu două
necunoscute:

x2  y  8
x  2y  1

În acest caz funcţia H(x, y) este:

H(x,y)  (x 2  y  8)2  (x  2y  1)2

Prin urmare:

Hx (x,y)  4x(x 2  y  8)  2(x  2y  1)

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 60


Analiză Numerică

Hy (x,y)  2(x 2  y  8)  4(x  2y  1)

Pentru a determina o aproximaţie a uneia din cele două soluţii exacte ale sistemului cu metoda
de gradient am luat:

x (0) = 0 , y (0) = 0

În plus, pentru a determina şi valorile funcţiilor:

H(x, y)  (x 2  y  8)2  (x  2y  1)2


Hx (x, y)  4x(x 2  y  8)  2(x  2y  1)
Hy (x, y)  2(x 2  y  8)  4(x  2y  1)
E(x, y) = Hx (x, y)Hx (x, y) + Hy (x, y)Hy (x, y)

pentru:

x = x (0) , y = y (0)

în celulele E3, F3, G3, H3 am introdus, respectiv, formulele:

(B3^2 - C3 - 8)^2 + (B3 - 2*C3 - 1)^2


+ 4*B3*(B3^2 - C3 - 8)+2*(B3 - 2*C3 - 1)
- 2*(B3^2 - C3 - 8) - 4*(B3 - 2*C3 - 1)
+E3^2+F3^2 + E3^2 + F3^2

În continuare, în celulele A4, B4, C4, D4 am introdus, respectiv, formulele:

+ A3 + 1
+ B3 - D3*E3/G3
+ C3 - D3*F3/G3
@IF(@AND(@ABS(B4 - B3)<$B$1,@ABS(C4 - C3)<$B$1),"Da","Nu")

Să observăm că a doua şi a treia formulă determină valorile iteraţiilor x (1) , y (1) . Ultima formulă
verifcă îndeplinirea condiţiilor:

| x (k)  x (k 1) |  , | y (k)  y (k 1) | 

corespunzătoare valorii:

k= 1

Mai exact, ultima formulă returnează cuvântul Da atunci când se îndeplinesc ultimele inegalităţi şi
cuvântul Nu în caz contrar.
Cum observăm, figura 4.8, la iteraţia:

k= 1

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 61


Analiză Numerică

nu se îndeplinesc ultimele inegalităţi. Pentru a continua calculele, am copiat blocul E3..H3 în blocul
E4..H4. De asemenea, am copiat blocul A4..H4 în blocul A5..H23.
Rezultatele calculelor ne arată că la iteraţia:

k = 20

se îndeplinesc condiţiile:

| x (k)  x (k 1) |  , | y (k)  y (k 1) | 

Prin urmare, pentru:

 = 0.001

am obţinut soluţia aproximativă:

x (20)  2.499985 , y (20)  1.747994

Această soluţie aproximează foarte bine souluţia exactă:

x  5 / 2 , y  7 / 4

Pentru a determina şi cealaltă soluţie a sistemului am luat:

x (0) = 0.5 , y (0) = 0

Întrucât pe coloana D nu a apărut cuvântul Da am mai copiat blocul de celule A23..H23 în blocul de
celule A24..H30.
Rezultatele calculelor, figura 17.9, ne arată că la iteraţia:

k = 27

se îndeplinesc condiţiile:

| x (k)  x (k 1) |  , | y (k)  y (k 1) | 

Prin urmare, pentru:

 = 0.001

am obţinut soluţia:

x (27)  2.999647 , y (27)  0.998226

Această soluţie aproximează foarte bine souluţia exactă:

x  3, y 1

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 62


Analiză Numerică

Fig. 4.9

4.5. Despre alegerea primei aproximaţii

Prima aproximaţie a soluţiei unui sistem algebric neliniar de ecuaţii are, de multe ori, un rol
esenţial în metodele iterative. S-a demonstrat că şirurile construite în unele metode iterative sunt
convergente numai dacă iteraţia iniţială este suficient de apropiată de soluţia exactă.
În cazul sistemelor algebrice neliniare de două ecuaţii cu două necunoscute, determinarea
primei aproximaţii se poate face uşor pe cale grafică. Această metodă nu se mai poate folosi în cazul
sistemelor cu un număr mare de ecuaţii. Multe sisteme de acest tip provin însă din modelarea unor
probleme concrete. În asemenea situaţii prima aproximaţie se poate alege folosind semnificaţia reală a
necunoscutelor sistemului.

Test de autoevaluare
Calculaţi o soluţie aproximativă a sistemului neliniar de ecuaţii algebrice:

4x12  9x 3  25

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 63


Analiză Numerică

2x1  3x 22  7

După parcurgerea unităţii 4 de învăţare trebuie să reţineţi:

Cum se calculează soluţiile sistemelor neliniare de ecuaţii algebrice.

Răspunsuri la întrebările din testul de autoevaluare

Sistemul algebric neliniar de ecuaţii:

4x12  9x 3  25
2x1  3x 22  7

are soluţia:

x1  2 , x 2  1

Bibliografie minimală

1. Iacob Caius, Matematici clasice şi moderne, Editura tehnică, Bucureşti, 1983


2. Marinescu Gheorghe, Analiza numerică, Editura Academiei, Bucureşti, 1974
3. Akai Terrence, Aplplied Numerical Methods for Engineers, John Wiley & Sons, New York
(Carte disponibilă la Biblioteca USAMVB)

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 64


Analiză Numerică

Unitatea de învăţare nr. 5

Metode numerice de rezolvare a ecuaţiilor şi sitemelor de ecuaţii diferenţiale

Cuprins

5.0 Obiectivele unităţii de învăţare nr. 5


5.1 Problemele lui Cauchy date ca exemple în această unitate
5.2 O clasificare a metodelor numerice pentru probleme de tip Cauchy
5.3 Despre consistenţa, stabilitatea şi convergenţa metodelor numerice
5.4 Ordinul unei metode numerice
5.5 Stabilirea formulelor de recurenţă ale metodelor de tip Euler cu ajutorul ecuaţiilor integrale
5.6 Stabilirea formulei de recurenţă a metodei de tip Euler cu ajutorul seriilor Taylor
5.7 Stabilirea formulei de recurenţă a metodei lui Euler pe considerente geometrice
5.8 Stabilirea formulei de recurenţă a metodei lui Euler îmbunătăţită
5.9 Stabilirea formulei de recurenţă a metodei lui Euler modificată
5.10 Consistenţa, stabilitatea şi convergenţa metodelor de tip Euler
5.11 Ordinul metodelor de tip Euler
5.12 Rezolvarea sistemelor de ecuaţii diferenţiale de ordinul întâi
5.12.1 Utilizarea metodei lui Euler
5.12.2 Utilizarea metodei lui Euler îmbunătăţită
5.12.3 Utilizarea metodei lui Euler modificată
5.13 Rezolvarea ecuaţiilor diferenţiale de ordin superior cu metode de tip Euler
5.14 Determinarea soluţiilor cu o precizie dată
5.15 Observaţii privind pasul reţelei

5.0 Obiectivele unităţii de învăţare nr. 5

Prezentarea metodelor de tip Euler pentru rezolvarea problemei lui Cauchy

5.1 Problemele lui Cauchy date ca exemple în acest capitol

În exemplele pe care le dăm în acest capitol apar trei probleme ale lui Cauchy. Este vorba de o
problemă a lui Cauchy pentru o ecuaţie diferenţială de ordinul întâi, o problemă a lui Cauchy pentru un
sistem de ecuaţii diferenţiale de ordinul întâi şi de o problemă a lui Cauchy pentruo ecuaţie diferenţială
de ordinul doi. Cele trei probleme care apar în exemplele pe care le dăm au soluţii exacte. Aceasta ne
permite să facum comparaţii cu soluţiile numerice pe care le obţinem.
Ca exemplu de problemă a lui Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y '  f(x, y)

cu condiţia iniţială:

y(x 0 )  y 0

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 65


Analiză Numerică

în care x 0 şi y 0 sunt constante date, vom considera în toate cazurile problema lui Cauchy pentru
ecuaţia diferenţială de ordinul întâi:

y
y' 
1  x2

cu condiţia iniţială:

y(0)  1

Prin urmare:

y
f(x, y)  , x 0  0, y 0  1
1  x2

Această problemă are soluţia exactă:

y(x)  e arctgx

În cazul problemei lui Cauchy pentru sisteme de ecuaţii diferenţiale de ordinul unu este suficient
să considerăm problema lui Cauchy pentru sistemul de ecuaţii diferenţiale de ordinul întâi:

y '  f(x, y, z)
z '  g(x, y, z)

cu condiţiile iniţiale:

y(x 0 )  y 0 , z(x 0 )  z 0

în care x 0 , y 0 şi z0 sunt constante date. Ca exemplu numeric concret, vom considera în toate cazurile
problema lui Cauchy pentru sistemul de ecuaţii diferenţiale de ordinul întâi:

y '  4y  3z
z '   y  2z

cu condiţiile iniţiale:

y(0)  0 , z(0)  2

Prin urmare:

f(y,z)  4y  3z, g( y, z)   y  2z , x 0  0 , y 0  0 , z 0  2

Această problemă are soluţia exactă:

3 3 3 1
y(x)  e x  e 5x , z(x)  e x  e 5x
2 2 2 2

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 66


Analiză Numerică

În fine, ca exemplu de problemă a lui Cauchy pentru ecuaţia diferenţială de ordin doi:

y ''  g(x, y, y ')

cu condiţiile iniţiale:

y(x 0 )  y 0 , y '(x 0 )  y 0'

în care x0 , y 0 şi y 0' sunt constante date, vom considera problema lui Cauchy pentru ecuaţia
diferenţială:

y ''  9y ' 8y

cu condiţiile iniţiale:

y(0)  1, y '(0)  1

Prin urmare:

g(x, y, y ')  9y ' 8y , x 0  0, y 0  1, y 0'  1

Această problemă are soluţia exactă:

y(x)  e x

Aşa cum ştim, problema lui Cauchy pentru ecuaţia diferenţială y ''  g(x, y, y ') se reduce la
rezolvarea problemei lui Cauchy pentru sistemul de ecuaţii diferenţiale de ordinul întâi:

y'  z
z '  g(x, y, z)

cu condiţiile iniţiale:

y(x 0 )  y 0 , z(x 0 )  z 0

în care:

z 0  y 0'

În cazul exemplului nostru, rezolvarea problemei lui Cauchy pentru ecuaţia de ordinul doi y ''  9y ' 8y
se reduce la rezolvarea sistemului de ecuaţii diferenţiale de ordinul întâi:

y'  z
z '  8y  9z

cu condiţiile iniţiale:

y(0)  1 , z(0)  1
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 67
Analiză Numerică

Aşadar:

f  z, g  8y  9z

şi:

x 0  0, y 0  1, z 0  1

Această problemă are soluţia exactă:

y(x)  e x , z(x)  e x

5.2 O clasificare a metodelor numerice pentru problema lui Cauchy

De multe ori, coeficienţii care apar în ecuaţiile diferenţiale sunt funcţii ale căror valori se cunosc
numai în anumite puncte. În plus, în problemele reale este adesea suficient să se determine valorile
aproximative ale soluţiei numai într-o reţea de noduri:

a  x 0  x1  ...  x n  b

De cele mai multe ori se folosesc reţele de noduri echidistante:

x 0  a , x i  x i1  h

cu i  1, 2, ..., n şi h o constantă pozitivă dată numită pasul reţelei. În cele ce urmează, valorile exacte
ale funcţiei necunoscute y(x) în nodurile x1 , x 2 ,...,xn le notăm cu y(x1 ), y(x 2 ), ..., y(x n ) , iar numerele
cu care aproximăm aceste valori le notăm cu y1 , y 2 , ..., y n . Valorile y1 , y 2 , ..., y n reprezintă o soluţie
numerică a problemei.
Soluţiile numerice sunt preferate uneori şi în cazurile în care se pot determina soluţiile exacte.
De pildă, problema lui Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y '  2.3746  1.8y  0.5746y 3

cu condiţia iniţială:

y(0)=0

se poate rezolva exact. Soluţia sa este [ Salvadori ]:

1 y 2  y  4.13 2y  1
x=0.28(-ln(1-y)+ ln  0.76(ctg -ctg 0.254))
2 4.13 3.94

Determinarea valorii lui y pentru un x dat revine însă la rezolvarea unei ecuaţii transcendente care este
destul de complicată.
Soluţiile numerice se determină cu două familii de metode. Este vorba de:

- familia metodelor cu un singur pas

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 68


Analiză Numerică

- familia metodelor cu mai mulţi paşi

Familia metodelor cu un singur pas se bazează pe relaţii de recurenţă în care valoarea y i se determină
în funcţie de valoarea anterioară y i1 . Aceste metode mai sunt cunoscute sub numele de metode pas
cu pas. Familia metodelor cu mai mulţi paşi se bazează pe relaţii de recurenţă în care valoarea y i se
determină în funcţie de valorile y i1 , y i2 , ..., y 0 .
Dacă pentru determinarea lui y i obţinem o relaţie de forma:

y i  (y i1 , y i2 , ..., y ik )

atunci metoda se numeşte metodă explicită sau directă, iar dacă pentru determinarea lui y i obţinem o
relaţie de forma:

(y i , y i1 , ..., y ik )  0

atunci metoda se numeşte implicită sau indirectă. Evident, în cazul k  1 metoda este cu un singur pas,
iar în cazul k  i metoda este cu mai mulţi paşi.

5.3 Despre consistenţa, stabilitatea şi convergenţa metodelor numerice

Considerăm problema lui Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y '  f(x, y)

cu condiţia iniţială:

y(x 0 )  y 0

în care x 0 şi y 0 sunt constante date.


Presupunem că problema lui Cauchy pe care am formulat-o se poate rezolva printr-o metodă
numerică de forma:

y(x 0 )  y 0
y i  y i1  h(xi1 , y i1 , h)

cu i  1, 2, ..., n . În acest context dăm o serie de definiţii şi rezultate.


Metoda numerică definită de funcţia  se numeşte consistentă cu ecuaţia diferenţială
y '  f(x, y) dacă pentru orice soluţie y(x) are loc relaţia:

1
lim{max | [y(x i )  y(x i1 )]  (x i1 , y(x i1 ), h) |}  0
h 0 h

pentru orice i  1, 2, ..., n . Se demonstrează că o condiţie necesară şi suficientă pentru ca metoda


numerică definită de funcţia  să fie consistentă este ca:

 (x, y, 0)  f(x, y)

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 69


Analiză Numerică

pentru orice x  [a, b] , [a, b] fiind domeniul pe care este definită funcţia necunoscută y(x) a ecuaţiei.
Considerăm acum problema lui Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y '  f(x, y)  (x)

cu condiţia iniţială:

y(x 0 )  y 0    z 0

Această problemă se numeşte problema perturbată a problemei lui Cauchy pe care am formulat-o
iniţial. Admitem că problema perturbată se poate rezolva printr-o metodă numerică de forma:

y(x 0 )  z 0
y i  y i1  h((x i1 , y i1 , h)  i )

cu i  1, 2, ..., n .
Metoda numerică utilizată la rezolvarea problemei lui Cauchy pe care am formulat-o iniţial se
numeşte stabilă dacă există două constante A şi B care nu depind de pasul h astfel încât:

max |y i  zi |  A | y 0  z 0 | Bmax | i |

pentru orice i  1, 2, ..., n . Prin urmare, mici perturbaţii asupra datelor problemei conduc la perturbaţii
mici ale soluţiei. Se demonstrează că metoda numerică definită de funcţia  este consistentă dacă
funcţia (x, y, h) verifică o condiţie Lipschitz în raport cu variabila y.
Metoda numerică definită de funcţia  se numeşte convergentă dacă:

lim max | y(x i )  y i | 0


h 0

pentru orice i  0, 1, ..., n . Se demonstrează[ ] că metodă numerică definită de funcţia  este


convergentă dacă este consistentă şi stabilă.

5.4 Ordinul unei metode numerice

Se spune că o metodă numerică definită de o funcţie  este de ordin mai mare sau egal cu p
dacă pentru toate soluţiile numerice are loc relaţia:

1
max | [y(x i )  y(x i1 )]  (x i1 , y(x i1 ), h) | O(hp )
h

pentru orice i  1, 2, ..., n . Notaţia O(hp ) desemnează o sumă care împărţită la hp tinde către o
constantă finită când h tinde la 0. Se demonstrează[ ] că în cazul unei metode numerice de ordin mai
mare sau egal cu p definită de o funcţie (x, y, h) care îndeplineşte o condiţie de tip Lipschitz are loc
relaţia:

max | y(x i )  y i | O(hp )

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 70


Analiză Numerică

pentru orice i  0, 1, 2, ..., n .

5.5 Stabilirea formulelor de recurenţă cu ajutorul ecuaţiilor integrale

Considerăm problema lui Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y '  f(x, y)

cu condiţia iniţială:

y(x 0 )  y 0

în care x 0 şi y 0 sunt constante date.


Ne propunem să determinăm soluţia numerică asociată reţelei de noduri:

a  x 0  x1  ...  x n  b

definită de relaţia de recurenţă:

x 0  a, x i  x i1  h

cu i  1, 2, ..., n şi h pasul reţelei. Ca de obicei, notăm cu y1 , ..., y n aproximaţiile valorilor exacte


y(x1 ), ..., y(x n ) .
Pentru a obţine formulele de recurenţă ale metodelor de tip Euler cu ajutorul ecuaţiilor integrale,
integrăm ecuaţia diferenţială y '  f(x, y) pe intervalul [xi1 , xi ] . Ca urmare, obţinem ecuaţia:

xi

y(xi )  y(x i1 )   f(x, y(x))dx


xi1

Această ecuaţie conţine funcţia necunoscută y(x) sub semnul integralei. De aceea, ecuaţia obţinută se
numeşte ecuaţie integrală.
xi

Dacă aproximăm integrala  f(x, y(x))dx


xi1
cu aria dreptunghiului care are vârfurile în punctele

de coordonate (x i1 , 0) , (x i , 0) , (xi , f(xi , y(x i )) şi (x i1 , f(x i , y(x i )) , atunci obţinem relaţia:

y i  y i1  hf(xi1 , y i1 )

cu i  1, 2, ..., n şi x 0 , y 0 , h constante date. Metoda numerică bazată pe ultima relaţie este cunoscută
sub numele de metoda lui Euler. Această metodă a fost elaborată de Leonard Euler (1707  1783) ,
membru al Academiei de Ştiinţe din Petersburg, întemeietorul teoriei ecuaţiilor diferenţiale, teorie
născută din calculul integral. A. N. Krîlov, cunoscut specialist în metode numerice, spunea, în una din
cărţile sale [ ]: „Ca şi în majoritatea problemelor calculului integral, şi aici începutul a fost făcut de
Euler”.
xi

Dacă aproximăm integrala  f(x, y(x))dx


xi1
cu aria trapezului care are vârfurile în punctele de

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 71


Analiză Numerică

coordonate (x i1 , 0) , (x i , 0) , (x i , f(xi , y(xi )) şi (xi1 , f(x i1 , y(xi1 )) , atunci obţinem relaţia:

f(x i1 , y i1 )  f(x i , y i )


y i  y i1  h
2

cu i  1, 2, ...,n şi x 0 , y 0 , h constante date. Aşa cum observăm, valoarea necunoscută y i apare în


ambii membri ai relaţiei. De aceea, dacă funcţia f(x, y) are o expresie complicată, atunci determinarea
lui y i conduce la rezolvarea unei ecuaţii algebrice sau transcendente. Pentru a evita acest mod de
rezolvare, Heun a introdus o metodă de tip predictor–corector. În etapa de predicţie se determină cu
metoda lui Euler o predicţie y i a valorii y i , adică:

y i  y i1  hf(xi1 , y i1 )

iar în etapa de corecţie se determină valoarea corectată y i cu formula:

f(x i1 , y i1 )  f(x i , y i )


y i  y i1  h
2

f(x i1 , y i1 )  f(x i , y i )


Ultima relaţie se obţine din relaţia y i  y i1  h înlocuind pe y i din f(xi ,y i ) cu y i .
2
Aşadar, metoda lui Heun, cunoscută şi sub numele de metoda lui Euler îmbunătăţită, foloseşte relaţiile:

y i  y i1  hf(xi1 , y i1 )


f(x , y )  f(x i , y i )
y i  y i1  h i1 i1
2

5.6 Stabilirea formulei de recurenţă a metodei lui Euler cu ajutorul seriilor Taylor

Considerăm problema Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y '  f(x, y)

cu condiţia iniţială:

y(x 0 )  y 0

în care x 0 şi y 0 sunt constante date.


Ne propunem să determinăm soluţia numerică asociată reţelei de noduri:

a  x 0  x1  ...  x n  b

definită de relaţia de recurenţă:

x 0  a, x i  x i1  h

cu i  1, 2, ..., n şi h pasul reţelei. Ca de obicei, notăm cu y1 , ..., y n aproximaţiile valorilor exacte

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 72


Analiză Numerică

y(x1 ), ..., y(x n ) .


Presupunem că soluţia ecuaţiei se poate dezvolta în seria Taylor:

y '(x) y (n) (x) n


y(x  h)  y(x)  h  ...  h  ...
1! n!

Este clar că:

y(x  h)  y(x) y '' (x) y (n) (x) n1


 y '(x)  h  ...  h  O(hn )
h 2! n!

Pe de altă parte:

y '  f(x, y)

iar prin calcul direct obţinem:

f f
y ''  (x, y(x))  (x, y(x))f(x, y(x))
x y

Din aproape în aproape se pot calcula şi derivatele următoare. Cum am mai spus, acest calcul se
complică pe măsură ce creşte ordinul de derivare.
Dacă în seria Taylor scrisă mai înainte alegem n  1 , atunci obţinem:

y(x  h)  y(x)
 f(x,y)  O(h)
h

Acum înlocuim aici pe x cu x i1 . În acest fel obţinem:

y(x i )  y(x i1 )


 f(x i1 , y(x i1 ))  O(h)
h

Dacă renunţăm la termenii de ordinul lui h din membrul drept, atunci putem scrie:

y i  y i1  hf(xi1 , y i1 )

cu i  1, 2, ..., n şi x 0 , y 0 , h constante date. Metoda numerică bazată pe această relaţie este metoda lui
Euler pentru problema lui Cauchy pe care am enunţat-o la începutul acestei secţiuni. Acum metoda lui
Euler a fost construiă cu ajutorul seriilor Taylor.

5.7 Stabilirea formulei de recurenţă a metodei lui Euler pe considerente geometrice

În secţiunile anterioare am dedus formula de recurenţă a metodei lui Euler de rezolvare


numerică a problemei lui Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y '  f(x, y)

cu condiţia iniţială:
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 73
Analiză Numerică

y(x 0 )  y 0

în care x0 şi y 0 sunt constante date. Pentru aceasta am folosit atât metoda ecuaţiilor integrale cât şi
metoda dezvoltării în serie Taylor. Formula de recurenţă a metodei lui Euler se poate stabili şi folosind
considerente geometrice.
Presupunem că figura 5.1 conţine graficul funcţiei y  y(x) care este soluţia problemei lui
Cauchy pe care am formulat-o. Pentru a deduce formula de recurenţă a metodei lui Euler pe cale
geometrică, considerăm punctul P0 de coordonate (x 0 , y 0 ) . Ecuaţia tangentei la curba y  y(x) în
acest punct este:

y  y 0  y '(x 0 )(x  x 0 )

Intersecţia acestei tangente cu dreapta:

x  x1

este punctul P1 de coordonate (x1 , y1 ) . Prin urmare:

y1  y 0  y '(x 0 )(x1  x 0 )

Cum:

y '(x 0 )  f(x 0 , y 0 )

obţinem:

y1  y 0  hf(x 0 , y 0 )

Mai notăm cu Q1 punctul de intersecţie al dreptei:

x  x1

cu graficul funcţiei:

y  y(x)

Este clar că ordonata y1 a punctului P1 este aproximaţia soluţiei problemei lui Cauchy pentru x  x1 ,
iar ordonata y(x1 ) a punctului Q1 este valoarea exactă a soluţiei pentru aceeaşi valoare a lui x. În
figura 5.1 am notat cu e valoarea e  y1  y(x1 ) . Evident | e | este eroarea absolută a aproximaţiei y1 .

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 74


Analiză Numerică

Fig. 5.1

Prin punctul P1 putem duce o dreaptă care are direcţia paralelă cu direcţia tangentei la graficul
funcţiei în punctul Q1 . Ecuaţia dreptei este:

y  y1  y '(x1 )(x  x1 )

Intersecţia acestei drepte cu dreapta:

x  x2

este punctul P2 de coordonate (x 2 , y 2 ) . Prin urmare:

y 2  y1  y '(x1 )(x 2  x1 )

Cum:

y '(x1 )  f(x1 , y1 )

deducem:

y 2  y1  hf(x1 , y1 )

Mai notăm cu Q 2 punctul de intersecţie al dreptei:

x  x2

cu graficul funcţiei:

y  y(x)

Evident, ordonata y 2 a punctului P2 este aproximaţia soluţiei problemei lui Cauchy pentru x  x 2 , iar
ordonata y(x 2 ) a punctului Q 2 este valoarea exactă a soluţiei pentru aceeaşi valoare a lui x.
Pe aceeaşi cale, obţinem punctele P3 , ..., Pn , Q 3 , ..., Q n . Prin urmare, metoda pe care am

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 75


Analiză Numerică

folosit-o ne conduce la o linie poligonală P0 , P1 , P2 , P3 , ..., Pn care aproximează soluţia ecuaţiei. De


aceea, metoda lui Euler mai este cunoscută sub numele de metoda liniilor poligonale.
Procedeul geometric pe care l-am utilizat ne arată că este valabilă formula de recurenţă:

y i  y i1  hf(xi1 , y i1 )

cu i  1, 2, ..., n şi x 0 , y 0 , h constante date. Aceasta este formula de recurenţă a metodei lui Euler.
Ca exemplu, considerăm problema lui Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y
y' 
1  x2

cu condiţia iniţială:

y(0)  1

Ne propunem să determinăm soluţia numerică în reţeaua de noduri:

x 0  0 , x1  0.1 , x 2  0.2 , …., x10  1

Pentru a determina aproximaţia y1 , în formula de recurenţă a metodei lui Euler luăm i  1 . În


acest fel obţinem formula:

y1  y 0  hf(x 0 ,y 0 )

Prin calcul direct, deducem:

y0 1
y1  y 0  hf(x 0 ,y 0 )  y 0  h  1  0.1  1.1
1  x0
2
1 0

adică:

y1  1.1

Valoarea soluţiei exacte y(x)  e arctgx , calculată cu şase zecimale, în nodul x1 este:

y(x1 )  1.104805

Prin urmare:

y(x1 )  y1  1.104805  1.100000  0.004805  0.01  

Aşadar, eroarea absolută a aproximaţiei y1 este mai mică decât valoarea:

  0.01

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 76


Analiză Numerică

Pentru a determina aproximaţia y 2 , în formula de recurenţă a metodei lui Euler luăm i  2 . În


acest fel obţinem formula:

y 2  y1  hf(x1 ,y1 )

Prin calcul direct, deducem:

y1 1.1
y 2  y1  hf(x1 ,y1 )  y1  h  1.1  0.1  1.208911
(1  x1 )
2
1  0.12

adică:

y 2  1.208911

Valoarea soluţiei exacte y(x)  e arctgx , calculată cu şase zecimale, în nodul x 2 este:

y(x 2 )  1.218226

Prin urmare:

y(x 2 )  y 2  1.218226  1.208911  0.009315  0.01  

Aşadar, eroarea absolută a aproximaţiei y 2 este mai mică decât valoarea:

  0.01

Să observăm că eroarea absolută y(x 2 )  y 2  0.009315 a aproximaţiei y 2 este mai mare decât
eroarea absolută y(x1 )  y1  0.004805 a aproximaţiei y1 .
Le fel se pot calcula aproximaţiile y 3 , y 4 , ...,y10 . Aceste calcule nu le mai facem. Prezentăm
însă o procedură QP pentru efectuarea automată a calculelor. Un set de rezultate ale calculelor bazate
pe procedura pe care o vom prezenta în continuare apare în figura 5.2. Procedura foloseşte formula de
recurenţă:

y i  y i1  hf(xi1 , y i1 )

cu i  1, 2, ..., n şi x 0 , y 0 , h constante date.


Coloana A conţine valorile lui i. Pentru a genera aceste valori, în celula A3 am introdus valoarea
iniţială a lui i, în celula A4 am introdus formula +A3+1 şi am copiat această formulă în blocul A5..A13.
Coloana B conţine nodurile reţelei. Pentru a genera reţeaua de noduri, în celula B3 am introdus
valoarea iniţială a lui x, în celula B4 am introdus formula +B3+$B$1 şi am copiat această formulă în
blocul B5..B13.
Coloana C conţine soluţia numerică y1 , y 2 , ...,y10 . Pentru a calcula aceste numere, în celula C3
am introdus valoarea iniţială y 0 , în celula C4 am introdus formula +C3+$B$1*C3/(1+B3^2) şi am copiat
această formulă în blocul C5..C13. Formula pe care am introdus-o în celula C4 corespunde membrului
drept al formulei de recurenţă:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 77


Analiză Numerică

y i  y i1  hf(xi1 , y i1 )

cu:

y
f(x, y)  .
1  x2

Coloana D conţine valorile soluţiei exacte y(x)  e arctagx în nodurile reţelei de pe coloana B.
Pentru a calcula aceste valori, în celula D3 am introdus formula @EXP(@ATAN(B3)) şi am copiat
această formulă în blocul D4..D10.

Fig. 5.2

Coloana E conţine erorile absolute ale soluţiei numerice y1 , y 2 , ...,y10 de pe coloana C. Pentru
a calcula aceste valori, în celula E3 am introdus formula @ABS(D3-C3) şi am copiat această formulă în
blocul E4..E10.
Figura 5.2 conţine valorile numerice corespunzătoare nodurilor reţelei de pe coloana B. Dacă
dorim să obţinem valorile soluţiei şi în punctele x11  1.1, x12  1.2,... , atunci trebuie să copiem blocul
A13..E13 în liniile următoare.
Valorile din coloana E arată că erorile absolute cresc pe măsură ce ne îndepărtăm de punctul
iniţial. Acest rezultat era de aşteptat. În adevăr, linia poligonală generată de metoda lui Euler se
îndepărtează de graficul soluţiei exacte pe măsură ce valoarea lui x creşte. Diferenţa absolută maximă
apare în celula E13.
Procedura pe care am prezentat-o în această secţiune o putem utiliza şi la determinarea
soluţiei numerice în altă reţea de noduri. Pentru aceasta este suficient să modificăm valoarea lui h din
celula B1. Desigur, dacă dorim să determinăm soluţia numerică a altei probleme Cauchy, atunci trebuie
să modificăm valorile iniţiale y 0 şi z 0 din celulele B3 şi C3. Dacă dorim să rezolvăm problema lui
Cauchy pentru altă ecuaţie diferenţială, atunci trebuie să modificăm şi formulele de pe coloana C. Să
mai observăm că numerele de pe coloanele D şi E sunt calculate cu ajutorul soluţiei exacte. Desigur,
dacă nu cunoaştem soluţia exactă, atunci aceste coloane nu le mai introducem.

5.8 Stabilirea formulei de recurenţă a metodei lui Euler îmbunătăţită

Metoda lui Euler aproximează printr-o linie poligonală soluţia problemei lui Cauchy pentru
ecuaţia diferenţială de ordinul întâi:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 78


Analiză Numerică

y '  f(x, y)

cu condiţia iniţială:

y(x 0 )  y 0

în care x 0 şi y 0 sunt constante date. Rezultatele din exemplul pe care l-am dat ne arată că erorile
absolute ale valorilor numerice obţinute se măresc pe măsură ce valoarea lui x creşte.
Formula de recurenţă a metodei lui Euler am determinat-o cu ajutorul desenului din figura 5.1.
Cu ajutorul aceluiaşi desen deducem şi formula de recurenţă a metodei lui Euler îmbunătăţită. De fapt,
în metoda lui Euler îmbunătăţită, determinarea unei aproximaţii y i se face în două etape. În prima
etapă se determină a predicţie y i a aproximaţiei y i cu metoda lui Euler adică:

y i  y i1  hf(xi1 , y i1 )

iar în a doua etapă se determină o corecţie a predicţiei y i . Valoarea corectată se notează cu y i .


Pentru a determina corecţia predicţiei y i se scrie dreapta care trece prin punctul de coordonate
(xi1 , y i1 ) şi are panta:

f(x i1 , y i1 )  f(x i , y i )


p
2

adică:

y  y i1  p(x  x i1 )

Este clar că:

y '(xi1 )  f(xi1 , y i1 ) , y '(x i )  f(x i ,y i )

Prin urmare, panta p este media aritmetică a valorilor aproximative ale pantelor în punctele de
coordonate (xi1 , y(x i1 )) şi (x i , y(x i )) .
Intersecţia tangentei:

y  y i1  p(x  x i1 )

cu dreapta:

x  xi

conduce la relaţia:

y i  y i1  p(xi  x i1 )

adică:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 79


Analiză Numerică

f(x i1 , y i1 )  f(x i , y i )


y i  y i1  h
2

Aşadar, metoda lui Euler îmbunătăţită utilizează formulele de recurenţă:

y i  y i1  hf(xi1 , y i1 )


f(x , y )  f(x i , y i )
y i  y i1  h i1 i1
2

cu i  1, 2, ..., n şi x 0 , y 0 , h constante date.


Ca exemplu, considerăm problema lui Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y
y' 
1  x2

cu condiţia iniţială:

y(0)  1

Ne propunem să determinăm soluţia numerică în reţeaua de noduri:

x 0  0 , x1  0.1 , x 2  0.2 , …., x10  1

Pentru a determina predicţia y 1 , în prima formulă de recurenţă a metodei lui Euler îmbunătăţită
luăm i  1 . În acest fel obţinem formula:

y1  y 0  hf(x 0 , y 0 )

Prin calcul direct, deducem:

y 1
y 1  y 0  hf(x 0 ,y 0 )  y 0  h 0 2  1  0.1  1.1
1  x0 1 0

adică:

y 1  1.1

Pentru a determina corecţia y1 , în a doua formulă de recurenţă a metodei lui Euler îmbunătăţită
luăm i  1 . În acest fel obţinem formula:

f(x 0 , y 0 )  f(x1 , y 1 )
y1  y 0  h
2

Prin calcul direct, deducem:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 80


Analiză Numerică

y0 y 1

f(x , y )  f(x1 , y 1 ) 1  x 20 1  x12
y1  y 0  h 0 0  y0  h 
2 2
1 1.1

 1  0.1 1  0 1  0.1  1.104455
2

adică:

y1  1.104455

Valoarea soluţiei exacte y(x)  e arctgx , calculată cu şase zecimale, în nodul x1 este:

y(x1 )  1.104805

Prin urmare:

y(x1 )  y1  1.104805  1.104455  0.000349  0.001  

Aşadar, eroarea absolută a aproximaţiei y1 este mai mică decât valoarea:

  0.001

Să observăm că eroarea absolută y(x1 )  y1  0.000349 a aproximaţiei y1 pe care am obţinut-o cu


metoda lui Euler îmbunătăţită este mai mică decât eroarea absolută y(x1 )  y1  0.004805 a
aceleeaşi aproximaţii y1 pe care am obţinut-o cu metoda lui Euler.
Pentru a determina predicţia y , în prima formulă de recurenţă a metodei lui Euler îmbunătăţită
2

luăm i  2 . În acest fel obţinem formula:

y 2  y1  hf(x1 ,y1 )

Prin calcul direct, deducem:

y
y 2  y1  hf(x1 ,y1 )  y 1  h 1 2
1  x1
1.104455
 1.104455  0.1  1.213807
1  0.1^ 2

adică:

y 2  1.213807

Pentru a determina corecţia y 2 , în a doua formulă de recurenţă a metodei lui Euler îmbunătăţită
luăm i  2 . În acest fel obţinem formula:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 81


Analiză Numerică

f(x1 , y1 )  f(x 2 , y 2 )
y 2  y1  h
2

Prin calcul direct, deducem:

y1 y 2

f(x , y )  f(x 2 , y 2 ) 1  x12 1  x 22
y 2  y1  h 1 1  y1  h 
2 2
1.104455 1.213807

 1.104455  0.1 1  0.1^ 2 1  0.2  1.217487
2

adică:

y 2  1.217487

Valoarea soluţiei exacte y(x)  e arctgx , calculată cu şase zecimale, în nodul x 2 este:

y(x 2 )  1.218226

Prin urmare:

y(x 2 )  y 2  1.218226  1.217487  0.000738  0.001  

Aşadar, eroarea absolută a aproximaţiei y 2 este mai mică decât valoarea:

  0.001

Să observăm că eroarea absolută y(x 2 )  y 2  0.000739 a aproximaţiei y 2 pe care am obţinut-o cu


metoda lui Euler îmbunătăţită este mai mică decât eroarea absolută y(x 2 )  y 2  0.009315 a
aceleeaşi aproximaţii y1 pe care am obţinut-o cu metoda lui Euler.

Fig. 5.3
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 82
Analiză Numerică

Le fel se pot calcula aproximaţiile y 3 , y 4 , ...,y10 . Aceste calcule nu le mai facem. Prezentăm
însă o procedură QP pentru efectuarea automată a calculelor. Un set de rezultate ale calculelor bazate
pe procedura pe care o vom prezenta în continuare apare în figura 5.3. Procedura foloseşte formulele
de recurenţă:

y i  y i1  hf(xi1 , y i1 )


f(x , y )  f(x i , y i )
y i  y i1  h i1 i1
2

cu i  1, 2, ..., n şi x 0 , y 0 , h constante date. Datorită rotunjirilor, a şasea zecimală a aproximaţiei y 2 pe


care am obţinut-o în calculul manual diferă de cea pe care am obţinut-o prin calculul automat.
Coloana A conţine valorile lui i. Pentru a calcula aceste valori, în celula A3 am introdus valoarea
iniţială a lui i, în celula A4 am introdus formula +A3+1 şi am copiat această formulă în blocul A5..A13.
Coloana B conţine nodurile reţelei. Pentru a genera reţeaua de noduri, în celula B3 am introdus
valoarea iniţială a lui x, în celula B4 am introdus formula +B3+$B$1 şi am copiat această formulă în
blocul B5..B13.
În celulele E3 şi F3 am introdus valoarea lui y 0 şi, respectiv, valoarea lui f(x 0 , y 0 ) . Mai exact,
în celula E3 am introdus numărul 1, iar în celula F3 am introdus formula +F3/(1+B3^2). Formula pe care
y
am introdus-o în celula F3 corespunde funcţiei f(x, y)  .
1 x2
Coloana C conţine predicţiile aproximaţiilor y1 , y 2 , ...,y10 , predicţii care în figura 5.5 sunt notate
cu py i . Predicţiile py1 , py 2 ,..., py10 le-am calculat în mai multe etape. În prima etapă am calculat
numărul din celula C4. Pentru aceasta, în celula C4 am introdus formula E3+$B$1*F3. Celelalte numere
de pe coloana D le-am calculat ulterior. Formula pe care am introdus-o în celula C4 corespunde
membrului drept al formulei:

y i  y i1  hf(xi1 , y i1 )

cu:

y
f(x, y) 
1  x2

y
Coloana D conţine valorile funcţiei f(x, y)  în perechile de numere (xi , py i ) . Valorile de
1  x2
pe coloana D le-am calculat în mai multe etape. În primul rând am calculat numărul din celula D3.
Pentru aceasta, în celula D3 am introdus formula +E3/(1+B3^2). Celelalte numere de pe coloana D le-
am calculat ulterior.
Coloana E conţine aproximaţiie y1 , y 2 , ...,y10 . Aceste aproximaţii le-am calculat în mai multe
etape. Aşa cum am precizat deja, în celula E3 am introdus valoarea iniţială y 0 . Acum, în celula E4 am
introdus formula +E3+$B$1*(F3+D4)/2. Celelalte numere de pe coloana E le-am calculat ulterior.
Formula pe care am introdus-o în celula E4 corespunde membrului drept al formulei:

f(x i1 , y i1 )  f(x i , y i )


y i  y i1  h
2

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 83


Analiză Numerică

cu:

y
f(x, y) 
1  x2

y
Coloana F conţine valorile funcţiei f(x, y)  în perechile de numere (x i , y i ) . Valorile de
1  x2
pe coloana F le-am calculat în mai multe etape. Aşa cum am spus deja, în celula F3 am introdus
valoarea funcţiei f(x, y) în perechea de puncte (x 0 , y 0 ) . Acum, în celula F4 am introdus formula
+E4/(1+B4^2). Celelalte numere de pe coloana F le-am calculat ulterior.
Coloana G conţine valorile soluţiei exacte y(x)  e arctgx în nodurile reţelei de pe coloana B.
Pentru a calcula aceste valori, în celula G3 am introdus formula @EXP(@ATAN(B3)) şi am copiat
această formulă în blocul G4..G13.
Coloana H conţine erorile absolute ale soluţiei numerice y1 , y 2 , ...,y10 de pe coloana E. Pentru
a calcula aceste valori, în celula H3 am introdus formula @ABS(E3-G3) şi am copiat această formulă în
blocul H4..H13.
Figura 5.3 conţine valorile numerice corespunzătoare nodurilor reţelei de pe coloana B. Dacă
dorim să obţinem valorile soluţiei şi în punctele x11  1.1, x12  1.2,... , atunci trebuie să copiem blocul
A13..H13 în liniile următoare.
Numerele de pe coloana H ne arată că erorile absolute ale soluţiei numerice y1 , y 2 , ...,y10 sunt
mai mici decât erorile absolute corespunzătoare obţinute cu metoda lui Euler, erori care apar în figura
5.2.
Procedura pe care am prezentat-o în această secţiune o putem utiliza şi la determinarea
soluţiei numerice în altă reţea de puncte. Pentru aceasta este suficient să modificăm valoarea lui h din
celula B1. Desigur, dacă dorim să determinăm soluţia numerică a altei probleme Cauchy, atunci trebuie
să modificăm valorile iniţiale x0 şi y 0 din celulele B3 şi E3. Dacă dorim să rezolvăm problema lui
Cauchy pentru altă ecuaţie diferenţială, atunci trebuie să modificăm şi formulele de pe coloanele D şi F.
Să mai observăm că numerele de pe coloanele G şi H sunt calculate cu ajutorul soluţiei exacte.
Desigur, dacă nu cunoaştem soluţia exactă, atunci aceste coloane nu le mai introducem.

5.9 Stabilirea formulei de recurenţă a metodei lui Euler modificată

Considerăm din nou problema lui Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y '  f(x, y)

cu condiţia iniţială:

y(x 0 )  y 0

în care x 0 şi y 0 sunt constante date.


În metoda lui Euler îmbunătăţită am scris ecuaţia dreptei care trece prin punctul de coordonate
f(x , y )  f(x i , y i )
(xi1 , y i1 ) şi are coeficientul unghiular p  i1 i1 . Metoda lui Euler modificată utilizează
2
dreapta care trece prin acelaşi punct şi are panta:

h h
p  f(x i1  , y i1  f(x i1 , y i1 ))
2 2
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 84
Analiză Numerică

Ecuaţia dreptei este:

h h
y  y i1  f(x i1  , y i1  f(x i1 , y i1 ))(x  x i1 )
2 2

Dacă intersectăm această dreaptă cu dreapta:

x  xi

atunci obţinem un punct a cărui abscisă este valoarea aproximativă a soluţiei problemei lui Cauchy
pentru x  xi . Prin urmare:

h h
y i  y i1  hf(x i1  , y i1  f(x i1 , y i1 ))
2 2

cu i  1, 2, ..., n şi x 0 , y 0 , h constante date. Aceasta este formula de recurenţă a metodei lui Euler
modificată.
Ca exemplu, considerăm problema lui Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y
y' 
1  x2

cu condiţia iniţială:

y(0)  1

Ne propunem să determinăm soluţia numerică în reţeaua de noduri:

x 0  0 , x1  0.1 , x 2  0.2 , …., x10  1

Pentru a determina valoarea aproximaţiei y1 , în formula de recurenţă a metodelui lui Euler


modificată luăm i  1 . În acest fel obţinem formula:

h h
y1  y 0  hf(x 0  , y 0  f(x 0 , y 0 ))
2 2

Prin calcul direct, deducem:

h 0.1
x0   0  0.05
2 2
h h y0 0.1 1
f(x 0 , y 0 )    0.05
2 2 1  x0
2
2 1  02
h
y 0  f(x 0 , y 0 )  1  0.05  1.05
2
h h 1.05
f(x 0  , y 0  f(x 0 , y 0 ))  f(0.05, 1.05)   1.047382
2 2 1  0.052

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 85


Analiză Numerică

Aşadar:

h h
y1  y 0  hf(x 0  , y 0  f(x 0 , y 0 ))  1  0.1* 1.047382  1.104738
2 2

adică:

y1  1.104738

Valoarea soluţiei exacte y(x)  e arctgx , calculată cu şase zecimale, în nodul x1 este:

y(x1 )  1.104805

Prin urmare:

y(x1 )  y1  1.104805  1.104738  0.000067  0.0001  

Aşadar, eroarea absolută a aproximaţiei y1 este mai mică decât valoarea:

  0.0001

Să observăm că eroarea absolută y(x1 )  y1  0.000067 a aproximaţiei y1 pe care am obţinut-o cu


metoda lui Euler modificată este mai mică decât eroarea absolută y(x1 )  y1  0.000349 a aceleeaşi
aproximaţii y1 pe care am obţinut-o cu metoda lui Euler îmbunătăţită.
Pentru a determina valoarea aproximaţiei y 2 , în formula de recurenţă a metodelui lui Euler
modificată luăm i  2 . În acest fel obţinem formula:

h h
y 2  y1  hf(x1  , y1  f(x1 , y1 ))
2 2

Prin calcul direct, deducem:

h 0.1
x1   0.1   0.15
2 2
h h y1 0.1 1.104738
f(x1 , y1 )    0.05469
2 2 1  x1
2
2 1  0.12
h
y1  f(x1 , y1 )  1.104738  0.054690  1.159428
2
h h 1.159428
f(x1  , y1  f(x1 , y1 ))  f(0.15, 1.159428)   1.133915
2 2 1  0.152

Aşadar:

h h
y 2  y1  hf(x1  , y1  f(x1 , y1 )) 
2 2
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 86
Analiză Numerică

 1.104738  0.1* 1.133915  1.218130

adică:

y 2  1.218077

Valoarea soluţiei exacte y(x)  e arctgx , calculată cu şase zecimale, în nodul x 2 este:

y(x 2 )  1.218226

Prin urmare:

y(x 2 )  y 2  1.218226  1.218130  0.000096  0.0001  

Aşadar, eroarea absolută a aproximaţiei y 2 este mai mică decât valoarea:

  0.0001

Să observăm că eroarea absolută y(x 2 )  y 2  0.000096 a aproximaţiei y 2 pe care am obţinut-o cu


metoda lui Euler modificată este mai mică decât eroarea absolută y(x 2 )  y 2  0.000739 a aceleeaşi
aproximaţii y 2 pe care am obţinut-o cu metoda lui Euler îmbunătăţită.

Fig. 5.4

Le fel se pot calcula aproximaţiile y 3 , y 4 , ...,y10 . Aceste calcule nu le mai facem. Prezentăm
însă o procedură QP pentru efectuarea automată a calculelor. Un set de rezultate ale calculelor bazate
pe procedura pe care o vom prezenta în continuare apare în figura 5.4. Procedura foloseşte formula de
recurenţă:

h h
y i  y i1  hf(x i1  , y i1  f(x i1 , y i1 ))
2 2

cu i  1, 2, ..., n şi x 0 , y 0 , h constante date.

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 87


Analiză Numerică

Coloana A conţine valorile lui i. Pentru a calcula aceste valori, în celula A3 am introdus valoarea
iniţială a lui i, în celula A4 am introdus formula +A3+1 şi am copiat această formulă în blocul A5..A13.
Coloana B conţine nodurile reţelei. Pentru a genera reţeaua de noduri, în celula B3 am introdus
valoarea iniţială a lui x, în celula B4 am introdus formula +B3+$B$1 şi am copiat această formulă în
blocul B5..B13.
În celulele C3, D3, E3 şi F3 am introdus valorile lui y, x  h/ 2 , y  hf(x, y) / 2 şi
f(x  h/ 2, y  hf(x, y) / 2) , corespunzătoare valorii iniţiale x 0 . Pentru a calcula aceste valori, în celula
C3 am introdus valoarea iniţială y 0 , în celula D3 am introdus formula +B3+$B$1/2, în celula E3 am
introdus formula +C3 + $B$1/2*C3/(1+B3^2), iar în celula F3 am introdus formula +E3/(1+D3^2).
Coloana C conţine aproximaţiile y1 , ...,y10 . Aceste aproximaţii le-am calculat în mai multe
etape. Aşa cum am precizat deja, în celula C3 am introdus valoarea iniţială y 0 . Acum, în celula C4 am
introdus formula C3+$B$1*F3. Celelalte numere de pe coloana C le-am calculat ulterior. Formula pe
care am introdus-o încelula C4 corespunde membrului drept al formulei:

h h
y i  y i1  hf(x i1  , y i1  f(x i1 , y i1 ))
2 2

cu:

y
f(x,y) 
1  x2

h
Coloana D conţine valorile expresiei x  corespunzătoare nodurilor reţelei de pe coloana B .
2
Aşa cum am precizat deja, în celula D3 am introdus formula +B3+$B$1/2. Pentru a calcula şi celelalte
numere de pe coloana D am copiat formula din celula D3 în blocul D4..D13.
Coloana E conţine valorile expresiei y  hf(x, y) / 2 corespunzătoare valorilor lui x şi y de pe
coloana B şi, respectiv, coloana C. Cum am precizat deja, în celula E3 am introdus formula
+B4+$B$1/2*C4/(1+B4^2). Acum am copiat celula E3 în celula E4. Celelalte numere de pe coloana E
le-am calculat ulterior.
Coloana F conţine valorile expresiei f(x  h/ 2, y  hf(x, y) / 2) corespunzătoare valorilor lui x şi
y de pe coloana B şi , respectiv, coloana C. Cum am precizat deja, în celula F3 am introdus formula
+E3/(1+D3^2). Acum am copiat celula F3 în celula F4. Celelalte numere de pe coloana F le-am calculat
ulterior.
Pe linia 4 din figura 5.4 apar valorile corespunzătoare lui i  1 . Pentru a calcula şi valorile
corespunzătoare următoarelor valori ale lui i, am copiat blocul C3..F3 în blocul C4..F13. Să observăm
că figura 5.4 conţine valorile numerice corespunzătoare nodurilor reţelei de pe coloana B. Dacă dorim
să obţinem valorile soluţiei şi în punctele x11  1.1, x12  1.2,... , atunci trebuie să copiem blocul
A13..F13 în liniile următoare.
Coloana G conţine valorile soluţiei exacte y(x)  e arctgx în nodurile reţelei de pe coloana B.
Pentru a calcula aceste valori, în celula G3 am introdus formula @EXP(@ATAN(B3)) şi am copiat
această formulă în blocul G4..G13.
Coloana H conţine erorile absolute ale soluţiei numerice y1 , ...,y10 de pe coloana C. Pentru a
calcula aceste valori, în celula H3 am introdus formula @ABS(G3-C3) şi am copiat această formulă în
blocul H4..H13.
Numerele de pe coloana H ne arată că erorile absolute ale soluţiei numerice y1 , ...,y10
calculate cu metoda Euler modificată, figura 5.4, sunt mici decât erorile absolute ale soluţiei numerice

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 88


Analiză Numerică

y1 , ...,y10 calculate cu metoda Euler îmbunătăţită, figura 5.3.


Procedura pe care am prezentat-o în această secţiune o putem utiliza şi la determinarea
soluţiei numerice în altă reţea de puncte. Pentru aceasta este suficient să modificăm valoarea lui h din
celula B1. Desigur, dacă dorim să determinăm soluţia numerică a altei probleme Cauchy, atunci trebuie
să modificăm valorile iniţiale x 0 şi y 0 din celulele B3 şi C3. Dacă dorim să rezolvăm problema lui
Cauchy pentru altă ecuaţie diferenţială, atunci trebuie să modificăm şi formulele de pe coloanele E şi F.
Să mai observăm că numerele de pe coloanele G şi H sunt calculate cu ajutorul soluţiei exacte.
Desigur, dacă nu cunoaştem soluţia exactă, atunci aceste coloane nu le mai introducem.

5.10 Consistenţa, stabilitatea şi convergenţa metodelor de tip Euler

În secţiunea 5.2 am enunţat o teoremă care afirmă că o metodă numerică definită de o funcţie
(x, y, h) este consistentă dacă şi numai dacă funcţia  îndeplineşte condiţia:

 (x, y, 0)  f(x, y)

pentru orice x  [a, b] şi orice y  R .


Pentru metodele de tip Euler pe care le-am prezentat avem:

 (x, y, h)  f(x, y)
f(x, y)  f(x  h, y  hf(x, y))
(x, y, h) 
2
h h
(x, y, h)  f(x  , y  f(x, y))
2 2

Prin urmare, cele trei metode de tip Euler pe care le-am considerat sunt consistente.
Teorema de existenţă şi unicitate a soluţiei problemei lui Cauchy, pentru ecuaţia diferenţială de
ordinul întâi:

y '  f(x, y)

cu condiţia iniţială:

y(x 0 )  y 0

în care x 0 şi y 0 sunt constante date, este demonstrată în ipoteza ca funcţia f(x, y) îndeplineşte
condiţia lui Lipschitz în raport cu variabila y. Din consistenţa metodelor numerice de tip Euler deducem
că funcţia (x, y, h) îndeplineşte condiţia lui Lipschitz în raport cu a doua variabilă independentă. Prin
urmare, potrivit unei teoreme pe care am enunţat-o în secţiunea 5.2, metodele de tip Euler sunt stabile.
Aşadar, în baza unei teoreme din aceeaşi secţiune deducem că metodele de tip Euler sunt
convergente.

5.11 Ordinul metodelor de tip Euler

În secţiunea 5.5.3 am văzut că are loc relaţia:

y(x i )  y(x i1 )


 f(x i1 , y(x i1 ))  O(h)
h

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 89


Analiză Numerică

Prin urmare, metoda lui Euler bazată pe relaţia de recurenţă:

y i  y i1  hf(x, y)

cu ajutorul căreia se rezolvă numeric problema lui Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y '  f(x, y)

cu condiţia iniţială:

y(x 0 )  y 0

în care x0 şi y 0 sunt constante date este o metodă numerică de ordinul unu. Se demonstrează[ ] că
metoda lui Euler îmbunătăţită şi metoda lui Euler modificată sunt metode de ordinul doi.
În finalul acestei secţiuni, considerăm din nou problema lui Cauchy pentru ecuaţia diferenţială
de ordinul întâi:

y
y' 
1  x2

cu condiţia iniţială:

y(0)  1

Fig. 5.5

Problema formulată am rezolvat-o în secţiunile anterioare cu cele trei metode de tip Euler pe
care le-am prezentat. Coloanele C, D şi E din figura 5.5 conţin rezultatele calculelor pe care le-am
obţinut cu metoda lui Euler, metoda lui Euler îmbunătăţită şi, respectiv, metoda lui Euler modificată. În
aceeaşi figură apar şi valorile soluţiei exacte corespunzătoare nodurilor reţelei din coloana B.

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 90


Analiză Numerică

Fig. 5.6

Figura 5.6 conţine erorile absolute ale soluţiilor numerice de pe coloanele C, E şi D. Erorile
absolute ale soluţiei numerice pe care am obţinut-o cu metoda lui Euler sunt mai mici decât valoarea:

  0.1

erorile absolute ale soluţiei numerice pe care am obţinut-o cu metoda lui Euler
îmbunătăţită sunt mai mici decât valoarea:

  0.01

iar erorile absolute ale soluţiei numerice pe care am obţinut-o cu metoda lui Euler modificată sunt mai
mici decât valoarea:

  0.001

Metoda lui Euler este o metodă de ordinul unu, iar metoda lui Euler îmbunătăţită şi metoda lui Euler
modificată sunt metode de ordinul doi. Prin urmare, rezultatele obţinute privind erorile absolute sunt cele
aşteptate

5.12 Rezolvarea sistemelor de ecuaţii diferenţiale de ordinul întâi


5.12.1 Utilizarea metodei lui Euler

Metoda lui Euler se poate utiliza şi la rezolvarea problemei lui Cauchy pentru sisteme de ecuaţii
diferenţiale de ordinul întâi. Pentru prezentarea algoritmului de calcul este suficient să considerăm
sistemul de ecuaţii diferenţiale de ordinul întâi:

y '  f(x, y, z)
z '  g(x, y, z)

cu condiţiile iniţiale:

y(x 0 )  y 0 , z(x 0 )  z 0

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 91


Analiză Numerică

în care x0 , y 0 şi z 0 sunt constante date. Formulele de recurenţă pentru rezolvarea numerică a


problemei lui Cauchy pe care am enunţat-o se pot deduce atât cu ajutorul ecuaţiilor integrale cât şi cu
ajutorul seriilor Taylor.
Dacă integrăm cele două ecuaţii diferenţiale ale sistemului pe intervalul [xi1 , xi ] , atunci
obţinem:
xi

y(xi )  y(xi1 )   f(x, y(x), z(x))dx


xi1
xi

z(xi )  z(x i1 )   g(x, y(x), z(x))dx


xi1
xi

Acum aproximăm integrala  f(x, y(x), z(x))dx


xi1
cu aria dreptunghiului cu vârfurile în punctele de

coordonate (x i1 , 0) , (x i , 0) , (x i , f(x i , y(x i ), z(x i )) , (x i1 , f(xi1 , y(xi1 ), z(x i1 )) , iar integrala
xi

 g(x, y(x), z(x))dx


xi1
o aproximăm cu aria dreptunghiului cu vârfurile în punctele de coordonate

(x i1 , 0) , (x i , 0) , (x i , g(x i , y(x i ), z(x i )) , (xi1 , g(x i1 , y(xi1 ), z(x i1 )) . În acest fel obţinem formulele de
recurenţă:

y i  y i1  hf(x i1 , y i1 , zi1 )


z i  zi1  hg(x i1 , y i1 , zi1 )

cu i  1, 2, ..., n şi x 0 , y 0 , h constante date. Acestea sunt formulele de recurenţă ale metodei lui Euler
cu care se rezolvă problema lui Cauchy pentru sistemul de ecuaţii diferenţiale de ordinul întâi:

y '  f(x, y, z)
z '  g(x, y, z)

Formulele de recurenţă obţinute se pot deduce şi cu ajutorul seriilor Taylor. În adevăr, din
dezvoltările în serie Taylor:

y '(x) y (n) (x) n


y(x  h)  y(x)  h  ...  h  ...
1! n!
z '(x) z (n) (x) n
z(x  h)  z(x)  h  ...  h  ...
1! n!

obţinem:

y(x i )  y(x i1 )


 f(x i1 , y(x i1 ), z(x i1 ))  O(h)
h
z(x i )  z(x i1 )
 g(x i1 , y(x i1 ), z(x i1 ))  O(h)
h

Dacă renunţăm la termenii care conţin pe h la puteri mai mari sau egale cu doi, atunci obţinem:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 92


Analiză Numerică

y i  y i1  hf(x i1 , y i1 , zi1 )


z i  zi1  hg(x i1 , y i1 , zi1 )

cu i  1, 2, ..., n şi x 0 , y 0 , h constante date.


Ca exemplu, considerăm problema lui Cauchy pentru sistemul de ecuaţii diferenţiale de ordinul
întâi:

y '  4y  3z
z '   y  2z

cu condiţiile iniţiale:

y(0)  0 , z(0)  2

Ne propunem să determinăm soluţia numerică în reţeaua de noduri:

x 0  0 , x1  0.01 , x 2  0.02 , ..., x10  0.1

Pentru a determina aproximaţiile y1 şi z1 , în formulele de recurenţă ale metodei lui Euler pe


care le-am dedus în această secţiune luăm i  1 . În acest fel obţinem formulele:

y1  y 0  hf(x 0 , y 0 , z 0 )
z1  z 0  hg(x 0 , y 0 , z 0 )

Prin calcul direct, deducem:

y1  y 0  hf(x 0 , y 0 , z 0 )  y 0  h(4y 0  3z 0 ) 
 0  0.01(4  0  3  2)  0.06
z1  z 0  hg(x 0 , y 0 , z 0 )  z 0  h( y 0  2z 0 ) 
 2  0.01( 0  2  2)  2.04

adică:

y1  0.060 , z1  2.040

3 3 3 1
Valorile soluţiilor exacte y(x)  e x  e 5x , z(x)  e x  e 5x , calculate cu trei zecimale, în
2 2 2 2
nodul x1 sunt:

y(x1 )  0.062 , z(x1 )  2.041

Prin urmare:

y(x1 )  y1   0.062  0.060  0.002


z(x1 )  z1  2.041  2.040  0.001

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 93


Analiză Numerică

Aşadar, erorile absolute ale aproximaţiilor y1 şi z1 sunt mai mici decât valoarea

  0.01

adică:

y(x1 )  y1   , z(x1 )  z1  

Pentru a determina aproximaţiie y 2 şi z2 , în formulele de recurenţă ale metodei lui Euler pe


care le-am dedus în această secţiune luăm i  2 . În acest fel obţinem formulele:

y 2  y1  hf(x1 ,y1 ,z1 )


z 2  z1  hg(x1 ,y1 ,z1 )

Prin calcul direct, deducem:

y 2  y1  hf(x1 ,y1 ,z1 )  y1  h(4y1  3z1 ) 


 0.06  0.01(4  ( 0.06)  3  2.04)  0.124
z 2  z1  hg(x1 ,y1 ,z1 )  z1  h( y1  2z1 ) 
 2.04  0.01(0.06  2  2.04)  2.081

adică:

y 2  0.124 , z 2  2.081

3 3 3 1
Valorile soluţiilor exacte y(x)  e x  e 5x , z(x)  e x  e 5x , calculate cu trei zecimale, în
2 2 2 2
nodul x 2 sunt:

y(x 2 )  0.127 , z(x 2 )  2.083

Prin urmare:

y(x 2 )  y 2   0.127  0.124  0.003


z(x 2 )  z 2  2.083  2.081  0.002

Aşadar, erorile absolute ale aproximaţiilor y 2 şi z2 sunt mai mici decât valoarea:

  0.01

adică:

y(x 2 )  y 2   , z(x 2 )  z 2  

La fel se pot calcula aproximaţiile y 3 , z 3 , y 4 , z 4 , ..., y10 , z10 . Aceste calcule nu le mai facem.

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 94


Analiză Numerică

Prezentăm însă o procedură QP pentru efectuarea automată a calculelor. Un set de rezultate ale
calculelor bazate pe procedura pe care o vom prezenta în continuare apare în figura 5.7. Procedura
foloseşte formulele de recurenţă:

y i  y i1  hf(x i1 , y i1 , zi1 )


z i  zi1  hg(x i1 , y i1 , zi1 )

cu i  1,2,... şi x 0 , y 0 , h constante date. Datorită rotunjirilor, a treia zecimală a erorilor absolute ale
aproximaţiilor y 2 şi z 2 obţinute prin calcul manual diferă de cea pe care am obţinut-o prin calculul
automat.
Coloana A conţine valorile lui i. Pentru a calcula aceste valori, în celula A3 am introdus valoarea
iniţială a lui i, în celula A4 am introdus formula +A3+1 şi am copiat această formulă în blocul A5..A13.
Coloana B conţine nodurile reţelei. Pentru a genera reţeaua de noduri, în celula B3 am introdus
valoarea iniţială a lui x, în celula B4 am introdus formula +B3+$B$1 şi am copiat această formulă în
blocul B5..B13.
Coloanele C şi D conţin soluţiile numerice y1 , y 2 , ..., y10 şi z1 , z 2 , ..., z10 . Pentru a calcula
aceste soluţii, în celulele C3 şi D3 am introdus valorile iniţiale y 0 şi z0 . De asemenea, am introdus
formulele:

+C3+$B$1*(4*C3-3*D3) în celula C4
+D3+$B$1*(-C3+2*D3) în celula D4

În plus, formulele din blocul C4..D4 le-am copiat în blocul C5..D13. Să observăm că formula din celula
C4 corespunde membrului drept al formulei:

y i  y i1  hf(x i1 , y i1 , zi1 )

cu:

f(x, y, z)  4y  3z

iar formula din celula D4 corespunde membrului drept al formulei:

z i  zi1  hg(x i1 , y i1 , zi1 )

cu:

g(x, y, z)   y  2z

3 3
Coloana E conţine valorile soluţiei exacte y(x)  e x  e 5x în nodurile reţelei de pe coloana
2 2
B. Pentru a calcula aceste valori, în celula E3 am introdus formula 3/2*@EXP(B3)-3/2*@EXP(5*B3) şi
am copiat această formulă în blocul E4..E13.
3 1
Coloana F conţine valorile soluţiei exacte z(x)  e x  e 5x în nodurile reţelei de pe coloana
2 2
B. Pentru a calcula aceste valori, în celula F3 am introdus formula 3/2*@EXP(B3)+1/2*@EXP(5*B3) şi
am copiat această formulă în blocul F4..F13.
Coloana G conţine erorile absolute ale soluţiei numerice y1 , ...,y10 de pe coloana C. Pentru a
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 95
Analiză Numerică

calcula aceste valori, în celula G3 am introdus formula @ABS(E3-C3) şi am copiat această formulă în
blocul G3..G13.

Fig. 5.7

Coloana H conţine erorile absolute ale soluţiei numerice z1 , ..., z10 de pe coloana D. Pentru a
calcula aceste valori, în celula H3 am introdus formula @ABS(F3-D3) şi am copiat această formulă în
blocul H3..H13.
Figura 5.7 conţine valorile numerice corespunzătoare nodurile reţelei de pe coloana B. Dacă
dorim să obţinem valorile soluţiei şi în punctele x11  1.1, x12  1.2,... , atunci trebuie să copiem blocul
A13..H13 mai jos.
Procedura pe care am prezentat-o în această secţiune o putem utiliza şi la determinarea
soluţiei numerice în altă reţea de puncte. Pentru aceasta este suficient să modificăm valoarea lui h din
celula B1. Desigur, dacă dorim să determinăm soluţia numerică a altei probleme Cauchy, atunci trebuie
să modificăm valorile iniţiale x 0 , y 0 şi z 0 din celulele B3, C3 şi D3. Dacă dorim să rezolvăm problema
lui Cauchy pentru alt sistem de ecuaţii diferenţiale, atunci trebuie să modificăm şi formulele de pe
coloanele C şi D. Să mai observăm că numerele de pe coloanele E, F, G şi H sunt calculate cu ajutorul
soluţiei exacte. Desigur, dacă nu cunoaştem soluţia exactă, atunci aceste coloane nu le mai introducem.

5.12.2 Utilizarea metodei lui Euler îmbunătăţită

Problema lui Cauchy pentru sistemul de ecuaţii diferenţiale de ordinul întâi:

y '  f(x, y, z)
z '  g(x, y, z)

cu condiţiile iniţiale:

y(x 0 )  y 0 ,z(x 0 )  z 0

în care x 0 , y 0 , z 0 , h sunt constante date se poate rezolva şi cu ajutorul metodei lui Euler îmbunătăţită.
Formulele de recurenţă ale acestei metode le deducem cu ajutorul ecuaţiilor integrale.
Dacă integrăm cele două ecuaţii diferenţiale ale sistemului pe intervalul [x i1 , x i ] , atunci
obţinem:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 96


Analiză Numerică

xi

y(xi )  y(xi1 )   f(x, y(x), z(x))dx


xi1
xi

z(xi )  z(x i1 )   g(x, y(x), z(x))dx


xi1

xi

Acum aproximăm integrala  f(x, y(x), z(x))dx


xi1
cu aria trapezelui cu vârfurile în punctele de coordonate

xi

(x i1 , 0) , (x i , 0) , (x i , f(x i , y(x i ), z(x i )) , (x i1 , f(xi1 , y(xi1 ), z(xi1 )) , iar integrala  g(x, y(x), z(x))dx
xi1
o

aproximăm cu aria trapezului cu vârfurile în punctele de coordonate (x i1 , 0) , (x i , 0) ,


(x i , g(x i , y(x i ), z(x i )) , (xi1 , g(x i1 , y(xi1 ), z(x i1 )) . În acest fel obţinem formulele de recurenţă:

f(x i1 , y i1 , z i1 )  f(x i , y i , z i )


y i  y i1  h
2
g(x i1 , y i1 , z i1 )  g(x i , y i , z i )
z i  z i1  h
2

cu i  1, 2, ..., n şi x 0 , y 0 , h constante date.


Metoda Euler îmbunătăţită este o metodă de tip predictor-corector. În etapa de predicţie se
determină predicţiile y i şi z i cu metoda lui Euler, adică:

y i  y i1  hf(xi1 , y i1 , zi1 )


z i  zi1  hg(xi1 , y i1 , zi1 )

iar în etapa de corecţie se determină valorile y i şi zi cu formulele:

f(x i1 , y i1 , z i1 )  f(x i , y i , z i )


y i  y i1  h
2
g(x , y , z )  g(x i , y i , z i )
z i  z i1  h i1 i1 i1
2

cu i  1, 2, ..., n şi x 0 , y 0 , z 0 , h constante date.


Ca exemplu, considerăm din nou problema lui Cauchy pentru sistemul de ecuaţii diferenţiale de
ordinul întâi:

y '  4y  3z
z '   y  2z

cu condiţiile iniţiale:

y(0)  0 , z(0)  2

Ne propunem să determinăm soluţia numerică în reţeaua de noduri:


USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 97
Analiză Numerică

x 0  0 , x1  0.01 , x 2  0.02 , ..., x10  0.1

Pentru a determina predicţiile y 1 şi z 1 , în formulele de recurenţă ale predicţiilor din metoda lui
Euler îmbunătăţită pe care le-am dedus în această secţiune luăm i  1 . În acest fel obţinem formulele:

y 1  y 0  hf(x 0 ,y 0 ,z 0 )
z 1  z  hg(x ,y ,z )
0 0 0 0

Prin calcul direct, deducem:

y 1  y 0  hf(x 0 , y 0 , z 0 )  y 0  h(4y 0  3z 0 ) 
 0  0.01(4  0  3  2)  0.060000
z 1  z  hg(x , y , z )  z  h( y  2z ) 
0 0 0 0 0 0 0
 2  0.01( 0  2  2)  2.040000
adică:

y 1  0.060000 , z 1  2.040000

Pentru a determina corecţiile y1 şi z1 , în formulele de recurenţă ale corecţiilor din metoda lui
Euler îmbunătăţită pe care le-am dedus în această secţiune luăm i  1 . În acest fel obţinem formulele:

f(x 0 , y 0 , z 0 )  f(x1 , y 1 , z 1 )
y1  y 0  h
2
g(x 0 , y 0 , z 0 )  g(x1 , y 1 , z 1 )
z1  z 0  h
2

Prin calcul direct, deducem:

f(x 0 , y 0 , z 0 )  4y 0  3z 0  6.000000
g(x 0 , y 0 , z 0 )   y 0  2z 0  4.000000

şi:

f(x1 , y 1 , z 1 )  4y 1  3z 1  4  ( 0.060)  3  (2.040)  6.360000


g(x , y , z )  y  2z  0.060  2  2.040  4.140000
1 1 1 1 1

Aşadar:

f(x 0 , y 0 , z 0 )  f(x1 , y 1 , z 1 )
y1  y 0  h 
2
6  6.36
 0  0.01  0.061800
2

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 98


Analiză Numerică

g(x 0 , y 0 , z 0 )  g(x1 , y 1 , z 1 )
z1  z 0  h 
2
4  4.14
 2  0.01  2.040700
2

adică:

y1  0.061800 , z1  2.040700

3 3 3 1
Valorile soluţiilor exacte y(x)  e x  e 5x , z(x)  e x  e 5x , calculate cu şase zecimale, în
2 2 2 2
nodul x1 sunt:

y(x1 )  0.061831, z(x1 )  2.040711

Prin urmare:

y(x1 )  y1   0.061831  0.061800  0.000031


z(x1 )  z1  2.040711  2.040700  0.000011

Aşadar, erorile absolute ale aproximaţiilor y1 şi z1 sunt mai mici decât valoarea

  0.0001

adică:

y(x1 )  y1   , z(x1 )  z1  

Să observăm că erorile absolute y(x1 )  y1  0.000031 şi z(x1 )  z1  0.000011 ale aproximaţiilor


y1 şi z1 pe care le-am obţinut cu metoda lui Euler îmbunătăţită sunt mai mici decât erorile absolute
y(x1 )  y1  0.002 şi z(x1 )  z1  0.001 ale aceloraşi aproximaţii y1 şi z1 pe care le-am obţinut cu
metoda lui Euler.
Pentru a determina predicţiile y 2 şi z 2 , în formulele de recurenţă ale predicţiilor din metoda lui
Euler îmbunătăţită pe care le-am dedus în această secţiune luăm i  2 . În acest fel obţinem formulele:

y 2  y1  hf(x1 , y1 , z1 )
z 2  z1  hg(x1 , y1 , z1 )

Prin calcul direct, deducem:

y 2  y1  hf(x1 , y1 , z1 )  y1  h(4y1  3z1 ) 


 0.061800  0.01(4  ( 0.061800)  3  2.040700)  0.125493
z 2  z  hg(x , y , z )  z  h( y  2z ) 
1 1 1 1 1 1 1
 2.040700  0.01(0.061800  2  2.040700)  2.082132
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 99
Analiză Numerică

adică:

y 2  0.125493 , z 1  2.082132

Pentru a determina corecţiile y 2 şi z2 , în formulele de recurenţă ale corecţiilor din metoda lui
Euler îmbunătăţită pe care le-am dedus în această secţiune luăm i  2 . În acest fel obţinem formulele:

f(x1 , y1 , z1 )  f(x 2 , y 2 , z 2 )
y 2  y1  h
2
g(x , y , z )  g(x 2 , y 2 , z 2 )
z 2  z1  h 1 1 1
2

Prin calcul direct, deducem:

f(x1 , y1 , z1 )  4y1  3z1  4  ( 0.061800)  3  2.04700  6.369300


g(x1 , y1 , z1 )  y1  2z1  0.061800  2  (2.040700)  4.143200

şi:

f(x 2 , y 2 , z 2 )  4y 2  3z 2  4  ( 0.125493)  3  2.082132  6.748368

g(x 2 , y 2 , z 2 )  y 2  2z 2  0.125493  2  2.082132  4.289757

Aşadar:

f(x1 , y1 , z1 )  f(x 2 , y 2 , z 2 )
y 2  y1  h 
2
6.369300  6.748368
 0.061800  0.01  0.127388
2
g(x , y , z )  g(x 2 , y 2 , z 2 )
z 2  z1  h 1 1 1 
2
4.143200  4.289757
 2.040700  0.01  2.082865
2

adică:

y 2  0.127388 , z 2  2.082865

3 3 3 1
Valorile soluţiilor exacte y(x)  e x  e 5x , z(x)  e x  e 5x , calculate cu şase zecimale, în
2 2 2 2
nodul x 2 sunt:

y(x 2 )  0.127454 , z(x 2 )  2.082887

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 100


Analiză Numerică

Prin urmare:

y(x 2 )  y 2   0.127454  0.127388  0.000066


z(x 2 )  z 2  2.082887  2.082865  0.000022

Aşadar, erorile absolute ale aproximaţiilor y 2 şi z2 sunt mai mici decât valoarea:

  0.0001

adică:

y(x 2 )  y 2   , z(x 2 )  z 2  

Să observăm că erorile absolute y(x 2 )  y 2  0.000066 şi z(x 2 )  z 2  0.000022 ale


aproximaţiilor y 2 şi z 2 obţinute cu metoda lui Euler îmbunătăţită sunt mai mici decât erorile absolute
y(x 2 )  y 2  0.003 şi, respectiv, z(x 2 )  z 2  0.002 ale aceloraşi aproximaţii y 2 şi z 2 pe care le-
am obţinut cu metoda lui Euler.

Fig. 5.8

Le fel se pot calcula aproximaţiile y 3 , z 3 ,y 4 , z 4 , ..., y10 , z10 . Aceste calcule nu le mai facem.
Prezentăm însă o procedură QP pentru efectuarea automată a calculelor. Un set de rezultate ale
calculelor bazate pe procedura pe care o vom prezenta în continuare apare în figura 5.8 şi figura 5.9.
Procedura foloseşte formulele:

y i  y i1  hf(xi1 , y i1 , zi1 )


z i  zi1  hg(xi1 , y i1 , zi1 )

în etapa de predicţie şi formulele:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 101


Analiză Numerică

f(x i1 , y i1 , z i1 )  f(x i , y i , z i )


y i  y i1  h
2
g(x , y , z )  g(x i , y i , z i )
z i  z i1  h i1 i1 i1
2

în etapa de corecţie.

Coloana A conţine valorile lui i. Pentru a calcula aceste valori, în celula A3 am introdus valoarea
iniţială a lui i, în celula A4 am introdus formula +A3+1 şi am copiat această formulă în blocul A5..A13.
Coloana B conţine nodurile reţelei. Pentru a genera reţeaua de noduri, în celula B3 am introdus
valoarea iniţială a lui x, în celula B4 am introdus formula +B3+$B$1 şi am copiat această formulă în
blocul B5..B13.

Fig. 5.9

În celulele G3, H3, I3, şi J3 am introdus valoarea iniţială y 0 , valoarea iniţială z 0 , valoarea lui
f(y 0 , z 0 ) şi, respectiv, valoarea lui g(y 0 , z 0 ) . Mai exact, în celula G3 am introdus numărul 0, în celula
H3 am introdus numărul 2, în celula I3 am introdus formula +4*G3-3*H3, iar în celula J3 am introdus
formula –G3+2*H3. Formula pe care am introdus-o în celula G3 corespunde funcţiei f(y, z)  4y  3z ,
iar formula pe care am introdus-o în celula H3 corespunde funcţiei g(y, z)   y  2z .
Coloana C conţine predicţiile % y ,%1y , ..., %
2 y , predicţii care în figura 5.8 sunt notate cu py .
10 i

Predicţiile py1 , py 2 , ..., py10 le-am calculat în mai multe etape. În prima etapă am calculat numărul din
celula C4. Pentru aceasta, în celula C4 am introdus formula +G3+$B$1*I3. Celelalte numere de pe
coloana C le-am calculat ulterior. Formula pe care am introdus-o în celula C4 corespunde membrului
drept al formulei:

y i  y i1  hf(y i1 , z i1 )

cu:

f(y, z)  4y  3z

Coloana D conţine predicţiile %


z1 , %
z 2 , ..., %
z10 , predicţii care în figura 5.8 sunt notate cu pzi .
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 102
Analiză Numerică

Predicţiile pz1 , pz 2 , ..., pz10 le-am calculat în mai multe etape. În prima etapă am calculat numărul din
celula D4. Pentru aceasta, în celula D4 am introdus formula +H3+$B$1*J3. Celelalte numere de pe
coloana D le-am calculat ulterior. Formula pe care am introdus-o în celula D4 corespunde membrului
drept al formulei:

z i  zi1  hg(y i1 , zi1 )

cu:

g(y, z)   y  2z

Coloana E conţine valorile funcţiei f(y, z)  4y  3z în perechile de numere (py i , pz i ) .


Numerele de pe coloana E le-am calculat în mai multe etape. În primul rând am calculat numărul din
celula E3. Pentru aceasta, în celula E3 am introdus formula +4*C3-3*D3. Celelalte numere de pe
coloana E le-am calculat ulterior.
Coloana F conţine valorile funcţiei g(y, z)   y  2z în perechile de numere (py i , pz i ) .
Numerele de pe coloana F le-am calculat în mai multe etape. În primul rând am calculat numărul din
celula F3. Pentru aceasta, în celula D3 am introdus formula –C3+2*D3. Celelalte numere de pe coloana
F le-am calculat ulterior.
Coloana G conţine aproximaţiile y1 , y 2 , ..., y10 . Aceste aproximaţii le-am calculat în mai multe
etape. Aşa cum am precizat deja, în celula G3 am introdus valoarea iniţială y 0 . Acum în celula G4 am
introdus formula +G3+$B$1*(I3+E4)/2. Celelalte numere de pe coloana G le-am calculat ulterior.
Formula pe care am introdus-o în celula G4 corespunde formulei:

f(x i1 , y i1 , z i1 )  f(x i , y i , z i )


y i  y i1  h
2

cu:

f(y, z)  4y  3z

Coloana H conţine aproximaţiile z1 , z 2 , ..., z10 . Aceste aproximaţii le-am calculat în mai multe
etape. Aşa cum am precizat deja, în celula H3 am introdus valoarea iniţială z 0 . Acum în celula H4 am
introdus formula +H3+$B$1*(J3+F4)/2. Celelalte numere de pe coloana G le-am calculat ulterior.
Formula pe care am introdus-o în celula H4 corespunde formulei:

g(x i1 , y i1 , z i1 )  g(x i , y i , z i )


z i  z i1  h
2

cu:

g(y, z)   y  2z

Coloana I conţine valorile funcţiei f(y, z)  4y  3z în perechile de numere (x i , y i ) . Numerele


de pe coloana I le-am calculat în mai multe etape. Aşa cum am spus deja, în celula I3 am formula
+4*G3-3*H3. Acum, am copiat celula I3 în celula I4. Celelalte numere de pe coloana I le-am calculat
ulterior.
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 103
Analiză Numerică

Coloana J conţine valorile funcţiei g(y, z)   y  2z în perechile de numere (x i , y i ) . Numerele


de pe coloana J le-am calculat în mai multe etape. Aşa cum am spus deja, în celula J3 am formula -
G3+2*H3. Acum, am copiat celula J3 în celula J4. Celelalte numere de pe coloana J le-am calculat
ulterior.
Pe linia 4 din figura 5.8 şi figura 5.9 apar valorile corespunzătoare lui i  1 . Pentru a genera şi
valorile corespunzătoare următoarelor valori ale lui i, am copiat blocul C4..J4 în blocul C5..J13. Să
observăm că rezultatele din figurile precizate corespund nodurilor reţelei de pe coloana B. Dacă dorim
să obţinem valorile soluţiei şi în punctele x11  0.11 , x12  0.12 , ..., atunci trebuie să copiem blocul
A13..J13 mai jos.
Coloana K conţine erorile absolute ale aproximaţiilor y1 , y 2 , ..., y10 de pe coloana G. Pentru a
calcula aceste valori, în celula K3 am introdus formula @ABS(3/2*@EXP(B3)-3/2*@EXP(5*B3)-G3) şi
am copiat această formulă în blocul K4..K13.
Coloana L conţine erorile absolute ale aproximaţiilor z1 , z 2 , ..., z10 de pe coloana H. Pentru a
calcula aceste valori, în celula L3 am introdus formula @ABS(3/2*@EXP(B3)+1/2*@EXP(5*B3)-H3) şi
am copiat această formulă în blocul L4..L13.
Numerele de pe coloanele K şi L ne arată că:

y(xi )  y i   , z(xi )  zi  

cu:

  0.001

Pe de altă, parte rezultatele obţinute în secţiunea anterioară cu metoda lui Euler, rezultate care apar în
figura 5.7, ne arată că:

y(xi )  y i   , z(xi )  zi  

cu:

  0.1

în aceleaşi noduri. Prin urmare, rezultatele pe care le-am obţinut cu ajutorul metodei lui Euler
îmbunătăţită, rezultate care apar în figurile 5.8 şi 5.9 sunt mai bune decât rezultatele pe care le-am
obţinut cu ajutorul metodei lui Euler, rezultate care apar în figura 5.7.
Procedura pe care am prezentat-o în această secţiune o putem utiliza şi la determinarea
soluţiei numerice în altă reţea de puncte. Pentru aceasta este suficient să modificăm valoarea lui h din
celula B1. Desigur, dacă dorim să determinăm soluţia numerică a altei probleme Cauchy, atunci trebuie
să modificăm valorile iniţiale x 0 , y 0 şi z0 din celulele B3, G3 şi H3. Dacă dorim să rezolvăm problema
lui Cauchy pentru alt sistem de ecuaţii diferenţiale, atunci trebuie să modificăm şi formulele de pe
coloanele E, F, I şi J. Să mai observăm că numerele de pe coloanele K şi L sunt calculate cu ajutorul
soluţiei exacte. Desigur, dacă nu cunoaştem soluţia exactă, atunci aceste coloane nu le mai introducem.

5.12.3 Utilizarea metodei lui Euler modificată

Considerăm din nou problema lui Cauchy pentru sistemul de ecuaţii diferenţiale de ordinul întâi:

y '  f(x, y, z)

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 104


Analiză Numerică

z '  g(x, y, z)

cu condiţiile iniţiale:

y(x 0 )  y 0 , z(x 0 )  z 0

în care x 0 , y 0 şi z 0 sunt constante date.


Problema formulată se poate rezolva şi cu ajutorul metodei lui Euler modificată. Formulele de
recurenţă ale acestei metode sunt:

h h h
y i  y i1  hf(x i1  , y i1  f(x i1 ,y i1 ,z i1 ), z i1  g(x i1 ,y i1 ,z i1 ))
2 2 2
h h h
z i  z i1  hg(x i1  ,y i1  f(x i1 ,y i1 ,z i1 ),z i1  g(x i1 ,y i1 ,z i1 ))
2 2 2

cu i  1, 2, ... şi x 0 , y 0 , z 0 , h constante date.


Ca exemplu, considerăm din nou problema lui Cauchy pentru sistemul de ecuaţii diferenţiale de
ordinul întâi:

y '  4y  3z
z '   y  2z

cu condiţiile iniţiale:

y(0)  0 , z(0)  2

Ne propunem să determinăm soluţia numerică în reţeaua de noduri:

x 0  0 , x1  0.01 , x 2  0.02 , ..., x10  0.1

Pentru a determina aproximaţiile y1 şi z1 , în formulele de recurenţă ale metodei lui Euler


modificată pe care le-am scris în prima parte a acestei secţiuni luăm i  1 . În acest fel obţinem
formulele:

h h
y1  y 0  hf( y 0  f(y 0 , z 0 ), z 0  g(y 0 , z 0 ))
2 2
h h
z1  z 0  hg( y 0  f(y 0 , z 0 ), z 0  g( y 0 , z 0 ))
2 2

Prin calcul direct, deducem:

h h 0.01
y 0  f(y 0 ,z 0 )  y 0  (4y 0  3z 0 )  0  (4  0  3  2)  0.03
2 2 2
h h 0.01
z 0  g(y 0 ,z 0 )  z 0  (  y 0  2z 0 )  2  ( 0  2  2)  2.02
2 2 2

În consecinţă:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 105


Analiză Numerică

h h
y1  y 0  hf( y 0  f(y 0 , z 0 ), z 0  g(y 0 , z 0 )) 
2 2
 0  0.01 f(  0.03, 2.02)  0.01(4  ( 0.03)  3  2.02)  0.061800
z1  2  0.01 g(  0.03, 2.02)  2  0.01 (0.03  2  (2.02))  2.040700

adică:

y1  0.061800 , z1  2.040700

Aceste valori aproximative sunt egale cu cele pe care le-am obţinut cu metoda lui Euler îmbunătăţită în
secţiunea anterioară.
Pentru a determina aproximaţiile y 2 şi z 2 , în formulele de recurenţă ale metodei lui Euler
modificată pe care le-am scris în prima parte a acestei secţiuni luăm i  1 . În acest fel obţinem
formulele:

h h
y 2  y1  hf( y1  f(y1 , z1 ), z1  g(y1 , z1 ))
2 2
h h
z 2  z1  hg( y1  f(y1 , z1 ), z1  g( y1 , z1 ))
2 2

Prin calcul direct, deducem:

h h
y1  f(y1 ,z1 )  y1  (4y1  3z1 ) 
2 2
0.01
 0.061800  (4  ( 0.061800)  3  2.040700)  0.093647
2
h h
z1  g(y1 ,z1 )  z1  (  y1  2z1 ) 
2 2
0.01
 2.040700  ( 0.061800  2  2.040700)  2.061416
2

În consecinţă:

h h
y 2  y1  hf( y1  f(y1 , z1 ), z1  g(y1 , z1 )) 
2 2
 0.061800  0.01 f( 0.093647, 2.061416) 
 0.061800  0.01 (4  ( 0.093647)  3  2.061416)  0.127388
h h
z 2  z1  hg( y1  f(y1 , z1 ), z1  g( y1 , z1 )) 
2 2
 2.040700  0.01 g(  0.093647, 2.061416) 
 2.040700  0.01 (0.093647  2  2.061416)  2.082865

adică:

y 2  0.127388 , z 2  2.082865

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 106


Analiză Numerică

Şi aceste valori aproximative sunt egale cu cele pe care le-am obţinut cu metoda lui Euler îmbunătăţită
în secţiunea anterioară.
Le fel se pot calcula valorile y 3 , z 3 , y 4 , z 4 , ..., y10 , z10 . De asemenea, se poate întocmi o
procedură QP pentru efectuarea automată a calculelor. La întocmirea procedurii se folosesc, desigur,
formulele:

h h h
y i  y i1  hf(x i1  , y i1  f(x i1 ,y i1 ,z i1 ), z i1  g(x i1 ,y i1 ,z i1 ))
2 2 2
h h h
z i  z i1  hg(x i1  ,y i1  f(x i1 ,y i1 ,z i1 ),z i1  g(x i1 ,y i1 ,z i1 ))
2 2 2

cu i  1, 2, ... şi x 0 , y 0 , z 0 , h constante date.

5.13 Rezolvarea ecuaţiilor diferenţiale de ordin superior cu metode de tip Euler

Rezolvarea problemei lui Cauchy pentru ecuaţii diferenţiale de ordin superior se face, de regulă,
prin reducere la rezolvarea unui sistem de ecuaţii diferenţiale de ordinul întâi. Astfel, rezolvarea
problemei lui Cauchy pentru ecuaţia diferenţială de ordinul doi:

y ''  g(x, y, y ')

cu condiţiile iniţiale:

y(x 0 )  y 0 , y '(x 0 )  y 0'

în care x0 , y 0 şi y 0' sunt constante date se reduce la rezolvarea problemei lui Cauchy pentru sistemul
de ecuaţii diferenţiale de ordinul întâi:

y'  z
z '  g(x, y, z)

cu condiţiile iniţiale:

y(x 0 )  y 0 , z(x 0 )  z 0

în care:

z 0  y 0'

Problema lui Cauchy la care am ajuns se poate rezolva cu orice metodă numerică de tip Euler
pentru sisteme de ecuaţii diferenţiale de ordinul întâi. De pildă, pentru a rezolva problema cu metoda lui
Euler, folosim formulele de recurenţă:

y i  y i1  hzi1
z i  zi1  hg(x i1 , y i1 , zi1 )

cu i  1,2, ..., n şi x 0 , y 0 , z 0 , h constante date..

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 107


Analiză Numerică

Ca exemplu, considerăm problema lui Cauchy pentru ecuaţia diferenţială de ordinul doi:

y ''  9y ' 8y

cu condiţiile iniţiale:

y(0)  1, y '(0)  1

Rezolvarea problemei lui Cauchy pe care am formulat-o se reduce la rezolvarea sistemului de ecuaţii
diferenţiale de ordinul întâi:

y'  z
z '  8y  9z

cu condiţiile iniţiale:

y(0)  1 , z(0)  1

Ne propunem să determinăm soluţia numerică corespunzătoare reţelei de noduri:

x 0  0, x1  0.01, x 2  0.02,..., x10  0.1

Pentru a determina aproximaţiile y1 şi z1 , în formulele de recurenţă ale metodei lui Euler pe


care le-am scris în prima parte a acestei secţiuni luăm i  1 . În acest fel obţinem formulele:

y1  y 0  hz 0
z1  z 0  hg( y 0 , z 0 )

Prin calcul direct, deducem:

y1  y 0  hz 0  1  0.01 1  1.01
z1  z 0  hg( y 0 , z 0 )  z 0  0.01( 8y 0  9 z 0 )  1  0.01 1  1.01

adică:

y1  1.01 , z1  1.01

Valorile soluţiilor exacte y  e x şi z  e x , calculate cu şase zecimale, în nodul x1 sunt:

y(x1 )  1.010050 , z(x1 )  1.010050

Prin urmare:

y(x1 )  y1  1.010050  1.01  0.00005


z(x1 )  z1  1.010050  1.01  0.00005

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 108


Analiză Numerică

Aşadar, erorile absolute ale aproximaţiilor y1 şi z1 sunt mai mici decât valoarea:

  0.0001

adică:

y(x1 )  y1   , z(x1 )  z1  

Pentru a determina aproximaţiile y 2 şi z2 , în formulele de recurenţă ale metodei lui Euler pe


care le-am scris în prima parte a acestei secţiuni luăm i  1 . În acest fel obţinem formulele:

y 2  y1  hz1
z 2  z1  hg( y1 , z1 )

Prin calcul direct, deducem:

y 2  y1  hz1  1.01  0.01 1.01  1.020100


z 2  z1  hg( y1 , z1 )  z1  0.01( 8y1  9 z1 ) 
 1.01  0.01 1.01  1.020100

adică:

y 2  1.020100 , z 2  1.020100

Valorile soluţiilor exacte y  e x şi z  e x , calculate cu şase zecimale, în nodul x2 sunt:

y(x 2 )  1.020201 , z(x 2 )  1.020201

Prin urmare:

y(x 2 )  y 2  1.020201  1.020100  0.000101


z(x 2 )  z 2  1.020201  1.020100  0.000101

Aşadar, erorile absolute ale aproximaţiilor y 2 şi z2 sunt mai mici decât valoarea:

  0.001

adică:

y(x 2 )  y 2   , z(x 2 )  z 2  

Le fel se pot calcula valorile y 3 , z 3 , y 4 , z 4 , ..., y10 , z10 . De asemenea, se poate întocmi o
procedură QP pentru efectuarea automată a calculelor. La întocmirea procedurii se folosesc, desigur,
formulele:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 109


Analiză Numerică

y i  y i1  hzi1
z i  zi1  hg(x i1 , y i1 , zi1 )

cu i  1,2, ..., n şi x 0 , y 0 , z 0 , h constante date.

5.14 Determinarea soluţiilor cu o precizie dată

În această secţiune determinăm cu o precizie dată soluţia numerică a unei probleme a lui
Cauchy pentru o ecuaţie diferenţială de ordinul întâi:

y '  f(x, y)

cu condiţia iniţială:

y(x 0 )  y 0

în care x 0 şi y 0 sunt constante date.


Problema lui Cauchy enunţată o rezolvăm numeric cu un proces iterativ bazat pe metoda Euler
îmbunătăţită. Pentru a determina predicţiile y (0)i folosim formula:

y (0)i  y i1  hf(xi1 , y i1 )

iar pentru a determina corecţiile y (k)i folosim formula:

f(x i1 , y i1 )  f(x i , y i(k 1) )


y (k)i  y i1  h
2

cu k  1, 2, ... . Procesul iterativ se opreşte în momentul în care:

y (k)i  y (ki1)  

unde  este un număr real şi strict pozitiv care reprezintă precizia cu care dorim să calculăm soluţia
aproximativă. Corecţia y (k)i care satiface condiţia y (k)i  y (ki1)   se ia drept aproximaţie y i
Ca exemplu, considerăm problema lui Cauchy pentru ecuaţia diferenţială de ordinul întâi:

y
y' 
1  x2

cu condiţia iniţială:

y(0)  1

Ne propunem să determinăm soluţia numerică cu precizia:

  0.001

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 110


Analiză Numerică

în reţeaua de noduri:

x 0  0 , x1  0.1 , x 2  0.2 , …., x10  1

Pentru a determina predicţia y (0)


1 , în formula de recurenţă a predicţiilor din metoda lui Euler

îmbunătăţită pe care am scris-o în prima parte a acestei secţiuni luăm i  1 . În acest fel obţinem
formula:

y (0)1  y 0  hf(x 0 ,y 0 )

Prin calcul direct, deducem:

y0
1  y 0  hf(x 0 ,y 0 )  y 0  h
y (0) 
1  x 20
1
 1  0.1  1.1
1 0

adică:

y (0)1  1.1

Pentru a determina corecţia y (1)1 , în formula de recurenţă a corecţiilor din metoda lui Euler
îmbunătăţită pe care am scris-o în prima parte a acestei secţiuni luăm i  1 şi k  1 . În acest fel
obţinem formula:

f(x 0 , y 0 )  f(x1 , y (0)


1 )
1  y0  h
y (1)
2

Prin calcul direct, deducem:

(0)
y0 y
 12
f(x 0 , y 0 )  f(x1 , y 1 )
(0)
1  x 0 1  x1
2
y (1)1  y 0  h  y0  h 
2 2
1 1.1

 1  0.1 1  0 1  0.1  1.104455
2

adică:

y (1)1  1.104455

Să observăm că:

y (1)1  y (0)
1  1.104455  1.1  0.004455  0.001  

Prin urmare, condiţia:


USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 111
Analiză Numerică

y (1)1  y (0)
1 

nu se îndeplineşte. Aşadar, trebuie să determinăm corecţia y (2)


1 .

Pentru a determina corecţia y (2)


1 , în formula de recurenţă a corecţiilor din metoda lui Euler

îmbunătăţită pe care am scris-o în prima parte a acestei secţiuni luăm i  1 şi k  2 . În acest fel
obţinem formula:

f(x 0 , y 0 )  f(x1 , y (1)1 )


y (2)
1  y0  h
2

Prin calcul direct, deducem:

(1)
y0 y
 12
f(x 0 , y 0 )  f(x1 , y 1 )
(1)
1  x 0 1  x1
2

1  y0  h
y (2)  y0  h 
2 2
1 1.104455

 1  0.1 1  0 1  0.1  1.104676
2

adică:

y (2)1  1.104676

Să observăm că:

1  y1
y (2)  1.104676  1.104455  0.000221  0.001  
(1)

Prin urmare, condiţia:

1  y1
y (2) 
(1)

se îndeplineşte. Aşadar, valoarea soluţiei numerice în nodul x1 cu aproximaţia   0.001 este:

y1  y (2)
1  1.104676

Valoarea soluţiei exacte y(x)  e arctgx , calculată cu şase zecimale, în nodul x1 este:

y(x1 )  1.104805

Prin urmare:

y(x1 )  y1  1.104805  1.104676  0.000129  0.001  

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 112


Analiză Numerică

Aşadar, eroarea absolută a aproximaţiei y1 este mai mică decât valoarea:

  0.001

Pentru a determina predicţia y (0)2 , în formula de recurenţă a predicţiilor din metoda lui Euler
îmbunătăţită pe care am scris-o în prima parte a acestei secţiuni luăm i  2 . În acest fel obţinem
formula:

y (0)2  y1  hf(x1 ,y1 )

Prin calcul direct, obţinem:

y1
y (0)2  y1  hf(x1 ,y1 )  y 1  h 
1  x12
1.104676
 1.104676  0.1  1.214050
1  0.12

adică:

y (0)2  1.214050

Pentru a determina corecţia y (1)2 , în formula de recurenţă a corecţiilor din metoda lui Euler
îmbunătăţită pe care am scris-o în prima parte a acestei secţiuni luăm i  2 şi k  1 . În acest fel
obţinem formula:

f(x1 , y1 )  f(x 2 , y (0)


2 )
y (1)2  y1  h
2

Prin calcul direct, deducem:

(0)
y1 y
 2 2
f(x1 , y1 )  f(x 2 , y 2 )
(0)
1  x1 1  x 2
2
y (1)2  y1  h  y1  h 
2 2
1.104676 1.214050

 1.104676  0.1 1  0.1^ 2 1  0.22  1.217731
2

adică:

2  1.217731
y (1)

Să observăm că:

y (1)2  y (0)
2  1.217731  1.214050  0.003681  0.001  

Prin urmare, condiţia:


USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 113
Analiză Numerică

y (1)2  y (0)
2 

nu se îndeplineşte. Aşadar, trebuie să determinăm corecţia y (2)


2 .

Pentru a determina corecţia y (2)2 , în formula de recurenţă a corecţiilor din metoda lui Euler
îmbunătăţită pe care am scris-o în prima parte a acestei secţiuni luăm i  2 şi k  2 . În acest fel
obţinem formula:
f(x1 , y1 )  f(x 2 , y (1)2 )
y 2  y1  h
(2)

Prin calcul direct, deducem:

(1)
y1 y
 22
f(x1 , y1 )  f(x 2 , y 2 )
(1)
1  x1 1  x 2
2

2  y1  h
y (2)  y1  h 
2 2
1.104676 1.217731

 1.104676  0.1 1  0.12
1  0.22  1.217908
2

adică:

y (2)2  1.217908

Să observăm că:

y (2)2  y (1)2  1.217908  1.217731  0.000167  0.001  

Prin urmare, condiţia:

y (2)2  y (1)2  

se îndeplineşte. Aşadar, valoarea soluţiei numerice în nodul x2 cu aproximaţia   0.001 este:

y 2  y (2)
2  1.217908

Valoarea soluţiei exacte y(x)  e arctgx , calculată cu şase zecimale, în nodul x 2 este:

y(x 2 )  1.218226

Prin urmare:

y(x 2 )  y 2  1.218226  1.217908  0.000318  0.001  

Aşadar, eroarea absolută a aproximaţiei y 2 este mai mică decât valoarea:

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 114


Analiză Numerică

  0.001

Fig. 5.10

La fel se pot calcula valorile y 3 , y 4 , ...,y10 . Aceste calcule nu le mai facem. Prezentăm însă o
procedură QP pentru efectuarea automată a calculelor prin care se determină aproximaţia y i .
Imaginea din figura 5.10 conţine rezultatele calculelor efectuate pentru determinarea aproximaţiei y1 .

Fig. 5.11

Celula A3 conţine valoarea lui h, iar celula B3 conţine valoarea lui  . Aceste valori se modifică
dacă dorim să modificăm pasul h al reţelei x 0 , x1 , ..., x n sau să modificăm precizia  cu care dorim să
obţinem soluţia aproximativă.
Celulele A5 şi B5 sunt rezervate valorilor lui x i1 şi, respectiv, y i1 . Aceste valori le schimbăm
când trecem de la o valoare numerică la alta.
Celula A8 conţine valoarea lui f(xi1 , y i1 ) . Pentru a calcula aceasta valoare, în celula A8 am
introdus formula:

+B5/(1+A5^2)

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 115


Analiză Numerică

Această formulă corespunde funcţiei:

y
f(x, y) 
1  x2

cu care se exprimă ecuaţia diferenţială a problemei lui Cauchy pe care dorim să o rezolvăm.

Celula B8 conţine valoarea lui x i . Pentru a calcula această valoare, în celula B8 am introdus
formula:

+A5+A3

Celula B11 conţine valoarea predicţiei y (0)i . Pentru a calcula această valoare, în celula B11 am
introdus formula:

+B5+A3*A8

Celula C11 conţine valoarea lui f(xi , y (0)i ) . Pentru a calcula această valoare, în celula C11 am
introdus formula:

+B11/(1+$B$8^2)

Această formulă corespunde funcţiei:

y
f(x, y) 
1  x2

cu care se exprimă ecuaţia diferenţială a problemei lui Cauchy pe care dorim să o rezolvăm.
Celula C12 conţine valoarea lui y (1)i . Pentru a calcula această valoare, în celula C12 am
introdus formula:

$B$5+$A$3*($A$8+C12)/2

După ce am introdus datele şi formulele precizate, am copiat celula C11 în celula celula C12 şi
apoi am copiat blocul B12..C12 în blocul B13..C13.
Coloana D conţine formule cu care se verifică îndeplinirea condiţiei:

y (k)i  y (ki 1)  

Pentru a genera aceste formule, în celula D12 am introdus formula:

@IF(@ABS(B12-B11)<$B$3,”Da”,”Nu”)

şi am copiat această formulă în celula D13. Formulele de pe coloana D returnează cuvântul Nu dacă se
îndeplineşte condiţia y (k)i  y (ki 1)   şi cuvântul Da în caz contrar.
În figura 5.10 apar rezultatele calculelor cu care se determină aproximaţia y1 . Acum în celula
A5 am introdus valoarea 0, iar în celula B5 am introdus valoarea 1. Rezultatele calculelor sunt identice
cu cele pe care le-am determinat manual. În figura 5.11 apar rezultatele calculelor cu care se determină
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 116
Analiză Numerică

aproximaţia y 2 . Acum în celula A5 am introdus numărul 0.1, care este valoarea lui x1 , iar în celula B5
am introdus numărul 1.104676, care este valoarea lui y1 .
Metoda pe care am prezentat-o în această secţiune se poate utiliza şi la determinarea soluţiei
numerice a problemei lui Cauchy pentru un sistem de ecuaţii diferenţiale de ordinul întâi:

y '  f(x, y, z)
z '  g(x, y, z)

cu condiţiile iniţiale:

y(x 0 )  y 0 , z(x 0 )  z 0

cu x 0 , y 0 , z 0 constante date.
În acest caz, pentru determinarea predicţiilor y (0)i şi z (0)i utilizăm formulele:

y (0)i  y i1  hf(xi1 , y i1 , zi1 )


z(0)i  zi1  hg(xi1 , y i1 , zi1 )

iar pentru determinarea corecţiilor y (k)i şi z (k)i utilizăm un proces iterativ bazat pe formulele de
recurenţă:

f(x i1 , y i1 , z i1 )  f(xi , y i(k 1) , zi(k 1) )


y (k)i  y i1  h
2
g(x , y , z )  g(xi , y i(k 1) , z(ki 1) )
z (k)i  z i1  h i1 i1 i1
2

după indicele k, cu k  1, 2, ... . Procesul iterativ se opreşte în momentul în care se îndeplinesc simultan
condiţiile:

y (k)i  y (ki1)   , z (k)i  z (ki1)  

unde  este un număr real şi strict pozitiv care reprezintă precizia cu care dorim să calculăm soluţia
aproximativă. Valoarea lui y (k)i care satiface condiţia y (k)i  y (ki1)   se ia drept valoare aproximativă
a lui y i , iar valoarea lui z (k)i care satiface condiţia z (k)i  z (ki1)   se ia drept valoare aproximativă a
lui zi .
Aşa cum ştim, problema lui Cauchy pentru o ecuaţie diferenţială de ordin superior se reduce la
rezolvarea problemei lui Cauchy pentru un sistem de ecuaţii diferenţiale de ordinul întâi. Prin urmare,
metoda pe care am folosit-o în această secţiune o putem utliza şi la rezolvarea aceleeaşi probleme
pentru o ecuaţie diferenţială de ordin superior.
Pentru a prezenta algoritmul de calcul, considerăm problema lui Cauchy pentru ecuaţia
diferenţială de ordinul doi:

y ''  g(x, y, y ')

cu condiţiile iniţiale:
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 117
Analiză Numerică

y(x 0 )  y 0 , y '(x 0 )  y 0'

în care x 0 , y 0 , y 0' sunt constante date.


Rezolvarea problemei lui Cauchy pentru ecuaţia diferenţială de ordinul doi y ''  g(x, y, y ') se
reduce la rezolvarea problemei lui Cauchy pentru sistemul de ecuaţii diferenţiale de ordinul întâi:

y'  z
z '  g(x, y, z)

cu condiţiile iniţiale:

y(x 0 )  y 0 , z(x 0 )  z 0  y 0'

În acest caz, pentru determinarea predicţiilor y (0)i şi z (0)i utilizăm formulele:

y (0)i  y i1  hzi1


z(0)i  zi1  hg(xi1 , y i1 , zi1 )

iar pentru determinarea corecţiilor y (k)i şi z (k)i utilizăm un proces iterativ bazat pe formulele de
recurenţă:

zi1  z (ki 1)


y (k)
i  y i1  h
2
g(x , y , z )  g(xi , y i(k 1) , z(ki 1) )
z (k)i  z i1  h i1 i1 i1
2

cu k  1, 2, ... . Procesul iterativ se opreşte în momentul în care se îndeplinesc simultan condiţiile:

y (k)i  y (ki1)   , z (k)i  z (ki1)  

unde  este un număr real şi strict pozitiv care reprezintă precizia cu care dorim să calculăm soluţia
aproximativă. Valoarea lui y (k)i care satiface condiţia y (k)i  y (ki1)   se ia drept valoare aproximativă
a lui y i , iar valoarea lui z (k)i care satiface condiţia z (k)i  z (ki1)   se ia drept valoare aproximativă a
lui zi .

5.15 Observaţii privind pasul reţelei

Metoda de determinare a soluţiilor problemelor lui Cauchy pe care am prezentat-o în secţiunea


anterioară include un proces iterativ controlat de condiţia:

y (k)i  y (ki1)  

unde  este un număr real şi strict pozitiv dat care reprezintă precizia cu care dorim să calculăm soluţia
USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 118
Analiză Numerică

aproximativă. Desigur, acum se pune şi problema convergenţei procesului iterativ.


Practica rezolvării numerice a problemei lui Cauchy arată că numărul eficient de iteraţii este doi
sau trei. Dacă numărul de iteraţii este mai mare, atunci se micşorează valoarea pasului h al reţelei.
Dimpotrivă, dacă este suficientă o singură iteraţie, atunci se măreşte valoarea lui h. Evident, pentru un h
mic avem o reţea formată dintr-un număr mai mare de puncte, dar un număr mai mic de iteraţii, iar
pentru un h mare avem o reţea formată dintr-un număr mai mic de noduri, dar un număr mai mare de
iteraţii

Test de autoevaluare
Cum se poate rezolva problema lui Cauchy:

y '' 2xy ' y  3x 2


y(0)  2 , y '(0)  1

După parcurgerea unităţii 5 de învăţare trebuie să reţineţi:

Cum se rezolvă problema lui Cauchy pentru ecuaţii şi sisteme de ecuaţii


diferenţiale.

Răspunsuri la întrebările din testul de autoevaluare

Problema lui Cauchy:

y '' 2xy ' y  3x 2


y(0)  2 , y '(0)  1

se rezolvă prin reducerea la un sistem de ecuaţii diferenţiale de ordinul unu.

Bibliografie minimală

1.Iacob Caius, Matematici clasice şi moderne, Editura tehnică, Bucureşti, 1983


2.Marinescu Gheorghe, Analiza numerică, Editura Academiei, Bucureşti, 1974
3. Akai Terrence, Aplplied Numerical Methods for Engineers, John Wiley & Sons, New York
(Carte disponibilă la Biblioteca USAMVB)

USAMVB – FIFIM Departamentul de Invăţământ cu Frecventa Redusa 119