Download - Curs Calcul Numeric
ANALIZA NUMERICANote de curs pentru anul III Informatica
de
lector dr. Daniel Stanica
(email: [email protected])
1
Analiza numerica (sau calculul numeric) studiaza tehnici de aproximare pentru
rezolvarea problemelor matematice, luând în considerare si evaluarea posibilelor erori.
Aceste tehnici de aproximare sunt transpuse în algoritmi implementati în computer
prin intermediul unor diverse limbaje de programare (MATLAB, C++, JAVA, etc.),
tinându-se cont de puterea de calcul si acuartetea rezultatelor specifice calculatoarelor
sau a limbajelor de programare.
Cursul va cuprinde urmatoarele capitole:
• Metode pentru aproximarea solutiilor ecuatiilor neliniare unidimensionale
• Metode pentru rezolvarea sau aproximarea solutiilor sistemelor de ecuatii liniare
• Metode pentru aproximarea valorilor proprii ale unei matrice
• Metode pentru aproximarea solutiilor sistemelor de ecuatii neliniare
• Aproximarea functiilor reale prin interpolare polinomiala
• Constructia curbelor de regresie
• Derivare numerica
• Integrare numerica: formule de cuadratura
• Metode pentru aproximarea solutiilor ecuatiilor diferentiale
Bibliografie pentru lucrarile de laborator:
IulianaParaschiv-Munteanu, Daniel Stanica - ANALIZANU-
MERICA (Exercitii si teme de laborator), Editura Universitatii
din Bucuresti, 2006.
2
Fenomenul de instabilitate manifestat în diverse procese matematice este important
de studiat, dat fiind limitarile tehnicii de calcul sau ale masuratorilor de unde provin
datele de calcul. Urmatorul exemplu scoate în evidenta existenta unui astfel de fenomen
si motivatia studiului sau.
Fie sistemul de ecuatii Ax = b, unde
A =
10 7 8 7
7 5 6 5
8 6 10 9
7 5 9 10
b =
32
23
33
31
cu solutia x =
1
1
1
1
Consideram sistemul perturbat A(x+ δx) = b+ δb, unde
A =
10 7 8 7
7 5 6 5
8 6 10 9
7 5 9 10
b+ δb =
32, 1
22, 9
33, 1
30, 9
Acesta are solutia
x+ δx =
9, 2
−12, 6
4, 5
−1, 1
(1)
Consideram si sistemul perturbat (A+∆A)(x+∆x) = b unde
A+∆A =
10 7 8, 1 7, 2
7, 08 5, 04 6 5
8 5, 98 9, 89 9
6, 99 4, 99 9 9, 98
b =
32
23
33
31
3
Acesta are solutia
x+∆x =
−81
137
−34
22
(2)
Sistemul (1) difera de cel initial printr-o ”mica” variatie a coloanei termenilor liberi, iar
sistemul (2) printr-o ”mica” variatie a elementelor matricei. Dupa cum se observa,
aceste ”mici” variatii antreneaza dupa sine variatii ”mari” ale solutiei initiale.
4
Metode numerice pentru ecuatii neliniare
În general, modelele matematice asociate fenomenelor fizice sau de alta natura
conduc la ecuatii de forma
f(x) = 0
Ne propunem sa gasim aproximatii ale solutiei ecuatiei anterioare, în cazul în care f
este o functie reala neliniara.
Metoda bisectiei
Aceasta metoda consta în înjumatatirea intervalului în care se afla solutia unei
ecuatii.
Fie a < b ∈ R si f : [a, b]→ R o functie continua cu f(a) · f(b) < 0. Atunci exista
z ∈ [a, b] astfel încât f(z) = 0.
Definim sirurile (an)n≥0, (bn)n≥0, (cn)n≥0 astfel:
• a0 := a, b0 := b, c0 := (a+ b)/2;
• Pentru n ≥ 1
— daca f(cn−1) = 0, atunci
an := an−1
bn := bn−1
cn := cn−1
— daca f(an−1) · f(cn−1) < 0, atunci
an := an−1
bn := cn−1
cn := (an + bn)/2
1
— daca f(an−1) · f(cn−1) > 0, atunci
an := cn−1
bn := bn−1
cn := (an + bn)/2
Teorema -1.1 Presupunem ca functia f are o singura radacina în [a, b]. Atunci sirul
(cn)n≥0 construit mai sus converge la unica solutie z ∈ [a, b] a ecuatiei f(x) = 0 si
|cn − z| ≤b− a
2n
Iteratiile construite prin metoda bisectiei se opresc la pasul m pentru care
|f(cm)| < ε
sau, pentru o mai mare acuratete, la pasul m pentru care
|f(cm)| < ε si |cm − cm−1| < ε,
unde ε este eroarea de aproximare.
Exemplul -1.1 Sa se aproximeze, folosind metoda bisectiei, solutia ecuatiei x3+4x2−
10 = 0 (continuta în intervalul [−1, 2]) cu eroarile ε1 = 0.01, ε2 = 10−10.
Solutia ecuatiei, aproximata cu eroarea ε1 = 0.01 se obtine la pasul m = 9 si are
valoarea c10 = 1.36132812500000.
Solutia ecuatiei, aproximata cu eroarea ε = 10−10 se obtine la pasul m = 35 si are
valoarea c37 = 1.36523001347086.
Regula falsi
"Regula falsi" este tot o metoda de "micsorare" a intervalului in care se afla solutia
unei ecuatii.
Fie a < b ∈ R si f : [a, b]→ R o functie continua cu f(a) · f(b) < 0. Atunci exista
z ∈ [a, b] astfel încât f(z) = 0.
Definim sirurile (an)n≥0, (bn)n≥0, (cn)n≥0 astfel:
2
• a0 := a, b0 := b, c0 := (a0f(b0)− b0f(a0))/(f(b0)− f(a0);
• Pentru n ≥ 1
— daca f(cn−1) = 0, atunci
an := an−1
bn := bn−1
cn := cn−1
— daca f(an−1)·f(cn−1) < 0, atunci
an := an−1
bn := cn−1
cn := (anf(bn)− bnf(an))/(f(bn)− f(an)
— daca f(an−1)·f(cn−1) > 0, atunci
an := cn−1
bn := bn−1
cn := (anf(bn)− bnf(an))/(f(bn)− f(an)
Iteratiile construite prin regula falsi se opresc la pasul m pentru care
|f(cm)| < ε
sau, pentru o mai mare acuratete, la pasul m pentru care
|f(cm)| < ε si |cm − cm−1| < ε,
unde ε este eroarea de aproximare.
Teorema -1.2 Presupunem ca functia f are o singura radacina în [a, b]. Atunci sirul
(cn)n≥0 construit mai sus converge la unica solutie z ∈ [a, b] a ecuatiei f(x) = 0.
Exemplul -1.2 Sa se aproximeze, folosind regula falsi, solutia ecuatiei x3+4x2−10 =
0 (continuta în intervalul [−1, 2]) cu eroarile ε1 = 0.01, ε2 = 10−10.
3
Solutia ecuatiei, aproximata cu eroarea ε1 = 0.01 se obtine la pasul m = 8 si are
valoarea c7 = 1.36506360624662.
Solutia ecuatiei, aproximata cu eroarea ε = 10−10 se obtine la pasul m = 21 si are
valoarea c21 = 1.36523001341145.
Metoda coardei
Fie [a, b] ⊂ R si f : [a, b]→ R o functie. Definim recurent sirul (xn)n astfel:
x0 := a, x1 := b si
xn+1 :=x0f(xn)− xnf(x0)
f(xn)− f(x0), ∀ n ∈ N
Teorema -1.3 Presupunem ca f este de doua ori derivabila pe [a, b] si
a) f”(x) �= 0, ∀ x ∈ (a,b)
b) f(a) · f”(a) > 0
c) f(a) · f(b) < 0
Atunci ecuatia f(x) = 0, are o solutie unica z ∈ [a, b], iar sirul (xn)n converge la z.
Iteratiile construite prin metoda coardei se opresc la pasul m pentru care
|f(xm)| < ε
sau, pentru o mai mare acuratete, la pasul m pentru care
|f(xm)| < ε si |xm − xm−1| < ε,
unde ε este eroarea de aproximare.
Exemplul -1.3 Sa se aproximeze, folosind metoda coardei, solutia ecuatiei x3−x+3 =
0 (continuta în intervalul [−3, 0]) cu eroarile ε1 = 0.01, ε2 = 10−10.
4
Se verifica ipotezele teoremei anterioare.
Solutia ecuatiei, aproximata cu eroarea ε1 = 0.01 se obtine la pasul m = 10 si are
valoarea x15 = −1.66063905970749.
Solutia ecuatiei, aproximata cu eroarea ε = 10−10 se obtine la pasul m = 40 si are
valoarea x40 = −1.67169988158683.
Metoda secantei
Fie [a, b] ⊂ R si f : [a, b]→ R o functie. Definim recurent sirul (xn)n astfel:
x0, x1 ∈ [a, b] si
xn+1 :=xn−1f(xn)− xnf(xn−1)
f(xn)− f(xn−1), ∀ n ∈ N
Teorema -1.4 Presupunem ca f este derivabila pe [a, b] si
a) f ’(x) �= 0, ∀ x ∈ [a,b]
b) sirul (xn)n are toate valorile în intervalul [a, b]
c) f(a) · f(b) < 0
Atunci ecuatia f(x) = 0, are o solutie unica z ∈ [a, b], iar sirul (xn)n converge la z.
Iteratiile construite prin metoda secantei se opresc la pasul m pentru care
|f(xm)| < ε
sau, pentru o mai mare acuratete, la pasul m pentru care
|f(xm)| < ε si |xm − xm−1| < ε,
unde ε este eroarea de aproximare.
5
Exemplul -1.4 Sa se aproximeze, folosind metoda secantei, solutia ecuatiei x3 − x+
3 = 0 (continuta în intervalul [−15, 15], luând x0 = 1, x1 = 2) cu eroarile ε1 = 0.01,
ε2 = 10−10.
Se verifica ipotezele teoremei anterioare. Punctul b) se verifica la fiecare pas.
Solutia ecuatiei, aproximata cu eroarea ε1 = 0.01 se obtine la pasul m = 23 si are
valoarea x23 = −1.67109143768403.
Solutia ecuatiei, aproximata cu eroarea ε = 10−10 (chiar ε = 10−13) se obtine la
pasul m = 26 si are valoarea x26 = −1.67169988165715
Metoda lui Newton
Fie [a, b] ⊂ R si f : [a, b]→ R o functie.
Teorema -1.5 Presupunem ca f este de doua ori derivabila pe [a, b], ca f ’, f” nu se
anuleaza pe [a, b] si f(a) · f(b) < 0. Fie x0 ∈ [a, b] astfel încât
f(x0) · f”(x0) > 0
si
xn+1 := xn −f(xn)
f ’(xn), ∀ n ∈ N
Atunci ecuatia f(x) = 0, are o solutie unica z ∈ [a, b], iar sirul (xn)n converge la z.
Propozitia -1.1 Este adevarata urmatoarea formula de evaluare a erorii:
|xn − z| ≤|f(xn)|
minx∈[a,b]
|f ’(x)|, ∀ n ∈ N
Iteratiile construite prin metoda Newton se opresc la pasul m pentru care
|f(xm)| < ε
6
sau, pentru o mai mare acuratete, la pasul m pentru care
|f(xm)| < ε si |xm − xm−1| < ε,
unde ε este eroarea de aproximare (se poate folosi si evaluarea data de propozitia
anterioara).
Exemplul -1.5 Sa se aproximeze, folosind metoda secantei, solutia ecuatiei x3 − x+
3 = 0 (continuta în intervalul [−2,−1], luând x0 = −1) cu eroarile ε1 = 0.01, ε2 =
10−10.
Se verifica ipotezele teoremei anterioare.
Solutia ecuatiei, aproximata cu eroarea ε1 = 0.01 se obtine la pasul m = 5 si are
valoarea x5 = −1.67170038194364.
Solutia ecuatiei, aproximata cu eroarea ε = 10−10 (chiar ε = 10−11) se obtine la
pasul m = 7 si are valoarea x7 = −1.67169988165716.
Principiul contractiei
Fie I ⊂ R un interval si f : I→ R o functie. f se numeste contractie daca si numai
daca:
a) exista q ∈ (0, 1) astfel încât |f(x)− f(y)| ≤ q |x− y| , pentru orice x, y ∈ I
b) f(I) ⊂ I
Propozitia -1.2 Fie f : [a, b]→ R o functie derivabila.
a) Daca exista q ∈ (0, 1) astfel încât |f ′(x)| ≤ q, pentru orice x ∈ [a, b], atunci
|f(x)− f(y)| ≤ q |x− y| , pentru orice x, y ∈ [a, b].
b) Daca |f(x)− f(y)| ≤ q |x− y| si∣∣f(a+b2
)− a+b
2
∣∣ ≤ (1−q) · b−a2, atunci f([a, b]) ⊂
[a, b].
7
Teorema -1.6 Fie f : I → R o contractie si x0 ∈ I. Definim sirul (xn)n prin relatia
de recurenta
xn+1 := f(xn), ∀ n ∈ N
Atunci ecuatia f(x) = x are o solutie unica z ∈ [a, b] , iar sirul (xn)n converge la z, cu
urmatoarea formula de evaluare a erorii:
|xn − z| ≤q
1− q|xn − xn−1| ≤
qn
1− q|x1 − x0| , ∀ n ∈ N.
Iteratiile construite prin metoda coardei se opresc la pasul m pentru care
q
1− q|xm − xm−1| < ε
sau la pasul m pentru care
|f(xm)− xm| < ε si |xm − xm−1| < ε,
unde ε este eroarea de aproximare.
Exemplul -1.6 Sa se aproximeze, folosind principiul contractiei, solutia ecuatiei
x =8
x+ 2
continuta în intervalul [1, 4], luând x0 = 4,cu eroarile ε1 = 0.01, ε2 = 10−10.
Solutia ecuatiei, aproximata cu eroarea ε1 = 0.01 se obtine la pasul m = 9 si are
valoarea x9 = 1.99707174231332.
Solutia ecuatiei, aproximata cu eroarea ε = 10−10 se obtine la pasul m = 36 si are
valoarea x36 = 2.00000000002183.
8
Metode pentru rezolvarea sau aproximarea solutiilorsistemelor de ecuatii liniare
Norme de vectori si norme de matrici
Fie m ∈ N∗. Pe spatiul Rm se considera normele vectoriale uzuale ‖ · ‖1, ‖ · ‖2 si
‖ · ‖∞ definite prin
‖x‖1 =m∑
i=1
|xi| ;
‖x‖2 =
√√√√m∑
i=1
|xi|2 ;
‖x‖∞ = max1≤i≤m
|xi| , ∀x = (xi)1≤i≤m ∈ Rm.
Fie Mm(R) spatiul matricelor cu m linii si m coloane cu elemente din R. Pe Mm(R)
se pot considera norme definite ca norme de operator liniar
‖A‖αβ := sup‖x‖α≤1
‖Ax‖β, ∀A ∈Mm(R)
unde ‖ · ‖α si ‖ · ‖β sunt norme pe Rm. În cazul în care α = β notam ‖A‖α := ‖A‖ααsi o numim norma α a matricei A (subordonata normei vectoriale ‖ · ‖α).
Propozitia -1.1 Fie A = (aij)1≤i,j≤m ∈Mm(R). Atunci ‖A‖1 = max1≤j≤m
m∑
i=1
|aij|.
Propozitia -1.2 Fie A = (aij)1≤i,j≤m ∈Mm(R). Atunci ‖A‖∞ = max1≤i≤m
m∑
j=1
|aij|.
Propozitia -1.3 Fie A ∈Mm(R). Atunci ‖A‖2 =√
ρ(AtA), unde ρ(AtA) reprezinta
cea mai mare valoare proprie a matricei AtA.
Exemplul -1.1 Fie
A =
1 −2 3
4 −5 6
7 −8 9
1
Atunci
‖A‖1 = max1≤j≤3
3∑
i=1
|aij|=
= max (|1|+ |4|+ |7| , |−2|+ |−5|+ |−8| , |3|+ |6|+ |9|) = max (12, 15, 18) = 18
si
‖A‖∞ = max1≤i≤3
3∑
j=1
|aij| =
= max (|1|+ |−2|+ |3| , |4|+ |−5|+ |6| , |7|+ |−8|+ |9|) = max (6, 15, 24) = 24.
Conditionarea unui sistem de ecuatii liniare
Fenomenul de instabilitate manifestat în diverse procese matematice este important
de studiat , dat fiind limitarile tehnicii de calcul sau ale masuratorilor de unde provin
datele de calcul. Un exemplu cum este cel care urmeaza scoate în evidenta existenta
unui astfel de fenomen si motivatia studiului sau.
Exemplul -1.2 Fie sistemul de ecuatii Ax = b unde
A =
10 7 8 7
7 5 6 5
8 6 10 9
7 5 9 10
b =
32
23
33
31
cu solutia x =
1
1
1
1
Consideram sistemul perturbat A(x + δx) = b + δb unde
A =
10 7 8 7
7 5 6 5
8 6 10 9
7 5 9 10
b + δb =
32, 1
22, 9
33, 1
30, 9
2
cu solutia x + δx =
9, 2
−12, 6
4, 5
−1, 1
(1)
Consideram si sistemul perturbat (A + ∆A)(x + ∆x) = b unde
A + ∆A =
10 7 8, 1 7, 2
7, 08 5, 04 6 5
8 5, 98 9, 89 9
6, 99 4, 99 9 9, 98
b =
32
23
33
30
cu solutia x + ∆x =
−81
137
−34
22
(2)
Sistemul (1) difera de cel initial printr-o ”mica” variatie a coloanei termenilor liberi,
iar sistemul (2) printr-o ”mica” variatie a elementelor matricei. Dupa cum se observa
aceste ”mici” variatii antreneaza dupa sine variatii ”mari” ale solutiei initiale.
Exemplul -1.3 Daca consideram sistemul perturbat (A+∆A)(x+∆x) = b+∆b unde
A + ∆A =
10 7 8, 1 7, 2
7, 08 5, 04 6 5
8 5, 98 9, 89 9
6, 99 4, 99 9 9, 98
b + ∆b =
32, 1
22, 9
33, 1
30, 9
atunci acesta are solutia x + ∆x =
332, 90
−550, 49
143, 88
−84, 58
(3)
3
În legatura cu aceasta problema de stabilitate a sistemelor de ecuatii liniare sunt
cunoscute urmatoarele rezultate:
Definitia -1.1 Fie A o matrice nesingulara si ‖ ‖ o norma a matricei A. Numarul
cond(A) := ‖A‖ · ‖A−1‖ se numeste indice de conditionare al matricei A relativ la
norma ‖ ‖.
Propozitia -1.4 Fie sistemul de ecuatii liniare Ax = b si sistemul perturbat A(x +
δx) = b + δb. Presupunem b �= 0. Atunci
‖δx‖‖x‖ ≤ cond(A) · ‖δb‖‖b‖ . (4)
si‖δx‖‖x‖ ≥
1
cond(A)· ‖δb‖‖b‖
În plus exista b �= 0 si δb �= 0 astfel încât inegalitatea (4) sa devina egalitate.
Propozitia -1.5 Fie sistemul de ecuatii liniare Ax = b si sistemul perturbat (A +
∆A)(x + ∆x) = b. Atunci
‖∆x‖‖x + ∆x‖ ≤ cond(A) · ‖∆A‖
‖A‖ . (5)
În plus exista b �= 0 si ∆A �= 0 astfel încât inegalitatea (5) sa devina egalitate.
Propozitia -1.6 Fie sistemul de ecuatii liniare Ax = b si sistemul perturbat (A +
∆A)(x + ∆x) = b + ∆b. Daca ‖A−1∆A‖ < 1, atunci
‖∆x‖‖x‖ ≤ cond(A)
1− ‖A−1∆A‖ ·(‖∆b‖‖b‖ +
‖∆A‖‖A‖
)
Exemplul -1.4 Vom considera cazul sistemului (1) si vom lucra cu norma infinit.
Avem:
‖δx‖∞ = ‖x + δx− x‖∞ = 13, 6
4
‖x‖∞ = 1.
Atunci‖δx‖∞‖x‖∞
=13, 6
1= 13, 6
A−1 =
25 −41 10 −6
−41 68 −17 10
10 −17 5 −3
−6 10 −3 2
‖A‖∞ = 33,∥∥A−1
∥∥∞
= 136.
Rezulta ca
cond(A) := ‖A‖∞ ·∥∥A−1
∥∥∞
= 33 · 136 = 4488
Avem
‖δb‖∞ = ‖b + δb− b‖∞ = 0, 1.
‖b‖∞ = 33..
Atunci‖δb‖∞‖b‖∞
=0, 1
33=
1
330
si
cond(A) · ‖δb‖∞‖b‖∞= 4488 · 1
330= 13, 6
Deci‖δx‖∞‖x‖∞
= cond(A) · ‖δb‖∞‖b‖∞
5
Exemplul -1.5 Fie sistemul de ecuatii Ax = b unde
A =
10 1 4 0
1 10 5 −1
4 5 10 7
0 −1 7 9
b =
15
15
26
15
cu solutia x =
1
1
1
1
Consideram sistemul perturbat A(x + δx) = b + δb unde
A =
10 1 4 0
1 10 5 −1
4 5 10 7
0 −1 7 9
b + δb =
16
16
25
16
cu solutia x + δx =
832
1324
−2407
2021
Exemplul -1.6 Un alt exemplu de matrici cu un indice de conditionare mare sunt
matricele Hilbert (Hn) de ordinul n, definite astfel:
Hn = (h(n)ij )i,j=1,n cu h
(n)ij =
1
i + j − 1, ∀ i, j = 1, n
Metode directe
Metoda lui Gauss (cu pivotare partiala)
Se dau m ∈ N∗ si A = (aij) ∈Mm,m+1(R). Fie sistemul de ecuatii liniare
a11x1 + · · ·+ a1mxm = a1,m+1
. . . . . . . . . . . . . . .
am1x1 + · · ·+ ammxm = am,m+1
6
cu necunoscutele x1, . . . , xm ∈ R. Metoda lui Gauss este folosita atât pentru deter-
minarea solutiei sistemului, cât si pentru calculul determinantului matricei sistemului..
Sistemul dat se transforma în m− 1 etape astfel:
Initial se considera determinantul matricei sistemului det = 1
Pentru n între 1 si m− 1 se efectueaza urmatoarele:
• Se determina max = |asn| = maxn≤i≤m
|ain| (s ∈ n,m reprezinta pozitia pe care s-a
gasit maximul).
• Se ia piv = asn (elementul asn se numeste pivot).
• Daca piv = 0, atunci metoda nu se aplica.
• det = det · piv.
• Daca s �= n, atunci det = (−1) · det si se permuta ecuatia s cu ecuatia n.
• Coeficientii ecuatiei n se împart la piv.
• Pentru ∀i ∈ n + 1,m se elimina xn din ecuatia i astfel: aij = aij − ain · anj,
∀ j ∈ m,n.
Procedând astfel se obtine un sistem de forma:
xi +m∑
j=i+1
aijxj = ai,m+1, 1 ≤ i ≤ m− 1
ammxm = am,m+1
(6)
Determinantul matricei sistemului se calculeaza astfel: det = det · amm.
Daca amm = 0, atuci metoda nu se aplica.
Se rezolva sistemul (6) astfel:
• xm = am,m+1/am,m;
7
• xi = ai,m+1 −m∑
j=i+1
aijxj, ∀ i ∈ m− 1, 1.
Exemplul -1.7 Fie sistemul de ecuatii liniare
x + 12y + 1
3z = 1
12x + 1
3y + 1
4z = 2
13x + 1
4y + 1
5z = 3
Sa se calculeze determinantul matricei sistemului si sa se rezolve sistemul cu metoda
lui Gauss.
Folosind transformarile date de metoda lui Gauss, obtinem urmatorul sistem de
ecuatii:
x + 12y + 1
3z = 1
y + z = 18
1180
z = 76
Calculam determinantul matricei sistemului (tot cu algoritmul dat de metoda lui
Gauss) det = 12160
si rezolvam sistemul anterior. Obtinem z = 210, y = −192, x = 27.
Observatie: Alegerea pivotului ca cel mai mare element de pe coloana se face
pentru a minimiza erorile care apar daca pivotul are valori mici. Daca consideram
sistemul de ecuatii liniare
x + 592y = 437
592x + 4308y = 2251
si daca consideram ca lucram numai cu 4 cifre exacte, atunci prin alegerea pivotului
elementul 1,prin metoda lui Gauss se obtine solutia
x = −1, 6128, y = 0, 7409
iar prin alegera pivotului elementul 592, prin metoda lui Gauss se obtine solutia
x = −1, 5891, y = 0, 7409
8
pe când solutia exacta a sistemului este
x = −1.58889055801431, y = 0.74085961242908.
Metoda lui Gauss (cu pivotare totala)
Se dau m ∈ N∗ si A = (aij) ∈Mm,m+1(R). Fie sistemul de ecuatii liniare
a11x1 + · · ·+ a1mxm = a1,m+1
. . . . . . . . . . . . . . .
am1x1 + · · ·+ ammxm = am,m+1
cu necunoscutele x1, . . . , xm ∈ R. La metoda lui Gauss cu pivotare totala cautarea
pivotului se face în toata matricea ramasa de transformat (reamintim ca, la pivotarea
partiala, pivotul se cauta numai pe prima coloana a matricei ramase de transformat).
Sistemul dat se transforma în m− 1 etape astfel:
Initial se considera determinantul matricei sistemului det = 1
Pentru n între 1 si m− 1 se efectueaza urmatoarele:
• Se determina max = |aps| = maxn≤i,j≤m
|aij| (s, p ∈ n,m reprezinta indicii de pozitie
ai maximului determinat).
• Se ia piv = aps (elementul aps se numeste pivot)
• Daca piv = 0, atunci metoda nu se aplica.
• det = det · piv.
• Daca p = n sau s = n (dar nu p = s = n), atunci det = (−1) · det si se permuta
coloana s cu coloana n (daca p = n) sau linia p cu linia n (daca s = n). Daca
p �= n si s �= n se permuta linia p cu linia n si apoi coloana s cu coloana n.
• Ecuatia n se împarte la piv.
9
• Pentru ∀i ∈ n + 1,m se elimina xn din ecuatia i astfel: aij = aij − ain · anj,
∀ j ∈ m,n.
Procedând astfel se obtine un sistem de forma:
x′i +m∑
j=i+1
aijx′j = ai,m+1, 1 ≤ i ≤ m− 1
ammx′m = am,m+1
(7)
Determinantul matricei sistemului se calculeaza astfel: det = det · amm.
Daca amm = 0, atuci metoda nu se aplica.
Se rezolva sistemul (7) astfel:
• x′m = am,m+1/am,m;
• x′i = ai,m+1 −m∑
j=i+1
aijx′j, ∀ i ∈ m− 1, 1.
unde (x′1, . . . , x′m) este o permutare a solutiei (x1, . . . , xm) sistemului initial (dupa
cum s-au permutat coloanele matricei initiale în procesul de transformare a sistemului).
Exemplul -1.8 Folosind metoda lui Gauss cu pivotare totala, sa se rezolve sistemul
de ecuatii liniare:
5x + y + 2z = 29
3x− y + z = 10
x + 2y + 4z = 31
(8)
Sa se calculeze si determinantul matricei sistemului.
Folosind transformarile date de metoda lui Gauss cu pivotare totala, obtinem ur-
10
matorul sistem de ecuatii:
x +2
5z +
1
5y =
29
5
z +1
2y = 7
−3
2y = −6
Calculam determinantul matricei sistemului (tot cu algoritmul dat de metoda lui
Gauss) det = −27 si rezolvam sistemul anterior. Obtinem z = 5, y = 4, x = 3.
Metoda lui Gauss-Jordan de calcul a inversei unei matrice
Se dau m ∈ N∗ si matricea
A =
a11 . . . a1m...
......
am1 . . . amm
Metoda lui Gauss-Jordan este folosita pentru determinarea inversei matricei A (daca
aceasta exista). Se considera ansamblul matriceal compus din matricea A si matricea
unitate Im
a11 . . . a1m...
......
am1 . . . amm
∣∣∣∣∣∣∣∣∣
1 . . . 0
......
...
0 . . . 1
Ansamblul anterior se transforma (analog metodei Gauss - cu pivotare partiala sau
totala) astfel:
Pentru n între 1 si m se efectueaza urmatoarele:
• Se determina pivotul piv ca la metoda lui Gauss de rezolvare a unui sistem de
ecuatii liniare cu pivotare partiala (analog se poate descrie un algoritm folosind
metoda lui Gauss cu pivotare totala).
11
• Daca piv = 0, atunci metoda nu se aplica.
• Daca s �= n, atunci se permuta ecuatia s cu ecuatia n.
• Ecuatia n se împarte la piv.
• Pentru ∀ i ∈ n + 1,m se elimina xn din ecuatia i astfel: aij = aij − ain · anj,
∀ j ∈ 2m,n.
Procedând astfel se obtine un ansamblu matricial de forma:
1 a12 . . . a1m
0 1 . . . a2m...
.... . .
...
0 0 . . . 1
∣∣∣∣∣∣∣∣∣∣∣∣∣
a1,m+1 a1,m+2 . . . a1,2m
a2,m+1 a2,m+2 . . . a2,2m...
.... . .
...
am,m+1 am,m+2 . . . am,2m
(matricea din partea dreapta are cel putin n(n− 1)/2 zerouri).
Pentru n între m si 2 se efectueaza urmatoarele:
• Pentru ∀ i ∈ n− 1, 1 se recalculeaza elementele aij astfel: aij = aij − ain · anj,
∀ j ∈ 2m,n.
Precedând astfel se obtine un ansamblu matricial de forma:
1 0 . . . 0
0 1 . . . 0
......
. . ....
0 0 . . . 1
∣∣∣∣∣∣∣∣∣∣∣∣∣
b11 b12 . . . b1m
b21 b22 . . . b2m...
.... . .
...
bm1 bm2 . . . bmm
.
Matricea
B =
b11 b12 . . . b1m
b21 b22 . . . b2m...
.... . .
...
bm1 bm2 . . . bmm
12
are liniile matricei inverse A−1 modulo permutarea liniilor descrisa în algoritm.
Rezolvarea unui sistem de ecuatii liniare Ax = b este echivalenta, dupa ce s-a
calculat inversa matricei A, cu egalitatea x = A−1b.
Exemplul -1.9 Folosind metoda Gauss-Jordan sa se calculeze inversa matricei
A =
1 12
13
12
13
14
13
14
15
Formam ansamblul matriceal
1 12
13
12
13
14
13
14
15
∣∣∣∣∣∣∣∣∣
1 0 0
0 1 0
0 0 1
Cu transformarile din algoritm obtinem:
1 12
13
0 1 1
0 0 1
∣∣∣∣∣∣∣∣∣
1 0 0
−6 12 0
30 −180 180
iar, în final,
1 0 0
0 1 0
0 0 1
∣∣∣∣∣∣∣∣∣
9 −36 30
−36 192 −180
30 −180 180
Deci
A−1 =
9 −36 30
−36 192 −180
30 −180 180
Factorizarea LU
13
Se numeste factorizare LU a unei matrice A descompunerea matricei ca produs de
doua matrici, una inferior triunghiulara (notata L), alta superior triunghiulara (notata
U), adica A = LU. Descompunerea, daca este posibila, nu este unica.
Teorema -1.1 Fie A = (aij)1≤i,j≤m o matrice astfel încât determinantii "de colt"
∆k := det((aij)1≤i,j≤k) sa fie nenuli, pentru orice k = 1,m. Atunci A se descompune
unic sub forma A = LU cu L = (lij)1≤i,j≤m inferior triunghiulara si U = (uij)1≤i,j≤m
superior triunghiulara cu elementele diagole egale cu 1.
Calculul elementelor matricelor L si U se face dupa formulele:
li1 = ai1, i = 1,m, u11 = 1, u1j =a1jl11
, j = 2,m. (9)
iar, pentru k = 2,m,
lik = aik −k−1∑
p=1
lipupk, i = k,m, ukk = 1, ukj =
akj −k−1∑
p=1
lkpupj
lkk, j = k + 1,m. (10)
Fie un sistem de ecuatii liniare Ax = b, pentru care A admite factorizare LU. Atunci
solutia y a sistemului Ly = b se determina astfel:
yi =
bi −i−1∑k=1
likyk
lii∀i = 1,m
Solutia x a sistemului initial se determina astfel:
xi = yi −m∑
k=i+1
uikxk ∀i = m, 1
Exemplul -1.10 Sa se factorizeze sub forma LU matricea
A =
2 4 −2 0
−1 −1 2 3
4 5 −2 −9
0 1 3 4
14
Se verifica mai întâi ca determinantii de colt ai matricei A sunt nenuli. Cu formulele
(9) si (10) se obtine:
l11 = 2, l21 = −1, l31 = 4, l41 = 0
u11 = 1, u12 = 2, u13 = −1, u14 = 0
l22 = 1, l32 = −3, l42 = 1
u22 = 1, u23 = 1, u24 = 3
l33 = 5, l43 = 2
u33 = 1, u34 = 0
l44 = 1
u44 = 1
Deci
L =
2 0 0 0
−1 1 0 0
4 −3 5 0
0 1 2 1
, U =
1 2 −1 0
0 1 1 3
0 0 1 0
0 0 0 1
Metoda radacinii patrate (Cholesky)
Definitia -1.2 O matrice A = (aij)1≤i,j≤m se numeste simetrica daca A = At. Ma-
tricea A este pozitiv definita daca determinantii "de colt" ∆k := det((aij)1≤i,j≤k) sunt
strict pozitivi pentru orice k = 1,m.
Teorema -1.2 Fie A simetrica si pozitiv definita. Atunci A se descompune unic sub
forma A = L · Lt cu L = (lij)1≤i,j≤m inferior triunghiulara.
15
Fie sistemul de ecuatii liniare Ax = b, cu A = (aij) ∈ Mm(R) simetrica si pozitiv
definita, iar b = (bi) ∈ Rm.
Descompunem A = L · Lt cu L = (lij) ∈Mn(R) matrice superior triunghiulara. Se
determina mai întâi y = (yi) ∈ Rn solutia sistemului de ecuatii Ly = b si apoi solutia
x = (xi) ∈ Rn a sistemului initial se determina prin rezolvarea sistemului Ltx = y.
Se calculeaza elementele matricei L astfel:
ljj =
√
ajj −j−1∑k=1
l2jk si lij =
aij −j−1∑k=1
likljk
ljj, ∀i = j + 1,m,∀j = 1,m
(11)
Solutia y a sistemului Ly = b se determina astfel:
yi =
bi −i−1∑k=1
likyk
lii∀i = 1,m (12)
Solutia x a sistemului initial se determina astfel:
xi =
yi −m∑
k=i+1
lkixk
lii∀i = m, 1 (13)
Daca matricea A nu este simetrica si pozitiv definita, dar este inversabila, atunci
sistemul de ecuatii liniare Ax = b se transforma în sistemul echivalent AtAx = Atb, a
carui matrice este simetrica si pozitiv definita.
Exemplul -1.11 Folosind metoda radacinii patrate, sa se rezolve sistemul de ecuatii
liniare Ax = b cu
A =
4 2 2
2 10 4
2 4 6
, b =
8
16
12
Se verifica imediat ca matricea A este simetrica si pozitiv definita. Cu formulele
(11) se obtine
l11 = 2, l12 = 1, l13 = 1
16
l22 = 3, l23 = 1
l33 = 2
Din (12) rezulta ca
y1 = 4, y2 = 4, y3 = 2
iar din (13) rezulta ca
x3 = 1, x2 = 1, x3 = 1.
Descompunerea QR
Se considera date m ∈ N∗, A = (aij)i,j=1,m ∈ Mm(R) si b = (bi)i=1,m ∈ Rm. Vom
calcula solutia x = (x1, . . . , xm) ∈ Rm a sistemului Ax = b si determinantul matricei
sistemului folosind factorizarea QR.
Factorizarea QR a matricei A însemna descompunerea A = QR cu Q matrice
ortogonala, adica QQt = QtQ = Im si R matricea superior triunghiulara.
Daca notam Q = (qij) cum∑
k=1
qikqjk = δij sim∑
k=1
qkiqkj = δij pentru i, j = 1,m si
R = (rij) cu rij = 0 pentru 1 ≤ j < i ≤ m, atunci din identificarea A = QR se obtin
relatiile urmatoare:
r11 =√
a211 + · · ·+ a2m1 ,
qi1 =ai1r11
, pentru i = 1,m
17
si pentru k = 2,m avem:
rjk =m∑
i=1
aikqij , pentru j = 1, k − 1
rkk =
√√√√m∑
i=1
a2ik −k−1∑
i=1
r2ik ,
qik =1
rkk
(aik −
k−1∑
j=1
rjkqij
), pentru i = 1,m .
(14)
Rezolvarea sistemului dupa descompunerea matricei A în produs QR se face astfel:
- rezolvam întâi sistemul Qy = b a carui solutie este
y = Qtb,
sau pe componente:
yi =m∑
j=1
qjibj , i = 1,m.
- apoi, rezolvam sistemul triunghiular Rx = y, si obtinem:
xm =ymrmm
,
xi =1
rii
(yi −
m∑
j=i+1
rijxj
), i = m− 1, 1 .
(15)
Observatie. Descompunerea QR nu exista daca exista un k ∈ 1,m astfel încât
rkk = 0 în (??) sau (??).
Exemplul -1.12 Pentrum = 3 , matricea A =
0 4 5
−1 −2 −3
0 0 1
si vectorul b =
23
−14
3
,
rezolvati sistemul Ax = b folosind o descompunere QR.
18
Folosind relatiile de mai sus obtinem:
Q =
0 1 0
−1 0 0
0 0 1
si R =
1 2 3
0 4 5
0 0 1
,
iar pentru solutie
y = Qtb =
0 −1 0
1 0 0
0 0 1
23
−14
3
=
14
23
3
,
iar din Rx = y rezulta:
x =
1
2
3
.
Metode iterative de rezolvare a sistemelor de ecuatii liniare
Metoda lui Jacobi
Fie m ∈ N∗, A ∈Mm(R), b ∈ Rm.
Consideram sistemul de ecuatii liniare Ax = b. Notam cu I matricea unitate din
Mm(R) si cu B := I − A. Sistemul de ecuatii Ax = b se transforma echivalent astfel:
Ax = b⇐⇒ (I −B)x = b⇐⇒ x = Bx + b.
Pentru orice x(0) ∈ Rm definim sirul (numit sir Jacobi) (x(n))n∈N prin relatia de re-
curenta
x(n+1) = Bx(n) + b, ∀n ∈ N
Fie ‖ · ‖ o norma pe Mm(R). Daca ‖B‖ = q < 1 atunci avem evaluarile:
‖x(n) − x‖ ≤ q
1− q‖x(n) − x(n−1)‖ ≤ qn
1− q‖x(1) − x(0)‖, ∀n ∈ N∗
19
(în particular limn→∞
x(n) = x).
Algoritm: DacaA = (aij)1≤i,j≤m, b = (bi)1≤i≤m, B = (bij)1≤i,j≤m, x(n) = (x(n)i )1≤i≤m,
∀n ∈ N , atunci bij = −aij daca i �= j, bii = 1−aii, ∀ 1 ≤ i, j ≤ m. Daca pe Rm consid-
eram norma ‖ · ‖1, atunci q := ‖B‖1 = max1≤j≤m
m∑i=1
|bij|, iar daca consideram norma ‖ · ‖∞
atunci q := ‖B‖∞ = max1≤i≤m
m∑j=1
|bij|. Se testeaza conditia de aplicabilitate a metodei
q < 1. În caz de aplicabilitate se atribuie iteratei initiale x(0) o valoare oarecare din
Rm, iar calculul celorlalte iterate se face dupa formula:
x(n+1)i =
m∑
j=1
bijx(n)j + bi, ∀ 1 ≤ i ≤ m, ∀n ∈ N.
Se opreste calculul recursiv la iterata x(n) pentru care
q
1− q‖x(n) − x(n−1)‖p ≤ ε,
unde p = 1 sau p = ∞, iar ε este eroarea de aproximatie dorita.
Exemplul -1.13 Sa se arate ca se poate aplica metoda lui Jacobi (relativa la normele
1 si ∞) pentru sistemul de ecuatii liniare Ax = b cu
A =
0, 9 0, 1 0, 2 0, 3
−0, 2 0, 8 0, 1 0, 4
0, 1 −0, 3 0, 7 −0, 1
−0, 3 −0, 2 −0, 1 0, 9
; b =
3, 6
2
2, 4
1, 5
.
Luând x(0) =
0
0
0
0
sa se determine numarul de iteratii necesar pentru a aproxima
solutia sistemului cu o eroare mai mica de 10−10.
20
Avem
B = I −A =
0, 1 −0, 1 −0, 2 −0, 3
0, 2 0, 2 −0, 1 −0, 4
−0, 1 0, 3 0, 3 0, 1
0, 3 0, 2 0, 1 0, 1
Atunci
‖B‖1 = max1≤j≤4
4∑
i=1
|bij| = 0, 9 < 1.,
si
‖B‖∞ = max1≤i≤4
4∑
j=1
|bij| = 0, 9 < 1
Deci metoda lui Jacobi se aplica. Din formula de evaluare a erorii avem:
‖x(n) − x‖p ≤qn
1− q‖x(1) − x(0)‖p, ∀n ∈ N∗
unde p = 1 sau p = ∞, q = 0, 9, x(1) = Bx(0) + b = b. Deci, pentru a aproxima x cu
x(n) cu eroarea ε = 10−10 este suficient ca qn
1−q‖x(1) − x(0)‖p < ε. Avem
‖x(1) − x(0)‖1 = ‖b‖1 = 9, 5
si
‖x(1) − x(0)‖∞ = ‖b‖∞ = 3, 6
Atunciqn
1− q‖x(1) − x(0)‖1 < ε⇐⇒ n =
[log0,9
ε
95
]+ 1
siqn
1− q‖x(1) − x(0)‖∞ < ε⇐⇒ n =
[log0,9
ε
36
]+ 1
Metoda lui Jacobi pentru matrice diagonal dominante pe linii
Fie m ∈ N∗, A ∈Mm(R), a ∈ Rm.
21
Consideram sistemul de ecuatii liniare Ax = a. Notam cu I matricea unitate din
Mm(R) si cu
D = diag(A) =
a11 0 · · · 0
0 a22 · · · 0
· · · · · · · · · · · ·
0 0 · · · amm
.
Spunem ca A este diagonal dominanta pe linii daca
|aii| >∑
j=1,m j =i
|aij| , ∀i ∈ 1,m
Atunci aii �= 0, ∀i ∈ 1,m, deci D este inversabila. Notam cu B = I − D−1A si cu
b = D−1a. Sistemul de ecuatii Ax = a se transforma echivalent astfel:
Ax = a⇐⇒D−1Ax = D−1a⇐⇒(I −B)x = b⇐⇒x = Bx + b.
Pentru orice x(0) ∈ Rm definimm sirul (x(n))n∈N prin relatia de recurenta
x(n+1) = Bx(n) + b, ∀n ∈ N.
Teorema -1.3 Fie A o matrice diagonal dominanta pe linii, B = I−D−1A, q := ‖B‖∞si (x(n))n∈N definit ca mai sus. Atunci q < 1 si avem evaluarile:
‖x(n) − x‖∞ ≤q
1− q‖x(n) − x(n−1)‖∞ ≤
qn
1− q‖x(1) − x(0)‖∞, ∀n ∈ N∗
(în particular limn→∞
x(n) = x).
Metoda lui Jacobi pentru matrice diagonal dominante pe coloane
Spunem ca matricea A este diagonal dominanta pe coloane daca
|ajj| >∑
i=1,m i=j
|aij| , ∀j ∈ 1,m
22
Atunci aii �= 0, ∀i ∈ 1,m, deci D este inversabila. Notam cu y = Dx (deci x = D−1y),
si cu B = I −AD−1. Sistemul de ecuatii Ax = a se transforma echivalent astfel:
Ax = a⇐⇒AD−1y = a⇐⇒(I −B)y = a⇐⇒y = By + a.
Pentru orice y(0) ∈ Rm definimm sirul (y(n))n∈N prin relatia de recurenta
y(n+1) = By(n) + a, ∀n ∈ N.
Teorema -1.4 Fie A o matrice diagonal dominanta pe coloane, B = I − AD−1, q :=
‖B‖1 si (y(n))n∈N definit ca mai sus. Atunci q < 1 si avem evaluarile:
‖y(n) − y‖1 ≤q
1− q‖y(n) − y(n−1)‖1 ≤
qn
1− q‖y(1) − y(0)‖1, ∀n ∈ N∗
(în particular limn→∞
y(n) = y). Deci solutia x a sistemului Ax = a este aproximata de
D−1y(n) ( limn→∞
D−1y(n) = x).
Metoda Gauss-Seidel
Fie m ∈ N∗, A ∈Mm(R), b ∈ Rm.
Consideram sistemul de ecuatii liniare Ax = b. Notam cu I matricea unitate din
Mm(R) si cu B := I −A. Daca elementele matricei B sunt (bij)1≤i,j≤m, descompunem
B sub forma B = L+R, cu L = (lij)1≤i,j≤m, unde lij := bij , ∀ 1 ≤ j < i ≤ m si lij := 0
altfel. Atunci det(I − L) = 1 si deci exista (I − L)−1.
Sistemul de ecuatii Ax = b se transforma echivalent astfel:
Ax = b⇐⇒(I −B)x = b⇐⇒(I − L−R)x = b⇐⇒
⇐⇒(I − L)−1(I − L−R)x = (I − L)−1b⇐⇒(I − (I − L)−1R)x = (I − L)−1b⇐⇒
⇐⇒x− (I − L)−1Rx = (I − L)−1b.
Daca notam C := (I − L)−1R si c := (I − L)−1b atunci
Ax = b⇐⇒x = Cx + c.
23
Pentru orice x(0) ∈ Cm definim sirul Jacobi (x(n))n∈N prin relatia de recurenta
x(n+1) = Cx(n) + c⇐⇒x(n+1) = Lx(n+1) + Rx(n) + b, ∀n ∈ N
Deci
x(n+1)1 =
m∑
j=1
b1jx(n)j + b1, ∀n ∈ N si
x(n+1)i =
i−1∑
j=1
bijx(n+1)j +
m∑
j=i
bijx(n)j + bi, ∀ 2 ≤ i ≤ m, ∀n ∈ N.
Teorema -1.5 Daca q := max1≤i≤m
qi cu q1 =m∑j=1
|b1j|, qi =i−1∑j=1
|bij|qj +m∑j=i
|bij|, 2 ≤ i ≤ m
si q < 1 atunci avem evaluarile:
‖x(n) − x‖∞ ≤q
1− q‖x(n) − x(n−1)‖∞ ≤
qn
1− q‖x(1) − x(0)‖∞, ∀n ∈ N∗
(în particular limn→∞
x(n) = x).
Exemplul -1.14 Fie sistemul de ecuatii liniare
x1 + 12x2 + 1
3x3 = 1
15x1 + x2 + 1
6x3 = 2
110x1 + 1
20x2 + x3 = 3
Sa se arate ca se aplica metoda Gauss-Seidel.
Solutie Notam cu A matricea ceoficientilor sistemului. Avem
B = I − A =
0 −12−13
−15
0 −16
− 110
− 120
0
si
q1 =5
6, q2 =
1
3, q3 =
1
10.
24
Deci
q = max(q1, q2, q3) =5
6< 1
Rezulta ca metoda Gauss-Seidel se aplica.
Metoda relaxarii simultane
Fie m ∈ N∗, A ∈Mm(R) simetrica si pozitiv definita, a ∈ Rm.
Consideram sistemul de ecuatii liniare Ax = a. Notam cu I matricea unitate din
Mm(R) si cu D = diag(A). Atunci D inversabila. Fie σ > 0 un numar real. Notam
cu Cσ := I − σD−1A si cu cσ := σD−1a. Sistemul de ecuatii Ax = a se transforma
echivalent astfel:
Ax = a⇐⇒ σD−1Ax = σD−1a⇐⇒ (I − Cσ)x = cσ ⇐⇒ x = Cσx + cσ.
Pentru orice x(0) ∈ Rm definim sirul Jacobi (x(n))n∈N prin relatia de recurenta
x(n+1) = Cσx(n) + cσ, ∀n ∈ N
Fie λ1 ≥ λ2 ≥ . . . ≥ λm valorile proprii ale matricei D−1A. Daca alegem σ astfel încât
0 < σ < 2/λ1, si notam q := max1≤i≤m
|1− σλi|, atunci q < 1 si avem evaluarile:
‖x(n) − x‖D ≤q
1− q‖x(n) − x(n−1)‖D ≤
qn
1− q‖x(1) − x(0)‖D, ∀n ∈ N∗
(în particular limn→∞
x(n) = x), unde ‖x‖D :=√〈Dx, x〉, ∀x ∈ Rm, cu 〈·, ·〉 produsul
scalar uzual pe Rm.
Parametrul optim de relaxare σ (pentru care q corespunzator este minim) este
σ =2
λ1 + λm,
iar valoarea lui q în acest caz este
q =λ1 − λmλ1 + λm
25
În practica, de obicei, nu se calculeaza valoarea lui λ1, ci se alege σ ∈ (0, 2/‖D−1A‖∞)
(deoarece λ1 ≤ ‖D−1A‖∞), parcurgând intervalul cu un pas echidistant. Valoarea op-
tima a lui σ se stabileste atunci când numarul de iteratii n, necesar pentru a aproxima
solutia sistemului de ecuatii cu o eroare data este minim.
Daca matricea A a sistemului de ecuatii liniare Ax = a nu este simetriica si pozitiv
definita, sistemul se transforma echivalent
Ax = a⇐⇒ AtAx = Ata
(unde At = (aji)1≤i,j≤m este transpusa matricei A), pentru care matricea AtA este
simetrica si pozitiv definita.
Exemplul -1.15 Fie sistemul de ecuatii liniare:
5x1 + 3x2 + 2x3 = 1
3x1 + 6x2 + 3x3 = 2
2x1 + 3x2 + 5x3 = 3
Sa se arate ca se poate aplica metoda relaxarii simultane. Sa se determine parametrul
optim de relaxare. Luând x(0) = (0, 0, 0) sa se evalueze eroarea x− x(n).
Solutie: Notam cu A matricea sistemului. Se verifica ca A este simetrica si pozitiv
definita.
Fie D = diag(A). Atunci
D−1A =
1 3/5 2/5
1/2 1 1/2
2/5 3/5 1
si det(D−1A− λI) = 0 ⇐⇒ (1− λ)3 − 1925
(1− λ) + 625
= 0, de unde rezulta ca valorile
proprii ale matricei D−1A sunt λ1 = 2 > λ2 = 3/5 > λ3 = 2/5. Parametrul optim de
relaxare este
σ =2
λ1 + λ3=
5
6
26
caruia îi corespunde
q =λ1 − λ3λ1 + λ3
=2
3.
Avem x(1) = Cσx(0) + cσ = cσ = σD−1b = 5/6 · (1/5; 2/6; 3/5)t unde b = (1; 2; 3)t este
vectorul termenilor liberi din sistem. Atunci
‖x(1)‖2D =⟨Dx(1), x(1)
⟩=
2
3· 25
9
si
‖x(n) − x‖D ≤qn
1− q‖x(1) − x(0)‖D = 5 ·
(2
3
)n+ 1
2
.
Metode relaxarii succesive
Fie m ∈ N∗, A ∈Mm(R) simetrica si pozitiv definita si b ∈ Rm.
Consideram sistemul de ecuatii liniare Ax = b si σ > 0 un numar real numit
parametru de relaxare. Notam cu I matricea unitate din Mm(R) si cu D = diag(A).
Atunci D inversabila. Daca elementele matricei A sunt (aij)1≤i,j≤m, descompunem A
sub forma B = L + D + R, cu L = (lij)1≤i,j≤m, unde lij := aij , ∀ 1 ≤ j < i ≤ m si
lij := 0 altfel. Atunci matricea σ−1D+L este inversabila,iar sistemul de ecuatii Ax = b
se transforma echivalent astfel:
Ax = b⇔ (σ−1D + L)−1(L + D + R)x = (σ−1D + L)−1b⇔
(I − (σ−1D + L)−1((σ−1 − 1)D −R))x = (σ−1D + L)−1b
Notând cu Cσ := (σ−1D + L)−1((σ−1− 1)D−R) si cu cσ := (σ−1D + L)−1b rezulta ca
Ax = b⇔ x = Cσx + cσ.
Pentru orice x(0) ∈ Rm definim sirul Jacobi (x(n))n∈N prin relatia de recurenta
x(n+1) = Cσx(n) + cσ, ∀n ∈ N
27
Atunci
x(n+1) = Cσx(n) + cσ ⇔
⇔ x(n+1) = (σ−1D + L)−1((σ−1 − 1)D −R)x(n) + b) ⇔
⇔ σ−1Dx(n+1) = −Lx(n+1) + ((σ−1 − 1)−R)x(n) + b⇔
⇔ x(n+1) = (1− σ)x(n) − σD−1(Lx(n+1) + Rx(n) − b) ⇔
x(n+1)i = (1− σ)x
(n)i − σ
aii(−bi +
i−1∑
j=1
aijx(n+1)j +
m∑
j=i+1
aijx(n)j ), ∀1 ≤ i ≤ m
Daca alegem σ astfel încât 0 < σ < 2, si notam q := ‖Cσ‖A atunci q < 1 si avem
evaluarile:
‖x(n) − x‖A ≤q
1− q‖x(n) − x(n−1)‖A ≤
qn
1− q‖x(1) − x(0)‖A, ∀n ∈ N∗
(în particular limn→∞
x(n) = x), unde ‖x‖A := 〈Ax, x〉 , ∀x ∈ Rm, cu 〈·, ·〉 produsul scalar
uzual pe Rm.
În practica, se alege σ ∈ (0, 2) parcurgând intervalul cu un pas echidistant. Valoarea
optima a lui σ se stabileste atunci când numarul de iteratii n, necesar pentru a aproxima
solutia sistemului de ecuatii cu o eroare data, este minim.
Daca matricea A a sistemului de ecuatii liniare Ax = b nu este simetrica si pozitiv
definita, sistemul se transforma echivalent
Ax = b⇔ AtAx = Atb
(unde At este transpusa matricei A) pentru care matricea AtA este simetrica si pozitiv
definita.
Metoda lui Ritz
Este o metoda de calcul a inversei unei matrice simetrice si poyitiv definite. Fie A ∈
Mm(R) o matrice simetrica si pozitiv definita. Notam cu ∗ operatia de transpunere (a
28
unui vector sau a unei matrice). Definim succesiv vectorii (wk)mk=0 ⊂ Rm, (vk)
mk=1 ⊂ Rm
si matricele (Ck)mk=1, (Dk)
mk=1 ⊂ Mm(R) astfel:
w0 �= 0, C1 =w0w
∗0
w∗0Aw0, D1 = Im − C1A
iar pentru k = 1,m− 1:
Se alege vk astfel ca Dkvk �= 0,
wk = Dkvk.
Ck+1 := Ck +wkw
∗k
w∗kAwk,
Dk+1 := Im − Ck+1A,
Atunci Cm = A−1 (inversa matricei A) si Dm = 0m.
Exemplul -1.16 Fie A =
1 2 3 4
2 5 1 10
3 1 35 5
4 10 5 30
. Folosind metoda lui Ritz sa se cal-
culeze A−1.
Se verifica mai întâi ca matricea A este simetrica si pozitiv definita. Luam w0 =
(1, 0, 0, 0)∗. Atunci w∗0Aw0 = 1 si
C1 =
1 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
, D1 =
0 −2 −3 −4
0 1 0 0
0 0 1 0
0 0 0 1
.
Luam v1 = (0, 1, 0, 0)∗. Rezulta ca w1 = (−2, 1, 0, 0)∗ si w∗1Aw1 = 1, de unde
C2 =
5 −2 0 0
−2 1 0 0
0 0 0 0
0 0 0 0
, D2 =
0 0 −13 0
0 0 5 −2
0 0 1 0
0 0 0 1
.
29
Luam v2 = (0, 0, 1, 0)∗. Rezulta ca w2 = (−13, 5, 1, 0)∗ si w∗2Aw2 = 1, de unde
C3 =
174 −67 −13 0
−67 26 5 0
−13 5 1 0
0 0 0 0
, D3 =
0 0 0 39
0 0 0 −17
0 0 0 −3
0 0 0 1
.
Luam v3 = (0, 0, 0, 1)∗. Rezulta ca w3 = (39,−17,−3, 1)∗ si w∗3Aw3 = 1, de unde
C4 =
1695 −730 −130 39
−730 315 56 −17
−130 56 10 −3
39 −17 −3 1
, D4 =
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
.
Pseudoinversa unei matrice
Pseudoinversa unei matrice este o extensie naturala a notiunii de matrice inversabila.
Se poate defini pseudoinversa atât pentru matrici patratice (singulare sau nesingu-
lare - caz în care pseudoinversa coincide cu inversa) cât si pentru matrici dreptunghi-
ulre (în care numarul de linii difera de numarul de coloane). Pentru o matrice T ∈
Mm,n(R),notam cu T ∗ ∈Mn,m(R) transpusa matricei T si cu T+ ∈Mn,m(R) pseudoin-
versa matricei matricei T.
Prin definitie T+ este singura solutie U ∈ Mn,m(R) a sistemului de ecuatii ma-
triceale:
TUT = T, UTU = U, (TU)∗ = TU, (UT )∗ = UT. (16)
Teorema -1.6 Fie T ∈Mm,n(R) si b ∈ Rm.
a) x0 din Rn verifica egalitatea
‖Tx0 − b‖ = infx∈Rn
‖Tx− b‖ (17)
daca si numai daca T ∗Tx0 = T ∗b.
30
b) Elementul x0 := T+b verifica egalitatea (17) si, pentru orice alt element x0 ce
verifica aceeasi egalitate, avem ‖x0‖ ≤ ‖x0‖.
Reciproc, T+ este unica solutie U ∈ Mn,m(R)a problemei: Ub satisface egalitatea
(17) pentru orice b ∈ Rm, iar pentru orice alt element x0, care verifica aceeasi egalitate,
avem ‖Ub‖ ≤ ‖x0‖.
Prin aceasta teorema, în cazul unui sistem de ecuatii liniare Tx = b compatibil
nedeterminat, rezulta ca T+b este o solutie a acestui sistem (anume cea mai mica solutie
în norma), iar, în cazul unui sistem incompatibil, T+b este acel element x, minim în
norma, pentru care Tx− b este cel mai aproape de 0.
În continuare presupunem ca rang T = l ≤ min(m,n). CuR(A) am notam imaginea
matricei A ∈Mm,n(R), adica multimea {Ax | x ∈ Rn}.
Determinarea pseudoinversei unei matrice se poate face cu algoritmi cu un numar
de pasi mai mic sau egal cu l. În aceasta categorie intra urmatorii algoritmi
• (Grigore) Definim succesiv vectorii (yk)lk=1 ⊂ X, (wk)
lk=1 ⊂ Rn si matricele
(Hk)lk=0 ⊂ Mn,m(R) astfel:
H0 = 0.
yk ∈ R(T ∗) (adica în imaginea transpusei), astfel ca yk −Hk−1Tyk �= 0,
wk := yk −Hk−1Tyk si
Hk := Hk−1 +wk(Twk)
∗
‖Twk‖2, ∀k = 1, l.
Atunci Hl = T+ (pseudoinversa matricei T ).
Exemplul -1.17 Fie
T =
1 0 −1
0 1 0
1 1 −1
1 2 −1
cu rang(T ) = 2 si H0 = 0.
31
Luam y1 = T ∗ ∗
1
0
0
0
=
1
0
−1
(avem y1 − H0Ty1 = y1 �= 0. Atunci w1 =
y1 − H0Ty1 = y1 si Tw1 =
2
0
2
2
. Rezulta ca ‖Tw1‖2 = 12, iar w1(Tw1)∗ =
2 0 2 2
0 0 0 0
−2 0 −2 −2
. Deci
H1 = H0 +w1(Tw1)
∗
‖Tw1‖2=
1/6 0 1/6 1/6
0 0 0 0
−1/6 0 −1/6 −1/6
.
Luam y2 = T ∗ ∗
0
1
0
0
=
0
1
0
(avem y2 − H1Ty2 =
−1/2
1
1/2
�= 0. Atunci
w2 = y2 − H1Ty2 si Tw2 =
−1
1
0
1
. Rezulta ca ‖Tw2‖2 = 3, iar w2(Tw2)∗ =
32
1/2 −1/2 0 −1/2
−1 1 0 1
−1/2 1/2 0 1/2
. Deci
H2 = H1 +w2(Tw2)
∗
‖Tw2‖2=
1/3 −1/6 1/6 0
−1/3 1/3 0 1/3
−1/3 1/6 −1/6 0
În concluzie
T+ = H2 =
1/3 −1/6 1/6 0
−1/3 1/3 0 1/3
−1/3 1/6 −1/6 0
• (Gramm-Schmidt) Fie o baza e1, e2, . . . , el în R(T ∗) si fie fi = Tei, ∀ i = 1, l.
Definim, succesiv, elementele (e′i)li=1, (xi)
li=1 ⊂ Rn, (f ′i)
li=1(yi)
li=1 ⊂ Rm, astfel:
x1 =1
‖f1‖e1 si y1 = Tx1,
iar pentru i = 2, l
e′i = ei −i−1∑
j=1
〈fi, yj〉xj, f ′i = Te′i si xi =1
‖f ′i‖e′i, yi = Txi
Definim matricea U ∈Mn,m(R) prin
U :=l∑
i=1
xiy∗i
Atunci U = T+.
Exemplul -1.18 Fie
T =
1 0 −1
0 1 0
1 1 −1
1 2 −1
cu dimR(T ∗) = 2
33
Luând e1 = (1; 0;−1)∗, e2 = (0; 1; 0)∗ (baza în R(T ∗)) obtinem f1 = (2; 0; 2; 2)∗, f2 =
(0; 1; 1; 2)∗. Atunci
x1 =1
2√
3(1; 0;−1)∗, y1 =
1√3(1; 0; 1; 1)∗
În continuare
e′2 = e2 − 〈f2, y1〉 x1 =1
2(−1; 2; 1)∗ si f ′2 = Te′2 = (−1; 1; 0; 1)∗
Atunci
x2 =1
2√
3(−1; 2; 1)∗, y2 =
1√3(−1; 1; 0; 1)∗
Rezulta ca
T+ = x1y∗1 + x2y
∗2 =
1
6
2 −1 1 0
−2 2 0 2
−2 1 −1 0
• (Stanica) Definim, succesiv, vectorii (uk)l−1k=0 ⊂ Rm, (vk)
l−1k=0 ⊂ Rn, (wk)
l−1k=0 ⊂ Rm
si matricele (Hk)lk=1 ⊂ Mn,m(R) astfel:
H0 = T ∗.
vk ∈ R((I − THk)∗T ), wk ∈ R(Hk) astfel încît 〈vk, Twk〉 �= 0,
uk :=1
〈vk, Twk〉(I −HkT )wk si
Hk+1 := Hk + uk · v∗k, ∀k = 0, l − 1.
Atunci Hl = T+.
Exemplul -1.19 Fie
T =
1 0 −1
0 1 0
1 1 −1
1 2 −1
cu rang(T ) = 2 si H0 = T ∗
34
Luând a1 =
1
0
0
, b1 =
1
0
0
0
obtinem v0 := (I − TH0)∗Ta1 =
−5
−3
−8
−11
,
w0 = H0b1 =
1
0
−1
, u0 :=
1
〈v0, Tw0〉(I −H0T )w0 =
5/48
1/8
−5/48
,
H1 := H0 + u0 · v∗0 =
23/48 −5/16 1/6 −7/48
−5/8 5/8 0 5/8
−23/48 5/16 1/6 7/48
Luând a2 =
0
1
0
, b2 =
0
1
0
0
obtinem v1 := (I − TH1)∗Ta2 =
7/8
−7/8
0
−7/8
, w1 =
H1b2 =
−5/16
5/8
5/16
, u1 :=
1
〈v1, Tw1〉(I −H1T )w1 =
−1/6
1/3
1/6
, deci
T+ = H2 := H1 + u1 · v∗1 =
1/3 −1/6 1/6 0
−1/3 1/3 0 1/3
−1/3 1/6 −1/6 0
.
Exemplul -1.20 Fie sistemul de ecuatii liniare Tx = b, unde
T =
1 0 −1
0 1 0
1 1 −1
1 2 −1
cu rang(T ) = 2 si b =
0
1
1
2
35
(acest sistem este compatibil nedetreminat). Atunci
z = T+b =
1/3 −1/6 1/6 0
−1/3 1/3 0 1/3
−1/3 1/6 −1/6 0
0
1
1
2
=
0
1
0
este o solutie a sistemului (compatibil nedeterminat) de ecuatii liniare Tx = b.
Exemplul -1.21 Fie sistemul de ecuatii liniare Tx = b, unde
T =
1 0 −1
0 1 0
1 1 −1
1 2 −1
cu rang(T ) = 2 si b =
1
0
0
0
(acest sistem este incompatibil). Atunci
z = T+b =
1/3 −1/6 1/6 0
−1/3 1/3 0 1/3
−1/3 1/6 −1/6 0
1
0
0
0
=
1/3
−1/3
−1/3
are proprietatea ca
‖Tz − b‖ = infx∈Rn
‖Tx− b‖
.
36
Metode pentru aproximarea valorilor proprii aleunei matrice
În acest capitol prezentam algoritmi pentru determinarea valorilor si vectorilor pro-
prii ai unei matrice A ∈Mm(R), adica a scalarilor λ ∈ C si a vectorilor x ∈ Cm \ {0}
asfel ca:
Ax = λx .
Valorile proprii λ sunt radacinile polinomului caracteristic:
pA(λ) = det(λIm −A) .
Pentru o valoare proprie λ data, vectorul propriu se obtine ca o solutie nenula a sis-
temului liniar omogen:
(A− λIm)x = 0 .
Metodele numerice pentru determinarea valorilor proprii se împart în doua mari cate-
gorii:
- metode care utilizeaza polinomul caracteristic;
- metode care nu folosesc polinomul caracteristic.
Prima categorie de metode este mai rar folosita pentru ca trebuie sa calculam
radacinile unui polinom de grad m arbitrar. Metodele care nu folosesc polinomul
caracteristic aproximeaza, în general, prin iterare, valorile proprii ale unei matrice.
Metode folosind polinomul caracteristic
Metodele numerice pe care le prezentam în acest paragraf determina, de fapt, co-
eficientii polinomului caracteristic. Daca A ∈ Mm(R), atunci polinomul caracteristic
va fi:
pA(λ) = λm − c1λm−1 + c2λ
m−2 + · · ·+ (−1)mcm ,
1
unde ck este suma minorilor de ordin k ai matricei A pentru k = 1, m. Numarul mino-
rilor de ordin k ai matricei A este Ckm =
m!
k!(m− k)!. Deci, calculând direct coeficientii
ck, k = 1, m, ar trebui calculati C1m + C2
m + · · · + Cmm = 2m − 1 determinanti. Acest
lucru este dificil si implica multe calcule pentru valori mari ale lui m. De aceea, s-au
cautat metode care sa determine mai usor coeficientii polinomului caracteristic. În
subparagrafele urmatoare prezentam câteva astfel de metode împreuna cu algoritmii
corespunzatori si exemple numerice.
Metoda Krylov
Metoda Krylov se bazeaza pe teorema Cayley-Hamilton:
Daca A ∈Mm(R) si pA(λ) = λm−p1λm−1−p2λ
m−2−· · ·−pm , atunci pA(A) = 0m ,
adica:
Am − p1Am−1 − p2A
m−2 − · · · − pm−1A− pmIm = 0m .
Consideram y(0) =(y(0)1 , . . . , y
(0)m
)t∈ Rm un vector arbitrar. Înmultind relatia (??)
cu y(0), se obtine:
Amy(0) − p1Am−1y(0) − p2A
m−2y(0) − · · · − pm−1Ay(0) − pmy(0) = 0 ,
de unde, notând:
y(k) = Aky(0) = Ay(k−1), pentru k = 1, m,
ne rezulta ca p1, . . . , pm sunt solutiile sistemului:
(y(m−1) y(m−2) · · · y(1) y(0)
)·
p1
p2...
pm−1
pm
= y(m) .
2
Deci determinarea solutiilor polinomului caracteristic prin metoda Krylov se reduce
la rezolvarea sistemului (??), în cazul în care are solutie unica. Daca sistemul nu are
solutie unica, atunci se poate încerca schimbarea vectorului initial y(0).
Exemplul -1.1 Determinati polinomul caracteristic pentru matricea
A =
5 −4 −3 −1
1 4 2 −9
2 5 1 −5
7 1 2 −1
,
folosind metoda Krylov.
Alegem pentru aplicarea metodei Krylov vectorul y(0) =
1
2
3
4
si calculam
y(1) = Ay(0) =
−16
−21
−5
11
, y(2) = Ay(1) =
8
−209
−197
−154
,
y(3) = Ay(2) −
1621
164
−456
−393
, y(4) = Ay(3) =
9210
4902
5571
10992
.
3
Coefientii polinomului caracteristic se obtin rezolvâd sistemul:
1621 8 −16 1
164 −209 −21 2
−456 −197 −5 3
−393 −154 11 4
p1
p2
p3
p4
=
9210
4902
5571
10992
.
Folosind o metoda de rezolvare a sistemelor liniare , obtinem p =
9
−45
369
885
si polino-
mul caracteristic este:
pA(λ) = λ4 + 9λ3 − 45λ2 + 369λ+ 885 . �
Metoda Leverrier
Determinarea coeficientilor polinomului caracteristic prin metoda Leverrier se bazeaza
pe urmatorul rezultat:
Daca P (x) = xm + p1xm−1 + p2x
m−2 + · · · + pm este un polinom de gradul m cu
radacinile λ1, . . . , λm si sk = λk1 + · · ·+ λkm pentru k ∈ N , atunci avem
−kpk =k−1∑
j=0
pjsk−j pentru k ∈ N∗ ,
cu p0 = 1 .
Se stie ca, daca A ∈ Mm(R) si λ1, . . . , λm sunt valori proprii distincte ale lui A,
atunci sk = tr(Ak) pentru k ∈ N∗ .
Determinarea coeficientilor polinomului carateristic cu metoda Leverrier consta în:
P1. se calculeaza s1 = tr(A) si p1 = −s1 ;
P2. pentru k = 2, m calculam:
Ak , sk = tr(Ak) , pk = −1
k(sk + p1sk−1 + p2sk−2 + · · · pk−1s1).
4
P3. Polinomul caracteristic al matricei A va fi
pA(λ) = λm + p1λm−1 + p2λ
m−2 + · · ·+ pm .
Observatie. Daca pm = 0, atunci λ = 0 este valoare proprie pentru A si nu exista
A−1, iar daca pm �= 0 atunci, conform teoremei Cayley-Hamilton, avem:
Am + p1Am−1 + p2A
m−2 − · · ·+ pm−1A+ pmIm = 0m ,
de unde rezulta
A−1 = − 1
pm
(Am−1 + p1A
m−2 + p2Am−3 + · · ·+ pm−1Im
).
Exista un algoritm propus de Fadeev prin care se calculeaza simultan coeficientii
polinomului caracteristic si A−1 (daca exista). Astfel determinarea coeficientilor poli-
nomului carateristic cu metoda Leverrier consta în:
P1. se calculeaza p1 = −tr(A) si B1 = A1 + p1Im , unde A1 = A ;
P2. pentru k = 2, m calculam:
Ak = ABk , pk = −1
ktr(Ak) , Bk = Ak + pkIm.
P3. Daca pm �= 0 atunci avem A−1 = − 1
pmBm−1 .
Observatie. În algoritmul de mai sus, din modul de calculare a sirului B1, . . . , Bm−1, Bm
si din teorema Cayley-Hamilton, se obtine ca
Bm = Am + pmIm = Am + p1Am−1 + · · ·+ pm−1A+ pmIm = 0m
Exemplul -1.2 Determinati, folosind metoda Leverrier, polinomul caracteristic si ma-
tricea A−1 , daca exista, pentru matricea
A =
11 0 −3 12
−9 −5 2 5
2 −4 15 −11
2 6 −7 10
,
5
Aplicând metoda Leverrier pentru matriceaA si m = 4, obtinem:
s1 = 31 , p1 = −31 ,
- pentru k = 2:
A2 = A2 =
139 84 −162 285
−40 47 12 −105
66 −106 288 −271
−26 58 −169 231
, s2 = 705 , p2 = 128 ,
- pentru k = 3:
A3 = A3 =
1019 1938 −4674 6720
−1049 −913 1129 −1427
7714 −2248 5807 −5616
−684 1772 −3958 4147
,
s3 = 10060 , p3 = 2609 ,
- pentru k = 4:
A4 = A4 =
−2141 49326 −116331 140532
−3918 −8513 28245 −43842
39468 −45684 116779 −110709
−23094 31854 −82803 85660
,
s4 = 191785 , p4 = −12761 ,
si polinomul caracteristic este:
pA(λ) = λ4 − 31λ3 + 128λ2 + 2609λ− 12761 .
6
Cum p4 �= 0, rezulta ca:
A−1 = − 1p4(A3 + p1A
2 + p2A+ p3I4)
=
0.0570 −0.0522 −0.0028 −0.0454
−0.0753 −0.0314 0.0794 0.1934
−0.0060 0.0412 0.1103 0.1079
0.0296 0.0581 0.0302 0.0686
.�
Exemplul -1.3 Calculati coeficientii polinomului caracteristic si matricea A−1 , daca
exista, pentru matricea
A =
11 1 −3 2
−9 −5 12 5
2 −4 5 −11
2 16 −7 10
,
folosind algoritmul Fadeev.
Aplicând algoritmul Fadeev obtinem:
A1 = A ,
p1 = −tr(A1) = −21 , B1 = A1 + p1I4 =
−10 1 −3 2
−9 −26 12 5
2 −4 −16 −11
2 16 −7 −11
,
7
- pentru k = 2
A2 = AB1 =
−121 29 13 38
169 153 −260 −230
4 −90 −57 50
−158 −226 228 51
,
p2 = −12tr(A2) = −13 , B2 = A2 + p2I4 =
−134 29 13 38
169 140 −260 −230
4 −90 −70 50
−158 −226 228 38
,
- pentru k = 3
A3 = AB2 =
−1633 277 549 114
−381 −3171 1483 1598
814 1534 −1792 828
828 668 −1364 −3574
,
p3 = −13tr(A3) = 3390 , B3 = A3 + p3I4 =
1757 277 549 114
−381 219 1483 1598
814 1534 1598 828
828 668 −1364 −184
,
8
- pentru k = 4
A4 = AB3 =
18160 0 0 0
0 18160 0 0
0 0 18160 0
0 0 0 18160
,
p4 = −14tr(A4) = −18160 , B4 = A4 + p4I4 =
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
.
Polinomul caracteristic este:
pA(λ) = λ4 − 21λ3 − 13λ2 + 3390λ− 18160 .
Cum p4 �= 0, rezulta ca:
A−1 = − 1p4
B3 =
0.0968 0.0153 0.0302 0.0063
−0.0210 0.0121 0.0817 0.0880
0.0448 0.0845 0.0880 0.0456
0.0456 0.0368 −0.0751 −0.0101
. �
Metoda coeficientilor nedeterminati
Metoda coeficientilor nedeterminati consta în determinarea coeficientilor p1, . . . , pm
ai polinomului caracteristic pA(λ) = λm + p1λm−1 + · · ·+ pm−1λ+ pm , asociat matriei
9
A ∈Mm(R) , dintr-un sistem liniar format din m ecuatii liniare:
pm = D(0)
1m + p11m−1 + · · ·+ pm−11 + pm = D(1)
2m + p12m−1 + · · ·+ pm−12 + pm = D(2))
...
(m− 1)m + p1(m− 1)m−1 + · · ·+ pm−1(m− 1) + pm = D(m− 1)
,
unde D(k) = det (kIm − A) pentru k = 0,m .
Daca notam p = (p1, p2, . . . , pm−1)t , sistemul (??) se reduce la m− 1 ecuatii liniare
si se poate scrie în forma:
Mp = b,
unde
M =
1 1 · · · 1
2m−1 2m−2 · · · 2
......
. . ....
(m− 1)m−1 (m− 1)m−2 · · · (m− 1)
si
D(1)−D(0)− 1m
D(2)−D(0)− 2m...
D(m− 1)−D(0)− (m− 1)m
.
Aceasta metoda are dezavatajul ca se calculeaza m determinanti de ordin m.
Exemplul -1.4 Determinati coeficientii polinomului caracteristic pentru
matricea
A =
9 −4 10 13
11 −1 −15 8
1 −2 −3 1
2 4 5 7
,
10
folosind metoda coeficientilor nedeterminati.
Avem p4 = −2703. Se obtine sistemul
1 1 1
8 4 2
27 9 3
p =
334
482
372
a carui solutie este:
p =
−12
−57
403
.
Deci polinomul caracteristic este:
pA(λ) = λ4 − 12λ3 − 57λ2 + 403λ− 2703 . �
Metoda rotatiilor
Se dau m ∈ N, m ≥ 2, A = (aij)1≤i,j≤m ∈ Mm(R) o matrice simetrica si ε > 0 un
numar real. Metoda rotatiilor aproximeaza valorile proprii ale unei matrice simetrice
prin construirea unui sir de matrice (obtinut cu ajutorul unor matrice de rotatie) ale
caror valori de pe diagonala converg catre valorile proprii ale matricei A.
Daca la pasul n este cunoscuta matricea An, matricea An+1 se determina cu formula
An+1 = T tnAnTn,
unde Tn este o matrice de rotatie.
Calcul succesiv al matricelor An (n ≥ 0), obtinute din matricea A prin rotatii plane
se realizeaza dupa algoritmul:
A0 := A
• Repeta (se calculeaza Y = An+1 în functie de X = An):
11
— se aleg p < q ∈ {1, . . . ,m} astfel încât
|xpq| = max{|xij|; i < j ∈ {1, . . . , m}};
— daca xpp = xqq atunci θ = π4 , altfel θ = 1
2 · arctan2·xpq
xpp−xqq
— se iau c = cos(θ) si s = sin(θ);
— Se calculeaza matricea Y = T tAT cu
T =
1 · · · 0 · · · 0 · · · 0
.... . .
......
......
...
0 · · · cos θ · · · − sin θ · · · 0
......
.... . .
......
...
0 · · · sin θ · · · cos θ · · · 0
......
......
.... . .
...
0 · · · 0 · · · 0 · · · 1
,
unde elementele cosθ, − sin θ, sin θ, cosθ se afla la intersectia liniilor p si q
cu coloanele p si q. Atunci
∗ ∀ i, j �∈ {p, q}, yij = xij;
∗ ∀ j �∈ {p, q}, ypj = yjp = c · xpj + s · xqj, yqj = yjq = −s · xpj + c · xqj
∗ ypq = 0; yqp = 0; ypp = c2 · xpp + 2 · c · s · xpq + s2 · xqq; yqq = s2 · xpp −
2 · c · s · xpq + c2 · xqq;
— se face atribuirea X = Y ;
— se calculeaza modul = |X| :=√
m∑
i�=j
x2ij unde i, j ∈ 1,m.
pâna când modul < ε .
• Se colecteaza în vectorul z elementele diagonalei lui X, care reprezinta aproximari
ale valorilor proprii ale matricei A cu erori în modul mai mici decât ε : ∀ i ∈
1,m se ia zi = xii.
12
• Se tipareste z.
Exemplul -1.5 Fie matricea
A =
17 −2 3√3
−2 8 2√3
3√3 2
√3 11
.
Folosind metoda rotatiilor, sa se determine valorile proprii ale matricei A.
Se verifica imediat ca matricea A este simetrica. Se aleg p < q astfel încât
|apq| = max{aij|; i < j ∈ {1, 2, 3}.
Atunci p = 1, q = 3. Se calculeaza
θ =1
2· arctan 2 · apq
app − aqq=
π
6.
Se ia
T =
cos θ 0 − sin θ
0 1 0
sin θ 0 cos θ
si se calculeaza matricea
B = T tAT =
20 0 0
0 8 4
0 4 8
Se aleg p < q astfel încât
|bpq| = max{bij|; i < j ∈ {1, 2, 3}.
Atunci p = 2, q = 3. Se calculeaza
θ =π
4deoarece bpp = bqq.
13
Se ia
T =
1 0 0
0 cos θ − sin θ
0 sin θ cos θ
si se calculeaza matricea
B = T tAT ==
20 0 0
0 12 0
0 0 4
Rezulta ca valorile proprii ale matricei A sunt λ1 = 20, λ2 = 12, λ3 = 4.�
Metoda puterii
Este o metoda numerica pentru aproximarea celei mai mari valori proprii în modul
si a unui vector propriu corespunzator.
Vom considera cazul în care matricea A ∈Mm(R) are toate valorile proprii pozitive.
Fie x(0) ∈ Rm astfel încât Ax(0) �= 0. Definim recurent sirul (x(n))n∈N prin relatia
x(n+1) := Ax(n), ∀n ∈ N. Notam cu (z(n))n∈N sirul definit prin z(n) :=1
‖x(n)‖ ·
x(n), ∀n ∈ N. Atunci
limn→∞
〈Az(n), z(n)〉 = λ,
unde λ este cea mai mare valoare proprie a matricei A si
limn→∞
z(n) = z,
unde z este un vector propriu atasat valorii proprii λ.
Metoda permite si determinarea celorlalte valori proprii astfel:
• Se considera matricea
T =
1 0 . . . 0
x2 1 . . . 0
. . . . . . . . . . . .
xm 0 . . . 1
,
14
unde (1, x2, . . . , xm) este un vector propriu corespunzator
valorii proprii λ. Acest vector se obtine astfel:
xi =zi
z1, ∀i = 2, m,
• Se calculeaza matricea B = T−1AT.
• Se scrie matricea B sub forma
B =
b11 B12
0 B22
,
cu B22 matrice de ordinul m− 1.
• Cu algoritmul descris mai sus se determina cea mai mare
valoare proprie a matricei C = B22. Aceasta este a doua
valoare proprie (în ordine descrescatoare) a matricei A.
• Acest algoritm se aplica în continuare pentru matricea C.
Algoritmul LU
Fie A o matrice patratica de ordin m. Descompunem A = L1U1 cu L1, U1 matrice
triunghiulare (vezi factorizarea LU din paragraful 1.2.4, capitolul 1). Construim sirul
de matrice (Bn)n astfel:
B0 = A = L1U1, B1 = U1L1.
Descompunem B1 = L2U2, luam B2 = U2L2, . . .
Descompunem Bn = Ln+1Un+1, luam Bn+1 = Un+1Ln+1, . . .
Când n →∞, elementele de pe diagonala lui Bn converg la valorile proprii ale matricei
A (în practica, calculul iterativ se opreste atunci când, pentru orice i = 1,m, avem∣∣∣b(n)ii − b
(n−1)ii
∣∣∣ < ε, o eroare data, unde cu (b(n)ij )i,j am notat elementele matricei Bn).
15
Algoritmul QR
Metoda QR este o metoda des folosita pentru calculul valorilor proprii pentru o
matrice oarecare, în general, nesimetrica. Fie A ∈ Mm(R). Metoda QR consta în
construirea unui sir de matrice (Ak)k≥0 folosind factorizarea QR (definita la ssisteme
liniare) astfel:
A0 = A = Q0R0 , A1 = R0Q0 ,
Ak = QkRk , Ak+1 = RkQk , k ≥ 0 .
Când k →∞, elementele de pe diagonala lui Ak converg la valorile proprii ale matricei
A. Calculul iterativ se opreste atunci când, pentru orice i = 1, m, avem∣∣∣a(k+1)ii − a
(k)ii
∣∣∣ <
ε, pentru ε > 0 o eroare data.
16
Ecuatii neliniare în Rm
Principiul contractiei
Fie m ∈ N∗, M ⊂ Rm o multime si ‖ · ‖ o norma pe Rm. O functie f : M → R
m se numeste q-contractie a multimii M relativa la norma ‖ · ‖ daca are urmatoarele
proprietati:
1) ∃ q ∈ (0, 1) astfel încât ‖f(x)− f(y)‖ ≤ q‖x− y‖, ∀ x, y ∈M si
2) f(M) ⊂M .
Principiul contractiei se enunta astfel:
Fie ‖ · ‖ o norma pe Rm, M o multime închisa din Rm si f : M → Rm o q-
contractie a multimii M relativa la norma ‖ · ‖. Atunci ecuatia f(x) = x are o solutie
unica z ∈M , si, pentru orice x(0) ∈M , sirul (x(n))n∈N definit prin relatia de recurenta
x(n+1) = f(x(n)) converge la z. Avem evaluarea
‖x(n) − z‖ ≤q
1− q‖x(n) − x(n−1)‖ ≤
qn
1− q‖x(1) − x(0)‖.
Fie a ∈ Rm si r > 0. Daca M := {x ∈ Rm | ‖x− a‖ ≤ r}, atunci:
1. Daca f diferentiabila peM si exista q ∈ (0, 1) astfel încât ‖f ′(x)‖ ≤ q, ∀ x ∈M
rezulta ca ‖f(x)− f(y)‖ ≤ q‖x− y‖, ∀ x, y ∈M .
2. Daca ‖f(x)− f(y)‖ ≤ q‖x− y‖, ∀ x, y ∈M si ‖f(a)− a‖ ≤ (1− q)r rezulta ca
f(M) ⊂M .
Deci, în aceste conditii, f este q-contractie a multimii M .
Exemplul -1.1 Fie sistemul de ecuatii
x = (80 + x3 − x2 − 3yz)/100
y = (60− y3 − z2 + 4xz)/86
z = (40 + z3 + y2 − 5xy)/72
(1)
Folosind principiul contractiei în raport cu norma ‖ · ‖∞, sa se arate ca sistemul
(1) are solutie unica v în V := [0, 2]3. Pentru o eroare ε data si pentru iterata initiala
1
x(0) := (1, 1, 1) sa se calculeze iterata x(n) (din principiul contractiei) pentru care ‖x(n)−
v‖∞ ≤ ε.
Fie r = 1 si a = (1, 1, 1). Atunci multimea V = {x ∈ Rm | ‖x − a‖∞ ≤ r}.
Fie functia F = (f, g, h) : V → R3 cu f(x, y, z) := (80 + x3 − x2 − 3yz)/100,
g(x, y, z) := (60−y3−z2+4xz)/86 si h(x, y, z) := (40+z3+y2−5xy)/72, ∀ (x, y, z) ∈ V .
Sistemul de ecuatii (1) este echivalent cu F (x, y, z) = (x, y, z).
Avem
F ′(x, y, z) =
(3x2 − 2x)/100 −3z/100 −3y/100
4z/86 −3y2/86 (−2z + 4x)/86
−5y/72 (2y − 5x)/72 3z2/72
,
deci ‖F ′(x, y, z)‖∞ = max((|3x2 − 2x| + | − 3z| + | − 3y|)/100, (|4z| + | − 3y2| +
| − 2z + 4x|)/86, (| − 5y| + |2y − 5x| + |3z2|)/72) ≤ max(28/100, 32/86, 36/72) =
= 1/2 (am folosit 0 ≤ x, y, z ≤ 2). Putem lua q = 1/2. Pe de alta parte ‖F (a)−a‖∞ =
max(28/100, 24/86, 35/72) = 35/72 < (1 − q)r = 1/2. Deci F este 1/2-contractie a
multimii V în raport cu norma ‖ · ‖∞. Din principiul contractiei rezulta ca ecuatia
F (x, y, z) = (x, y, z) are solutie unica în V .
Pentru x(0) = (1, 1, 1) se calculeaza x(n) cu formula de recurenta x(n) = F (x(n−1)),
∀ n ∈ N . Se opreste procesul iterativ atunci când q/(1− q)‖x(n) − x(n−1)‖∞ < ε.
Pentru ε = 10−10 se obtin urmatoarele rezultate:
2
n x y z
1 0.7700000000 0.7209302326 0.5138888889
2 0.7875219889 0.7086511560 0.5261092736
3 0.7874973924 0.7095886570 0.5257974572
4 0.7874891632 0.7095640029 0.5257622709
5 0.7874902776 0.7095633762 0.5257631334
6 0.7874902723 0.7095634355 0.5257631103
7 0.7874902718 0.7095634337 0.5257631082
8 0.7874902719 0.7095634337 0.5257631083 . �
Metoda Gauss-Seidel neliniara
Fie m ∈ N∗, (a1, a2, . . . , am) ∈ Rm, r1, r2, . . . , rm numere reale strict pozitive,
M := {x = (x1, x2, . . . , xm) ∈ Rm | |xi − ai| ≤ ri, ∀ 1 ≤ i ≤ m} si f = (f1, f2, . . . , fm) :
M → Rm o q-contractie a multimii M relativa la norma ‖ · ‖∞.
Pentru orice x(0) ∈M definim sirul (x(n))n∈N prin relatia de recurenta
x(n+1)1 = f1(x
(n)1 , x
(n)2 , . . . , x
(n)m) si
x(n+1)i
= fi(x(n+1)1 , . . . , x
(n+1)i−1 , x
(n)i, . . . , x(n)
m) ∀ 2 ≤ i ≤ m.
Atunci sirul (x(n))n∈N converge catre unica solutie z ∈ M a ecuatiei f(x) = x. Avem
evaluarea:
‖x(n) − z‖∞ ≤q
1− q‖x(n) − x(n−1)‖∞ ≤
qn
1− q‖x(1) − x(0)‖∞.
Daca f diferentiabila pe M si exista q ∈ (0, 1) astfel încât ‖f ′(x)‖∞ ≤ q, ∀ x ∈M
rezulta ca ‖f(x)− f(y)‖∞ ≤ q‖x− y‖∞, ∀ x, y ∈M .
3
Exemplul -1.2 Fie sistemul de ecuatii
x = (432 + x4 + y4 − 2z4 + y2z2)/234
y = (324− x4 + 2y4 − 3z4 + 3x2z2)/432
z = (234 + 2x4 − 3y4 + 4z4 − x2y2 + 3x+ y)/324
(2)
Folosind metoda Gauss-Seidel neliniara, sa se arate ca sistemul (2) are solutie unica
v în V := [−2, 2] × [−1, 1] × [0, 1]. Pentru o eroare ε data si pentru iterata initiala
x(0) := (0, 0, 1/2) sa se calculeze iterata x(n) pentru care ‖x(n) − v‖∞ ≤ ε.
Fie r1 = 2, r2 = 1 si r3 = 1/2, a1 = a2 = 0 si a3 = 1/2. Atunci multimea
V = {(x, y, z) ∈ R3 | |x − a1| ≤ r1, |y − a2| ≤ r2, |z − a3| ≤ r3}. Fie functia
F = (f, g, h) : V → R3 cu f(x, y, z) := (432 + x4 + y4 − 2z4 + y2z2)/234, g(x, y, z) :=
(324−x4+2y4−3z4+3x2z2)/432 si h(x, y, z) := (234+2x4−3y4+4z4−x2y2+3x+y)/324,
∀ (x, y, z) ∈ V . Sistemul de ecuatii (2) este echivalent cu F (x, y, z) = (x, y, z).
Avem F ′(x, y, z) =
4x3/234 (4y3 + 2yz2)/234 (−8z3 + 2y2z)/234
(−4x3 + 6xz2)/432 8y3/432 (−12z3 + 6x2z)/432
(8x3 − 2xy2 + 3)/324 (−12y3 − 2x2y + 1)/324 16z3/324
,
deci ‖F ′(x, y, z)‖∞ = max((|4x3|+ |4y3+2yz2|+ |−8z3+2y2z|)/234, (|−4x3+6xz2|+
|8y3|+ | − 12z3 + 6x2z|)/432, (|8x3 − 2xy2+ 3|+ | − 12y3 − 2x2y + 1|+ |16z3|)/324) ≤
max(48/234, 88/432, 108/234) = 1/3 (am folosit −2 ≤ x ≤ 2, −1 ≤ y ≤ 1, 0 ≤ z ≤ 1).
Putem lua q = 1/3. Pe de alta parte |f(x, y, z) − a1| ≤ (|432| + |x4| + |y4| + |2z4| +
|y2z2|)/234 ≤ 452/234 < 2, |g(x, y, z)−a2| ≤ (|324|+|x4|+|2y4|+|3z4|+|3x2z2|)/432 ≤
357/432 < 1 si |h(x, y, z)−a3| ≤ (|234|+ |2x4|+ |3y4|+ |4z4|+ |x2y2|+ |3x|+ |y|)/324 ≤
122/324 < 1/2, ∀ (x, y, z) ∈ V . Deci F (V ) ⊂ V si F este 1/3-contractie a multimii V în
raport cu norma ‖·‖∞. Din principiul contractiei rezulta ca ecuatia F (x, y, z) = (x, y, z)
ar solutie unica în V .
4
Pentru x(0) = (0, 0, 1/2) se calculeaza x(n) = (x(n)1 , x(n)2 , x
(n)3 ) cu formula de recurenta
x(n)1 = f(x(n−1)), x(n)2 = g(x
(n)1 , x
(n−1)2 , x
(n−1)3 ), x(n)3 = h(x
(n)1 , x
(n)2 , x
(n−1)3 ) ∀ n ∈ N . Se
opreste procesul iterativ atunci când q/(1− q)‖x(n) − x(n−1)‖∞ < ε.
Pentru ε = 10−10 se obtin urmatoarele rezultate:
n x y z
1 1.8498931624 0.7283987914 0.8064491799
2 1.8952624827 0.7347217752 0.8182233410
3 1.9002520392 0.7348417419 0.8193883638
4 1.9008188414 0.7348467169 0.8195175386
5 1.9008834671 0.7348471269 0.8195321857
6 1.9008908388 0.7348471703 0.8195338544
7 1.9008916797 0.7348471752 0.8195340447
8 1.9008917756 0.7348471757 0.8195340664
9 1.9008917866 0.7348471758 0.8195340689
10 1.9008917878 0.7348471758 0.8195340692
11 1.9008917880 0.7348471758 0.8195340692 . �
Metoda lui Newton
Fie m ∈ N∗, D o multime deschisa din Rm si f : D→ Rm o functie de clasa C2(D).
Daca presupunem ca f ′(x) este inversabila pentru orice x ∈ D, atunci ecuatia f(x) = 0
se transforma echivalent astfel:
f(x) = 0⇔f(x) + f ′(x)(x− x) = 0⇔x = x− (f ′(x))−1f(x).
În ipotezele de mai sus (fara a presupune ca f ′(x) este inversabila ∀x ∈ D), pentru
orice x(0) ∈ D definim, daca este posibil, sirul (x(n))n∈N prin relatia de recurenta
x(n+1) = x(n) − (f ′(x(n)))−1f(x(n)), ∀n ∈ N. (3)
5
Fie ‖·‖ o norma pe Rm. Notam tot cu ‖·‖ norma matriciala asociata. Presupunem
ca exista a ∈ D, r > 0, M > 0, α > 0, β > 0, µ > 0, q ∈ (0, 1) astfel încât:
1) V := Br(a) := {x ∈ Rm | ‖x− a‖ ≤ r} ⊂ D;
2) ‖f ′′(x)‖ ≤M , ∀x ∈ V ;
3) Exista (f ′(a))−1 si ‖(f ′(a))−1‖ ≤ α;
4) Mrα < 1 siα
1−Mrα≤1
µ;
5) ‖(f ′(a))−1f(a)‖ ≤ β ≤ (1− q)r;
6)M
µ2‖f(x)‖ ≤ q, ∀x ∈ V ;
7)Mr
µ≤ q.
Atunci ecuatia f(x) = 0 are o solutie unica z ∈ V si pentru orice x(0) ∈ V se poate
construi sirul (x(n))n∈N (prin relatia de recurenta (3)) cu proprietatile x(n) ∈ V si
‖x(n) − z‖ ≤2µ
Mq2
n
, ∀n ∈ N.
Exemplul -1.3 Fie sistemul de ecuatii
x3 + 3xy2 + 3xz2 − 183x+ 2 = 0
y3 ++3x2y + 3yz2 − 193y + 1 = 0
z3 + 3x2z + 3y2z − 188(z − 1)− 1 = 0
(4)
Folosind metoda Newton relativa la norma ‖·‖∞, sa se arate ca sistemul (4) are solutie
unica v în V := [−1, 1]2 × [0, 2]. Pentru o eroare ε data si pentru iterata initiala
x(0) := (0, 0, 1) sa se calculeze iterata x(n), pentru care ‖x(n) − v‖∞ ≤ ε.
Fie r = 1 si a = (0, 0, 1). Atunci multimea V este Br(a) în raport cu norma
‖ · ‖∞. Fie functia F = (f, g, h) : V→ R3 cu f(x, y, z) := x3+ 3xy2 + 3xz2 − 183x+ 2,
g(x, y, z) := y3++3x2y+3yz2−193y+1 si h(x, y, z) := z3+3x2z+3y2z−188(z−1)−1 =
0, ∀ (x, y, z) ∈ V . Sistemul de ecuatii (4) este echivalent cu F (x, y, z) = 0.
6
Avem F ′(x, y, z) =
3x2 + 3y2 + 3z2 − 183 6xy 6xz
6xy 3x2 + 3y2 + 3z2 − 193 6yz
6xz 6yz 3x2 + 3y2 + 3z2 − 188
,
F ′′(x, y, z) =
6x 6y 6z 6y 6x 0 6z 0 6x
6y 6x 0 6x 6y 6z 0 6z 6x
6z 0 6x 0 6z 6y 6x 6y 6z
,
deci ‖F ′′(x, y, z)‖∞ ≤ max(|18x| + |12y| + |12z|, |12x| + |18y| + |12z|, |12x| + |12y| +
|18z|) ≤ max(54, 54, 60) = 60 (am folosit −1 ≤ x, y ≤ 1, 0 ≤ z ≤ 2). Putem lua
M = 60. Avem F ′(a) =
−180 0 0
0 −190 0
0 0 −185
, deci F ′(a) inversabila, (F ′(a))−1 =
−1/180 0 0
0 −1/190 0
0 0 −1/185
si ‖(F ′(a))−1‖∞ = max(1/180, 1/190, 1/185) = 1/180.
Luam α = 1/180. Cum Mrα = 60/180 < 1 si α/(1 − MRα) = 1/120, putem
lua µ = 120. Avem F (a) = (2, 1, 0)t si (F ′(a))−1F (a) = (−1/90,−1/190, 0)t, deci
‖(F ′(a))−1F (a)‖∞ = 1/90. Lua m β = 1/90. Conditia β ≤ (1− q)r implica q ≤ 89/90.
Din ‖F (x, y, z)‖∞ ≤ max(|x3| + |3xy2| + |3xz2| + |183x| + 2, |y3| + |3x2y| + |3yz2| +
|193y|+ 1, |z3|+ |3x2z|+ |3y2z|+ |188(z − 1)|+ 1) ≤ max(201, 210, 209) = 210 rezulta
ca (M/µ2)‖F (x, y, z)‖∞ ≤ q⇔q ≥ 210/240 = 7/8. Din Mr/µ ≤ q rezulta q ≥ 1/2.
Deci putem lua q = 7/8 si atunci ecuatia F (x, y, z) = 0 are o solutie unica în V .
Pentru x(0) = (0, 0, 1) se calculeaza x(n) cu formula de recurenta (4) (folosind la
fiecare pas o procedura de inversare a matricei (F ′(x(n)))−1). Se opreste calculul iterativ
atunci când (2µ)/M · q2n
≤ ε⇔4 · (7/8)2n
≤ ε.
Pentru ε = 10−10 se obtin urmatoarele rezultate:
7
n x y z
1 −0.0387039145 −0.2345464953 0.8497295394
2 0.0109754027 0.0044322958 1.0031237498
3 0.0111111051 0.0052632384 0.9999155652
4 0.0111111257 0.0052631697 1.0000048646
5 0.0111111247 0.0052631693 1.0000023842
6 0.0111111248 0.0052631693 1.0000024531
7 0.0111111248 0.0052631693 1.0000024512 . �
Metoda lui Newton simplificata
Fie m ∈ N∗, D o multime deschisa din Rm si f : D→ Rm o functie de clasa C2(D).
Daca presupunem ca exista a ∈ D astfel încât f ′(a) este inversabila, atunci ecuatia
f(x) = 0 se transforma echivalent astfel:
f(x) = 0⇔f(x) + f ′(a)(x− x) = 0⇔x = x− (f ′(a))−1f(x).
Pentru orice x(0) ∈ D definim, daca este posibil, sirul (x(n))n∈N prin relatia de
recurenta
x(n+1) = x(n) − (f ′(a))−1f(x(n)), ∀n ∈ N. (5)
Fie ‖·‖ o norma pe Rm. Notam tot cu ‖·‖ norma matriciala asociata. Presupunem
ca exista r > 0, M > 0, α > 0, β > 0, q ∈ (0, 1) astfel încât:
1) V := Br(a) := {x ∈ Rm | ‖x− a‖ ≤ r} ⊂ D;
2) ‖f ′′(x)‖ ≤M , ∀x ∈ V ;
3) ‖(f ′(a))−1‖ ≤ α;
4) ‖(f ′(a))−1f(a)‖ ≤ β ≤ (1− q)r;
5) Mrα ≤ q.
Atunci ecuatia f(x) = 0 are o solutie unica z ∈ V si pentru orice x(0) ∈ V se poate
8
construi sirul (x(n))n∈N (prin relatia de recurenta (5)) cu proprieta tile x(n) ∈ V si
‖x(n) − z‖ ≤q
1− q‖x(n) − x(n−1)‖ ≤
qn
1− q‖x(1) − x(0)‖, ∀n ∈ N.
Exemplul -1.4 Fie sistemul de ecuatii
x2 + y2 + z2 + x+ y + z − 853/144 = 0
3x2 − 4y2 + z2 + x− y − 3z + 1309/432 = 0
5x2 + 2y2 − 3z2 + 2x− 4y − 6z + 37/9 = 0
(6)
Folosind metoda Newton simplificata relativa la norma ‖ · ‖∞, sa se arate ca sistemul
(6) are solutie unica v în V := [−0, 8; 1, 2]3. Pentru o eroare ε data si pentru iterata
initiala x(0) := (1, 1, 1), sa se calculeze iterata x(n) pentru care ‖x(n) − v‖∞ ≤ ε.
Fie r := 0, 2 = 1/5 si a := (1, 1, 1). Atunci multimea V este Br(a) în raport cu
norma ‖ · ‖∞. Fie functia F = (f, g, h) : V→ R3 cu f(x, y, z) := x2 + y2 + z2 + x +
y + z − 853/144, g(x, y, z) := 3x2 − 4y2 + z2 + x − y − 3z + 1309/432 si h(x, y, z) :=
5x2 + 2y2 − 3z2 + 2x − 4y − 6z + 37/9, ∀ (x, y, z) ∈ V . Sistemul de ecuatii (6) este
echivalent cu F (x, y, z) = 0.
Avem
F ′(x, y, z) =
2x+ 1 2y + 1 2z + 1
6x+ 1 −8y − 1 2z − 3
10x+ 2 4y − 4 −6z − 6
,
F ′′(x, y, z) =
2 0 0 0 2 0 0 0 2
6 0 0 0 −8 0 0 0 2
10 0 0 0 4 0 0 0 −6
,
deci ‖F ′′(x, y, z)‖∞ ≤ max(|2|+|2|+|2|, |6|+|−8|+|2|, |10|+|4|+|−6|) = 20, ∀ (x, y, z) ∈
V . Putem lua M = 20. Avem F ′(a) =
3 9 3
7 −9 −1
12 0 −12
, cu det(F ′(a)) = 72, deci
9
F ′(a) inversabila, (F ′(a))−1 =1
72
9 3 2
6 −6 2
9 3 −4
si ‖(F ′(a))−1‖∞ = max(14/72, 14/72, 16/72) =
2/9. Lua m α = 2/9. Avem F (a) = (11/144, 13/432, 1/9)t si (F ′(a))−1F (a) =
(1/72, 1/144, 1/216)t, deci ‖(F ′(a))−1F (a)‖∞ = 1/72. Luam β = 1/72. Conditia
β ≤ (1 − q)r implica q ≤ 67/72. Din αMr ≤ q rezulta q ≥ 8/9. Deci putem lua
q = 8/9 si atunci ecuatia F (x, y, z) = 0 are o solutie unica în V .
Pentru x(0) = (1, 1, 1) se calculeaza x(n) cu formula de recurenta (6). Se opreste
calculul iterativ atunci când q/(1− q) · ‖x(n) − x(n−1)‖∞ ≤ ε.
Pentru ε = 10−10 se obtin urmatoarele rezultate:
n x y z
1 0.9861111111 0.9930555556 0.9953703704
2 0.9860336380 0.9930399270 0.9953759520
3 0.9860328001 0.9930398800 0.9953760624
4 0.9860327911 0.9930398803 0.9953760635
5 0.9860327910 0.9930398803 0.9953760635 . �
10
INTERPOLARE POLINOMIALAFormula lui Lagrange
Se considera:
• n ∈ N∗;
• x1, x2, . . . , xn ∈ R cu xi �= xj pentru orice 1 ≤ i �= j ≤ n puncte (noduri)
distincte doua câte doua;
• y1, y2, . . . , yn ∈ R numere reale.
Spunem ca aceste elemente definesc un sistem de date notat cu (SL).
Se numeste polinom de interpolare Lagrange atasat sistemului de date (SL) un
polinom P ∈ R[X] cu urmatoarele proprietati:
1) gradP ≤ n− 1;
2) P (xi) = yi pentru orice 1 ≤ i ≤ n.
Polinomul de interpolare Lagrange atasat sistemului de date (SL) exista, este unic
si se reprezinta sub forma:
P (x) =n∑
i=1
yi
n∏
j=1, j �=i
x− xjxi − xj
. (1)
Formula (1) se numeste formula lui Lagrange de reprezentare a polinomului de inter-
polare.
Exemplul -1.1 Utilizând formula lui Lagrange de reprezentare sa se determine poli-
nomul de interpolare de grad 2 ce verifica conditiile:
P (0) = 2, P (1) = 1, P (4) = 4.
1
Din (1) rezulta ca:
P (x) = P (0)L1(x) + P (1)L2(x) + P (4)L3(x).
Avem:
L1(x) =(x− 1)(x− 4)(0− 1)(0− 4) =
x2 − 5x+ 44
,
L2(x) =x(x− 4)
(1− 0)(1− 4) =x2 − 4x−3 ,
L3(x) =x(x− 1)
(4− 0)(4− 1) =x2 − x
12.
Atunci:
P (x) = 2 · x2 − 5x+ 4
4+ 1 · x
2 − 4x−3 + 4 · x
2 − x
12=1
2x2 − 3
2x+ 2.�
Algoritmul lui Aitken
Fie n ∈ N∗ si x1, x2, . . . , xn puncte distincte doua câte doua, continute într-un
interval real I. Consideram o functie continua f : I → R. Se numeste polinom de
interpolare Lagrange asociat functiei f si nodurilor x1, x2, . . . , xn polinomul P de grad
mai mic sau egal cu n−1 care verifica conditiile P (xi) = f(xi). Notam valoarea acestui
polinom într-un punct x din I cu P (f ; x1, x2, . . . , xn; x). Polinomul de interpolare
Lagrange asociat functiei f si nodurilor x1, x2, . . . , xn exista si este unic.
Daca n = 1, atunci
P (f ;x1; x) = f(x1), (2)
iar daca n ≥ 2, atunci P (f ; x1, x2 . . . , xn; x) =
=P (f ; x2, x3 . . . , xn; x)(x− x1)− P (f ; x1, x2 . . . , xn−1; x)(x− xn)
xn − x1. (3)
Pentru orice 1 ≤ i ≤ n si i ≤ j ≤ n definim recurent polinoamele Pij astfel:
P1j(x) := P (f ; xj ;x) = f(xj) ∀ 1 ≤ j ≤ n si
2
Pij(x) := P (f ;x1, x2, . . . , xi−1, xj ; x) ∀ 2 ≤ i ≤ n, ∀ i ≤ j ≤ n. (4)
Cu formula (3) rezulta ca
Pij(x) =(x− xi−1)Pi−1j − (x− xj)Pi−1i−1
xj − xi−1∀ 2 ≤ i ≤ n, ∀ i ≤ j ≤ n. (5)
Observam ca P (f ;x1, x2, . . . , xn;x) = Pnn(x).
Prezentam în continuare un algoritm pentru calculul coeficientilor polinomului de
interpolare Lagrange P (f ; x1, x2, . . . , xn; x) (bazat pe algoritmul Aitken):
Cum gradPij ≤ i− 1 ∀ 1 ≤ i ≤ n, ∀ i ≤ j ≤ n, putem scrie
Pij(x) = aij1 + aij2 x+ · · ·+ aiji xi−1.
Egalând coeficientii lui xk cu 0 ≤ k ≤ i− 1 din relatile (4) si (5), obtinem:
a1j1 = f(xj) ∀ 1 ≤ j ≤ n,
aij1 =−ai−1 j1 xi−1 + ai−1 i−11 xj
xj − xi−1
aijk =ai−1 jk−1 − ai−1 jk xi−1 − ai−1 i−1k−1 + ai−1 i−1k xj
xj − xi−1∀ 2 ≤ k ≤ i− 1
aiji =ai−1 ji−1 − ai−1 i−1i−1
xj − xi−1
,
∀ 2 ≤ i ≤ n, ∀ i ≤ j ≤ n. Deci se observa ca determinarea coeficientilor aijk este
recursiva. În concluzie, avem:
P (f ; x1, x2, . . . , xn;x) = ann1 + ann2 x+ · · ·+ annn xn−1 .
Exemplul -1.2 Fie functia f : [0, 12] → R cu f(x) = 6√2x+ 1 − 2x, ∀x ∈ [0, 12].
Sa se determine polinomul de interpolare Lagrange P (f ; 0, 4, 12; x) utilizând algoritmul
Aitken.
Nodurile sunt x1 = 0, x2 = 4, x3 = 12. Atunci P11(x) = f(0) = 6, P12(x) = f(4) =
10, P13(x) = f(12) = 6. Rezulta ca
P22(x) =10x− 6(x− 4)
4= x+ 6,
3
P23(x) =6x− 6(x− 12)
12= 6
si astfel
P (f ; 0, 4, 12;x) = P33(x) = −x2
8+3x
2+ 6 .
Algoritmul lui Neville
Fie n ∈ N∗ si x1, x2, . . . , xn puncte distincte doua câte doua continute într-un
interval real I. Consideram o functie continua f : I → R.
Pentru orice 1 ≤ i ≤ n si i ≤ j ≤ n definim recurent polinoamele Pij astfel:
P1j(x) := P (f ; xj ; x) = f(xj) ∀ 1 ≤ j ≤ n si
Pij(x) = P (f ; xj−i+1, . . . , xj−1, xj; x) ∀ 2 ≤ i ≤ n, ∀ i ≤ j ≤ n. (6)
Cu formula (3) rezulta ca
Pij(x) =(x− xj−i+1)Pi−1 j − (x− xj)Pi−1 j−1
xj − xj−i+1∀ 2 ≤ i ≤ n, ∀ i ≤ j ≤ n. (7)
Observam ca P (f ;x1, x2, . . . , xn;x) = Pnn(x).
Prezentam în continuare un algoritm pentru calculul coeficientilor polinomului de
interpolare Lagrange P (f ; x1, x2, . . . , xn; x) (bazat pe algoritmul Neville):
Cum gradPij ≤ i− 1 ∀ 1 ≤ i ≤ n, ∀ i ≤ j ≤ n, putem scrie
Pij(x) = aij1 + aij2 x+ · · ·+ aiji xi−1
Egalând coeficientii lui xk cu 0 ≤ k ≤ i− 1, din relatile (6) si (7) obtinem:
a1j1 = f(xj) ∀ 1 ≤ j ≤ n,
aij1 =−ai−1 j1 xj−i+1 + ai−1 j−11 xj
xj − xj−i+1
aijk =ai−1 jk−1 − ai−1 jk xj−i+1 − ai−1 j−1k−1 + ai−1 j−1k xj
xj − xj−i+1∀ 2 ≤ k ≤ i− 1,
aiji =ai−1 ji−1 − ai−1 j−1i−1
xj − xj−i+1
4
∀ 2 ≤ i ≤ n, ∀ i ≤ j ≤ n. Deci se observa ca determinarea coeficientilor aijk este
recursiva. Astfel, avem:
P (f ; x1, x2, . . . , xn;x) = ann1 + ann2 x+ · · ·+ annn xn−1 .
Exemplul -1.3 Fie functia f : [0, 12] → R cu f(x) = 6√2x+ 1 − 2x, ∀x ∈ [0, 12].
Sa se determine polinomul de interpolare Lagrange P (f ; 0, 4, 12; x) utilizând algoritmul
Neville.
Nodurile sunt x1 = 0, x2 = 4, x3 = 12. Atunci P11(x) = f(0) = 6, P12(x) = f(4) =
10, P13(x) = f(12) = 6. Rezulta ca
P22(x) =10x− 6(x− 4)
4= x+ 6,
P23(x) =6(x− 4)− 10(x− 12)
8= −x
2+ 12
si astfel
P (f ; 0, 4, 12;x) = P33(x) = −x2
8+3x
2+ 6
Formula lui Newton de reprezentare a polinomului de interpolare
Se considera:
• n ∈ N∗;
• x1, x2, . . . , xn ∈ R un sistem de puncte (noduri);
• m ∈ N∗ numarul de puncte distincte;
• y1, y2, . . . , ym ∈ R punctele distincte ale sistemului;
• n1, n2, . . . , nm ∈ N∗ ordinele de multiplicitate ale punctelor distincte în sistem;
• zij ∈ R cu 1 ≤ i ≤ m, 0 ≤ j ≤ ni − 1 familie de elemente reale.
5
Spunem ca aceste elemente definesc un sistem de date notat cu (SH).
Se numeste polinom de interpolare Hermite atasat sistemului de date (SH) un
polinom P ∈ R[x] cu urmatoarele proprietati:
1) gradP ≤ n− 1;
2) P (j)(yi) = zij pentru orice 1 ≤ i ≤ m, 0 ≤ j ≤ ni − 1.
Polinomul de interpolare Hermite atasat sistemului dedate (SH) exista si este unic.
Fie I un interval real ce contine punctele x1, . . . , xn si f : I → R o functie de ni−1
ori derivabila în yi pentru orice 1 ≤ i ≤ m. Luam zij := f (j)(yi), ∀ 1 ≤ i ≤ m, 0 ≤
j ≤ ni− 1. Polinomul de interpolare Hermite atasat acestui sistem de date se numeste
polinom de interpolare asociat functiei f si sistemului de date (SH). Notam valoarea
acestui polinom într-un punct x din I cu P (f ; x1, x2, . . . , xn; x).
Se numeste diferenta divizata a functiei f relativa la sistemul de noduri x1, x2, . . . , xn
coeficientul lui xn−1 din reprezentarea canonica a polinomului de interpolare P (f ; x1, x2, . . . , xn; x).
Notam diferenta divizata cu f(x1, x2, . . . , xn). Diferentele divizate se calculeaza cu aju-
torul urmatoarelor formule:
Pentru n ≥ 2 si x1 �= xn
f(x1, x2, . . . , xn) =f(x2, . . . , xn)− f(x1, . . . , xn−1)
xn − x1,
iar
f(a, a, . . . , a︸ ︷︷ ︸n ori
) =f (n−1)(a)
(n− 1)! . (8)
Urmatoarea egalitate este formula lui Newton de reprezentare a polinomului de
interpolare:
P (f ; x1, x2, . . . , xn; x) = f(x1) +n∑
i=2
f(x1, x2, . . . , xi)i−1∏
j=1
(x− xj).
Fie f : I → R o functie de n ori derivabila pe I. Atunci
|f(x)− P (f ; x1, x2, . . . , xn; x)| ≤1
n!·maxx∈I
∣∣f (n)(x)∣∣ ·∣∣∣∣∣
n∏
i=1
(x− xi)
∣∣∣∣∣, ∀x ∈ I.
6
Algoritm:
Notam cu aij diferentele divizate f(xj−i+1, . . . , xj−1,xj), ∀ i ∈ {2, . . . , n}, ∀ j ∈
{i, . . . , n} si cu ci = aii. Atunci P (x) := P (f ;x1, x2, . . . , xn;x) = c1 +n∑
i=2
cii−1∏
j=1
(x− xj)
Pentru i ∈ 1, n luam a1i = f(xi) si c1 = a1.
Apoi pentru i = 2, n, calculam diferentele divizate aij =ai−1:j − ai−1:j−1xj − xj−i+1
∀ j = i, n
si luam ci = aii.
Polinomul P în punctul x îl putem calcula cu o schema de tip Horner astfel:
Are loc descompunerea:
P = [. . . [[[cn](x− xn−1)− cn−1](x− xn−2) + cn−2](x− xn−3) + · · ·
· · ·+ c2](x− x1) + c1
Rezulta schema de calcul:
P = cn; P = P · (x−xn−1)+ cn−1; P = P · (x−xn−2)+ cn−2; . . . ; P = P · (x−x1)+ c1
deci
• P := cn;
• pentru i = n− 1 pâna la 1 luam P = P · (u− xi) + ci;
Exemplul -1.4 Fie functia f : [0, 4] → R cu f(x) = 6√2x+ 1 − 2x, ∀x ∈ [0, 4].
Utilizând formula de reprezentare Newton sa se determine polinomul de interpolare
Hermite P (x) = P (f ; 0, 0, 0, 4, 4; x). Se se evalueze eroarea |f(x)− P (x)|.
Avem x1 = x2 = x3 = 0, x4 = x5 = 4. Din formula de reprezentare Newton avem:
P (f ; 0, 0, 0, 4, 4; x) = f(0) + f(0, 0)x+ f(0, 0, 0)x2+
+f(0, 0, 0, 4)x3 + f(0, 0, 0, 4, 4)x3(x− 4)
7
Vom calcula diferentele divizate cu formulele de recurenta date de (8). Calculele le
vom organiza într-un tabel de forma:
nod d.d. d.d. d.d. d.d. d.d.
1n 2n 3n 4n 5n
x1 f(x1) f(x1, x2) f(x1, x2, x3) f(x1, x2, x3, x4) f(x1, . . . , x5)
x2 f(x2) f(x2, x3) f(x2, x3, x4) f(x2, x3, x4, x5)
x3 f(x3) f(x3, x4) f(x3, x4, x5)
x4 f(x4) f(x4, x5)
x5 f(x5)
(am notat cu "d.d.kn " diferente divizate asociate la k noduri).
Cum f(x) = 6√2x+ 1− 2x = 6(2x+1)1/2− 2x, rezulta ca f ′(x) = 6(2x+1)−1/2−
2 si f ′′(x) = −6(2x + 1)−3/2. Atunci f(0) = 6, f(4) = 10, f(0, 0) = f ′(0) = 4,
f(0, 4) = (f(4) − f(0))/(4 − 0) = 1, f(4, 4) = f ′(4) = 0, f(0, 0, 0) = 12f ′′(0) = −3,
f(0, 0, 4) = (f(0, 4) − f(0, 0))/(4 − 0) = −3/4 etc.. Rezulta urmatorul tabel în cazul
datelor problemei:
nod 1n 2n 3n 4n 5n
0 6 4 −3 9/16 −7/64
0 6 4 −3/4 2/16
0 6 1 −1/4
4 10 0
4 10
Atunci (cu formula de reprezentare Newton) avem
P (f ; 0, 0, 0, 4, 4; x) = 6 + 4x− 3x2 + 9
16x3 − 7
64x3(x− 4).
Din formula de evaluare a erorii rezulta ca
|f(x)− P (f ; 0, 0, 0, 4, 4;x)| ≤ M5
5!|x3(x− 4)2| ∀x ∈ [0, 4],
8
unde M5 = supx∈[0,4]
|f (5)(x)|. Avem f (3)(x) = 18(2x+ 1)−5/2, f (4)(x) = −90(2x+ 1)−7/2,
f (5)(x) = 630(2x+1)−9/2. Cum f (6)(x) = −630 · 9(2x+1)−11/2 < 0, rezulta ca f (5)este
descrescatoare si cum f (5)(x) > 0 ∀x ∈ [0, 4] rezulta ca M5 = f (5)(0) = 630. Atunci
|f(x)− P (x)| ≤ 630
120|x3(x− 4)2| = 21
4x3(x− 4)2, ∀x ∈ [0, 4]. �
Interpolare Cebâsev
În cele ce urmeaza ne propunem sa diminuam eroarea la interpolarea polinomiala
Lagrange pe un interval dat [a, b] în cazul unui numar dat n ∈ N∗ de noduri prin
alegerea unor "noduri optimale". Definim "nodurile optimale" y1, y2, . . . , yn prin re-
latia:
supx∈[a,b]
n∏
i=1
|x− yi| ≤ supx∈[a,b]
n∏
i=1
|x− xi|, (9)
pentru orice puncte x1, x2, . . . , xn din [a, b]. În continuare vVom construi aceste "noduri
optimale".
Functia Tn : R → R data de Tn(x) = cos(n arccosx) este un polinom de gradul n
si are n radacini distincte situate în intervalul [−1, 1].
Fie n ∈ N∗ si a < b ∈ R. Notam
Pn(x) = 2
(b− a
4
)nTn
(2x− a− b
b− a
)∀x ∈ [a, b] (10)
Atunci
supx∈[a,b]
|Pn(x)| ≤ supx∈[a,b]
|Q(x)|,
pentru orice polinom Q monic de grad n.
"Nodurile optimale", pe un interval dat [a, b], la interpolarea polinomiala Lagrange
cu n puncte, sunt:
yi =b− a
2cos
((2i− 1)π2n
)+b+ a
2∀ i ∈ 1, n.
9
Formula lui Newton de interpolare ascendenta
Fie I un interval real, familia (xj)j∈Z o retea de noduri (reale) echidistante cu pasul
h definita prin x0 ∈ I si xj = x0 + jh, ∀ j ∈ N. Notam q :=x− x0h
unde x ∈ I.
Pentru x ∈ I si n ∈ N∗ notam Anx =n−1∏
j=0
(x− j) numite aranjamente generalizate si
Cnx =
Anxn!
numite combinari generalizate. Prin conventie luam A0x = 1 si C0x = 1.
Fie f : I → R o functie, x ∈ I si h > 0 un numar real. Numim diferenta
nedivizata ascendenta a functiei f în punctul x, corespunzatoare pasului h
(si o notam cu ∆hf(x)), expresia:
∆hf(x) := f(x+ h)− f(x).
Fie n ∈ N∗. Numim diferenta nedivizata ascendenta de ordin n a functiei f în
punctul x, corespunzatoare pasului h (si o notam cu ∆nhf(x)) compunerea:
∆nhf(x) := ∆n−1h (∆hf(x)),
unde, prin conventie, ∆0hf(x) = f(x), iar ∆1h = ∆h.
Cu datele si notatiile anterioare este adevarata egalitatea
P (f ;x0, x1, . . . , xn;x) =n∑
i=0
Ciq∆ihf(x0),
numita formula lui Newton de interpolare ascendenta.
Exemplul -1.5 Sa se determine, folosind formula de interpolare Newton ascendenta,
polinomul Lagrange atasat datelor: n = 3, x0 = 4, h = 2 (de unde x1 = 6, x2 = 8,
x3 = 10) si f : R → R o functie continua cu f(x0) = 1, f(x1) = 3, f(x2) = 8,
f(x3) = 20 si sa se estimeze valoarea functiei f în punctul x = 7.
10
Organizam calculul diferentelor nedivizate ascendente în tabelul urmator:
k xk f(xk) ∆1hf(xk) ∆2hf(xk) ∆3hf(xk)
0 4 1 2 3 4
1 6 3 5 7
2 8 8 12
3 10 20
(De exemplu∆1hf(x0) = ∆hf(x0) = f(x1)−f(x0) = 3−1 = 2,∆2hf(x0) = ∆
1h∆hf(x0) =
∆hf(x1) − ∆hf(x0) = ∆1hf(x1) − ∆1hf(x0) = 5 − 2 = 3, etc.) Atunci ∆0
hf(x0) = 1,
∆1hf(x0) = 2, ∆2hf(x0) = 3, ∆
3hf(x0) = 4.
Fie x ∈ R Avem q =x− x0h
=x− 42
si atunci C0q = 1, C1
q = q =x− 42
, C2q =
q(q − 1)2
=(x− 4)(x− 6)
8, C3
q =q(q − 1)(q − 2)
6=(x− 4)(x− 6)(x− 8)
48. Rezulta
ca: P (f ;x0, x1, x2, x3; x) =
3∑
i=0
Ciq∆ihf(x0) = 1 + (x− 4) +
3
8(x− 4)(x− 6) + 4
48(x− 4)(x− 6)(x− 8)
si deci
P (f ;x0, x1, x2, x3; 7) = 1 + 3 +9
8− 14=39
8= 4.875 .�
Formula lui Newton de interpolare descendenta
Cu notatiile de la sectiunea anterioara, fie f : I → R o functie, x ∈ I si h > 0 un
numar real. Numim diferenta nedivizata descendenta a functiei f în punctul
x, corespunzatoare pasului h (si o notam cu ∇hf(x)), expresia:
∇hf(x) := f(x)− f(x− h).
Fie n ∈ N∗. Numim diferenta nedivizata descendenta de ordinul n a functiei
f în punctul x, corespunzatoare pasului h (si o notam cu ∇nhf(x)) compunerea:
∇nhf(x) := ∇n−1
h (∇hf(x)),
11
unde, prin conventie, ∇0hf(x) = f(x), iar ∇1
h = ∇h.. Atunci este adevarata egalitatea
P (f ;x0, x−1, . . . , x−n; x) =n∑
i=0
(−1)iCi−q∇i
hf(x0),
numita formula lui Newton de interpolare descendenta.
Exemplul -1.6 Sa se determine, folosind formula de interpolare Newton descendenta,
polinomul Lagrange atasat datelor: n = 3, x0 = 10, h = 2 (de unde x−1 = 8, x−2 = 6,
x−3 = 4) si f : R → R o functie continua cu f(x0) = 20, f(x−1) = 8, f(x−2) = 3,
f(x−3) = 1 si sa se estimeze valoarea functiei f în punctul x = 7.
Organizam calculul diferentelor nedivizate descendente în tabelul urmator:
k xk f(xk) ∇1hf(xk) ∇2
hf(xk) ∇3hf(xk)
0 10 20 12 7 4
−1 8 8 5 3
−2 6 3 2
−3 4 1
(De exemplu ∇1hf(x0) = ∇hf(x0) = f(x0) − f(x−1) = 20 − 8 = 12, ∇2
hf(x0) =
∇1h∇hf(x0) = ∇hf(x0)−∇hf(x−1) = ∇1
hf(x0)−∇1hf(x−1) = 12− 5 = 7, etc.) Atunci
∇0hf(x0) = 20, ∇1
hf(x0) = 12, ∇2hf(x0) = 7, ∇3
hf(x0) = 4.
Fie x ∈ R. Avem q =x− x0h
=x− 102
si atunci
C0−q = 1, C1
−q = −q = −x− 102
, C2−q =
−q(−q − 1)2
=(x− 10)(x− 8)
8, C3−q =
−q(−q − 1)(−q − 2)6
=(x− 10)(x− 8)(x− 6)
48. Rezulta ca:
P (f ; x0, x−1, x−2, x−3;x) =3∑
i=0
(−1)iCi−q∇i
hf(x0) =
= 20 +12
2(x− 10) + 7
8(x− 10)(x− 8) + 4
48(x− 10)(x− 8)(x− 6)
si deci
P (f ; x0, x−1, x−2, x−3; 7) = 20− 18 +21
8+1
4=39
8= 4.875 .�
12
Formula de interpolare Gauss înainte
Fie f : I → R o functie, x ∈ I si h > 0 un numar real. Numim diferenta
nedivizata centrala a functiei f în punctul x corespunzatoare pasului h (si o
notam cu δhf(x)), expresia:
δhf(x) := f
(x+
h
2
)− f
(x− h
2
).
Fie n ∈ N∗. Numim diferenta nedivizata centrala de ordinul n a functiei f în
punctul x, corespunzatoare pasului h (si o notam cu δnhf(x)) compunerea:
δnhf(x) := δn−1h (δhf(x)),
unde, prin conventie, δ0hf(x) = f(x), iar δ1hf(x) = δhf(x).
Atunci este adevarata egalitatea
P (f ; x−n . . . , x−1, x0, x1 . . . , xn;x) =
= f(x0) +n∑
i=1
(C2i−1q+i−1δ
2i−1h f(x1/2) + C2i
q+i−1δ2ih f(x0))
(unde x1/2 = x+1
2h), numita formula de interpolare Gauss înainte.
Exemplul -1.7 Sa se determine, folosind formula de interpolare Gauss înainte, poli-
nomul Lagrange atasat datelor: n = 2, x0 = 6, h = 2 (de unde x−2 = 2, x−1 = 4,
x1 = 8, x2 = 10) si f : R → R o functie continua cu f(x−2) = −2, f(x−1) = 1,
f(x0) = 3, f(x1) = 8, f(x2) = 20 si sa se estimeze valoarea functiei f în punctul
x = 7.
Printr-un calcul elementar, se arata ca, pentru orice i = 1, 2:
δ2i−1h f(x1/2) = ∆2i−1h f(x−i+1) si δ2ih f(x0)) = ∆
2ih f(x−i)).
13
Atunci: P (f ;x−2, x−1, x0, x1, x2; x) =
f(x0) +2∑
i=1
(C2i−1q+i−1∆
2i−1h f(x−i+1) + C2i
q+i−1∆2ih f(x−i)) =
= f(x0) + C1q∆
1hf(x0) + C2
q∆2hf(x−1) + C3
q+1∆3hf(x−1) + C4
q+1∆4hf(x−2).
Organizam calculul diferentelor finite ascendente în tabelul urmator:
k xk f(xk) ∆1hf(xk) ∆2hf(xk) ∆3hf(xk) ∆4
hf(xk)
−2 2 −2 3 −1 4 0
−1 4 1 2 3 4
0 6 3 5 7
1 8 8 12
2 10 20
Avem: f(x0) = 3,∆1hf(x0) = 5,∆2hf(x−1) = 3,∆3hf(x−1) = 4,∆4
hf(x−2) = 0. Cum
q =x− 62
rezulta ca C1q = q =
x− 62
, C2q =
q(q − 1)2
=(x− 6)(x− 8)
8, C3
q+1 =
(q + 1)q(q − 1)6
=(x− 4)(x− 6)(x− 8)
48. Atunci:
P (f ;x−2, x−1, x0, x1, x2; x) =
= 3 + 5x− 62
+ 3(x− 6)(x− 8)
8+ 4
(x− 4)(x− 6)(x− 8)48
si
f(7) � P (f ; x−2, x−1, x0, x1, x2; 7) = 3 +5
2− 38− 14=39
8= 4.875 .�
Formula de interpolare Gauss înapoi
Cu notatiile din sectiunea anterioara este adevarata egalitatea:
P (f ; x−n . . . , x−1, x0, x1 . . . , xn;x) =
= f(x0) +n∑
i=1
(C2i−1q+i−1δ
2i−1h f(x−1/2) + C2i
q+iδ2ih f(x0))
(unde x−1/2 = x0 −1
2h), numita formula de interpolare Gauss înapoi.
14
Exemplul -1.8 Sa se determine, folosind formula de interpolare Gauss înapoi, polino-
mul Lagrange atasat datelor: n = 2, x0 = 6, h = 2 (de unde x−2 = 2, x−1 = 4, x1 = 8,
x2 = 10) si f : R → R o functie continua cu f(x−2) = −2, f(x−1) = 1, f(x0) = 3,
f(x1) = 8, f(x2) = 20 si sa se estimeze valoarea functiei f în punctul x = 7.
Printr-un calcul elementar, se arata ca, pentru orice i = 1, 2:
δ2i−1h f(x1/2) = ∆2i−1h f(x−i+1) si δ2ih f(x0)) = ∆
2ih f(x−i)).
Atunci: P (f ;x−2, x−1, x0, x1, x2; x) =
f(x0) +2∑
i=1
(C2i−1q+i−1∆
2i−1h f(x−i) + C2i
q+i∆2ih f(x−i)) =
= f(x0) + C1q∆1hf(x−1) + C2
q+1∆2hf(x−1) + C3
q+1∆3hf(x−2) + C4
q+2∆4hf(x−2).
Organizam calculul diferentelor finite ascendente în tabelul urmator:
k xk f(xk) ∆1hf(xk) ∆2hf(xk) ∆3hf(xk) ∆4
hf(xk)
−2 2 −2 3 −1 4 0
−1 4 1 2 3 4
0 6 3 5 7
1 8 8 12
2 10 20
Avem: f(x0) = 3,∆1hf(x−1) = 2,∆2hf(x−1) = 3,∆3hf(x−2) = 4,∆4
hf(x−2) = 0. Cum
q =x− 62
, rezulta ca C1q = q =
x− 62
, C2q+1 =
(q + 1)q
2=(x− 4)(x− 6)
8, C3q+1 =
(q + 1)q(q − 1)6
=(x− 4)(x− 6)(x− 8)
48. Atunci:
P (f ;x−2, x−1, x0, x1, x2; x) =
= 3 + 2x− 62
+ 3(x− 4)(x− 6)
8+ 4
(x− 4)(x− 6)(x− 8)48
15
si
f(7) � P (f ; x−2, x−1, x0, x1, x2; 7) = 3 + 1 +9
8− 14=39
8= 4.875 . �
Interpolare cu functii spline cubice
Fie I = [a, b] ⊂ R, ∆n = (a = x1 < x2 < . . . < xn = b) o diviziune a intervalului
[a, b] si fi ∈ R , i = 1, n pentru n ∈ N�.
Se numeste functie spline cubica, corespunzatoare diviziunii ∆n o functie s :
[a, b] −→ R care satisface conditiile:
i) s|[xi,xi+1] este polinom de gradul trei pentru i = 1, n− 1
ii) s ∈ C2([a, b]) .
Se noteaza cu S3(∆n) multimea functiilor spline cubice, corespunzatoare diviziunii ∆n.
Functia spline cubica asociata sistemului de puncte (xi, fi)i=1,n este o functie
cubica corespunzatoare diviziunii ∆n, s : [a, b]→ R, cu proprietatea
s (xi) = fi , i = 1, n .
În conditile formulate mai sus, ∀ i = 1, n− 1, functia s se reprezinta în mod unic
sub forma:
s(x) = c1i+c2i (x− xi)+c3i2(x− xi)
2+c4i6(x− xi)
3 , ∀x ∈ [xi, xi+1], (11)
unde
c1i = fi ,
c2i = si ,
c3i =1
xi+1 − xi
[6fi+1 − fixi+1 − xi
− (4si + 2si+1)],
c4i =6
(xi+1 − xi)2
[(si + si+1)− 2
fi+1 − fixi+1 − xi
−],
(12)
16
iar s1, . . . , sn sunt solutiile sistemului:
(xi+1 − xi) si−1 + 2 (xi+1 − xi−1) si + (xi − xi−1) si+1 =
3
[fi − fi−1xi − xi−1
(xi+1 − xi) +fi+1 − fixi+1 − xi
(xi − xi−1)
], i = 2, n− 1 .
(13)
Pentru determinarea unica a spline-ului cubic, sistemul (12) trebuie completat cu
conditii la capete. De exemplu, putem presupune ca sunt cunoscute valorile pentru
s′′
(x1) si s′′
(xn):
s′′
(x1) = α , s′′
(xn) = β , (14)
sau ca sunt cunoscute valorile pentru s′
(x1) si s′
(xn):
s1 = s′
(x1) = α , sn = s′
(xn) = β . (15)
Relatiile (14) sunt echivalente cu:
2s1 + s2 = 3f2 − f1x2 − x1
− α
2(x2 − x1)
sn−1 + 2sn = 3fn − fn−1xn − xn−1
+β
2(xn − xn−1) .
Remarca. Din (13) si (??) sau din (13) si (15) din se pot determina s1, . . . , sn,
apoi din (12) se determina c1i, c2i, c3i, c4i pentru i = 1, n− 1 si deci, conform cu
(11), functia s este cunoscuta pe [a, b]. Pentru f : [a, b] → R de doua ori derivabila
determinam functia spline cubica de interpolare asociata diviziunii ∆n si functiei f ,
adica, o functie spline cubica s ∈ S3(∆n) cu proprietatile s(xi) = f(xi), ∀ i ∈ 1, n si
s′′
(a) = f′′
(a) si s′′
(b) = f′′
(b) .
sau s′
(a) = f′
(a) si s′
(b) = f′
(b) .
17
Derivare numerica
Derivarea numerica consta în aproximarea derivatelor de un anumit ordin ale unei
functii, printr-o combinatie liniara de valori ale functiei în anumite puncte.
Formule pentru derivata de ordinul I
Fie f : R → R o functie derivabila, x0 ∈ R si h > 0 un numar real numit pas.
Atunci
f ′(x0) =f(x0 + h)− f(x0)
h+R(f), (1)
unde, daca f ∈ C2([x0, x0 + h]), restul R(f) poate fi evaluat prin
|R(f)| ≤h
2· maxx∈[x0,x0+h]
|f ′′(x)| .
f ′(x0) =f(x0)− f(x0 − h)
h+R(f), (2)
unde, daca f ∈ C2([x0 − h, x0]), restul R(f) poate fi evaluat prin
|R(f)| ≤h
2· maxx∈[x0−h,x0]
|f ′′(x)| .
Formulele de derivare (1) @si (2) sunt exacte pe multimea polinoamelor de gradul 1.
f ′(x0) =f(x0 + h)− f(x0 − h)
2h+R(f), (3)
unde, daca f ∈ C3([x0 − h, x0 + h]), restul R(f) poate fi evaluat prin
|R(f)| ≤h2
6· maxx∈[x0−h,x0+h]
|f ′′′(x)| .
Formula de derivare numerica anterioara se poate generaliza astfel:
f ′(x0) h21f(x0 + h2) + (h
22 − h
21)f(x0)− h
22f(x0 − h1)
h1h2(h1 + h2),
unde h1, h2 sunt numere reale pozitive.
f ′(x0) =−3f(x0) + 4f(x0 + h)− f(x0 + 2h)
2h+R(f), (4)
1
unde, daca f ∈ C3([x0, x0 + 2h]), restul R(f) poate fi evaluat prin
|R(f)| ≤h2
3· maxx∈[x0,x0+2h]
|f ′′′(x)| .
Formulele de derivare (3) @si (4) sunt exacte pe multimea polinoamelor de gradul 2.
f ′(x0) =−11f(x0) + 18f(x0 + h)− 9f(x0 + 2h) + 2f(x0 + 3h)
6h+R(f), (5)
unde, daca f ∈ C4([x0, x0 + 3h]), restul R(f) poate fi evaluat prin
|R(f)| ≤h3
18· maxx∈[x0,x0+3h]
∣∣f (4)(x)∣∣
Formula de derivare (5) este exacta pe multimea polinoamelor de gradul 3.
f ′(x0) =f(x0 − 2h)− 8f(x0 − h) + 8f(x0 + h)− f(x0 + 2h)
12h+R(f), (6)
unde, daca f ∈ C5([x0 − 2h, x0 + 2h]), restul R(f) poate fi evaluat prin
|R(f)| ≤2h4
5· maxx∈[x0−2h,x0+2h]
∣∣f (5)(x)∣∣ .
Formula de derivare (6) este exacta pe multimea polinoamelor de gradul 4.
bf Formule pentru derivata de ordinul II
Fie f : R → R o functie de doua ori derivabila, x0 ∈ R si h > 0 un numar real
numit pas. Atunci
f ′′(x0) =f(x0)− 2f(x0 + h) + f(x0 + 2h)
h2+R(f), (7)
unde, daca f ∈ C3([x0, x0 + 2h]), restul R(f) poate fi evaluat prin
|R(f)| ≤ h · maxx∈[x0,x0+2h]
|f ′′′(x)| .
Formula de derivare (6) este exacta pe multimea polinoamelor de gradul 2.
f ′′(x0) = R(f)+
2
−f(x0 − 2h) + 16f(x0 − h)− 30f(x0) + 16f(x0 + h)− f(x0 + 2h)
12h2, (8)
unde, daca f ∈ C5([x0 − 2h, x0 + 2h]), restul R(f) poate fi evaluat prin
|R(f)| ≤h3
5· maxx∈[x0−2h,x0+2h]
∣∣f (5)x)∣∣ .
Formula de derivare (6) este exacta pe multimea polinoamelor de gradul 4.
Exemplul -1.1 Sa se aproximeze derivatele de ordinul I si ordinul II ale functiei
f(x) = e−xsin(x) în punctul x0 = 1, cu metodele prezentate mai sus, luând pentru
pasul h valorile 0.1; 0.01; 0.001; 0.0001.
Cu formula de derivare (1) se obtin rezultatele: h = 0.1⇒ f ′(x0) −0.1290271591;h =
0.01 ⇒ f ′(x0) −0.1127645338;h = 0.001 ⇒ f ′(x0) −0.1109923614;h = 0.0001 ⇒
f ′(x0) −0.1108136394.
Cu formula de derivare (2) se obtin rezultatele: h = 0.1⇒ f ′(x0) −0.0891707946, h =
0.01 ⇒ f ′(x0) −0.1087891083, h = 0.001 ⇒ f ′(x0) −0.1105948299, h = 0.0001 ⇒
f ′(x0) −0.1107738899.
Cu formula de derivare (3) se obtin rezultatele: h = 0.1⇒ f ′(x0) −0.1090989768, h =
0.01 ⇒ f ′(x0) −0.1107768211, h = 0.001 ⇒ f ′(x0) −0.1107935957, h = 0.0001 ⇒
f ′(x0) −0.1107937646.
Cu formula de derivare (4) se obtin rezultatele: h = 0.1⇒ f ′(x0) −0.1138788298, h =
0.01 ⇒ f ′(x0) −0.1108273447, h = 0.001 ⇒ f ′(x0) −0.1107941027, h = 0.0001 ⇒
f ′(x0) −0.1107937669.
Cu formula de derivare (4) se obtin rezultatele: h = 0.1⇒ f ′(x0) −0.1138788298, h =
0.01 ⇒ f ′(x0) −0.1108273447, h = 0.001 ⇒ f ′(x0) −0.1107941027, h = 0.0001 ⇒
f ′(x0) −0.1107937669.
Cu formula de derivare (5) se obtin rezultatele: h = 0.1⇒ f ′(x0) −0.1110871310, h =
0.01 ⇒ f ′(x0) −0.1107940736, h = 0.001 ⇒ f ′(x0) −0.1107937643, h = 0.0001 ⇒
f ′(x0) −0.1107937699.
3
Cu formula de derivare (6) se obtin rezultatele: h = 0.1⇒ f ′(x0) −0.1107952264, h =
0.01 ⇒ f ′(x0) −0.1107937655, h = 0.001 ⇒ f ′(x0) −0.1107937652, h = 0.0001 ⇒
f ′(x0) −0.1107937669.
Valoarea exacta este f ′(x0) = −0.1107937653.
Cu formula de derivare (7) se obtin rezultatele: h = 0.1⇒ f ′′(x0) −0.3029665865, h =
0.01⇒ f ′′(x0) −0.3874378126, h = 0.001⇒ f ′′(x0) −0.3965174074, h = 0.0001⇒
f ′′(x0) −0.3974491847.
Cu formula de derivare (8) se obtin rezultatele: h = 0.1⇒ f ′′(x0) −0.3975339923, h =
0.01⇒ f ′′(x0) −0.3975322253, h = 0.001⇒ f ′′(x0) −0.3975308497, h = 0.0001⇒
f ′′(x0) −0.3974643429.
Valoarea exacta este f ′′(x0) = −0.3975322207.
Derivare numerica obtinuta prin interpolare
Fie f : [a, b] → R, n ∈ N∗, x1, . . . , xn puncte distincte din [a, b]. Presupunem
ca f este derivabila. Se numeste derivare numerica obtinuta prin interpolare a lui f
aproximarea lui f ′(x) prin P ′(f ; x1, . . . , xn;x), ∀x ∈ [a, b].
Din formula de reprezentare a lui Newton avem:
P (f ; x1, . . . , xn; x) = f(x1) +n∑
i=2
f(x1, . . . , xi) ·i−1∏
j=1
(x− xj).
Rezulta ca:
P ′(f ;x1, . . . , xn; x) = f(x1, x2) +n∑
i=3
f(x1, . . . , xi) ·
(i−1∑
j=1
i−1∏
k=1, k �=j
(x− xk)
)
,
∀ (n ≥ 3). Pentru calculul diferentelor divizate se foloseste algoritmul Neville: fie,
prin notatie, Fij = f [xj−i+1, . . . , xj−1,xj ]. Atunci Fij satisfac relatiile de recurenta:
F1i = f(xi), ∀ i ∈ 1, n si Fij =Fi−1:j − Fi−1:j−1xj − xj−i+1
, ∀ i ∈ {2, . . . , n},∀ j ∈ {i, . . . , n},
deci f(x1, . . . , xi) = Fii, ∀i ∈ {2, . . . , n} .
4
Cuadraturi numerice
Fie [a, b] ⊂ R, x1, x2, . . . , xn puncte distincte din [a, b] si f : [a, b] → R o functie
continua. Se numeste formula de cuadratura egalitatea
σ(f) =n∑
i=1
cif(xi), unde ci ∈ R, ∀ i = 1, n.
Se numeste integrare numerica aproximarea integraleib∫
a
f(x)dx cu σ(f).
Fie k ∈ N∗, h = (b − a)/k, xi = a + ih, ∀ i ∈ 0, k. Daca σi(f) este o formula
de cuadratura a functiei f pe intervalul [xi, xi+1], ∀ i ∈ 0, k − 1, atunci se defineste
formula de cuadratura sumata
σ(k)(f) =k−1∑
i=0
σi(f).
Cuadraturi închiseFormula de cuadratura a trapezului
Formula de cuadratura a trapezului este
σ(f) =
b∫
a
P (f ; a, b;x) dx.
Din formula lui Newton de reprezentare a polinomului de interpolare avem
P (f ; a, b;x) = f (a) + f(a, b)(x− a) = f(a) + f(b)− f(a)b− a (x− a).
Atunci
σ(f) =
b∫
a
(f(a) +
f(b)− f(a)b− a (x− a)
)dx =
= (b− a)f (a) + f(b)− f(a)b− a · (b− a)
2
2=
=b− a2
· (f(a) + f(b)) .
1
Daca f ∈ C2([a, b]), din formula de evaluare a erorii la interpolare, avem
|f(x)− P (f ; a, b; x)| ≤ 1
2|(x− a)(x− b)| · max
x∈[a,b]|f ′′(x)| , ∀ x ∈ [a, b].
Atunci ∣∣∣∣∣∣
b∫
a
f(x)dx− σ(f)
∣∣∣∣∣∣=
∣∣∣∣∣∣
b∫
a
(f(x)− P (f ; a, b; x)) dx
∣∣∣∣∣∣≤
≤b∫
a
|f(x)− P (f ; a, b; x)| dx ≤ 1
2maxx∈[a,b]
|f ′′(x)| ·b∫
a
(x− a)(b− x)dx =
=1
2maxx∈[a,b]
|f ′′(x)| · (b− a)3
6=(b− a)312
· maxx∈[a,b]
|f ′′(x)| .
Formula de cuadratura a trapezului sumata este:
σ(k)T (f) =
1
2
k−1∑
i=0
(xi+1 − xi)(f (xi) + f(xi+1)) =b− a2k
k−1∑
i=0
(f (xi) + f(xi+1)),
pentru care, daca f ∈ C2([a, b]), avem evaluarea erorii:∣∣∣∣∣∣
b∫
a
f(x)dx− σ(k)T (f)
∣∣∣∣∣∣≤
k−1∑
i=0
∣∣∣∣∣∣
xi+1∫
xi
f(x)dx− σi(f)
∣∣∣∣∣∣≤ (b− a)3
12k2· maxx∈[a,b]
|f ′′(x)| ,
unde σi(f) este formula de cuadratura a trapezului, aplicata functiei f pe intervalul
[xi, xi+1], ∀ i ∈ 0, k − 1
Exemplul -1.1 Folosind formula de cuadratura a trapezului sumata, sa se aproximeze
calculul integralei
I =
2∫
1
1 + ln x
xdx
pentru k = 5, k = 10, k = 50 si k = 100, evaluând si eroarea comisa.
2
Se obtin urmatoarele rezultate:
k σ(k)D (f) eroarea
5 0.9328067513 0.0033333333
10 0.9332299640 0.0008333333
50 0.9333679124 0.0000333333
100 0.9333722435 0.0000083333
În stabilirea erorii am tinut seama de maxx∈[a,b]
|f ′′(x)| = 1. Facem observatia ca valoarea
exacta a integralei este I = 0.9333736875 �.
Exemplul -1.2 Sa se determine numarul minim de subintervale k în care trebuie îm-
partit intervalul [0, 1], pentru ca, folosind formula trapezului sumata, sa putem calcula
integrala
I =
1∫
0
ex
x+ 1dx
cu o eroare mai mica de 10−5.
Avem supx∈[0,1]
|f ′′(x)| = 3e
8. Din formula de evaluare a erorii rezulta ca
k ≥[√
105
12
]
+ 1 = 92 �
Formula de cuadratura Simpson
Formula de cuadratura Simpson este
σ(f) =
b∫
a
P
(f ; a,
a+ b
2, b;x
)dx
Din formula lui Newton de reprezentare a polinomului de interpolare avem
P
(f ; a,
a+ b
2b; x
)= f (a) + f
(a,a+ b
2
)(x− a)+
3
+f
(a,a+ b
2, b
)(x− a)
(x− a+ b
2
).
Atunci
σ(f) =
b∫
a
(f (a) + f
(a,a+ b
2
)(x− a)+
+f
(a,a+ b
2, b
)(x− a)
(x− a+ b
2
))dx =
= (b− a)f (a) + 2(f((a+ b)/2)− f(a))b− a · (b− a)
2
2+
+2(f(b)− 2f((a+ b)/2) + f(a))
(b− a)2 · (b− a)3
12=
=b− a6
·(f(a) + 4f
(a+ b
2
)+ f(b)
).
Daca f ∈ C3([a, b]), din formula de evaluare a erorii la interpolare avem∣∣∣∣f(x)− P
(f ; a,
a+ b
2, b;x
)∣∣∣∣ ≤
≤ 1
6
∣∣∣∣(x− a)(x− a+ b
2
)(x− b)
∣∣∣∣ · maxx∈[a,b]
∣∣∣f ′′′′
(x)∣∣∣ , ∀ x ∈ [a, b].
Atunci ∣∣∣∣∣∣
b∫
a
f(x)dx− σ(f)
∣∣∣∣∣∣=
∣∣∣∣∣∣
b∫
a
(f(x)− P
(f ; a,
a+ b
2, b; x
))dx
∣∣∣∣∣∣≤
≤b∫
a
∣∣∣∣f(x)− P(f ; a,
a+ b
2, b; x
)∣∣∣∣ dx ≤
≤ 1
6maxx∈[a,b]
|f ′′(x)| ·b∫
a
∣∣∣∣(x− a)(x− a+ b
2
)(x− b)
∣∣∣∣ dx =
=1
6maxx∈[a,b]
|f ′′′(x)| · (b− a)4
32=(b− a)4192
· maxx∈[a,b]
|f ′′′(x)| .
Observatie: Daca f este derivabila în punctul (a+b)/2, atunci formula de cuadratura
Simpson se poate obtine si cu formula
σ(f) =
b∫
a
P
(f ; a,
a+ b
2,a+ b
2, b; x
)dx.
4
În acest caz, daca f ∈ C4([a, b]), din formula de evaluare a erorii la interpolare, avem∣∣∣∣f(x)− P
(f ; a,
a+ b
2,a+ b
2, b; x
)∣∣∣∣ ≤
≤ 1
24
∣∣∣∣∣(x− a)
(x− a+ b
2
)2(x− b)
∣∣∣∣∣· maxx∈[a,b]
∣∣f (4)(x)∣∣ , ∀ x ∈ [a, b].
Atunci∣∣∣∣∣∣
b∫
a
f(x)dx− σ(f)
∣∣∣∣∣∣=
∣∣∣∣∣∣
b∫
a
(f(x)− P
(f ; a,
a+ b
2,a+ b
2, b; x
))dx
∣∣∣∣∣∣≤
≤b∫
a
∣∣∣∣f(x)− P(f ; a,
a+ b
2,a+ b
2, b; x
)∣∣∣∣ dx ≤
≤ maxx∈[a,b]
∣∣f (4)(x)∣∣ ·
b∫
a
∣∣∣∣(x− a)(x− a+ b
2
)(x− b)
∣∣∣∣2
dx =
=(b− a)52880
· maxx∈[a,b]
∣∣f (4)(x)∣∣ .
Formula de cuadratura Simpson sumata este:
σ(k)S (f) =
1
6
k−1∑
i=0
(xi+1 − xi)(f (xi) + 4f
(xi + xi+1
2
)+ f(xi+1)
)=
=b− a6k
k−1∑
i=0
(f (xi) + 4f
(xi + xi+1
2
)+ f(xi+1)
),
pentru care, daca f ∈ C3([a, b]), avem evaluarea erorii:∣∣∣∣∣∣
b∫
a
f(x)dx− σ(k)S (f)
∣∣∣∣∣∣≤
k−1∑
i=0
∣∣∣∣∣∣
xi+1∫
xi
f(x)dx− σi(f)
∣∣∣∣∣∣≤ (b− a)4
192k3· maxx∈[a,b]
|f ′′′(x)| ,
unde σi(f) este formula de cuadratura Simpson, aplicata functiei f pe intervalul
[xi, xi+1], ∀ i ∈ 0, k − 1, iar daca f ∈ C4([a, b]), avem evaluara erorii:∣∣∣∣∣∣
b∫
a
f(x)dx− σ(k)S (f)
∣∣∣∣∣∣≤
k−1∑
i=0
∣∣∣∣∣∣
xi+1∫
xi
f(x)dx− σi(f)
∣∣∣∣∣∣≤ (b− a)52880k4
· maxx∈[a,b]
∣∣f (4)(x)∣∣
unde σi(f) este formula de cuadratura Simpson aplicata functiei f pe intervalul [xi, xi+1],
∀ i ∈ 0, k − 1,
5
Exemplul -1.3 Folosind formula de cuadratura Simpson sumata sa se aproximeze
calculul integralei
I =
2∫
1
1 + ln x
xdx
pentru k = 5, k = 10 si k = 50, evaluând si eroarea comisa.
Se obtin urmatoarele rezultate:
k σ(k)D (f) eroarea
5 0.9333710349 0.0000005555
10 0.9333735173 0.0000000347
50 0.9333736875 0.0000000000
În stabilirea erorii am tinut seama de maxx∈[a,b]
∣∣f (4)(x)∣∣ = 14. Facem observatia ca valoarea
exacta a integralei este I = 0.9333736875 �.
Exemplul -1.4 Sa se determine numarul minim de subintervale k în care trebuie
împartit intervalul [0, 1], pentru ca, folosind formula Simpson sumata, sa putem calcula
integrala
I =
1∫
0
ex
x+ 1dx
cu o eroare mai mica de 10−5.
Avem supx∈[0,1]
|f (4)(x)| = 9. Din formula de evaluare a erorii rezulta ca
k ≥[√
105
320
]
+ 1 = 5. �
Formula de cuadratura Hermite
Presupunem ca functia f este derivabila în punctele a si b. Formula de cuadratura
Hermite este
σ(f) =
b∫
a
P (f ; a, a, b, b; x) dx.
6
Din formula lui Newton de reprezentare a polinomului de interpolare avem
P (f ; a, a, b, b; x) =
= f (a) + f(a, a)(x− a) + f(a, a, b)(x− a)2 + f(a, a, b, b)(x− a)2(x− b).
Atunci
σ(f) =
b∫
a
(f (a) + f(a, a)(x− a)+
+f(a, a, b)(x− a)2 + f(a, a, b, b)(x− a)2(x− b))dx =
= (b− a)f (a) + f ′(a) · (b− a)2
2+
f(b)−f(a)b−a
− f ′(a)b− a · (b− a)
3
12+
−f ′(b)− 2f(b)−f(a)
b−a+ f ′(a)
(b− a)2 · (b− a)4
12=
=b− a2(f(a) + f(b)) +
(b− a)212
(f ′(a)− f ′(b)).
Daca f ∈ C4([a, b]), din formula de evaluare a erorii la interpolare avem
|f(x)− P (f ; a, a, b, b; x)| ≤ 1
24
∣∣(x− a)2(x− b)2∣∣ · max
x∈[a,b]
∣∣f (4)(x)∣∣ ,
∀ x ∈ [a, b]. Atunci∣∣∣∣∣∣
b∫
a
f(x)dx− σ(f)
∣∣∣∣∣∣=
∣∣∣∣∣∣
b∫
a
(f(x)− P (f ; a, a, b.b;x)) dx
∣∣∣∣∣∣≤
≤b∫
a
|f(x)− P (f ; a, a, b, b; x)| dx ≤
≤ 1
24maxx∈[a,b]
∣∣f (4)(x)∣∣ ·
b∫
a
∣∣(x− a)2(x− b)2∣∣ dx =
=1
24maxx∈[a,b]
∣∣f (4)(x)∣∣ · (b− a)
5
30=(b− a)5720
· maxx∈[a,b]
∣∣f (4)(x)∣∣ .
7
Formula de cuadratura Hermite sumata este:
σ(k)H (f) =
k−1∑
i=0
xi+1 − x12
(f (xi+1)+
+f(xi)) +(xi+1 − xi)2
12(f ′(xi+1)− f ′(xi)) =
=b− a2k
k−1∑
i=0
(f (xi+1) + f(xi)) +(b− a)212k2
(f ′(a)− f ′(b)),
pentru care avem evaluarea erorii:∣∣∣∣∣∣
b∫
a
f(x)dx− σ(k)H (f)
∣∣∣∣∣∣≤
k−1∑
i=0
∣∣∣∣∣∣
xi+1∫
xi
f(x)dx− σi(f)
∣∣∣∣∣∣≤ (b− a)5
720k4· maxx∈[a,b]
∣∣f (4)(x)∣∣ ,
unde σi(f) este formula de cuadratura Hermite, aplicata functiei f pe intervalul [xi, xi+1],
∀ i ∈ 0, k − 1.
Exemplul -1.5 Folosind formula de cuadratura Hermite sumata, sa se aproximeze
calculul integralei
I =
2∫
1
1 + ln x
xdx
pentru k = 5, k = 10, k = 50 si k = 100, evaluând si eroarea comisa.
Se obtin urmatoarele rezultate:
k σ(k)D (f) eroarea
5 0, 9333843739 0, 000002222
10 0, 9333743697 0, 000000238
50 0, 9333736876 0, 0000000002
100 0, 9333736875 0, 0000000000
În stabilirea erorii am tinut seama de maxx∈[a,b]
∣∣f (4)(x)∣∣ = 14. Facem observatia ca valoarea
exacta a integralei este I = 0, 9333736875 �.
8
Exemplul -1.6 Sa se determine numarul minim de subintervale k în care trebuie
împartit intervalul [0, 1], pentru ca, folosind formula Hermite sumata, sa putem calcula
integrala
I =
1∫
0
ex
x+ 1dx,
cu o eroare mai mica de 10−5.
Avem supx∈[0,1]
|f (4)(x)| = 9. Din formula de evaluare a erorii rezulta ca
k ≥[√
105
80
]
+ 1 = 6. �
Formula de cuadratura Newton
Formula de cuadratura Newton este
σ(f) =
b∫
a
P
(f ; a,
2a+ b
3,a+ 2b
3, b; x
)dx.
Din formula lui Newton de reprezentare a polinomului de interpolare avem
P
(f ; a,
2a+ b
3,a+ 2b
3, b; x
)= f (a) + f
(a,2a+ b
3
)(x− a)
+f
(a,2a+ b
3,a+ 2b
3
)(x− a)
(x− 2a+ b
3
)+
+f
(a,2a+ b
3,a+ 2b
3, b
)(x− a)
(x− 2a+ b
3
)(x− a+ 2b
3
)
Atunci
σ(f) = (b− a)f (a) + 3 ·f
(2a+ b
3
)− f(a)
b− a · (b− a)2
2+
+9
2·f
(a+ 2b
3
)− 2f
(2a+ b
3
)+ f(a)
(b− a)2 · (b− a)3
6+
9
+9
2·f(b)− 3f
(a+ 2b
3
)+ 3f
(2a+ b
3
)− f(a)
(b− a)3 · (b− a)4
36=
=b− a8
(f(a) + 3f
(a+ 2b
3
)+ 3f
(2a+ b
3
)+ f(b)
).
Daca f ∈ C4([a, b]), din formula de evaluare a erorii la interpolare avem∣∣∣∣f(x)− P
(f ; a,
2a+ b
3,a+ 2b
3, b;x
)∣∣∣∣ ≤
≤ 1
24
∣∣∣∣(x− a)(x− 2a+ b
3
)(x− a+ 2b
3
)(x− b)
∣∣∣∣ · maxx∈[a,b]
∣∣f (4)(x)∣∣ ,
∀ x ∈ [a, b]. Atunci∣∣∣∣∣∣
b∫
a
f(x)dx− σ(f)
∣∣∣∣∣∣=
∣∣∣∣∣∣
b∫
a
(f(x)− P
(f ; a,
2a+ b
3,a+ 2b
3, b; x
))dx
∣∣∣∣∣∣≤
≤b∫
a
∣∣∣∣f(x)− P(f ; a,
2a+ b
3,a+ 2b
3, b; x
)∣∣∣∣ dx ≤
1
24maxx∈[a,b]
∣∣f (4)(x)∣∣ ·
b∫
a
∣∣∣∣(x− a)(x− 2a+ b
3
)(x− a+ 2b
3
)(x− b)
∣∣∣∣ dx =
=1
24maxx∈[a,b]
∣∣f (4)(x)∣∣ · (b− a)
5
270=(b− a)56480
· maxx∈[a,b]
∣∣f (4)(x)∣∣ .
Formula de cuadratura Newton sumata este: σ(k)N (f) =
k−1∑
i=0
xi+1 − x18
(f (xi+1) + 3f
(2xi+1 + xi
3
)+ 3f
(xi+1 + 2xi
3
)+ f(xi)
)=
=b− a8k
k−1∑
i=0
(f (xi+1) + 3f
(2xi+1 + xi
3
)+ 3f
(xi+1 + 2xi
3
)+ f(xi)
),
pentru care, daca f ∈ C4([a, b]), avem evaluarea erorii:∣∣∣∣∣∣
b∫
a
f(x)dx− σ(k)N (f)
∣∣∣∣∣∣≤
k−1∑
i=0
∣∣∣∣∣∣
xi+1∫
xi
f(x)dx− σi(f)
∣∣∣∣∣∣≤ (b− a)56480k4
· maxx∈[a,b]
∣∣f (4)(x)∣∣ ,
unde σi(f) este formula de cuadratura Newton, aplicata functiei f pe intervalul [xi, xi+1],
∀ i ∈ 0, k − 1.
10
Exemplul -1.7 Folosind formula de cuadratura Newton sumata, sa se aproximeze
calculul integralei
I =
2∫
1
1 + ln x
xdx
pentru k = 5, k = 10 si k = 50, evaluând si eroarea comisa.
Se obtin urmatoarele rezultate:
k σ(k)D (f) eroarea
5 0, 9333725034 0, 000000249
10 0, 9333736118 0, 000000015
50 0, 9333736875 0, 0000000000
În stabilirea erorii am tinut seama de maxx∈[a,b]
∣∣f (4)(x)∣∣ = 1. Facem observatia ca valoarea
exacta a integralei este I = 0, 9333736875 �.
Exemplul -1.8 Sa se determine numarul minim de subintervale k, în care trebuie
împartit intervalul [0, 1], pentru ca, folosind formula Newton sumata, sa putem calcula
integrala
I =
1∫
0
ex
x+ 1dx,
cu o eroare mai mica de 10−5.
Avem supx∈[0,1]
|f (4)(x)| = 9. Din formula de evaluare a erorii rezulta ca
k ≥[√
105
720
]
+ 1 = 4. �
Cuadraturi deschise
Formula de cuadratura a dreptunghiului
11
Formula de cuadratura a dreptunghiului este
σ(f) =
b∫
a
P
(f ;a+ b
2; x
)dx .
Din formula lui Newton de reprezentare a polinomului de interpolare avem
P
(f ;a+ b
2; x
)= f
(a+ b
2
)
Atunci
σ(f) =
b∫
a
f
(a+ b
2
).dx = (b− a)f
(a+ b
2
)
Daca f ∈ C1([a, b]), din formula de evaluare a erorii la interpolare, avem:∣∣∣∣f(x)− P
(f ;a+ b
2;x
)∣∣∣∣ ≤∣∣∣∣x−
a+ b
2
∣∣∣∣ · maxx∈[a,b]
|f ′(x)| , ∀ x ∈ [a, b].
Atunci ∣∣∣∣∣∣
b∫
a
f(x)dx− σ(f)
∣∣∣∣∣∣=
∣∣∣∣∣∣
b∫
a
(f(x)− P
(f ;a+ b
2; x
))dx
∣∣∣∣∣∣≤
≤b∫
a
∣∣∣∣f(x)− P(f ;a+ b
2; x
)∣∣∣∣ dx ≤ maxx∈[a,b]
|f ′(x)| ·b∫
a
∣∣∣∣x−a+ b
2
∣∣∣∣ dx =
=(b− a)24
· maxx∈[a,b]
|f ′(x)| .
Observatie: Daca f este derivabila în punctul (a+b)/2, atunci formula de cuadratura
a dreptunghiului se poate obtine si cu formula
σ(f) =
b∫
a
P
(f ;a+ b
2,a+ b
2; x
)dx.
În acest caz, daca f ∈ C1([a, b]), din formula de evaluare a erorii la interpolare, avem∣∣∣∣f(x)− P
(f ;a+ b
2,a+ b
2; x
)∣∣∣∣ ≤1
2
∣∣∣∣x−a+ b
2
∣∣∣∣2
· maxx∈[a,b]
|f ′′(x)| , ∀ x ∈ [a, b].
12
Atunci∣∣∣∣∣∣
b∫
a
f(x)dx− σ(f)
∣∣∣∣∣∣=
∣∣∣∣∣∣
b∫
a
(f(x)− P
(f ;a+ b
2,a+ b
2; x
))dx
∣∣∣∣∣∣≤
≤b∫
a
∣∣∣∣f(x)− P(f ;a+ b
2,a+ b
2; x
)∣∣∣∣ dx ≤ maxx∈[a,b]
|f ′′(x)| ·b∫
a
∣∣∣∣x−a+ b
2
∣∣∣∣2
dx =
=(b− a)324
· maxx∈[a,b]
|f ′′(x)| .
Formula de cuadratura a dreptunghiului sumata este:
σ(k)D (f) =
k−1∑
i=0
(xi+1 − xi)f(xi + xi+1
2
)=b− ak
k−1∑
i=0
f
(xi + xi+1
2
),
pentru care, daca f ∈ C1([a, b]), avem evaluarea erorii:∣∣∣∣∣∣
b∫
a
f(x)dx− σ(k)D (f)
∣∣∣∣∣∣≤
k−1∑
i=0
∣∣∣∣∣∣
xi+1∫
xi
f(x)dx− σi(f)
∣∣∣∣∣∣≤ (b− a)2
4k· maxx∈[a,b]
|f ′(x)| ,
iar daca f ∈ C2([a, b]), avem evaluarea erorii:∣∣∣∣∣∣
b∫
a
f(x)dx− σ(k)D (f)
∣∣∣∣∣∣≤
k−1∑
i=0
∣∣∣∣∣∣
xi+1∫
xi
f(x)dx− σi(f)
∣∣∣∣∣∣≤ (b− a)3
24k· maxx∈[a,b]
∣∣∣f′′
(x)∣∣∣ ,
unde σi(f) este formula de cuadratura a dreptunghiului, aplicata functiei f pe intervalul
[xi, xi+1], ∀ i ∈ 0, k − 1.
Exemplul -1.9 Folosind formula de cuadratura a dreptunghiului sumata, sa se aprox-
imeze calculul integralei
I =
2∫
1
1 + ln x
xdx
pentru k = 5, k = 10, k = 50 si k = 100, evaluând si eroarea comisa.
13
Se obtin urmatoarele rezultate:
k σ(k)D (f) eroarea
5 0.9336531768 0.0016666666
10 0.9334452939 0.0004166666
50 0.9333765747 0.0000166666
100 0.9333744095 0.0000041666
În stabilirea erorii am tinut seama de maxx∈[a,b]
|f ′′(x)| = 1. Facem observatia ca valoarea
exacta a integralei este I = 0.9333736875 �.
Exemplul -1.10 Sa se determine numarul minim de subintervale k în care trebuie
împartit intervalul [0, 1], pentru ca, folosind formula dreptunghiului sumata, sa putem
calcula integrala
I =
1∫
0
ex
x+ 1dx
cu o eroare mai mica de 10−5.
Avem supx∈[0,1]
|f ′′(x)| = 1. Din formula de evaluare a erorii rezulta ca
k ≥[√
105
24
]
+ 1 = 65 �.
n=2
Formula de cuadratura deschisa pentru n = 2 este
σ(f) =
b∫
a
P
(f ;2a+ b
3,a+ 2b
3; x
)dx .
Din formula lui Newton de reprezentare a polinomului de interpolare avem
P
(f ;2a+ b
3,a+ 2b
3;x
)= f
(2a+ b
3
)+
14
+3
b− a
(f
(a+ 2b
3
)− f
(2a+ b
3
))(x− 2a+ b
3
)
Atunci
σ(f) =
b∫
a
f
(2a+ b
2
)dx+
3
b− a
(f
(a+ 2b
3
)− f
(2a+ b
3
)) b∫
a
(x− 2a+ b
3
)dx =
= (b− a)f(2a+ b
3
)+b− a2
(f
(a+ 2b
3
)− f
(2a+ b
3
))=
=b− a2
(f
(2a+ b
3
)+ f
(a+ 2b
3
))
Daca f ∈ C2([a, b]), din formula de evaluare a erorii la interpolare, avem:
∣∣∣∣f(x)− P(f ;2a+ b
3,a+ 2b
3;x
)∣∣∣∣ ≤
≤ 1
2·∣∣∣∣
(x− 2a+ b
3
)(x− a+ 2b
3
)∣∣∣∣ · maxx∈[a,b]
|f ′′(x)| ,∀x ∈ [a, b].
Atunci∣∣∣∣∣∣
b∫
a
f(x)dx− σ(f)
∣∣∣∣∣∣=
∣∣∣∣∣∣
b∫
a
(f(x)− P
(f ;2a+ b
3,a+ 2b
3; x
))dx
∣∣∣∣∣∣≤
≤b∫
a
∣∣∣∣f(x)− P(f ;2a+ b
3,a+ 2b
3; x
)∣∣∣∣ dx ≤
≤ 1
2· maxx∈[a,b]
|f ′′(x)| ·b∫
a
∣∣∣∣
(x− 2a+ b
3
)(x− a+ 2b
3
)∣∣∣∣ dx =
=11(b− a)3324
· maxx∈[a,b]
|f ′′(x)| .
Formula de cuadratura deschisa sumata pentru n = 2 este:
σ(k)D (f) =
k−1∑
i=0
xi+1 − xi2
(f
(2xi + xi+1
3
)+ f
(xi + 2xi+1
3
))=
15
=b− a2k
k−1∑
i=0
(f
(2xi + xi+1
3
)+ f
(xi + 2xi+1
3
)),
pentru care, daca f ∈ C2([a, b]), avem evaluarea erorii:∣∣∣∣∣∣
b∫
a
f(x)dx− σ(k)D (f)
∣∣∣∣∣∣≤
k−1∑
i=0
∣∣∣∣∣∣
xi+1∫
xi
f(x)dx− σi(f)
∣∣∣∣∣∣≤ 11(b− a)3
324k2· maxx∈[a,b]
|f ′′(x)| ,
unde σi(f) este formula de cuadratura deschisa pentru n = 2, aplicata functiei f pe
intervalul [xi, xi+1], ∀ i ∈ 0, k − 1.
n=3
Formula de cuadratura deschisa pentru n = 3 este
σ(f) =
b∫
a
P
(f ;3a+ b
4,a+ b
2,a+ 3b
4; x
)dx.
Din formula lui Newton de reprezentare a polinomului de interpolare avem
P
(f ;3a+ b
4,a+ b
2,a+ 3b
4; x
)= f
(3a+ b
4
)+
+4
b− a
(f
(a+ b
2
)− f
(3a+ b
4
))(x− 3a+ b
4
)+
+8
(b− a)2(f
(a+ 3b
4
)− 2f
(a+ b
2
)+ f
(3a+ b
4
))(x− 3a+ b
4
)(x− a+ b
2
)
Atunci
σ(f) =
b∫
a
f
(3a+ b
4
)dx+
4
b− a
(f
(a+ b
2
)− f
(3a+ b
4
)) b∫
a
(x− 3a+ b
4
)dx+
+8
(b− a)2(f
(a+ 3b
4
)− 2f
(a+ b
2
)+ f
(3a+ b
4
))·
·b∫
a
(x− 3a+ b
4
)(x− a+ b
2
)dx =
16
= (b− a)f(3a+ b
4
)+ (b− a)
(f
(a+ b
2
)− f
(3a+ b
4
))+
+2
3(b− a)
(f
(a+ 3b
4
)− 2f
(a+ b
2
)+ f
(3a+ b
4
))=
=(b− a)3
(2f
(3a+ b
4
)− f
(a+ b
2
)+ 2f
(a+ 3b
4
))
Daca f ∈ C3([a, b]), din formula de evaluare a erorii la interpolare, avem∣∣∣∣f(x)− P
(f ;3a+ b
4,a+ b
2,a+ 3b
4; x
)∣∣∣∣ ≤
≤ 1
6
∣∣∣∣
(x− 3a+ b
4
)(x− a+ b
2
)(x− a+ 3b
4
)∣∣∣∣ · maxx∈[a,b]
∣∣f (3)(x)∣∣ , ∀ x ∈ [a, b].
Atunci∣∣∣∣∣∣
b∫
a
f(x)dx− σ(f)
∣∣∣∣∣∣=
∣∣∣∣∣∣
b∫
a
(f(x)− P
(f ;3a+ b
4,a+ b
2,a+ 3b
4; x
))dx
∣∣∣∣∣∣≤
≤b∫
a
∣∣∣∣f(x)− P(f ;3a+ b
4,a+ b
2,a+ 3b
4; x
)∣∣∣∣ dx ≤
≤ 1
6· maxx∈[a,b]
∣∣f (3)(x)∣∣ ·
b∫
a
∣∣∣∣
(x− 3a+ b
4
)(x− a+ b
2
)(x− a+ 3b
4
)∣∣∣∣ dx =
=1
6· maxx∈[a,b]
∣∣f (3)(x)∣∣ · 5(b− a)
4
256=5(b− a)41536
· maxx∈[a,b]
∣∣f (3)(x)∣∣
Formula de cuadratura deschisa sumata pentru n = 3 este:
σ(k)T (f) =
1
3
k−1∑
i=0
(xi+1− xi)(2f
(3xi + xi+1
4
)− f
(xi + xi+1
2
)+ 2f
(3xi + xi+1
4
))=
=b− a3k
k−1∑
i=0
(2f
(3xi + xi+1
4
)− f
(xi + xi+1
2
)+ 2f
(3xi + xi+1
4
)),
pentru care, daca f ∈ C3([a, b]), avem evaluarea erorii:∣∣∣∣∣∣
b∫
a
f(x)dx− σ(k)T (f)
∣∣∣∣∣∣≤
k−1∑
i=0
∣∣∣∣∣∣
xi+1∫
xi
f(x)dx− σi(f)
∣∣∣∣∣∣≤ 5(b− a)4
1536k3· maxx∈[a,b]
∣∣f (3)(x)∣∣ ,
17
unde σi(f) este formula de cuadratura deschisa pentru n = 3, aplicata functiei f pe
intervalul [xi, xi+1], ∀ i ∈ 0, k − 1
n=4
Formula de cuadratura deschisa pentru n = 4 este
σ(f) =
b∫
a
P
(f ;4a+ b
5,3a+ 2b
5,2a+ 3b
5,a+ 4b
5; x
)dx.
Din formula lui Newton de reprezentare a polinomului de interpolare avem
P
(f ;4a+ b
5,3a+ 2b
5,2a+ 3b
5,a+ 4b
5;x
)= f
(4a+ b
5
)+
+5
b− a
(f
(3a+ 2b
5
)− f
(4a+ b
5
))(x− 4a+ b
5
)+
+25
2(b− a)2(f
(2a+ 3b
5
)− 2f
(3a+ 2b
5
)+ f
(4a+ b
5
))·
·(x− 4a+ b
5
)(x− 3a+ 2b
5
)+
+125
6(b− a)3(f
(a+ 4b
5
)− 3f
(2a+ 3b
5
)+ 3f
(3a+ 2b
5
)− f
(4a+ b
5
))·
·(x− 4a+ b
5
)(x− 3a+ 2b
5
)(x− 2a+ 3b
5
)
Atunci
σ(f) =
b∫
a
f
(4a+ b
5
)dx+
5
b− a
(f
(3a+ 2b
5
)− f
(4a+ b
5
)) b∫
a
(x− 4a+ b
5
)dx+
+25
2(b− a)2(f
(2a+ 3b
5
)− 2f
(3a+ 2b
5
)+ f
(4a+ b
5
))·
·b∫
a
(x− 4a+ b
5
)(x− 3a+ 2b
5
)dx+
18
+125
6(b− a)3(f
(a+ 4b
5
)− 3f
(2a+ 3b
5
)+ 3f
(3a+ 2b
5
)− f
(4a+ b
5
))·
·b∫
a
(x− 4a+ b
5
)(x− 3a+ 2b
5
)(x− 2a+ 3b
5
)dx =
= (b− a)b∫
a
f
(4a+ b
5
)+3
2(b− a)
(f
(3a+ 2b
5
)− f
(4a+ b
5
))+
+17
12(b− a)
(f
(2a+ 3b
5
)− 2f
(3a+ 2b
5
)+ f
(4a+ b
5
))+
+11
24(b− a)
(f
(a+ 4b
5
)− 3f
(2a+ 3b
5
)+ 3f
(3a+ 2b
5
)− f
(4a+ b
5
))=
=(b− a)24
(11f
(4a+ b
5
)+ f
(3a+ 2b
5
)+ f
(2a+ 3b
5
)+ 11f
(a+ 4b
5
))
Daca f ∈ C4([a, b]), din formula de evaluare a erorii la interpolare, avem∣∣∣∣f(x)− P
(f ;4a+ b
5,3a+ 2b
5,2a+ 3b
5,a+ 4b
5;x
)∣∣∣∣ ≤
≤ 1
24
∣∣∣∣
(x− 4a+ b
5
)(x− 3a+ 2b
5
)(x− 2a+ 3b
5
)(x− a+ 4b
5
)∣∣∣∣ ·
· maxx∈[a,b]
∣∣f (4)(x)∣∣ , ∀ x ∈ [a, b].
Atunci∣∣∣∣∣∣
b∫
a
f(x)dx− σ(f)
∣∣∣∣∣∣=
∣∣∣∣∣∣
b∫
a
(f(x)− P
(f ;4a+ b
5,3a+ 2b
5,2a+ 3b
5,a+ 4b
5; x
))dx
∣∣∣∣∣∣≤
≤b∫
a
∣∣∣∣f(x)− P(f ;4a+ b
5,3a+ 2b
5,2a+ 3b
5,a+ 4b
5; x
)∣∣∣∣ dx ≤≤1
24· maxx∈[a,b]
∣∣f (4)(x)∣∣ ·
·b∫
a
∣∣∣∣
(x− 4a+ b
5
)(x− 3a+ 2b
5
)(x− 2a+ 3b
5
)(x− a+ 4b
5
)∣∣∣∣ dx =
=1
24· maxx∈[a,b]
∣∣f (4)(x)∣∣ · 551(b− a)
4
93750=551(b− a)42250000
· maxx∈[a,b]
∣∣f (4)(x)∣∣
19
Formula de cuadratura deschisa sumata pentru n = 4 este:
σ(k)T (f) =
1
24
k−1∑
i=0
(xi+1 − xi)·
·(11f
(4xi + xi+1
5
)+ f
(3xi + 2xi+1
5
)+ f
(2xi + xi+1
5
)+ 11f
(xi + 4xi+1
5
))=
=b− a24k
k−1∑
i=0
(11f
(4xi + xi+1
5
)+ f
(3xi + 2xi+1
5
)+ f
(2xi + xi+1
5
)+ 11f
(xi + 4xi+1
5
)),
pentru care, daca f ∈ C4([a, b]), avem evaluarea erorii:∣∣∣∣∣∣
b∫
a
f(x)dx− σ(k)T (f)
∣∣∣∣∣∣≤
k−1∑
i=0
∣∣∣∣∣∣
xi+1∫
xi
f(x)dx− σi(f)
∣∣∣∣∣∣≤ 551(b− a)52250000k4
· maxx∈[a,b]
∣∣f (4)(x)∣∣ ,
unde σi(f) este formula de cuadratura deschisa pentru n = 4, aplicata functiei f pe
intervalul [xi, xi+1], ∀ i ∈ 0, k − 1Formule de cuadratura Gauss
Fie [a, b] ⊂ R si n ∈ N. Notam cu
Ln(x) :=n!
(2n)!· ((x− a)n (x− b)n)(n) , ∀ x ∈ [a, b]
(Ln se numeste polinom Legendre de grad n).
a) Ln este un polinim de grad n.
b) Ln are n radacini distincte x1, x2, . . . , xn situate în intervalul [a, b].
c)b∫
a
Ln(x)C(x)dx = 0, pentru orice polinom C de grad ≤ n− 1.
Fie
Qi(x) =n∏
j=1, j �=i
x− xjxi − xj
si αi =
b∫
a
Qi(x)dx, ∀ i = 1, n.
Cu notatiile anterioare, fie f : [a, b] → R o functie continua. Numim formula de
cuadratura a lui Gauss de ordinul n, atasata functiei f , expresia
σnG(f) :=n∑
i=1
αif(xi).
20
Pentru orice polinom P de grad≤ 2n− 1, avemb∫
a
P (x)dx =n∑
i=1
αiP (xi),
(adica formula de cuadratura a lui Gauss este exacta de ordinul 2n− 1).
Daca f ∈ C2n([a, b]) atunci este adevarata urmatoarea formula de evaluare a erorii:∣∣∣∣∣∣σnG(f)−
b∫
a
f(x)dx
∣∣∣∣∣∣≤ (n!)4
((2n)!)3· (b− a)
2n+1
2n+ 1· supξ∈[a,b]
∣∣f (2n)(ξ)∣∣ .
Cazuri particulare
I. n = 2, a = −1, b = 1
În acest caz,
L2(x) =2!
4!
((x2 − 1
)2)′′=1
12
(12x2 − 4
)= x2 − 1
3,
care are radacinile
x1 = −√1
3, dx2 =
√1
3,
iar
α1 =
1∫
−1
x− x2x1 − x2
dx = 1 si α2 =
b∫
a
x− x1x2 − x1
dx = 1.
Deci, pentru f o functie continua pe [−1, 1], formula de cuadratura Gauss de ordinul
2 este
σ(f) = f
(
−√1
3
)
+ f
(√1
3
)
.
Din formula de evaluare a erorii, în cazul în care f este de 4 ori derivabila, rezulta ca∣∣∣∣∣∣σ(f)−
1∫
−1
f(x)dx
∣∣∣∣∣∣≤ (2!)4
(4!)3· 2
5
5· supξ∈[a,b]
∣∣f (4)(ξ)∣∣ =
1
135· . supξ∈[a,b]
∣∣f (4)(ξ)∣∣ .
II. n = 3, a = −1, b = 1
21
În acest caz,
L3(x) =3!
6!
((x2 − 1
)3)′′′=
1
120
(120x3 − 72x
)= x3 − 3
5x,
care are radacinile
x1 = −√3
5, x2 = 0, x3 =
√3
5,
iar
α1 =
1∫
−1
(x− x2)(x− x3)(x1 − x2)(x1 − x3)
dx =5
9, α2 =
b∫
a
(x− x1)(x− x3)(x2 − x1)(x2 − x3)
dx =8
9,
α3 =
b∫
a
(x− x1)(x− x2)(x3 − x1)(x3 − x1)
dx =5
9.
Deci, pentru f o functie continua pe [−1, 1], formula de cuadratura Gauss de ordinul
3 este
σ(f) =1
9
[
5f
(
−√3
5
)
+ 8f(0) + 5f
(√3
5
)]
.
Din formula de evaluare a erorii, în cazul în care f este de 6 ori derivabila, rezulta ca∣∣∣∣∣∣σ(f)−
1∫
−1
f(x)dx
∣∣∣∣∣∣≤ (3!)4
(6!)3· 2
7
7· supξ∈[a,b]
∣∣f (6)(ξ)∣∣ =
1
15750· . supξ∈[a,b]
∣∣f (6)(ξ)∣∣ .
Formule sumate:
Fie k ∈ N∗, h = (b − a)/k, yi = a + ih, ∀ i ∈ 0, k. Daca σi(f) este o formula de
cuadratura Gauss a functiei f pe intervalul [xi, xi+1], ∀ i ∈ 0, k − 1, atunci se defineste
formula de cuadratura Gauss sumata
σ(k)G (f) =
k−1∑
i=0
σi(f).
• Formula lui Gauss sumata pentru doua noduri:
Pentru orice j ∈ {1, . . . , k} se considera nodurile:
aj =yj−1 + yj
2− b− a2n√3, bj =
yj−1 + yj2
+b− a2n√3.
22
Cuadratura este :
σ(k)G =
h
2·n∑
j=1
(f(aj) + f(bj)),
pentru care (daca f ∈ C4([a, b])) avem evaluarea erorii∣∣∣∣∣∣σ(k)G −
b∫
a
f(x)dx
∣∣∣∣∣∣≤ 7(b− a)6
2160k5· supξ∈[a,b]
∣∣f (6)(ξ)∣∣ .
• Formula lui Gauss sumata pentru trei noduri:
Pentru orice j ∈ {1, . . . , n} se considera nodurile:
aj =yj−1 + yj
2− (b− a)
√15
10n, bj =
yj−1 + yj2
,
cj =yj−1 + yj
2+(b− a)
√15
10n.
Cuadratura este:
σ(k)G =h
18·[
n∑
j=1
(5f(aj) + 8f(bj) + 5f(cj))
]
,
pentru care (daca f ∈ C6([a, b])) avem evaluarea erorii∣∣∣∣∣∣σ(k)G −
b∫
a
f(x)dx
∣∣∣∣∣∣≤ (b− a)82016000k7
· supξ∈[a,b]
∣∣f (6)(ξ)∣∣ .
Exemplul -1.11 Folosind formulele de cuadratura ale lui Gauss sumate (cu doua,
respectiv cu trei noduri) sa se aproximeze calculul integralei
I =
2∫
1
1 + ln x
xdx
pentru k = 5, k = 10, k = 50 si k = 100, evaluând si eroarea comisa.
23
Pentru formula de cuadratura Gauss sumata, relativa la doua noduri, se obtin
urmatoarele rezultate:
k σ(k)D (f) eroarea
5 0, 9333754517 0, 000014518
10 0, 9333738009 0, 000000453
50 0, 9333736877 0, 0000000002
100 0, 9333736875 0, 0000000000
În stabilirea erorii am tinut seama de maxx∈[a,b]
∣∣f (4)(x)∣∣ = 14.
Pentru formula de cuadratura Gauss sumata, relativa la trei noduri, se obtin ur-
matoarele rezultate:
k σ(k)D (f) eroarea
5 0, 9333736921 0, 000000032
10 0, 9333736875 0, 000000000
În stabilirea erorii am tinut seama de maxx∈[a,b]
∣∣f (6)(x)∣∣ = 508. Facem observatia ca
valoarea exacta a integralei este I = 0, 9333736875 �.
24
Metode numerice pentru ecuatii diferentiale
Studiul ecuatiilor diferentiale este o parte a matematicii, care face obiectul a nu-
meroase cercetari si care continua sa ramâna în actualitate prin interesul particular pe
care-l reprezinta pentru alte discipline, ca mecanica, astronomia, fizica si, mai recent,
chimia, biologia, stiinte în care modelarea poate conduce la probleme matematice ce
implica ecuatii diferentiale. De multe ori, chiar daca rezultatele matematice ne per-
mit sa demostram existenta si unicitatea solutiei problemei la care se ajunge, solutia
analitica nu poate fi obtinuta, si atunci se impune gasirea unei solutii aproximative a
problemei printr-o metoda de rezolvare numerica a problemei.
În acest capitol ne propunem sa dam o descriere a principalelor metode de rezolvare
numerica a problemelor Cauchy (a problemelor cu conditii initiale). Problema Cauchy
se defineste astfel: data fiind aplicatia f : D ⊂ R×Rm −→ Rm, care defineste ecuatia
diferentiala:
y′(t) = f(t, y(t)) (1)
si punctul initial (t0, y0), sa se determine o solutie y : I ⊂ R −→ Rm a ecuatiei
diferentiale (1) si care verifica conditia initiala:
y(t0) = y0. (2)
Metodele pe care le vom prezenta în acest capitol se bazeaza pe aproximarea solutiei
problemei (1)-(2), definita pe un interval [t0, t0 + T ], printr-un sir finit de valori (yn)
care aproximeaza solutia y(t) în nodurile tn = t0+nh , n ∈ {1, N} , adica yn � y(tn) . Se
considera ca N =[Th
], unde h este pasul, adica distanta dintre doua valori consecutive
ale variabilei t, pentru care se face aproximarea.
Se cunosc doua clase importante de metode numerice pentru rezolvarea problemei
Cauchy:
1
1. Metode într-un pas (metode directe) sunt metodele în care yn+1 se cal-
culeaza printr-o relatie de recurenta în functie doar de yn, calculat anterior. În aceasta
categorie intra metodele Euler, Euler îmbunatatita, Euler modificata, Runge-Kutta.
2. Metode în mai multi pasi (metode indirecte) sunt metodele în care yn+1 se
calculeaza printr-o relatie de recurenta în functie de valorile precedente yn, yn−1, . . . , yn−r+1 .
În aceasta categorie intra metodele Adams-Bashforth, Adams-Moulton, metoda predictor-
corector, metoda diferentialei retrograde.
Metode într-un pas (directe)
Consideram urmatoarea problema Cauchy:
y′
(t) = f(t, y(t)) , ∀ t ∈ I0 = [t0, t0 + T ]
y(t0) = y0 .(3)
O metoda numerica într-un pas, pentru aproximarea solutiei acestei probleme, consta
în determinarea aproximatiilor (yn) pentru y(tn) în tn = t0 + nh, cu n = 1,N , unde:
y0 = α ∈ Rm ,
yn+1 = yn + hΦ(tn, yn, h) .(4)
Alegerea unei metode înseamna sa alegem functia Φ.
Observatie. Pasul h se poate alege si dependent de n astfel încât tn+1 = tn+nhn sa nu
depaseasca t0+T . În acest caz, în definitiile ce urmeaza se va considera h = maxn=0,N−1
hn.
Observatie. Notiunea de stabilitate arata ca o mica perturbare asupra datelor schemei
numerice (4) produce o pertubare mica a aproximatiei si este independenta de h.
Definitia -1.1 Spunem ca metoda numerica (4) este de ordinul p, cu p ∈ N∗, daca
pentru orice y solutie a problemei (3) avem:
maxn=0,N−1
∥∥∥∥1
h(y(tn+1)− y(tn))−Φ(tn, y(tn), h)
∥∥∥∥ = O(hp) .
2
Metoda Euler explicita (progresiva)
Schema numerica pentru metoda Euler este urmatoarea:
y0 ∈ R
m ,
yn+1 = yn + hf(tn, yn) .
Interpretarea geometrica a metodei Euler. Daca s-a determinat yn, pentru
a determina yn+1 se considera solutia ecuatiei (1) care trece prin (tn, yn), adica acea
solutie pentru care y(tn) = yn. Se duce tangenta la graficul acestei solutii în (tn, yn).
Ecuatia tangentei este:
y − yn = f(tn, yn)(t− tn) .
Pentru t = tn+1 se otine yn+1 = yn + (tn+1 − tn)f(tn, yn) , adica yn+1 este intersectia
tangentei cu dreapta t = tn+1. Din acest motiv, metoda Euler mai este numita si
metoda liniilor poligonale. Erorile se acumuleaza, ceea ce face ca, în aceasta metoda,
pentru pas h nu prea mic, valorile numerice sa fie mult diferite de valorile solutiei
exacte.
Exemplul -1.1 Folosind metoda Euler, determinati solutia aproximativa a problemei
Cauchy:
y′
= y2 −y
t−1
4t2, t ∈ [1, 2]
y(1) = 0.75
în t = 2, luând h = 0.5.
Avem f(t, y) = y2 −y
t−1
4t2, t0 = 1 si y0 = 0.75 . Se obtine N = 2 si yn+1 =
yn + 0.5f(tn, yn), pentru n = 0, 1 . Deci rezulta:
t1 = 1.5 , y(t1) � y1 = y0 + 0, 5f(t0, y0) = 0.75 + 0.5f(1, 0.75) =
0.75 + 0.5(−0.4375) = 0.5313 ,
t2 = 2 , y(t2) � y2 = y1 + 0, 5f(t1, y1) = 0.5313 + 0.5f(1.5, 0.5313) =
0.5313 + 0.5(−0.1831) = 0.4397 .�
3
Solutia exacta a problemei din exercitiul -1.1 este
y(t) = −t+ 5
2t(t− 5).
Valoarea exacta în t = 2 este y(2) = 0.5833333333, iar valoarea aproximativa, în functie
de h, este data în tabelul 1.
Table 1: Date obtinute prin metoda Euler.
h aproximarea
pentru y(2)
0.5 0.4397243924
0.2 0.5231702705
0.1 0.5526766962
0.05 0.5678404244
Se poate considera o metoda Euler implicita (retrograda), în care schema numerica
este:
y0 ∈ R
m ,
yn+1 = yn + hf(tn+1, yn+1) , n = 0, N − 1 .
Folosirea acestei metode este mai dificila decât metoda Euler explicita, deoarece,la
fiecare pas, calculul lui yn+1 cu yn cunoscut, se face prin rezolvarea unei ecuatii, în
general, neliniare, si care poate avea mai multe solutii. Calculul solutiei ecuatiei din
(??) în yn+1 va necesita rezolvarea unui sistem liniar daca f este afina în y sau, în cazul
general, utilizarea unei metode pentru ecuatii neliniare.
Metode Runge-Kutta
Metodele Runge-Kutta se deosebesc de metoda Taylor prin faptul ca înlocuiesc
calculul derivatelor lui f prin evaluari pentru f în puncte intermediare între tn si tn+1.
4
Metoda a fost introdusa de matematicianul german Carl David Runge în 1895 si a fost
dezvoltata de alt matematician german, Wilhelm Kutta, în 1901.
În definirea generala a metodelor Runge-Kutta, pentru q ∈ N∗ se dau o lista de
constante reale:
c1 a11 · · · a1q...
.... . .
...
cq aq1 · · · aqq
b1 · · · bq
cu c1, . . . , cq nu neaparat distincte, si formulele de cuadratura:
∫ ci
0
ψ(t) dt �q∑
j=1
aij ψ(cj) , i = 1, q ,
∫ 1
0
ψ(t) dt �q∑
j=1
bj ψ(cj).
Vom considera cazul general, când punctele din I0 nu sunt echidistante, adica tn+1−tn =
hn. Pentru fiecare n = 1, N , se considera punctele intermediare
tn,i = tn + cihn pentru i = 1, q
si determinam (yn,i)i=1,q prin rezolvarea sistemului:
yn,i = yn + hn
q∑
j=1
aij f(tn,j , yn,j) , i = 1, q .
Aproximarea solutiei în tn+1 se determina din:
yn+1 = yn + hn
q∑
j=1
bj f(tn,j , yn,j) .
Relatiile (??) si (??) rezulta aplicând formulele de cuadratura (??). Fie y o solutie
5
pentru (1). Folosind schimbarea de variabila u =t− tnhn
, obtinem:
y(tn,i) = y(tn) +
∫ tn,i
tn
f(t, y(t))dt =
y(tn) +
∫ ci
0
f(tn + hnu, y(tn + hnu))dt , i = 1, q
y(tn+1) = y(tn) +
∫ tn+1
tn
f(t, y(t))dt = y(tn) +
∫1
0
f(tn + hnu, y(tn + hnu))dt.
Aplicând formulele de cuadratura (??)se obtine:
y(tn,i) � y(tn) + hn
q∑
j=1
aij f(tn,j, y(tn,j)) , i = 1, q
y(tn+1) � y(tn) + hn
q∑
j=1
bj f(tn,j, y(tn,j)) ,
de unde, pentru calculul valorilor aproximative avem (??) si (??).
Schema numerica generala pentru metode Runge-Kutta se poate scrie sub forma:
y(tn+1) = y(tn) + hnΦ(tn, yn, hn)) , n = 0, N − 1,
unde Φ(t, y, h) =q∑
j=1
bj f(t+ cjh, yj) cu y1, . . . , yq rezultate prin rezolvarea sistemului:
yi = y + h
q∑
j=1
aij f(t+ cjh, yj) , i = 1, q .
Notam A = (aij)i,j=1,q , C = diag (c1, c2, . . . , cq), b = (b1, b2, . . . , bq)t si e = (1, 1, . . . , 1)t ∈
Rq.
În functie de coeficientii aij metodele Runge-Kutta pot fi clasificate astfel:
- daca aij = 0, ∀ 1 ≤ i ≤ j ≤ q, atunci metoda Runge-Kutta se numeste explicita.
- daca aij = 0, ∀ 1 ≤ i < j ≤ q, atunci metoda Runge-Kutta se numeste semi-
implicita.
6
În cazul când nici una dintre conditiile de mai sus nu este îndeplinita, metoda
Runge-Kutta se numeste implicita.
Dam mai jos câteva rezultate importante în convergenta metodelor Runge-Kutta.
Teorema -1.1 Daca f este lipschitziana în a doua varibila, având constanta L, ρ (|A|)
este raza spectrala a lui |A| si hn este astfel încât hnLρ (|A|) < 1, atunci schema
numerica Runge-Kutta (??) admite solutie unica. De asemenea, pentru hn = h =
const., astfel încât 0 < h ≤ h∗ cu h∗Lρ (|A|) < 1, metoda Runge-Kutta este stabila.
Observatie. Pentru o metoda Runge-Kutta explicita avem ρ (|A|) = 0. Deci o metoda
Runge-Kutta explicita întotdeauna este stabila.
Definitia -1.2 Vom spune ca este îndeplinita conditia A(p) daca sunt îndeplinite
conditiile A′
(l) pentru l = 1, p, unde A′
(l) sunt date în tabelul 2 pentru l = 1, 5.
Teorema -1.2 Conditia necesara si suficienta ca o metoda Runge-Kutta (pentru toate
functiile suficient de regulate) sa fie de ordin p este sa fie verificata conditia A(p).
Remarca. Conditiile necesare pentru ca o metoda Runge-Kutta sa fie de ordin p sunt:
bte = 1 , btCe =1
2, . . . , btCp−1e =
1
p.
Conditiile (??) sunt echivalente cu afirmatia: formula de cuadratura (??)2 este de ordin
p − 1, adica este exacta pentru polinoame pâna la gradul p − 1. Se poate deduce ca
p ≤ 2q.
Constructia unei metode Runge-Kutta se face, în general, în modul urmator:
- se determina relatii pentru b1, . . . , bq si c1, . . . , cq din conditia ca formula de
cuadratura (??)2 sa fie de ordin p− 1;
- se obtin si coeficientii din matricea A, rezolvând restul de conditii suficiente pentru
metode Runge-Kutta, pâna la ordinul p, date în tabelul 3.
7
Pentru p = 5 se verifica si conditiile pentru p = 3 si p = 4.
Observatie. Pentru programarea metodelor Runge-Kutta este mai usor sa notam:
kn,i = f(tn,i, yn,i) pentru i = 1, q,
si atunci avem:
kn,i = f(tn,i, yn + hn
q∑
j=1
aij kn,j) pentru i = 1, q
yn+1 = yn + hn
q∑
j=1
bj kn,j .
Rezolvând sistemul (??) în necunoscutele (kn,i)i=1,q , calculam mai usor yn+1 din (??).
De asemenea, obtinem:
yn,i = yn + hn
q∑
j=1
aij kn,j , pentru i = 1, q .
Definitia -1.3 O metoda RKpp′ este o metoda Runge-Kutta de ordin p
′
corespunza-
toare tabloului de constante
c1 a11 · · · a1q 0
......
. . ....
cq aq1 · · · aqq 0
1 b1 · · · bq 0
b′
1 · · · b′
q b′
q+1
în care daca excludem ultima linie si ultima coloana, obtinem o metoda de ordin p.
Exemple particulare de metode Runge-Kutta.
Exemplul 1. Pentru q = 1, metoda Runge-Kutta definita prin:
8
θ θ
1cu θ ∈ R, se scrie:
yn,1 = yn + θf(tn + θhn, yn,1)
yn+1 = yn + hnf(tn + θhn, yn,1) .
Pentru θ = 0 si θ = 1 se obtin metode de ordinul 1: metoda Euler progresiva,
respectiv, metoda Euler retrograda. Pentru θ = 1/2 se obtine metoda punctului
de mijloc si este o metoda de ordinul 2.
Exemplul 2. Pentru q = 2, metoda Runge-Kutta definita prin:
0 0 0
α α 0
1−1
2α
1
2α
cu α ∈ R∗, se scrie:
yn,1 = yn
yn,2 = yn + hn α f(tn, yn,1)
yn+1 = yn + hn
((1−
1
2α
)f(tn, yn) +
1
2αf (tn + αhn, yn + αhnf(tn, yn))
)
Daca α =1
2, atunci se obtine metoda Euler modificata (ameliorata):
yn+1 = yn + hnf
(tn +
1
2hn, yn +
1
2hnf(tn, yn)
).
Avem A =
0 0
1/2 0
, C =
0 0
0 1/2
, b =
0
1
si este îndeplinita conditia
A(2), deci metoda (??) este de ordin 2.
9
Daca α = 1, atunci se obtine metoda Heun sau metoda Euler îmbunatatita
sau metoda RK12 :
yn+1 = yn +1
2hn (f(tn, yn) + f(tn + hn, yn + hnf(tn, yn))) .
Avem A =
0 0
1 0
, C =
0 0
0 1
, b =
1/2
1/2
si este îndeplinita conditia
A(2), deci metoda (??) este de ordin 2.
Exemplul 3. Pentru q = 4 metoda Runge-Kutta definita prin:
0 0 0 0 0
1/2 1/2 0 0 0
1/2 0 1/2 0 0
1 0 0 1 0
1/6 2/6 2/6 1/6
este metoda Runge-Kutta clasica sau metoda RK24 (Kutta - 1901). Sub
aceasta forma, metoda este cel mai des utilizata. Avem:
yn,1 = yn
yn,2 = yn +hn2f(tn, yn,1)
yn,3 = yn +hn2f(tn +
1
2hn, yn,2)
yn,4 = yn + hnf(tn +1
2hn, yn,3)
si yn+1 = yn +hn6
(f(tn, yn,1) + 2f(tn +
1
2hn, yn,2)+
2f(tn +1
2hn, yn,3) + f(tn+1, yn,4)
). (5)
10
În metoda RK24 avem:
A =
0 0 0 0
1/2 0 0 0
0 1/2 0 0
o 0 1 0
, C =
0 0 0 0
0 1/2 0 0
0 0 1/2 0
0 0 0 1
, b =
1/6
2/6
2/6
1/6
si este
îndeplinita conditia A(4), deci metoda (5) este de ordin 4.
Exemplul 4. Pentru q = 5, metoda Runge-Kutta definita prin:
0 0 0 0 0 0
2/7 2/7 0 0 0 0
4/7 -8/35 4/5 0 0 0
6/7 29/42 -2/3 5/6 0 0
1 1/6 1/6 5/12 1/4 0
11/96 28/96 35/96 14/96 8/96
este o metoda RK34 .
Exemplul 5. Pentru q = 6, metoda Runge-Kutta definita prin:
0 0 0 0 0 0 0
1/2 1/2 0 0 0 0 0
1/4 3/16 0 0 0 0 0
1/2 0 0 1/2 0 0 0
3/4 0 -3/16 9/16 0 0 0
1 1/7 4/7 6/7 -12/7 8/7 0
7/90 0 32/90 12/90 32/90 7/90
este o metoda Runge-Kutta de ordin 6.
11
Exemplul -1.2 Se da problema Cauchy:
y′
= y2 −y
t−1
4t2, t ∈ [1, 2.9]
y(1) = 0.75
Sa se determine valoarea aproximativa a solutiei în t = 2.9, folosind metodele Euler
progresiva, Euler modificata, RK12 si RK24, pentru N = 2.
Pentru N = 2 avem h = 0.9500. Luam y0 = 0.75, t0 = 1. Pentru metoda RK24,
avem f(t, y) = y2 −y
t−1
4t2. Se obtine:
- pentru n = 1:
y0,1 = y0 = 1 , t0,1 = t0 = 1 ,
y0,2 = y0 = 1 + 0.95f(t0,1, y0,1)/2 = 0.8812 , t0,2 = t0 + 0.95/2 = 1.4750 ,
y0,3 = y0 = 1 + 0.95f(t0,2, y0,2)/2 = 1.0305 , t0,3 = t0 + 0.95/2 = 1.4750 ,
y0,4 = y0 = 1 + 0.95f(t0,3, y0,3)/2 = 1.2360 , t0,4 = t0 + 0.95 = 1.9500 ,
y1 = y0 + 0.95(f(t0,1, y0,1) + 2f(t0,2, y0,2) + 2f(t0,3, y0,3) + f(t0,4, y0,4))/6 =
1 + 0.95(−0.2500 + 2 · 0.0642 + 2 · 0.2484 + 0.8281)/6 = 1.1905
t1 = t0 + h = 1.9500
- pentru n = 2:
y1,1 = y1 = 1.1905 , t1,1 = t1 = 1.95 ,
y1,2 = y1 = 1 + 0.95f(t1,1, y1,1)/2 = 1.5425 , t1,2 = t1 + 0.95/2 = 2.4250 ,
y1,3 = y1 = 1 + 0.95f(t1,2, y1,2)/2 = 1.9984 , t1,3 = t1 + 0.95/2 = 2.4250 ,
y1,4 = y1 = 1 + 0.95f(t1,3, y1,3)/2 = 4.1612 , t1,4 = t1 + 0.95 = 2.9 ,
y2 = y1 + 0.95(f(t1,1, y1,1) + 2f(t1,2, y1,2) + 2f(t1,3, y1,3) + f(t1,4, y1,4))/6 =
1.1905 + 0.95(0.7411 + 2 · 1.7008 + 2 · 3.1270 + 15.8509)/6 = 5.3464
t2 = t1 + h = 2.9 .�
În tabelul 4 am dat valorile obtinute cu metodele cerute în enunt pentru N = 2.
Solutia exacta este y(t) = −t+ 3
2t(t− 3). Pentru aceleasi cerinte ca în exercitiul -1.2, dar
12
pentru N = 7 se obtin datele din tabelul 5. Pentru valori mai mari ale lui N se obtin
valori aproximative mult apropiate de solutia exacta. De exemplu, pentru N = 20
valorile obtinute sunt în tabelul 6.Metode în mai multi pasi (indirecte)
Calculul valorii yn+1 la tn+1 se poate obtine folosind r + 1 valori deja calculate
yn, yn−1, . . . , yn−r+1, adica folosind r + 1 pasi anteriori cu r ∈ N. În general, se obtin
metode cu caracteristici mai bune. Cel mai des întâlnite medote în r + 1 pasi sunt
metodele Adams. Se considera problema (1)-(2), în care presupunem ca f este lipschi-
tiziana în al doilea argument. Consideram diviziunea:
t0 < t1, < . . . , tN = t0 + T ,
hn = tn+1 − tn .
Metodele Adams se bazeaza pe relatia:
y(tn+1) = y(tn) +
∫ tn+1
tn
f(t, y(t))dt ,
unde y(·) este solutie a ecuatiei (1).
Schema de aproximare într-o metoda Adams este:
yn+1 = yn +
∫ tn+1
tn
Pn,r(t)dt ,
unde Pn,r(·) este o aproximare a functiei f(·, ·).
Se presupune ca printr-o metoda directa (de exemplu, de tip Runge-Kutta) s-au de-
terminat valorile y1, y2, . . . , yr pornind de la o valoare y0. Pentru n ≥ r, n ∈{1,N − 1
},
presupunem cunoscute yn, yn−1, . . . , yn−r si notam:
fj = f(tj, yj) , j = n− r, n ,
valorile aproximative pentru f(tj, y(tj)) , j = n− r, n , pentru y(·) solutie a ecuatiei
(1).
13
Metoda Adams-Bashforth
În metoda Adams-Bashforth consideram, în (??), Pn,r(t) polinomul de interpolare
de grad ≤ r, definit prin:
Pn,r(tn−i) = fn−i , i = 0, r .
Daca alegem pentru Pn,r polinomul Lagrange, atunci se scrie sub forma:
Pn,r(t) =r∑
i=0
fn−iLn,i,r(t) ,
unde
Ln,i,r(t) =r∏
j=0,j �=i
t− tn−jtn−i − tn−j
, i = 0, r .
Avem ∫ tn+1
tn
Pn,r(t)dt =r∑
i=0
fn−i
∫ tn+1
tn
Ln,i,r(t)dt ,
unde notând:
bn,i,r =1
hn
∫ tn+1
tn
Ln,i,r(t)dt , i = 0, r ,
schema Adams-Bashforth se poate scrie:
yn+1 = yn +r∑
i=0
hnbn,i,rfn−i ,
fn+1 = f(tn+1, yn+1) , n = r,N − 1 .
Observatie. Pentru r = 0 se obtine metoda Euler progresiva, deoarece:
Pn,0(t) = fn = f(tn, yn) , Ln,0,0(t) = 1 , bn,0,0 = 1 ,
si, deci
yn+1 = yn + hnf(tn, yn) .
Daca consideram hn = hn−1 = . . . = hn−r = h = const., atunci coeficientii bn,i,r
sunt independenti de n. Din (??) prin schimbarea de variabila t = tn + sh si punând
14
tn−j = tn − jh , j = 0, r , se obtine:
bn,i,r = bi,r =
∫ 1
0
li,r(s)ds , unde li,r(s) =r∏
j=0,j �=i
s+ j
j − i, i = 0, r .
În tabelul 7 avem coeficientii metodei Adams-Bashforth (bi,r)i=0,r pentru r = 1, 5, astfel
ca:
- pentru r = 1 avem yn+1 = yn +h
2(3fn − fn−1);
- pentru r = 2 avem yn+1 = yn +h
12(23fn − 16fn−1 + 5fn−2);
- pentru r = 3 avem yn+1 = yn +h
24(55fn − 59fn−1 + 37fn−2 − 9fn−3);
- pentru r = 4 avem
yn+1 = yn +h
720(1901fn − 2774fn−1 + 2616fn−2 − 1274fn−3 + 251fn−4)
l
Exemplul -1.3 Folosind metoda Adams-Bashforth pentru r = 3, determinati solutia
aproximativa a problemei Cauchy:
y′
= y2 −y
t−1
4t2, t ∈ [1, 2.25]
y(1) = 0.75
în t = 2.25 pentru N = 5, determinând valorile de început y1, y2, y3 cu metoda Euler
progresiva.
Avem h = 0.25 si f(t, y) = y2 −y
t−1
4t2. Aplicând metoda Euler progresiva se
obtine:
t0 = 1 , y0 = 0.75 , f0 = f(t0, y0) = −0.4375 ,
t1 = 1.25 , y1 = 0.6406 , f1 = f(t1, y1) = −0.2621 ,
t2 = 1.5 , y2 = 0.5751 , f2 = f(t2, y2) = −0.1638 ,
t3 = 1.75 , y3 = 0.5342 , f3 = f(t3, y3) = −0.1015 ,
15
si, în continuare, cu metoda Adams-Bashforth pentru r = 3, rezulta:
t4 = 2 , y4 = y3 +h
24(55f3 − 59f2 + 37f1 − 9f0) = 0.5166 ,
f4 = f(t4, y4) = −0.0539 ,
t5 = 2.25 , y5 = y4 +h
24(55f4 − 59f3 + 37f2 − 9f1) = 0.5096 ,
f5 = f(t5, y5) = −0.0162 .
16
Table 2: Conditiile A′
(l) pentru l = 1, 5.
l A′
(l)
1 bte = 1
2 btCe = btAe =1
2
3 btC2e = btCAe = bt (Ae).2 =1
3, btACe = btA2e =
1
6
btC3e = btC2Ae = btC (Ae).2 = bt (Ae).3 =1
4,
4 btCACe = btCA2e = bt ((Ae).(ACe)) = bt((Ae).(A2e)
)=1
8
btAC2e = btACAe = btA(Ae).2 =1
12, btA2Ce = btA3e =
1
24
btC4e = btC3Ae = btC2 (Ae).2 = btC (Ae).3 = bt (Ae).4 =1
5,
btC2ACe = btC2A2e = btC ((Ae).(ACe)) = btC((Ae).(A2e)
)=
bt((Ae).2.(ACe)
)= btC
((Ae).2.(A2e)
)=1
10,
btCAC2e = btCACAe = btCA((Ae).2
)= bt
((Ae).(AC2e)
)=
bt ((Ae).(ACAe)) = bt((Ae).A(Ae).2
)=1
15,
5 btAC3e = btAC2Ae = btAC(Ae).2 = btA(Ae).3e = bt(ACe).2e =
bt((ACe).(A2e)
)= bt
(A2e)
).2=1
20,
btCA2Ce = btCA3e = bt((Ae).(A2Ce)
)= bt
((Ae).(A3e)
)=1
30,
btACACe = btACA2e = btA ((Ae).(ACe)) = btA((Ae).(A2e)
)=1
40,
btA2C2e = btA2CAe = btA2 (Ae).2 =1
60, btA3Ce = btA4e =
1
120
17
Table 3: Conditiile suficiente pentru metode de ordin p ∈ {3, 4, 5}.
p Conditii suficiente pentru metoda Runge-Kutta de ordin p
3 Ae = Ce , bte = 1 , btCe =1
2, btC2e =
1
3, btACe =
1
6
4 btC3e =1
4, btCACe =
1
8, btAC2e =
1
12, btA2Ce =
1
24
5 btC4e =1
5,
btC2ACe =1
10, btCAC2e =
1
15, bt(AC).2e =
1
20, btCA2Ce =
1
30
Table 4: Valori aproximative pentru N = 2.
n tn Solutia Metoda Metoda Metoda Metoda
exacta Euler RK12 Euler mod. RK24
0 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000
1 1.9500 1.2088 0.7625 0.9405 1.0610 1.1905
2 2.9000 10.1724 0.8809 1.6339 2.1295 5.3464
18
Table 5: Valori aproximative pentru N = 7.
n tn Solutia Metoda Metoda Metoda Metoda
exacta Euler RK12 Euler mod. RK24
0 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000
1 1.2714 0.9718 0.9321 0.9635 0.9698 0.9717
2 1.5429 1.0103 0.9270 0.9934 1.0048 1.0103
3 1.8143 1.1190 0.9687 1.0881 1.1058 1.1188
4 2.0857 1.3335 1.0578 1.2736 1.3011 1.3332
5 2.3571 1.7677 1.2083 1.6274 1.6731 1.7667
6 2.6286 2.8825 1.4532 2.3968 2.4825 2.8745
7 2.9000 10.1724 1.8665 4.7272 4.9158 9.2669
19
Table 6: Valori aproximative pentru N = 20.
n tn Solutia Metoda Metoda Metoda Metoda
exacta Euler RK12 Euler mod. RK24
0 1.00000 1.00000 1.00000 1.00000 1.00000 1.00000
1 1.09500 0.98155 0.97625 0.98114 0.98149 0.98155
2 1.19000 0.97265 0.96228 0.97187 0.97251 0.97265
3 1.28500 0.97219 0.95666 0.97105 0.97195 0.97219
4 1.38000 0.97960 0.95849 0.97808 0.97922 0.97960
5 1.47500 0.99472 0.96732 0.99278 0.99417 0.99472
6 1.57000 1.01777 .982995 1.01535 1.01700 1.01777
7 1.66500 1.04936 1.00568 1.04636 1.04828 1.04936
8 1.76000 1.09054 1.03581 1.08682 1.08905 1.09054
9 1.85500 1.14290 1.07416 1.13825 1.14083 1.14290
10 1.95000 1.20879 1.12186 1.20289 1.20588 1.20879
11 2.04500 1.29162 1.18052 1.28401 1.28749 1.29162
12 2.14000 1.39644 1.25240 1.38638 1.39046 1.39643
13 2.23500 1.53090 1.34062 1.51721 1.52199 1.53089
14 2.33000 1.70713 1.44962 1.68770 1.69333 1.70712
15 2.42500 1.94532 1.58577 1.91626 1.92284 1.94529
16 2.52000 2.28175 1.75851 2.23503 2.24252 2.28169
17 2.61500 2.78861 1.98225 2.70542 2.71305 2.78847
18 2.71000 3.63278 2.28004 3.45972 3.46390 3.63226
19 2.80500 5.30646 2.69075 4.83886 4.82237 5.30322
20 2.90000 10.17241 3.28441 8.01230 7.86910 10.11166
20
Table 7: Valorile coeficien@tilor bi,r pentru r = 1, 5.
6
i = 0 i = 1 i = 2 i = 3 i = 4 i = 5
1 3/2 -1/2 - - - -
2 23/12 -4/3 5/12 - - -
3 55/24 -59/24 37/24 -3/8 - -
4 1901/720 -1387/360 109/30 -637/360 251/720 -
5 4277/1440 -2641/480 4991/720 -3649/720 959/480 -95/288
21
Metode numerice pentru ecuatii neliniare
Metoda bisectiei
Exemplul -1.1 Sa se aproximeze solutia ecuatiei x3 + 4x2 − 10 = 0 (continuta în
intervalul [−1, 2]).
Solutie Avem
a0 = a = −1, b0 = b = 2, f(a) = −7, f(b) = 14.
Atunci c0 = (a0 + b0)/2 = 1/2. Cum f(c0) < 0 rezulta ca
a1 = c0 = 1/2, b1 = b0 = 2, c1 = (a1 + b1) /2 = 5/4 = 1, 25
Cum f(c1) < 0 rezulta ca
a2 = c1 = 5/4, b2 = b1 = 2, c2 = (a2 + b2) /2 = 13/8 = 1, 625
Cum f(c2) > 0 rezulta ca
a3 = a2 = 5/4, b3 = c2 = 13/8, c3 = (a3 + b3) /2 = 23/16 = 1, 4375
Cum f(c3) > 0 rezulta ca
a4 = a3 = 5/4, b4 = c3 = 23/16, c4 = (a4 + b4) /2 = 43/32 = 1, 34375
etc.
Regula falsi
Exemplul -1.2 Sa se aproximeze solutia ecuatiei x3 + 4x2 − 10 = 0 (continuta în
intervalul [−1, 2]).
1
Solutie Avem
a0 = a = −1, b0 = b = 2, f(a) = −7, f(b) = 14.
Atunci c0 = (a0f(b0)− b0f(a0))/(f(b0)− f(a0) = 0. Cum f(c0) < 0 rezulta ca
a1 = c0 = 0, b1 = b0 = 2, c1 = (a1f(b1)− b1f(a1))/(f(b1)− f(a1) = 5/6 = 0, 83333
Cum f(c1) < 0 rezulta ca
a2 = c1 = 5/6, b2 = b1 = 2, c2 = (a2f(b2)−b2f(a2))/(f(b2)−f(a2) = 110/91 = 1, 20879
etc.
Metoda coardei
Exemplul -1.3 Sa se aproximeze solutia ecuatiei 2x3 − 4x + 1 = 0 (continuta în
intervalul [1/4, 1]), folosind metoda coardei.
Solutie: Fie f(x) = 2x3 − 4x + 1. Avem: f ′(x) = 6x2 − 8x si f ′′(x) = 12x. Luam
a = 1/4 si b = 1. Evident, f ′′ nu se anuleaza pe [a, b], f(a) · f ′′(a) = 3/32 > 0 si
f(a) · f(b) = −1/32 < 0. Deci conditiile de aplicabilitate ale metodei coardei sunt
indeplinite. Luam x0 = 1/4 si x1 = 1. Atunci
x2 =x0f(x1)− x1f(x0)
f(x1)− f(x0)=
3
11, x3 =
x0f(x3)− x3f(x0)
f(x3)− f(x0)=
899
3475, etc.�
Metoda secantei
Exemplul -1.4 Sa se aplice metoda secantei pe intervalul [0, 1] pentru rezolvarea ecuatiei
3ex − 4 cosx = 0 pentru x0 = 1 si x1 = 0, 9.
2
Solutie: Evident f este de doua ori derivabila pe [0, 1] si f ′(x) = 3ex + 4 sin x, ,
functie care evident nu se anuleaza pe [0, 1]. Cum f(0) · f(1) = −3e + 4 cos 1 < 0
rezulta ca ecuatia are o radacina în intervalul [0, 1].
Avem
x2 :=x0f(x1)− x1f(x0)
f(x1)− f(x0)=
3e9/10 − 4 cos(9/10)− 9/10(3e− 4 cos 1)
3e9/10 − 4 cos(9/10)− 3e + 4 cos 1= 0, 45575
Metoda lui Newton
Exemplul -1.5 Sa se arate ca se aplica metoda lui Newton pe intervalul [0, 1] pentru
rezolvarea ecuatiei 3ex − 4 cosx = 0. Luând x0 = 1, sa se calculeze valoarea primei
iteratii.
Solutie: Evident f este de doua ori derivabila pe [0, 1] si f ′(x) = 3ex + 4 sin x,
f ′′(x) = 3ex + 4 cosx, functii care evident nu se anuleaza pe [0, 1]. Cum f(0) · f(1) =
−3e+ 4 cos 1 < 0 si f(1) · f ′′(1) = 9e2 − 16 cos 1 > 0, rezulta ca metoda lui Newton se
aplica.
Avem
x1 := x0 −f(x0)
f ′(x0)= 1− 3e− 4 cos 1
3e + 4 sin 1=
4 sin 1 + 4 cos 1
3e + 4 sin 1= 0, 47975
Principiul contractiei
Exemplul -1.6 Fie functia
f :
[−3
4,−1
2
]→ R, f(x) = x2 + x− 7
16
Sa se arate ca f este o contractie. Luând x0 = −58, sa se determine numarul de iteratii
necesari pentru a aproxima solutia ecuatiei f(x) = x cu o eroare ε.
3
Solutie Functia f este derivabila si
f ′(x) = 2x + 1
Avem
maxx∈[− 3
4,− 1
2 ]|f ′(x)| = max
x∈[− 3
4,− 1
2 ]|2x + 1| = max
x∈[− 3
4,− 1
2 ](−2x− 1) = −2 ·
(−3
4
)− 1 =
1
2
Deci
|f ′(x)| ≤ q :=1
2.
Notam a = −34, b = −1
2. Atunci
∣∣∣∣f(a + b
2
)− a + b
2
∣∣∣∣ ≤ (1− q) · b− a
2⇐⇒
∣∣∣∣f(−5
8
)+
5
8
∣∣∣∣ ≤ (1− 1
2) · 1
8⇐⇒
⇐⇒∣∣∣∣25
64− 5
8− 7
16+
5
8
∣∣∣∣ ≤1
16⇐⇒ 3
64≤ 4
64, ceea ce este adevarat.
Deci f este o contractie. Fie z solutia ecuatiei f(x) = x pe intervalul [a, b].
Din formula de evaluare a erorii avem
|xn − z| ≤ qn
1− q|x1 − x0|
Daca
qn
1− q|x1 − x0| ≤ ε, atunci |xn − z| ≤ ε, deci xn aproximeaza pe z cu eroarea ε.
Avem
x1 = f(x0) = f
(−5
8
)=
25
64− 5
8− 7
16= −43
64
si
|x1 − x0| =∣∣∣∣−
43
64+
5
8
∣∣∣∣ =3
64
Atunciqn
1− q|x1 − x0| ≤ ε⇐⇒
(12
)n
1− 12
· 3
64≤ ε⇐⇒ 3
2n+5≤ ε⇐⇒
4
⇐⇒ 2n+5 ≥ 3
ε⇐⇒ n ≥ log2
(3
ε
)− 5
Deci putem lua
n =
[log2
(3
ε
)]− 4, unde [·] reprezinta partea întreaga.
Metode pentru rezolvarea sau aproximareasolutiilor sistemelor de ecuatii liniare
Norme de vectori si norme de matrici
Exemplul -1.7 Fie
A =
1 −2 3
4 −5 6
7 −8 9
Atunci
‖A‖1 = max1≤j≤3
3∑
i=1
|aij|=
= max (|1|+ |4|+ |7| , |−2|+ |−5|+ |−8| , |3|+ |6|+ |9|) = max (12, 15, 18) = 18
si
‖A‖∞ = max1≤i≤3
3∑
j=1
|aij| =
= max (|1|+ |−2|+ |3| , |4|+ |−5|+ |6| , |7|+ |−8|+ |9|) = max (6, 15, 24) = 24.
Conditionarea unui sistem de ecuatii liniare
Exemplul -1.8
A =
10 7 8 7
7 5 6 5
8 6 10 9
7 5 9 10
b =
32
23
33
31
cu solutia x =
1
1
1
1
5
Consideram sistemul perturbat A(x + δx) = b + δb unde
A =
10 7 8 7
7 5 6 5
8 6 10 9
7 5 9 10
b + δb =
32, 1
22, 9
33, 1
30, 9
cu solutia x + δx =
9, 2
−12, 6
4, 5
−1, 1
(1)
Consideram si sistemul perturbat (A + ∆A)(x + ∆x) = b unde
A =
10 7 8, 1 7, 2
7, 08 5, 04 6 5
8 5, 98 9, 89 9
6, 99 4, 99 9 9, 98
b =
32
23
33
30
cu solutia x + ∆x =
−81
137
−34
22
(2)
Exemplul -1.9 Sa se arate ca ‖δx‖∞‖x‖∞
= cond(A)· ‖δb‖∞‖b‖∞
(Vom considera cazul sistemului
(1) si vom lucra cu norma infinit).
Avem:
‖δx‖∞ = ‖x + δx− x‖∞ = ‖(9, 2− 1;−12, 6− 1; 4, 5− 1;−1, 1− 1)‖∞ =
= ‖(8, 2;−13, 6; 3, 5;−2, 1)‖∞ = max(|8, 2| ; |−13, 6| ; |3, 5| ; |−2, 1|) = 13, 6.
6
‖x‖∞ = ‖(1; 1; 1; 1)‖∞ = max(|1| ; |1| ; |1| ; |1|) = 1.
Atunci‖δx‖∞‖x‖∞
=13, 6
1= 13, 6
A−1 =
25 −41 10 −6
−41 68 −17 10
10 −17 5 −3
−6 10 −3 2
‖A‖∞ = max(|10|+|7|+|8|+|7| , |7|+|5|+|6|+|5| , |8|+|6|+|10|+|9| , |7|+|5|+|9|+|10|) =
= max(32, 23, 33, 31) = 33
∥∥A−1∥∥∞
= max(|25|+ |−41|+ |10|+ |−6| , |−41|+ |68|+ |−17|+ |10| ,
, |10|+ |−17|+ |5|+ |−3| , |−6|+ |10|+ |−3|+ |2|) =
= max(82, 136, 35, 21) = 136.
Rezulta ca
cond(A) := ‖A‖∞ ·∥∥A−1
∥∥∞
= 33 · 136 = 4488
Avem
‖δb‖∞ = ‖b + δb− b‖∞ = ‖(32, 1− 32; 22, 9− 23; 33, 1− 33; 30, 9− 31)‖∞ =
= ‖(0, 1;−0, 1; 0, 1;−0, 1)‖∞ = max(|0, 1| ; |−0, 1| ; |0, 1| ; |−0, 1|) = 0, 1.
‖b‖∞ = ‖(32; 23; 33; 31)‖∞ = max(|32| ; |23| ; |33| ; |31|) = 33..
Atunci‖δb‖∞‖b‖∞
=0, 1
33=
1
330
7
si
cond(A) · ‖δb‖∞‖b‖∞= 4488 · 1
330= 13, 6
Deci‖δx‖∞‖x‖∞
= cond(A) · ‖δb‖∞‖b‖∞
Metode directe
Metoda lui Gauss (cu pivotare partiala)
Exemplul -1.10 Fie sistemul de ecuatii liniare
x + 12y + 1
3z = 1
12x + 1
3y + 1
4z = 2
13x + 1
4y + 1
5z = 3
Sa se calculeze determinantul matricei sistemului si sa se rezolve sistemul cu metoda
lui Gauss.
Solutie Notam cu (aij)1≤i,j≤3 matricea sistemului. Initializam det = 1. La etapa
n = 1 cautam cel mai mare element în modul de pe coloana n a matricei sistemului.
Acesta este max = |a11| = 1 si se afla pa linia 1. Deci s = 1 si piv = a11 = 1. Calculam
det = det ∗piv, deci det = 1. Cum s = n se trece la pasul împartirii la pivot. Cum
pivotul este egal cu 1, prin împartire la pivot linia n ramâne nemodificata. Eliminam
x din liniile 2 si 3 ca în algoritm. Obtinem urmatorul sistem de ecuatii:
x + 12y + 1
3z = 1
112y + 1
12z = 3
2
112y + 4
45z = 8
3
La etapa n = 2 cautam cel mai mare element în modul de pe coloana n a matricei
sistemului (de la elementul a22 în jos). Acesta este max = |a22| = 1/12 si se afla pa
8
linia 2. Deci s = 2 si piv = a22 = 1/12. Calculam det = det ∗piv, deci det = 1/12. Cum
s = n se trece la pasul împartirii la pivot. Ecuatia 2 devine y + z = 18 . Eliminam
y din linia 3 ca în algoritm. Obtinem urmatorul sistem de ecuatii:
x + 12y + 1
3z = 1
y + z = 18
1180
z = 76
Calculam determinantul matricei sistemului det = det ∗a33 = 112∗ 1180
= 12160
si
rezolvam sistemul anterior. Obtinem z = 210, y = −192, x = 27.
Metoda lui Gauss-Jordan de calcul a inversei unei matrice
Exemplul -1.11 Folosind metoda Gauss-Jordan sa se calculeze inversa matricei
A =
1 12
13
12
13
14
13
14
15
Solutie Formam ansamblul matriceal
1 12
13
12
13
14
13
14
15
∣∣∣∣∣∣∣∣∣
1 0 0
0 1 0
0 0 1
Cu transformarile din algoritm obtinem:
1 12
13
0 112
112
0 112
445
∣∣∣∣∣∣∣∣∣
1 0 0
−12
1 0
−13
0 1
1 12
13
0 1 1
0 112
445
∣∣∣∣∣∣∣∣∣
1 0 0
−6 12 0
−13
0 1
9
1 12
13
0 1 1
0 0 1180
∣∣∣∣∣∣∣∣∣
1 0 0
−6 12 0
16
−1 1
1 12
13
0 1 1
0 0 1
∣∣∣∣∣∣∣∣∣
1 0 0
−6 12 0
30 −180 180
1 12
0
0 1 0
0 0 1
∣∣∣∣∣∣∣∣∣
−9 60 −60
−36 192 −180
30 −180 180
1 0 0
0 1 0
0 0 1
∣∣∣∣∣∣∣∣∣
9 −36 30
−36 192 −180
30 −180 180
Deci
A−1 =
9 −36 30
−36 192 −180
30 −180 180
Rezolvarea unui sistem de ecuatii liniare Ax = b este echivalenta, dupa ce s-a
calculat inversa matricei A, cu egalitatea x = A−1b.
Factorizarea LU
Exemplul -1.12 Sa se factorizeze sub forma LU matricea
A =
2 4 −2 0
−1 −1 2 3
4 5 −2 −9
0 1 3 4
10
Solutie Se verifica mai întâi ca determinantii de colt ai matricei A sunt nenuli. Cu
formulele (??) si (??) se obtine:
l11 = 2, l21 = −1, l31 = 4, l41 = 0
u11 = 1, u12 = 2, u13 = −1, u14 = 0
l22 = 1, l32 = −3, l42 = 1
u22 = 1, u23 = 1, u24 = 3
l33 = 5, l43 = 2
u33 = 1, u34 = 0
l44 = 1
u44 = 1
Deci
L =
2 0 0 0
−1 1 0 0
4 −3 5 0
0 1 2 1
, U =
1 2 −1 0
0 1 1 3
0 0 1 0
0 0 0 1
Metoda radacinii patrate
Exemplul -1.13 Folosind metoda radacinii patrate, sa se rezolve sistemul de ecuatii
liniare Ax = b cu
A =
4 2 2
2 10 4
2 4 6
, b =
8
16
12
11
Solutie Se verifica imediat ca matricea A este simetrica. Deoarece
∆1 = |4| > 0, ∆2 =
∣∣∣∣∣∣
4 2
2 10
∣∣∣∣∣∣= 36 > 0, ∆3 =
∣∣∣∣∣∣∣∣∣
4 2 2
2 10 4
2 4 6
∣∣∣∣∣∣∣∣∣
= 144 > 0
rezulta ca matricea A este pozitiv definita. Cu formulele din curs se obtine
l11 = 2, l21 = 1, l31 = 1
l22 = 3, l32 = 1
l33 = 2
Rezulta ca
y1 = 4, y2 = 4, y3 = 2
si
x3 = 1, x2 = 1, x3 = 1.
Metode iterative de rezolvare a sistemelor de ecuatii liniare
Metoda lui Jacobi
Exemplul -1.14 Sa se arate ca se poate aplica metoda lui Jacobi (relativa la normele
1 si ∞) pentru sistemul de ecuatii liniare Ax = b cu
A =
0, 9 0, 1 0, 2 0, 3
−0, 2 0, 8 0, 1 0, 4
0, 1 −0, 3 0, 7 −0, 1
−0, 3 −0, 2 −0, 1 0, 9
; b =
3, 6
2
2, 4
1, 5
.
12
Luând x(0) =
0
0
0
0
sa se determine numarul de iteratii necesar pentru a aproxima
solutia sistemului cu o eroare mai mica de 10−10.
Solutie: Avem
B = I −A =
0, 1 −0, 1 −0, 2 −0, 3
0, 2 0, 2 −0, 1 −0, 4
−0, 1 0, 3 0, 3 0, 1
0, 3 0, 2 0, 1 0, 1
Atunci
‖B‖1 = max1≤j≤4
4∑
i=1
|bij| = max(|0, 1|+ |0, 2|+ |−0, 1|+ |0, 3| , |−0, 1|+ |0, 2|+ |0, 3|+ |0, 2| ,
|−0, 2|+|−0, 1|+|0, 3|+|0, 1| , |−0, 3|+|−0, 4|+|0, 1|+|0, 1|) = max(0, 7; 0, 8; 0, 7; 0, 9) = 0, 9 < 1.
si
‖B‖∞ = max1≤i≤4
4∑
j=1
|bij| = max(|0, 1|+|−0, 1|+|−0, 2|+|−0, 3| , |0, 2|+|0, 2|+|−0, 1|+|−0, 4| ,
|−0, 1|+|0, 3|+|0, 3|+|0, 1| , |0, 3|+|0, 2|+|0, 1|+|0, 1|) = max(0, 7; 0, 9; 0, 8; 0, 7) = 0, 9 < 1.
Deci metoda lui Jacobi se aplica. Din formula de evaluare a erorii avem:
‖x(n) − x‖p ≤qn
1− q‖x(1) − x(0)‖p, ∀n ∈ N∗
unde p = 1 sau p =∞, q = 0, 9, x(1) = Bx(0) + b = b. Deci, pentru a aproxima x cu
x(n) cu eroarea ε = 10−10 este suficient ca qn
1−q‖x(1) − x(0)‖p < ε. Avem
‖x(1) − x(0)‖1 = ‖b‖1 = |3, 6|+ |2|+ |2, 4|+ |1, 5| = 9, 5
13
si
‖x(1) − x(0)‖∞ = ‖b‖∞ = max(|3, 6| , |2| , |2, 4| , |1, 5|) = 3, 6
Atunci
qn
1− q‖x(1) − x(0)‖1 < ε⇐⇒ 0, 9n
1− 0, 99, 5 < ε⇐⇒ 0, 9n <
ε
95⇐⇒ n =
[log0,9
ε
95
]+ 1
si
qn
1− q‖x(1) − x(0)‖∞ < ε⇐⇒ 0, 9n
1− 0, 93, 6 < ε⇐⇒ 0, 9n <
ε
36⇐⇒ n =
[log0,9
ε
36
]+ 1
Metoda Gauss-Seidel
Exemplul -1.15 Fie sistemul de ecuatii liniare
x1 + 12x2 + 1
3x3 = 1
15x1 + x2 + 1
6x3 = 2
110x1 + 1
20x2 + x3 = 3
Sa se arate ca se aplica metoda Gauss-Seidel.
Solutie Notam cu A matricea ceoficientilor sistemului. Avem
A =
1 12
13
15
1 16
110
120
1
Atunci
B = I − A =
0 −12−13
−15
0 −16
− 110
− 120
0
si
q1 = |b11|+ |b12|+ |b13| =∣∣∣∣−
1
2
∣∣∣∣+∣∣∣∣−
1
3
∣∣∣∣ =5
6
14
q2 = |b21| q1 + |b22|+ |b23| =∣∣∣∣−
1
5
∣∣∣∣ ·5
6+
∣∣∣∣−1
6
∣∣∣∣ =1
3
q3 = |b31| q1 + |b32| q2 + |b33| =∣∣∣∣−
1
10
∣∣∣∣ ·5
6+
∣∣∣∣−1
20
∣∣∣∣ ·1
3=
1
10
Deci
q = max(q1, q2, q3) = max
(5
6,1
3,
1
10
)=
5
6< 1
Rezulta ca metoda Gauss-Seidel se aplica.
Metoda relaxarii simultane
Exemplul -1.16 Fie sistemul de ecuatii liniare:
5x1 + 3x2 + 2x3 = 1
3x1 + 6x2 + 3x3 = 2
2x1 + 3x2 + 5x3 = 3
Sa se arate ca se poate aplica metoda relaxarii simultane. Sa se determine parametrul
optim de relaxare. Luând x(0) = (0, 0, 0) sa se evalueze eroarea x− x(n).
Solutie: Notam cu A matricea sistemului. Avem
A =
5 3 2
3 6 3
2 3 5
= At transpusa matricei A.
Deci A simetrica. Deoarece
∆1 := |5| > 0, ∆2 :=
∣∣∣∣∣∣
5 3
3 6
∣∣∣∣∣∣> 0, ∆3 :=
∣∣∣∣∣∣∣∣∣
5 3 2
3 6 3
2 3 5
∣∣∣∣∣∣∣∣∣
> 0,
cu teorema lui Sylvester rezulta ca matricea A este si pozitiv definita. în concluzie, se
poate aplica metoda relaxarii simultane.
15
Fie D = diag(A). Atunci
D−1A =
1 3/5 2/5
1/2 1 1/2
2/5 3/5 1
si det(D−1A−λI) = 0⇐⇒ (1−λ)3− 1925
(1−λ)+ 625
= 0. Daca notam 1−λ = t, atunci
ecuatia 25t3 − 19t + 6 = 0 are radacinile t1 = −1, t2 = 2/5, t3 = 3/5, de unde rezulta
ca valorile proprii ale matricei D−1A sunt λ1 = 2 > λ2 = 3/5 > λ3 = 2/5. Parametrul
optim de relaxare este
σ =2
λ1 + λ3=
5
6
caruia îi corespunde
q =λ1 − λ3λ1 + λ3
=2
3.
Avem x(1) = Cσx(0) + cσ = cσ = σD−1b = 5/6 · (1/5; 2/6; 3/5)t unde b = (1; 2; 3)t este
vectorul termenilor liberi din sistem. Atunci
‖x(1)‖2D =⟨Dx(1), x(1)
⟩=
25
36
(1
5+
2
3+
9
5
)=
2
3· 25
9
si
‖x(n) − x‖D ≤qn
1− q‖x(1) − x(0)‖D = 5 ·
(2
3
)n+ 1
2
.
Metoda lui Ritz
Exemplul -1.17 Fie A =
1 2 3 4
2 5 1 10
3 1 35 5
4 10 5 30
. Folosind metoda lui Ritz sa se cal-
culeze A−1.
16
Se verifica mai întâi ca matricea A este simetrica si pozitiv definita. Luam w0 =
(1, 0, 0, 0)∗. Atunci w∗0Aw0 = 1 si
C1 =
1 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
, D1 =
0 −2 −3 −4
0 1 0 0
0 0 1 0
0 0 0 1
.
Luam v1 = (0, 1, 0, 0)∗. Rezulta ca w1 = (−2, 1, 0, 0)∗ si w∗1Aw1 = 1, de unde
C2 =
5 −2 0 0
−2 1 0 0
0 0 0 0
0 0 0 0
, D2 =
0 0 −13 0
0 0 5 −2
0 0 1 0
0 0 0 1
.
Luam v2 = (0, 0, 1, 0)∗. Rezulta ca w2 = (−13, 5, 1, 0)∗ si w∗2Aw2 = 1, de unde
C3 =
174 −67 −13 0
−67 26 5 0
−13 5 1 0
0 0 0 0
, D3 =
0 0 0 39
0 0 0 −17
0 0 0 −3
0 0 0 1
.
Luam v3 = (0, 0, 0, 1)∗. Rezulta ca w3 = (39,−17,−3, 1)∗ si w∗3Aw3 = 1, de unde
C4 =
1695 −730 −130 39
−730 315 56 −17
−130 56 10 −3
39 −17 −3 1
, D4 =
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
.
Pseudoinversa unei matrice
17
Exemplul -1.18 Fie
T =
1 0 −1
0 1 0
1 1 −1
1 2 −1
cu rang(T ) = 2 si H0 = 0.
Luam y1 = T ∗ ∗
1
0
0
0
=
1
0
−1
(avem y1 − H0Ty1 = y1 �= 0. Atunci w1 =
y1 − H0Ty1 = y1 si Tw1 =
2
0
2
2
. Rezulta ca ‖Tw1‖2 = 12, iar w1(Tw1)∗ =
2 0 2 2
0 0 0 0
−2 0 −2 −2
. Deci
H1 = H0 +w1(Tw1)
∗
‖Tw1‖2=
1/6 0 1/6 1/6
0 0 0 0
−1/6 0 −1/6 −1/6
.
Luam y2 = T ∗ ∗
0
1
0
0
=
0
1
0
(avem y2 − H1Ty2 =
−1/2
1
1/2
�= 0. Atunci
18
w2 = y2 − H1Ty2 si Tw2 =
−1
1
0
1
. Rezulta ca ‖Tw2‖2 = 3, iar w2(Tw2)∗ =
1/2 −1/2 0 −1/2
−1 1 0 1
−1/2 1/2 0 1/2
. Deci
H2 = H1 +w2(Tw2)
∗
‖Tw2‖2=
1/3 −1/6 1/6 0
−1/3 1/3 0 1/3
−1/3 1/6 −1/6 0
În concluzie
T+ = H2 =
1/3 −1/6 1/6 0
−1/3 1/3 0 1/3
−1/3 1/6 −1/6 0
.
Exemplul -1.19 Fie
T =
1 0 −1
0 1 0
1 1 −1
1 2 −1
cu dimR(T ∗) = 2
Luând e1 = (1; 0;−1)∗, e2 = (0; 1; 0)∗ (baza în R(T ∗)) obtinem f1 = (2; 0; 2; 2)∗, f2 =
(0; 1; 1; 2)∗. Atunci
x1 =1
2√
3(1; 0;−1)∗, y1 =
1√3(1; 0; 1; 1)∗
În continuare
e′2 = e2 − 〈f2, y1〉 x1 =1
2(−1; 2; 1)∗ si f ′2 = Te′2 = (−1; 1; 0; 1)∗
19
Atunci
x2 =1
2√
3(−1; 2; 1)∗, y2 =
1√3(−1; 1; 0; 1)∗
Rezulta ca
T+ = x1y∗1 + x2y
∗2 =
1
6
2 −1 1 0
−2 2 0 2
−2 1 −1 0
Exemplul -1.20 Fie
T =
1 0 −1
0 1 0
1 1 −1
1 2 −1
cu rang(T ) = 2 si H0 = T ∗
Luând a1 =
1
0
0
, b1 =
1
0
0
0
obtinem v0 := (I − TH0)∗Ta1 =
−5
−3
−8
−11
,
w0 = H0b1 =
1
0
−1
, u0 :=1
〈v0, Tw0〉(I −H0T )w0 =
5/48
1/8
−5/48
,
H1 := H0 + u0 · v∗0 =
23/48 −5/16 1/6 −7/48
−5/8 5/8 0 5/8
−23/48 5/16 1/6 7/48
Luând a2 =
0
1
0
, b2 =
0
1
0
0
obtinem v1 := (I − TH1)∗Ta2 =
7/8
−7/8
0
−7/8
, w1 =
20
H1b2 =
−5/16
5/8
5/16
, u1 :=1
〈v1, Tw1〉(I −H1T )w1 =
−1/6
1/3
1/6
, deci
T+ = H2 := H1 + u1 · v∗1 =
1/3 −1/6 1/6 0
−1/3 1/3 0 1/3
−1/3 1/6 −1/6 0
.
Metode pentru aproximarea valorilor proprii aleunei matrice
Metode folosind polinomul caracteristic
Metoda Danilevsky
.
Exemplul -1.21 Determinati polinomul caracteristic pentru matricea
A =
−12 −4 3 4
−23 −8 6 8
−60 −39 21 28
−3 −2 1 2
,
folosind metoda Danilevski.
Aplicând pasii algoritmului se obtine:
A0 =
−12 −4 3 4
−23 −8 6 8
−60 −39 21 28
−3 −2 1 2
,
21
S3 =
1 0 0 0
0 1 0 0
3 2 1 −2
0 0 0 1
⇒ A1 = S−13 A0S3 =
−3 2 3 −2
−5 4 6 −4
22 −11 2 0
0 0 1 0
,
S2 =
1 0 0 0
2 − 1
11
2
110
0 0 1 0
0 0 0 1
⇒ A2 =
= S−12 A1S2 =
1 − 2
11
37
11−2
−11 2 0 0
0 1 0 0
0 0 170
,
S1 =
− 1
11
2
110 0
0 1 0 0
0 0 1 0
0 0 0 1
⇒ A3 = S−11 A2S1
3 0 −37 22
1 0 0 0
0 1 0 0
0 0 1 0
,
Deci polinomul caracteristic este:
pA(λ) = λ4 − 3λ3 + 37λ− 22 . �
Metoda Krylov
Exemplul -1.22 Determinati polinomul caracteristic pentru matricea
A =
5 −4 −3 −1
1 4 2 −9
2 5 1 −5
7 1 2 −1
,
22
folosind metoda Krylov.
Alegem pentru aplicarea metodei Krylov vectorul y(0) =
1
2
3
4
si calculam
y(1) = Ay(0) =
−16
−21
−5
11
, y(2) = Ay(1) =
8
−209
−197
−154
,
y(3) = Ay(2) −
1621
164
−456
−393
, y(4) = Ay(3) =
9210
4902
5571
10992
.
Coefientii polinomului caracteristic se obtin rezolvâd sistemul:
1621 8 −16 1
164 −209 −21 2
−456 −197 −5 3
−393 −154 11 4
p1
p2
p3
p4
=
9210
4902
5571
10992
.
Folosind o metoda de rezolvare a sistemelor liniare , obtinem p =
9
−45
369
885
si polino-
mul caracteristic este:
pA(λ) = λ4 + 9λ3 − 45λ2 + 369λ + 885 . �
Metoda Leverrier
23
Exemplul -1.23 Determinati, folosind metoda Leverrier, polinomul caracteristic si
matricea A−1 , daca exista, pentru matricea
A =
11 0 −3 12
−9 −5 2 5
2 −4 15 −11
2 6 −7 10
,
Aplicând metoda Leverrier pentru matriceaA si m = 4, obtinem:
s1 = 31 , p1 = −31 ,
- pentru k = 2:
A2 = A2 =
139 84 −162 285
−40 47 12 −105
66 −106 288 −271
−26 58 −169 231
, s2 = 705 , p2 = 128 ,
- pentru k = 3:
A3 = A3 =
1019 1938 −4674 6720
−1049 −913 1129 −1427
7714 −2248 5807 −5616
−684 1772 −3958 4147
,
s3 = 10060 , p3 = 2609 ,
- pentru k = 4:
A4 = A4 =
−2141 49326 −116331 140532
−3918 −8513 28245 −43842
39468 −45684 116779 −110709
−23094 31854 −82803 85660
,
s4 = 191785 , p4 = −12761 ,
24
si polinomul caracteristic este:
pA(λ) = λ4 − 31λ3 + 128λ2 + 2609λ− 12761 .
Cum p4 �= 0, rezulta ca:
A−1 = − 1p4
(A3 + p1A2 + p2A + p3I4)
=
0.0570 −0.0522 −0.0028 −0.0454
−0.0753 −0.0314 0.0794 0.1934
−0.0060 0.0412 0.1103 0.1079
0.0296 0.0581 0.0302 0.0686
.�
Exemplul -1.24 Calculati coeficientii polinomului caracteristic si matricea A−1 , daca
exista, pentru matricea
A =
11 1 −3 2
−9 −5 12 5
2 −4 5 −11
2 16 −7 10
,
folosind algoritmul Fadeev.
Aplicând algoritmul Fadeev obtinem:
A1 = A ,
p1 = −tr(A1) = −21 , B1 = A1 + p1I4 =
−10 1 −3 2
−9 −26 12 5
2 −4 −16 −11
2 16 −7 −11
,
25
- pentru k = 2
A2 = AB1 =
−121 29 13 38
169 153 −260 −230
4 −90 −57 50
−158 −226 228 51
,
p2 = − 1tr(A2)
= −13 , B2 = A2 + p2I4 =
−134 29 13 38
169 140 −260 −230
4 −90 −70 50
−158 −226 228 38
,
- pentru k = 3
A3 = AB2 =
−1633 277 549 114
−381 −3171 1483 1598
814 1534 −1792 828
828 668 −1364 −3574
,
p3 = − 1tr(A3)
= 3390 , B3 = A3 + p3I4 =
1757 277 549 114
−381 219 1483 1598
814 1534 1598 828
828 668 −1364 −184
,
26
- pentru k = 4
A4 = AB3 =
18160 0 0 0
0 18160 0 0
0 0 18160 0
0 0 0 18160
,
p4 = − 1tr(A4)
= −18160 , B4 = A4 + p4I4 =
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
.
Polinomul caracteristic este:
pA(λ) = λ4 − 21λ3 − 13λ2 + 3390λ− 18160 .
Cum p4 �= 0, rezulta ca:
A−1 = − 1
p4B3 =
0.0968 0.0153 0.0302 0.0063
−0.0210 0.0121 0.0817 0.0880
0.0448 0.0845 0.0880 0.0456
0.0456 0.0368 −0.0751 −0.0101
. �
Metoda coeficientilor nedeterminati
Exemplul -1.25 Determinati coeficientii polinomului caracteristic pentru
matricea
A =
9 −4 10 13
11 −1 −15 8
1 −2 −3 1
2 4 5 7
,
folosind metoda coeficientilor nedeterminati.
27
Avem p4 = −2703. Se obtine sistemul
1 1 1
8 4 2
27 9 3
p =
334
482
372
a carui solutie este:
p =
−12
−57
403
.
Deci polinomul caracteristic este:
pA(λ) = λ4 − 12λ3 − 57λ2 + 403λ− 2703 . �
Metoda rotatiilor
Exemplul -1.26 Fie matricea
A =
17 −2 3√
3
−2 8 2√
3
3√
3 2√
3 11
.
Folosind metoda rotatiilor, sa se determine valorile proprii ale matricei A.
Se verifica imediat ca matricea A este simetrica. Se aleg p < q astfel încât
|apq| = max{aij|; i < j ∈ {1, 2, 3}.
Atunci p = 1, q = 3. Se calculeaza
θ =1
2· arctan 2 · apq
app − aqq=
π
6.
Se ia
T =
cos θ 0 − sin θ
0 1 0
sin θ 0 cos θ
28
si se calculeaza matricea
B = T tAT =
20 0 0
0 8 4
0 4 8
Se aleg p < q astfel încât
|bpq| = max{bij|; i < j ∈ {1, 2, 3}.
Atunci p = 2, q = 3. Se calculeaza
θ =π
4deoarece bpp = bqq.
Se ia
T =
1 0 0
0 cos θ − sin θ
0 sin θ cos θ
si se calculeaza matricea
B = T tAT ==
20 0 0
0 12 0
0 0 4
Rezulta ca valorile proprii ale matricei A sunt λ1 = 20, λ2 = 12, λ3 = 4.�
Ecuatii neliniare în Rm
Principiul contractiei
Exemplul -1.27 Fie sistemul de ecuatii
x = (80 + x3 − x2 − 3yz)/100
y = (60− y3 − z2 + 4xz)/86
z = (40 + z3 + y2 − 5xy)/72
(3)
29
Folosind principiul contractiei în raport cu norma ‖ · ‖∞, sa se arate ca sistemul
(3) are solutie unica v în V := [0, 2]3. Pentru o eroare ε data si pentru iterata initiala
x(0) := (1, 1, 1) sa se calculeze iterata x(n) (din principiul contractiei) pentru care ‖x(n)−
v‖∞ ≤ ε.
Fie r = 1 si a = (1, 1, 1). Atunci multimea V = {x ∈ Rm | ‖x − a‖∞ ≤ r}.
Fie functia F = (f, g, h) : V → R3 cu f(x, y, z) := (80 + x3 − x2 − 3yz)/100,
g(x, y, z) := (60−y3−z2+4xz)/86 si h(x, y, z) := (40+z3+y2−5xy)/72, ∀ (x, y, z) ∈ V .
Sistemul de ecuatii (3) este echivalent cu F (x, y, z) = (x, y, z).
Avem
F ′(x, y, z) =
(3x2 − 2x)/100 −3z/100 −3y/100
4z/86 −3y2/86 (−2z + 4x)/86
−5y/72 (2y − 5x)/72 3z2/72
,
deci ‖F ′(x, y, z)‖∞ = max((|3x2 − 2x| + | − 3z| + | − 3y|)/100, (|4z| + | − 3y2| +
| − 2z + 4x|)/86, (| − 5y| + |2y − 5x| + |3z2|)/72) ≤ max(28/100, 32/86, 36/72) =
= 1/2 (am folosit 0 ≤ x, y, z ≤ 2). Putem lua q = 1/2. Pe de alta parte ‖F (a)−a‖∞ =
max(28/100, 24/86, 35/72) = 35/72 < (1 − q)r = 1/2. Deci F este 1/2-contractie a
multimii V în raport cu norma ‖ · ‖∞. Din principiul contractiei rezulta ca ecuatia
F (x, y, z) = (x, y, z) are solutie unica în V .
Pentru x(0) = (1, 1, 1) se calculeaza x(n) cu formula de recurenta x(n) = F (x(n−1)),
∀ n ∈ N . Se opreste procesul iterativ atunci când q/(1− q)‖x(n) − x(n−1)‖∞ < ε.
Metoda Gauss-Seidel neliniara
Exemplul -1.28 Fie sistemul de ecuatii
x = (432 + x4 + y4 − 2z4 + y2z2)/234
y = (324− x4 + 2y4 − 3z4 + 3x2z2)/432
z = (234 + 2x4 − 3y4 + 4z4 − x2y2 + 3x + y)/324
(4)
30
Folosind metoda Gauss-Seidel neliniara, sa se arate ca sistemul (4) are solutie unica
v în V := [−2, 2] × [−1, 1] × [0, 1]. Pentru o eroare ε data si pentru iterata initiala
x(0) := (0, 0, 1/2) sa se calculeze iterata x(n) pentru care ‖x(n) − v‖∞ ≤ ε.
Fie r1 = 2, r2 = 1 si r3 = 1/2, a1 = a2 = 0 si a3 = 1/2. Atunci multimea
V = {(x, y, z) ∈ R3 | |x − a1| ≤ r1, |y − a2| ≤ r2, |z − a3| ≤ r3}. Fie functia
F = (f, g, h) : V → R3 cu f(x, y, z) := (432 + x4 + y4 − 2z4 + y2z2)/234, g(x, y, z) :=
(324−x4+2y4−3z4+3x2z2)/432 si h(x, y, z) := (234+2x4−3y4+4z4−x2y2+3x+y)/324,
∀ (x, y, z) ∈ V . Sistemul de ecuatii (4) este echivalent cu F (x, y, z) = (x, y, z).
Avem F ′(x, y, z) =
4x3/234 (4y3 + 2yz2)/234 (−8z3 + 2y2z)/234
(−4x3 + 6xz2)/432 8y3/432 (−12z3 + 6x2z)/432
(8x3 − 2xy2 + 3)/324 (−12y3 − 2x2y + 1)/324 16z3/324
,
deci ‖F ′(x, y, z)‖∞ = max((|4x3|+ |4y3+2yz2|+ |−8z3+2y2z|)/234, (|−4x3+6xz2|+
|8y3|+ | − 12z3 + 6x2z|)/432, (|8x3 − 2xy2 + 3|+ | − 12y3 − 2x2y + 1|+ |16z3|)/324) ≤
max(48/234, 88/432, 108/234) = 1/3 (am folosit −2 ≤ x ≤ 2, −1 ≤ y ≤ 1, 0 ≤ z ≤ 1).
Putem lua q = 1/3. Pe de alta parte |f(x, y, z) − a1| ≤ (|432| + |x4| + |y4| + |2z4| +
|y2z2|)/234 ≤ 452/234 < 2, |g(x, y, z)−a2| ≤ (|324|+|x4|+|2y4|+|3z4|+|3x2z2|)/432 ≤
357/432 < 1 si |h(x, y, z)−a3| ≤ (|234|+ |2x4|+ |3y4|+ |4z4|+ |x2y2|+ |3x|+ |y|)/324 ≤
122/324 < 1/2, ∀ (x, y, z) ∈ V . Deci F (V ) ⊂ V si F este 1/3-contractie a multimii V în
raport cu norma ‖·‖∞. Din principiul contractiei rezulta ca ecuatia F (x, y, z) = (x, y, z)
ar solutie unica în V .
Pentru x(0) = (0, 0, 1/2) se calculeaza x(n) = (x(n)1 , x
(n)2 , x
(n)3 ) cu formula de recurenta
x(n)1 = f(x(n−1)), x(n)2 = g(x
(n)1 , x
(n−1)2 , x
(n−1)3 ), x(n)3 = h(x
(n)1 , x
(n)2 , x
(n−1)3 ) ∀ n ∈ N . Se
opreste procesul iterativ atunci când q/(1− q)‖x(n) − x(n−1)‖∞ < ε.
Metoda lui Newton
31
Exemplul -1.29 Fie sistemul de ecuatii
x3 + 3xy2 + 3xz2 − 183x + 2 = 0
y3 + +3x2y + 3yz2 − 193y + 1 = 0
z3 + 3x2z + 3y2z − 188(z − 1)− 1 = 0
(5)
Folosind metoda Newton relativa la norma ‖·‖∞, sa se arate ca sistemul (5) are solutie
unica v în V := [−1, 1]2 × [0, 2]. Pentru o eroare ε data si pentru iterata initiala
x(0) := (0, 0, 1) sa se calculeze iterata x(n), pentru care ‖x(n) − v‖∞ ≤ ε.
Fie r = 1 si a = (0, 0, 1). Atunci multimea V este Br(a) în raport cu norma
‖ · ‖∞. Fie functia F = (f, g, h) : V→ R3 cu f(x, y, z) := x3 + 3xy2 + 3xz2 − 183x+ 2,
g(x, y, z) := y3++3x2y+3yz2−193y+1 si h(x, y, z) := z3+3x2z+3y2z−188(z−1)−1 =
0, ∀ (x, y, z) ∈ V . Sistemul de ecuatii (5) este echivalent cu F (x, y, z) = 0.
Avem F ′(x, y, z) =
3x2 + 3y2 + 3z2 − 183 6xy 6xz
6xy 3x2 + 3y2 + 3z2 − 193 6yz
6xz 6yz 3x2 + 3y2 + 3z2 − 188
,
F ′′(x, y, z) =
6x 6y 6z 6y 6x 0 6z 0 6x
6y 6x 0 6x 6y 6z 0 6z 6x
6z 0 6x 0 6z 6y 6x 6y 6z
,
deci ‖F ′′(x, y, z)‖∞ ≤ max(|18x| + |12y| + |12z|, |12x| + |18y| + |12z|, |12x| + |12y| +
|18z|) ≤ max(54, 54, 60) = 60 (am folosit −1 ≤ x, y ≤ 1, 0 ≤ z ≤ 2). Putem lua
M = 60. Avem F ′(a) =
−180 0 0
0 −190 0
0 0 −185
, deci F ′(a) inversabila, (F ′(a))−1 =
−1/180 0 0
0 −1/190 0
0 0 −1/185
si ‖(F ′(a))−1‖∞ = max(1/180, 1/190, 1/185) = 1/180.
32
Luam α = 1/180. Cum Mrα = 60/180 < 1 si α/(1 − MRα) = 1/120, putem
lua µ = 120. Avem F (a) = (2, 1, 0)t si (F ′(a))−1F (a) = (−1/90,−1/190, 0)t, deci
‖(F ′(a))−1F (a)‖∞ = 1/90. Lua m β = 1/90. Conditia β ≤ (1− q)r implica q ≤ 89/90.
Din ‖F (x, y, z)‖∞ ≤ max(|x3| + |3xy2| + |3xz2| + |183x| + 2, |y3| + |3x2y| + |3yz2| +
|193y|+ 1, |z3|+ |3x2z|+ |3y2z|+ |188(z − 1)|+ 1) ≤ max(201, 210, 209) = 210 rezulta
ca (M/µ2)‖F (x, y, z)‖∞ ≤ q⇔q ≥ 210/240 = 7/8. Din Mr/µ ≤ q rezulta q ≥ 1/2.
Deci putem lua q = 7/8 si atunci ecuatia F (x, y, z) = 0 are o solutie unica în V .
Pentru x(0) = (0, 0, 1) se calculeaza x(n) cu formula de recurenta (5) (folosind la
fiecare pas o procedura de inversare a matricei (F ′(x(n)))−1). Se opreste calculul iterativ
atunci când (2µ)/M · q2n ≤ ε⇔4 · (7/8)2n ≤ ε.
Metoda lui Newton simplificata
Exemplul -1.30 Fie sistemul de ecuatii
x2 + y2 + z2 + x + y + z − 853/144 = 0
3x2 − 4y2 + z2 + x− y − 3z + 1309/432 = 0
5x2 + 2y2 − 3z2 + 2x− 4y − 6z + 37/9 = 0
(6)
Folosind metoda Newton simplificata relativa la norma ‖ · ‖∞, sa se arate ca sistemul
(6) are solutie unica v în V := [−0, 8; 1, 2]3. Pentru o eroare ε data si pentru iterata
initiala x(0) := (1, 1, 1), sa se calculeze iterata x(n) pentru care ‖x(n) − v‖∞ ≤ ε.
Fie r := 0, 2 = 1/5 si a := (1, 1, 1). Atunci multimea V este Br(a) în raport cu
norma ‖ · ‖∞. Fie functia F = (f, g, h) : V→ R3 cu f(x, y, z) := x2 + y2 + z2 + x +
y + z − 853/144, g(x, y, z) := 3x2 − 4y2 + z2 + x − y − 3z + 1309/432 si h(x, y, z) :=
5x2 + 2y2 − 3z2 + 2x − 4y − 6z + 37/9, ∀ (x, y, z) ∈ V . Sistemul de ecuatii (6) este
echivalent cu F (x, y, z) = 0.
33
Avem
F ′(x, y, z) =
2x + 1 2y + 1 2z + 1
6x + 1 −8y − 1 2z − 3
10x + 2 4y − 4 −6z − 6
,
F ′′(x, y, z) =
2 0 0 0 2 0 0 0 2
6 0 0 0 −8 0 0 0 2
10 0 0 0 4 0 0 0 −6
,
deci ‖F ′′(x, y, z)‖∞ ≤ max(|2|+|2|+|2|, |6|+|−8|+|2|, |10|+|4|+|−6|) = 20, ∀ (x, y, z) ∈
V . Putem lua M = 20. Avem F ′(a) =
3 9 3
7 −9 −1
12 0 −12
, cu det(F ′(a)) = 72, deci
F ′(a) inversabila, (F ′(a))−1 =1
72
9 3 2
6 −6 2
9 3 −4
si ‖(F ′(a))−1‖∞ = max(14/72, 14/72, 16/72) =
2/9. Lua m α = 2/9. Avem F (a) = (11/144, 13/432, 1/9)t si (F ′(a))−1F (a) =
(1/72, 1/144, 1/216)t, deci ‖(F ′(a))−1F (a)‖∞ = 1/72. Luam β = 1/72. Conditia
β ≤ (1 − q)r implica q ≤ 67/72. Din αMr ≤ q rezulta q ≥ 8/9. Deci putem lua
q = 8/9 si atunci ecuatia F (x, y, z) = 0 are o solutie unica în V .
Pentru x(0) = (1, 1, 1) se calculeaza x(n) cu formula de recurenta (6). Se opreste
calculul iterativ atunci când q/(1− q) · ‖x(n) − x(n−1)‖∞ ≤ ε.
Interpolare polinomiala
Formula lui Lagrange
Exemplul -1.31 Utilizând formula lui Lagrange de reprezentare sa se determine poli-
nomul de interpolare de grad 2 ce verifica conditiile:
P (0) = 2, P (1) = 1, P (4) = 4.
34
Din curs rezulta ca:
P (x) = P (0)L1(x) + P (1)L2(x) + P (4)L3(x).
Avem:
L1(x) =(x− 1)(x− 4)
(0− 1)(0− 4)=
x2 − 5x + 4
4,
L2(x) =x(x− 4)
(1− 0)(1− 4)=
x2 − 4x
−3,
L3(x) =x(x− 1)
(4− 0)(4− 1)=
x2 − x
12.
Atunci:
P (x) = 2 · x2 − 5x + 4
4+ 1 · x
2 − 4x
−3+ 4 · x
2 − x
12=
1
2x2 − 3
2x + 2.�
Algoritmul lui Aitken
Exemplul -1.32 Fie functia f : [0, 12] → R cu f(x) = 6√
2x + 1− 2x, ∀x ∈ [0, 12].
Sa se determine polinomul de interpolare Lagrange P (f ; 0, 4, 12; x) utilizând algoritmul
Aitken.
Nodurile sunt x1 = 0, x2 = 4, x3 = 12. Atunci P11(x) = f(0) = 6, P12(x) = f(4) =
10, P13(x) = f(12) = 6. Rezulta ca
P22(x) =10x− 6(x− 4)
4= x + 6,
P23(x) =6x− 6(x− 12)
12= 6
si astfel
P (f ; 0, 4, 12;x) = P33(x) = −x2
8+
3x
2+ 6 .
Algoritmul lui Neville
35
Exemplul -1.33 Fie functia f : [0, 12] → R cu f(x) = 6√
2x + 1− 2x, ∀x ∈ [0, 12].
Sa se determine polinomul de interpolare Lagrange P (f ; 0, 4, 12; x) utilizând algoritmul
Neville.
Nodurile sunt x1 = 0, x2 = 4, x3 = 12. Atunci P11(x) = f(0) = 6, P12(x) = f(4) =
10, P13(x) = f(12) = 6. Rezulta ca
P22(x) =10x− 6(x− 4)
4= x + 6,
P23(x) =6(x− 4)− 10(x− 12)
8= −x
2+ 12
si astfel
P (f ; 0, 4, 12;x) = P33(x) = −x2
8+
3x
2+ 6
Formula lui Newton de reprezentare a polinomului de interpolare
Exemplul -1.34 Fie functia f : [0, 4] → R cu f(x) = 6√
2x + 1 − 2x, ∀x ∈ [0, 4].
Utilizând formula de reprezentare Newton sa se determine polinomul de interpolare
Hermite P (x) = P (f ; 0, 0, 0, 4, 4; x). Se se evalueze eroarea |f(x)− P (x)|.
Avem x1 = x2 = x3 = 0, x4 = x5 = 4. Din formula de reprezentare Newton avem:
P (f ; 0, 0, 0, 4, 4; x) = f(0) + f(0, 0)x + f(0, 0, 0)x2+
+f(0, 0, 0, 4)x3 + f(0, 0, 0, 4, 4)x3(x− 4)
Vom calcula diferentele divizate cu formulele de recurenta date de (??). Calculele le
36
vom organiza într-un tabel de forma:
nod d.d. d.d. d.d. d.d. d.d.
1n 2n 3n 4n 5n
x1 f(x1) f(x1, x2) f(x1, x2, x3) f(x1, x2, x3, x4) f(x1, . . . , x5)
x2 f(x2) f(x2, x3) f(x2, x3, x4) f(x2, x3, x4, x5)
x3 f(x3) f(x3, x4) f(x3, x4, x5)
x4 f(x4) f(x4, x5)
x5 f(x5)
(am notat cu "d.d.kn " diferente divizate asociate la k noduri).
Cum f(x) = 6√
2x + 1− 2x = 6(2x+1)1/2− 2x, rezulta ca f ′(x) = 6(2x+1)−1/2−
2 si f ′′(x) = −6(2x + 1)−3/2. Atunci f(0) = 6, f(4) = 10, f(0, 0) = f ′(0) = 4,
f(0, 4) = (f(4) − f(0))/(4 − 0) = 1, f(4, 4) = f ′(4) = 0, f(0, 0, 0) = 12f ′′(0) = −3,
f(0, 0, 4) = (f(0, 4) − f(0, 0))/(4 − 0) = −3/4 etc.. Rezulta urmatorul tabel în cazul
datelor problemei:
nod 1n 2n 3n 4n 5n
0 6 4 −3 9/16 −7/64
0 6 4 −3/4 2/16
0 6 1 −1/4
4 10 0
4 10
Atunci (cu formula de reprezentare Newton) avem
P (f ; 0, 0, 0, 4, 4; x) = 6 + 4x− 3x2 +9
16x3 − 7
64x3(x− 4).
Din formula de evaluare a erorii rezulta ca
|f(x)− P (f ; 0, 0, 0, 4, 4;x)| ≤ M5
5!|x3(x− 4)2| ∀x ∈ [0, 4],
37
unde M5 = supx∈[0,4]
|f (5)(x)|. Avem f (3)(x) = 18(2x+ 1)−5/2, f (4)(x) = −90(2x+ 1)−7/2,
f (5)(x) = 630(2x+1)−9/2. Cum f (6)(x) = −630 · 9(2x+1)−11/2 < 0, rezulta ca f (5)este
descrescatoare si cum f (5)(x) > 0 ∀x ∈ [0, 4] rezulta ca M5 = f (5)(0) = 630. Atunci
|f(x)− P (x)| ≤ 630
120|x3(x− 4)2| = 21
4x3(x− 4)2, ∀x ∈ [0, 4]. �
Formula lui Newton de interpolare ascendenta
Exemplul -1.35 Sa se determine, folosind formula de interpolare Newton ascendenta,
polinomul Lagrange atasat datelor: n = 3, x0 = 4, h = 2 (de unde x1 = 6, x2 = 8,
x3 = 10) si f : R → R o functie continua cu f(x0) = 1, f(x1) = 3, f(x2) = 8,
f(x3) = 20 si sa se estimeze valoarea functiei f în punctul x = 7.
Organizam calculul diferentelor nedivizate ascendente în tabelul urmator:
k xk f(xk) ∆1hf(xk) ∆2
hf(xk) ∆3hf(xk)
0 4 1 2 3 4
1 6 3 5 7
2 8 8 12
3 10 20
(De exemplu∆1hf(x0) = ∆hf(x0) = f(x1)−f(x0) = 3−1 = 2,∆2
hf(x0) = ∆1h∆hf(x0) =
∆hf(x1) − ∆hf(x0) = ∆1hf(x1) − ∆1
hf(x0) = 5 − 2 = 3, etc.) Atunci ∆0hf(x0) = 1,
∆1hf(x0) = 2, ∆2
hf(x0) = 3, ∆3hf(x0) = 4.
Fie x ∈ R Avem q =x− x0
h=
x− 4
2si atunci C0
q = 1, C1q = q =
x− 4
2, C2
q =
q(q − 1)
2=
(x− 4)(x− 6)
8, C3
q =q(q − 1)(q − 2)
6=
(x− 4)(x− 6)(x− 8)
48. Rezulta
ca: P (f ;x0, x1, x2, x3; x) =
3∑
i=0
Ciq∆
ihf(x0) = 1 + (x− 4) +
3
8(x− 4)(x− 6) +
4
48(x− 4)(x− 6)(x− 8)
si deci
P (f ;x0, x1, x2, x3; 7) = 1 + 3 +9
8− 1
4=
39
8= 4.875 .�
38
Formula lui Newton de interpolare descendenta
Exemplul -1.36 Sa se determine, folosind formula de interpolare Newton descen-
denta, polinomul Lagrange atasat datelor: n = 3, x0 = 10, h = 2 (de unde x−1 = 8,
x−2 = 6, x−3 = 4) si f : R → R o functie continua cu f(x0) = 20, f(x−1) = 8,
f(x−2) = 3, f(x−3) = 1 si sa se estimeze valoarea functiei f în punctul x = 7.
Organizam calculul diferentelor nedivizate descendente în tabelul urmator:
k xk f(xk) ∇1hf(xk) ∇2
hf(xk) ∇3hf(xk)
0 10 20 12 7 4
−1 8 8 5 3
−2 6 3 2
−3 4 1
(De exemplu ∇1hf(x0) = ∇hf(x0) = f(x0) − f(x−1) = 20 − 8 = 12, ∇2
hf(x0) =
∇1h∇hf(x0) = ∇hf(x0)−∇hf(x−1) = ∇1
hf(x0)−∇1hf(x−1) = 12− 5 = 7, etc.) Atunci
∇0hf(x0) = 20, ∇1
hf(x0) = 12, ∇2hf(x0) = 7, ∇3
hf(x0) = 4.
Fie x ∈ R. Avem q =x− x0
h=
x− 10
2si atunci
C0−q = 1, C1
−q = −q = −x− 10
2, C2
−q =−q(−q − 1)
2=
(x− 10)(x− 8)
8, C3
−q =
−q(−q − 1)(−q − 2)
6=
(x− 10)(x− 8)(x− 6)
48. Rezulta ca:
P (f ; x0, x−1, x−2, x−3;x) =3∑
i=0
(−1)iCi−q∇i
hf(x0) =
= 20 +12
2(x− 10) +
7
8(x− 10)(x− 8) +
4
48(x− 10)(x− 8)(x− 6)
si deci
P (f ; x0, x−1, x−2, x−3; 7) = 20− 18 +21
8+
1
4=
39
8= 4.875 .�
Formula de interpolare Gauss înainte
39
Exemplul -1.37 Sa se determine, folosind formula de interpolare Gauss înainte, poli-
nomul Lagrange atasat datelor: n = 2, x0 = 6, h = 2 (de unde x−2 = 2, x−1 = 4,
x1 = 8, x2 = 10) si f : R → R o functie continua cu f(x−2) = −2, f(x−1) = 1,
f(x0) = 3, f(x1) = 8, f(x2) = 20 si sa se estimeze valoarea functiei f în punctul
x = 7.
Printr-un calcul elementar, se arata ca, pentru orice i = 1, 2:
δ2i−1h f(x1/2) = ∆2i−1h f(x−i+1) si δ
2ih f(x0)) = ∆2i
h f(x−i)).
Atunci: P (f ;x−2, x−1, x0, x1, x2; x) =
f(x0) +2∑
i=1
(C2i−1q+i−1∆
2i−1h f(x−i+1) + C2i
q+i−1∆2ih f(x−i)) =
= f(x0) + C1q∆
1hf(x0) + C2
q∆2hf(x−1) + C3
q+1∆3hf(x−1) + C4
q+1∆4hf(x−2).
Organizam calculul diferentelor finite ascendente în tabelul urmator:
k xk f(xk) ∆1hf(xk) ∆2
hf(xk) ∆3hf(xk) ∆4
hf(xk)
−2 2 −2 3 −1 4 0
−1 4 1 2 3 4
0 6 3 5 7
1 8 8 12
2 10 20
Avem: f(x0) = 3,∆1hf(x0) = 5,∆2
hf(x−1) = 3,∆3hf(x−1) = 4,∆4
hf(x−2) = 0. Cum
q =x− 6
2rezulta ca C1
q = q =x− 6
2, C2
q =q(q − 1)
2=
(x− 6)(x− 8)
8, C3
q+1 =
(q + 1)q(q − 1)
6=
(x− 4)(x− 6)(x− 8)
48. Atunci:
P (f ;x−2, x−1, x0, x1, x2; x) =
40
= 3 + 5x− 6
2+ 3
(x− 6)(x− 8)
8+ 4
(x− 4)(x− 6)(x− 8)
48
si
f(7) � P (f ; x−2, x−1, x0, x1, x2; 7) = 3 +5
2− 3
8− 1
4=
39
8= 4.875 .�
Formula de interpolare Gauss înapoi
Exemplul -1.38 Sa se determine, folosind formula de interpolare Gauss înapoi, poli-
nomul Lagrange atasat datelor: n = 2, x0 = 6, h = 2 (de unde x−2 = 2, x−1 = 4,
x1 = 8, x2 = 10) si f : R → R o functie continua cu f(x−2) = −2, f(x−1) = 1,
f(x0) = 3, f(x1) = 8, f(x2) = 20 si sa se estimeze valoarea functiei f în punctul
x = 7.
Printr-un calcul elementar, se arata ca, pentru orice i = 1, 2:
δ2i−1h f(x1/2) = ∆2i−1h f(x−i+1) si δ
2ih f(x0)) = ∆2i
h f(x−i)).
Atunci: P (f ;x−2, x−1, x0, x1, x2; x) =
f(x0) +2∑
i=1
(C2i−1q+i−1∆
2i−1h f(x−i) + C2i
q+i∆2ih f(x−i)) =
= f(x0) + C1q∆
1hf(x−1) + C2
q+1∆2hf(x−1) + C3
q+1∆3hf(x−2) + C4
q+2∆4hf(x−2).
Organizam calculul diferentelor finite ascendente în tabelul urmator:
k xk f(xk) ∆1hf(xk) ∆2
hf(xk) ∆3hf(xk) ∆4
hf(xk)
−2 2 −2 3 −1 4 0
−1 4 1 2 3 4
0 6 3 5 7
1 8 8 12
2 10 20
41
Avem: f(x0) = 3,∆1hf(x−1) = 2,∆2
hf(x−1) = 3,∆3hf(x−2) = 4,∆4
hf(x−2) = 0. Cum
q =x− 6
2, rezulta ca C1
q = q =x− 6
2, C2
q+1 =(q + 1)q
2=
(x− 4)(x− 6)
8, C3
q+1 =
(q + 1)q(q − 1)
6=
(x− 4)(x− 6)(x− 8)
48. Atunci:
P (f ;x−2, x−1, x0, x1, x2; x) =
= 3 + 2x− 6
2+ 3
(x− 4)(x− 6)
8+ 4
(x− 4)(x− 6)(x− 8)
48
si
f(7) � P (f ; x−2, x−1, x0, x1, x2; 7) = 3 + 1 +9
8− 1
4=
39
8= 4.875 . �
Metode numerice pentru ecuatii diferentialeMetode într-un pas (directe)Metoda Euler explicita (progresiva)
Exemplul -1.39 Folosind metoda Euler, determinati solutia aproximativa a problemei
Cauchy:
y′
= y2 − y
t− 1
4t2, t ∈ [1, 2]
y(1) = 0.75
în t = 2, luând h = 0.5.
Avem f(t, y) = y2 − y
t− 1
4t2, t0 = 1 si y0 = 0.75 . Se obtine N = 2 si yn+1 =
yn + 0.5f(tn, yn), pentru n = 0, 1 . Deci rezulta:
t1 = 1.5 , y(t1) � y1 = y0 + 0, 5f(t0, y0) = 0.75 + 0.5f(1, 0.75) =
0.75 + 0.5(−0.4375) = 0.5313 ,
t2 = 2 , y(t2) � y2 = y1 + 0, 5f(t1, y1) = 0.5313 + 0.5f(1.5, 0.5313) =
0.5313 + 0.5(−0.1831) = 0.4397 .�
Metode Runge-Kutta
42
Exemplul -1.40 Se da problema Cauchy:
y′
= y2 − y
t− 1
4t2, t ∈ [1, 2.9]
y(1) = 0.75
Sa se determine valoarea aproximativa a solutiei în t = 2.9, folosind metoda si RK24,
pentru N = 2.
Pentru N = 2 avem h = 0.9500. Luam y0 = 0.75, t0 = 1. Pentru metoda RK24,
avem f(t, y) = y2 − y
t− 1
4t2. Se obtine:
- pentru n = 1:
y0,1 = y0 = 1 , t0,1 = t0 = 1 ,
y0,2 = y0 = 1 + 0.95f(t0,1, y0,1)/2 = 0.8812 , t0,2 = t0 + 0.95/2 = 1.4750 ,
y0,3 = y0 = 1 + 0.95f(t0,2, y0,2)/2 = 1.0305 , t0,3 = t0 + 0.95/2 = 1.4750 ,
y0,4 = y0 = 1 + 0.95f(t0,3, y0,3) = 1.2360 , t0,4 = t0 + 0.95 = 1.9500 ,
y1 = y0 + 0.95(f(t0,1, y0,1) + 2f(t0,2, y0,2) + 2f(t0,3, y0,3) + f(t0,4, y0,4))/6 =
1 + 0.95(−0.2500 + 2 · 0.0642 + 2 · 0.2484 + 0.8281)/6 = 1.1905
t1 = t0 + h = 1.9500
- pentru n = 2:
y1,1 = y1 = 1.1905 , t1,1 = t1 = 1.95 ,
y1,2 = y1 = 1 + 0.95f(t1,1, y1,1)/2 = 1.5425 , t1,2 = t1 + 0.95/2 = 2.4250 ,
y1,3 = y1 = 1 + 0.95f(t1,2, y1,2)/2 = 1.9984 , t1,3 = t1 + 0.95/2 = 2.4250 ,
y1,4 = y1 = 1 + 0.95f(t1,3, y1,3) = 4.1612 , t1,4 = t1 + 0.95 = 2.9 ,
y2 = y1 + 0.95(f(t1,1, y1,1) + 2f(t1,2, y1,2) + 2f(t1,3, y1,3) + f(t1,4, y1,4))/6 =
1.1905 + 0.95(0.7411 + 2 · 1.7008 + 2 · 3.1270 + 15.8509)/6 = 5.3464
t2 = t1 + h = 2.9 .�
Metode în mai multi pasi (indirecte)Metoda Adams-Bashforth
43
l
Exemplul -1.41 Folosind metoda Adams-Bashforth pentru r = 3, determinati solutia
aproximativa a problemei Cauchy:
y′
= y2 − y
t− 1
4t2, t ∈ [1, 2.25]
y(1) = 0.75
în t = 2.25 pentru N = 5, determinând valorile de început y1, y2, y3 cu metoda Euler
progresiva.
Avem h = 0.25 si f(t, y) = y2 − y
t− 1
4t2. Aplicând metoda Euler progresiva se
obtine:
t0 = 1 , y0 = 0.75 , f0 = f(t0, y0) = −0.4375 ,
t1 = 1.25 , y1 = 0.6406 , f1 = f(t1, y1) = −0.2621 ,
t2 = 1.5 , y2 = 0.5751 , f2 = f(t2, y2) = −0.1638 ,
t3 = 1.75 , y3 = 0.5342 , f3 = f(t3, y3) = −0.1015 ,
si, în continuare, cu metoda Adams-Bashforth pentru r = 3, rezulta:
t4 = 2 , y4 = y3 +h
24(55f3 − 59f2 + 37f1 − 9f0) = 0.5166 ,
f4 = f(t4, y4) = −0.0539 ,
t5 = 2.25 , y5 = y4 +h
24(55f4 − 59f3 + 37f2 − 9f1) = 0.5096 ,
f5 = f(t5, y5) = −0.0162 .
44