53
Cursul 13 Integrarea și derivarea numerică

C13-Integrarea si derivarea numerica.pdf

  • Upload
    vi7er

  • View
    66

  • Download
    2

Embed Size (px)

Citation preview

Page 1: C13-Integrarea si derivarea numerica.pdf

Cursul 13

Integrarea și derivarea numerică

Page 2: C13-Integrarea si derivarea numerica.pdf

Integrare şi derivare numerică

Ne propunem să calculăm aproximativ valorile

în condiţiile în care

funcţia este continuă pe intervalul [a, b] şi derivabilă în x0

primitiva F nu este cunoscută

funcţia f este cunoscută numai prin valorile f(xi) pe care le ia într-un număr restrîns de puncte xi, i=0:N

dxxffIb

a

0

pxffD

Page 3: C13-Integrarea si derivarea numerica.pdf

Integrare şi derivare numerică

Definim o metodă aproximativă de integrare ca

Metoda aproximativă de integrare este slab

convergentă dacă

Teoremă Condiţia necesară şi suficientă ca metoda de integrare IN[f] să conveargă slab

către I[f] se exprimă prin relaţiile

a) există M > 0 astfel încât

pentru toţi N=1,2,...

b) pentru toţi k=0,1,...

N

0i

iNiNN xfAfI

0fIfIlim NN

MaN

0i

iN

b

a

kk

Nn

,dxxxIlim

Page 4: C13-Integrarea si derivarea numerica.pdf

Metode de tip Newton-Cotes

funcţia pondere w:(a,b)R+, nu modifică

problema, întrucât putem lua g(x)=f(x)*w(x),

iar RN este eroarea (sau restul) formulei

aproximative de integrare.

Metodele de tip Newton-Cotes se bazează pe

integrarea polinomului de interpolare, utilizând ca

suport al interpolării nodurile echidistante în intervalul [a,b], adică

Metodele de integrare de tip Fejer integrează polinomul de interpolare folosind ca noduri xiN -

rădăcinile polinomului ortogonal pN(x), definit

relativ la ponderea w(x)

N

N

0i

iNiN

b

aRxfAdxxwxf

N:0i,N

abiaxiN

Page 5: C13-Integrarea si derivarea numerica.pdf

Metode de tip Newton-Cotes

Coeficienţii aiN se determină impunând ca formula aproximativă să fie exactă (R=0),dacă f aparţine unei anumite clase de funcţii (de exemplu polinoame de grad N, fN).

Cum funcţia este cunoscută numai în nodurile xi, i=0:N, o vom aproxima prin polinomul ei de interpolare Lagrange

iN

N

0i

iN xfxlxPxf

N

0i

iNiN

b

aN xfAdxxwxP

dxxwxfxldxxwxP iN

b

a

N

0i

iN

b

aN

iN

N

0i

iN

b

aiN

N

0i

iN xfAdxxwxlxf

Page 6: C13-Integrarea si derivarea numerica.pdf

Metode de tip Newton-Cotes

Printr-o schimbare liniară de variabilă, coeficienţii aiN pot fi făcuţi independenţi de intervalul de

integrare; ei sunt totuşi inutilizabili, fiind de valori

mari şi de semne contrarii, ceea ce conduce la

instabilitate numerică

Expresia erorii în metodele de tip Newton-Cotes

se deduce integrând expresia erorii din polinomul de interpolare: f(x)=PN(x)+EN(x),

b

aiNiN dxxwxlA

NN R

b

aN

fI

b

aN

fI

b

adxxwxEdxxwxPdxxwxf

b,a,dxxwxxxx!1N

fR

b

aN0

1N

N

Page 7: C13-Integrarea si derivarea numerica.pdf

Metode de tip Newton-Cotes

Datorită instabilităţii interpolării polinomiale se

folosesc polinoame de interpolare cu grad mic.

Astfel pentru N=1 se obţine formula trapezelor

în care şi [a,b]

Pentru N=2 se obţine formula lui Simpson

dxxwxxxx!1N

fR

b

aN0

1N

N

12

fhbfaf

2

hdxxf

3b

a

abN

abh

90

fhbf

2

baf4af

3

hdxxf

iv5b

a

Page 8: C13-Integrarea si derivarea numerica.pdf

Metode de tip Newton-Cotes

Aproximăm funcţia f, local, pe intervale:

formula compusă a trapezelor

cu

formula compusă Simpson

cu xi=a+ih, i=0:2N

dxxfdxxfdxxfn

1n

1

0

n

0

x

x

x

x

x

x

1N

1i

ihaf2bfaf2

hT

N

abh

N

1i

1N

1i

i21i2 xf2xf4bfaf3

hS

Page 9: C13-Integrarea si derivarea numerica.pdf

Metode de tip Newton-Cotes

function I= Simpson(n, a, b, f)

% Intrări:

% a,b = capete interval de integrare

% n = ordinul metodei

% f = funcţia de integrat

% Ieşiri: valoarea integralei definite

h =(b-a) / (2*n);

s1 = 0;

s2 = 0;

for i = 1 : n

s1 = s1 + f(a+(2*i-1)*h);

end;

for i = 1 : n-1

s2 = s2 + f(a+2*i*h);

end;

I = h*(f(a) + f(b) + 4*s1 + 2*s2)/3;

Page 10: C13-Integrarea si derivarea numerica.pdf

Metoda lui Euler

Metodele din această categorie sunt aplicabile, dacă

se cunosc informaţii privind derivatele funcţiei de integrat f(x) la capetele intervalului de integrare.

Considerăm funcţia f(x) continuă, împreună cu

derivatele până la ordinul r inclusiv (f:(a,b)R,

fCr([a,b])) şi polinomul monic de grad r,

pr(x) r.

Întrucât pr(x) este monic, avem evident pr(r)(x)=r!

şi putem scrie

Integrăm prin părţi de r ori:

b

a

r

r

b

a

dxxfxP!r

1dxxffI

Page 11: C13-Integrarea si derivarea numerica.pdf

Metoda lui Euler

Considerăm dezvoltarea în serie:

Exponenţialele se dezvoltă în serie Taylor

Se identifică termenii de acelaşi grad din cei 2

membri:

dxxfxP

!r

1xfxP1

!r

1fI

b

a

r

r

r

a

br

1k

1kkr

r

1k

0n

nn

t

tx

t!n

xB

1e

te

tx

0n

nnttet

!n

xB1e

0n

nn

0n 1n

n1nn

t!n

xB

!n

t

!n

tx

Page 12: C13-Integrarea si derivarea numerica.pdf

Metoda lui Euler

relaţie care ne arată că Bn(x) este un polinom de grad n numit polinomul lui Bernoulli.

Bn(x+1)-Bn(x)=nxn-1

Bn’(x)=n*Bn-1(x), n=1,2,…,

Bn(1-x)=(-1)nBn(x)

Numerele lui Bernoulli se definesc ca Bn=Bn(0)

n

1k

1n

kn0 xnxBk

n,1xB

2

xx

2

3xxB,

6

1xxxB,

2

1xxB

23

3

2

21

1

0

n 0dxxB

Page 13: C13-Integrarea si derivarea numerica.pdf

Metoda lui Euler

şi B2n+1=0

Particularizăm pentru

şi facem schimbarea de variabilă x=a+th cu h=b-a

!n

BC n

n

01Cn

1nC

2

1nC

1

1n

11nn

,6

1C,

2

1C 21

!n2

xBxP,n2r n2

r

b,a,fBhfR

afbfBh2

bfafhfI

n2

n2

1n2

1n

1k

1k21k2

k2

k2

n

Page 14: C13-Integrarea si derivarea numerica.pdf

Metoda lui Euler

Pentru obţinerea unei formule compuse, împărţim intervalul (a,b) cu N-1 puncte echidistante

şi aplicăm formula de mai sus în fiecare

subinterval. Obţinem în final o relaţie cunoscută

sub numele de formula lui Euler

N

abiaxi

1n

1k

1k21k2k2

k21N

1i

n afbf!k2

Bhihaf

2

bfafhfI

Page 15: C13-Integrarea si derivarea numerica.pdf

Metoda lui Romberg

Fie IN şi EN valoarea aproximativă a integralei şi

estimarea erorii în metoda compusă a trapezelor.

Valoarea exactă a integralei este I=IN+EN,

Pentru două valori diferite ale lui N avem

I=IN1+EN1=IN2+EN2

b,a,f12

NhE

3

N

1

2

12

1

1

12

1

21

N

N

NN

N

N

NN

N

NN

E

E1

IIE

E

II

E

EE

2

2

2

1

3

1

3

1

3

2

3

2

1

3

11

2

3

22

N

N

N

N

N

abN

N

abN

f12

hN

f12

hN

E

E

1

2

Page 16: C13-Integrarea si derivarea numerica.pdf

Metoda lui Romberg

Se aproximează f(1)f(2)

Dacă se alege N2=2N1 atunci

Dacă în această formulă înlocuim pe IN şi I2N cu

estimările lor din formula compusă a trapezelor,

2

2

2

1

NN

N

2

2

2

1

NN

N

N

N1

IIII

N

N1

IIE 12

1

12

1

3

II4I

4

11

IIII NN2

N

NN2

N

3

II4I NN2

Page 17: C13-Integrarea si derivarea numerica.pdf

Metoda lui Romberg

atunci se obţine pentru I estimarea din formula

compusă a lui Simpson.

Estimând acum integrala cu formula compusă a

lui Simpson, în care eroarea are expresia

se obţine

iv

5

N f90

NhE

4

2

4

1

NN

N

N

N1

IIII 12

1

15

II16

14

II4

14

II4II NN2

2

NN2

2

2

NN2

2

N

Page 18: C13-Integrarea si derivarea numerica.pdf

Metoda lui Romberg

Notăm cu I01, I11,…, IN1 estimările integralelor

calculate cu formula compusă a trapezelor considerând 20, 21,…,2N intervale.

IN1 poate fi obţinut prin recurenţă din IN-1,1 cu

formula:

Integralele Simpson pentru 20, 21,…,2N intervale

se obţin cu formulele:

analog:

12

2i,1i

N1N1,1N1,N

N

i2

abaf

2

abI

2

1I

14

II4I

1,k1,1k

2,k

Page 19: C13-Integrarea si derivarea numerica.pdf

Metoda lui Romberg

Se formează matricea inferior triunghiulară

I11

I21 I22

...

IN1 IN2 ... INN

Fiecare coloană converge către I, cu atât mai

rapid cu cât este situată mai la dreapta.

Pentru o coloană j, calculul iterativ este oprit în

momentul în care |Ik,j-Ik-1,j|<.|Ik,j| .

14

II4I

2

2,k2,1k

2

3,k

14

II4I

1j

1j,k1j,1k

1j

j,k

Page 20: C13-Integrarea si derivarea numerica.pdf

Metoda lui Romberg

function R = Romberg(a, b, n, f)

% Intrări:

%a, b = intervalul de integrare

%f = funcţia de integrat

%2n = numărul intervalelor

% Ieşiri:

%R = matrice cu valori integrale

h = b-a;

R(1,1) = h(f(a)+f(b)) / 2;

l = 1;

Page 21: C13-Integrarea si derivarea numerica.pdf

Metoda lui Romberg

for i = 2 : n

s = R(i-1, 1);

for k = 1 : l

s = s + h.f(a+(k-0.5)h);

end;

R(i,1) = s / 2;

l = 2*l;

p = 1;

for j = 2 : i

p = 4*p;

R(i,j)=(p*R(i,j-1)-R(i-1,j-1))/(p-1);

end;

h = h / 2;

end

Page 22: C13-Integrarea si derivarea numerica.pdf

Metoda seriei generatoare

Utilizează cea de-a treia formulă de interpolare Newton-Gregory, considerând punctele echidistante x0, x-1, …, x-k

f(x)=f(x0+uh)=pk(u)+E(u)

cu eroarea interpolării

Prin integrarea formulei de mai sus se obţine:

0

k

00k fk

1kuf

1

ufup

1k

1k

fku1uu!1k

huE

Page 23: C13-Integrarea si derivarea numerica.pdf

Metoda seriei generatoare

în care expresia restului este

Pentru calculul integralei folosim seria:

,Rduk

1kufdu

1

ufdufhdxxf

1

0

x

x

1

0

1

0

1

00

k

00

du1k

kufkR

1

0

1k2k

du

!m

1mu1uuc

1

0m

1k2k

1k0

k

k010

x

xfhcfcfcfhdxxf

1

0

m

0m

mtctC

Page 24: C13-Integrarea si derivarea numerica.pdf

Metoda seriei generatoare

care este absolut convergentă pentru |t|<1 ,

întrucât |cm|<1. avem

du!m

1mu1uuttC

1

00m

m

1

0

u1

00m

mdut1dut

!m

1mu1uu

t1lnt1

ttC

t1

1t1ln

t

tC

2

10

2

tt1tcc3

t

2

t1

Page 25: C13-Integrarea si derivarea numerica.pdf

Metoda seriei generatoare

identificăm coeficienţii, obţinând relaţia de recurenţă

Valorile coeficienţilor astfel calculaţi sunt

Metoda este utilizată şi pentru integrarea ecuaţiilor

diferenţiale prin metode multipas.

11m

c

2

cc

01m

m

,188

95,

720

251,

8

3,

12

5,

2

1

Page 26: C13-Integrarea si derivarea numerica.pdf

Integrarea gaussiană

Pentru calculul unei integrale de forma

cu w:(a,b)R+, o funcţie continuă pe intervalul

finit sau infinit (a,b), vom folosi o metodă de

integrare numerică de forma

În plus se impun condiţiile

să fie absolut

convergente

dxxwxffI

b

a

N

1i

iNiNN xfafI

,1,0k,dxxwx

b

a

k

b

a

2

dxxwxf

Page 27: C13-Integrarea si derivarea numerica.pdf

Integrarea gaussiană

Metodele de tip Newton-Cotes (pentru suportul x1N, …, xNN) au gradul de valabilitate N-1 (sunt

exacte pentru polinoame până la gradul N-1

inclusiv).

Ne punem problema determinării unor metode

aproximative de integrare cu grad de valabilitate

mai ridicat, pe seama alegerii corespunzătoare a nodurilor xiN.

Determinarea celor 2N necunoscute aiN şi xiN cu

i=1:N, necesită 2N ecuaţii. Formula este, prin

urmare exactă pentru polinoame de la grad până la 2N-1.

I[P]=IN[P], P2n-1

Page 28: C13-Integrarea si derivarea numerica.pdf

Integrarea gaussiană

Sistemul format, considerând polinoamele P=1,

x,…, x2N-1 este:

fiind neliniar în raport cu xiN, şi nu poate fi rezolvat

uşor în mod direct.

Pentru obţinerea nodurilor xiN, i=1:N, Gauss a

folosit metoda prezentată în cele ce urmează.

Seconsideră polinomul

dxxwAb

a

N

1i

iN

b

a

N

1i

iNiN dxxxwxA

dxxwxxAb

a

1N2N

1i

1N2

iNiN

Page 29: C13-Integrarea si derivarea numerica.pdf

Integrarea gaussiană

N(x)=(x-x1N)…(x-xNN),

Orice polinom PN-1+q(x) de grad N+q2N-1 se

poate exprima sub forma

PN-1+q(x)= N(x).Qq-1(x) + RN-1(x),

pe baza teoremei împărţirii cu rest.

Dorim ca formula aproximativă de integrare să aibă grad de valabilitate > N-1, adică să fie

exactă pentru polinoamele PN-1+q(x), ceeace

implică

PN-1+q(xiN)=RN-1(xiN)

iN

N

1i

q1NiN

b

aq1N xPAdxxwxP

Page 30: C13-Integrarea si derivarea numerica.pdf

Integrarea gaussiană

dar formula are cel puţin gradul de valabilitate N-1,

adică

relaţie care arată că N(x) este ortogonal cu orice

polinom de grad < N. Se ştie că, în raport cu o

funcţie pondere w(x) definită pe un interval

(a,b), există un polinom ortogonal unic; aşadar

iN

N

1i

1NiN

b

aq1N xRAdxxwxP

b

a1N1q

b

aN

b

aq1N dxxwxRdxxwxQxdxxwxP

N

1i

iN1NiN

b

a1N xRAdxxwxR

0dxxwxQx 1q

b

aN

Page 31: C13-Integrarea si derivarea numerica.pdf

Integrarea gaussiană

N(x) este acest polinom ortogonal.

In concluzie, nodurile xiN (abscisele Gauss) sunt

rădăcinile polinomului ortogonal, definit în mod unic în raport cu funcţia pondere w(x).

Coeficienţii AiN se vor determina apoi, rezolvând

ecuaţii, din cele 2N ale sistemului liniar .

Coeficienţii AiN se pot exprima şi prin intermediul

polinomului de interpolare Lagrange. Formula gaussiană având gradul de valabilitate 2N-1, este

exactă şi pentru funcţia

f(x)=l2k,N-1(x), pentru care

kNkN

2

1N,kkNiN

N

1i

2

1N,kiN

b

a

2

1N,k AxlAxlAdxxwxl

Page 32: C13-Integrarea si derivarea numerica.pdf

Integrarea gaussiană

Eroarea integrării în metoda gaussiană este

Particularizăm pentru polinoamele ortogonale uzuale, obţinând formule de integrare utile

-Cebâşev ordin 1

O funcţie MATLAB care calculează o integrală,

folosind relaţia precedentă este:

dxxwxlAb

a

2

1N,kkN

dxxwx!N2

fR

b

a

2

N

N2

N

N

1i

1

1 2 N2

1i2cosf

Ndx

x1

xf

Page 33: C13-Integrarea si derivarea numerica.pdf

Integrarea gaussiană

function y=GCeb(f,n)

%integrare Gauss-Cebasev

k=1:n;

x=cos(2*k-1)*pi/2/n;

y=pi/n*sum(feval(f,x));

În scriptul de test, funcţia integrand f se defineşte

cu inline. De exemplu:

F=inline(x*sqrt(x))

Z=Gceb(F,5)

-Cebâşev ordin 2

1N

icosf

1N

isin

1Ndxx1xf

N

1i

22

1

1

Page 34: C13-Integrarea si derivarea numerica.pdf

Integrarea gaussiană

-Legendre

Dacă limitele de integrare sunt altele decât -1 şi

1, se face o schimbare de variabilă:

N

1i

iNiN

1

1xfAdxxf

iN1N

2

2

iN

iNxLN

x12A

1

1

b

a

dtt2

ab

2

abf

2

abdxxfI

n

1k

kk t2

ab

2

abfA

2

abI

Page 35: C13-Integrarea si derivarea numerica.pdf

Integrarea gaussiană

Funcţia MATLAB care calculează o integrală

definită Gauss-Legendre este

function y=GLeg(f,a,b,n)

%integrare Gauss-Legendre

z=Leg(n);%coeficienti Ln(x)

x=roots(z);%radacini Ln(x)

xx=(b+a)/2+(b-a)/2*x;

yy=feval(f,xx);

z1=Leg(n-1);

A=2*(1-x.^2)/n^2;

A=A./polyval(z1,x).^2;

y=(b-a)/2*A'*yy;

Page 36: C13-Integrarea si derivarea numerica.pdf

Integrarea gaussiană

-Laguerre

-Hermite

N

1i

iNiN0

xxfAdxxfe

iN

2

1N

2

iN

iNxG1n

xA

N

1i

iNiN

xxfAdxxfe

2

iN

2

1N

1N

iNxH

!N2A

Page 37: C13-Integrarea si derivarea numerica.pdf

Integrarea gaussiană

Nodurile xiN reprezintă rădăcinile polinomului

ortogonal corespunzător, iar coeficienţii AiN se obţin

fie prin rezolvarea sistemelor de ecuaţii liniare

deduse, impunând ca formula de integrare să fie exactă pentru polinoame până la gradul N-1, fie

direct cu formulele date.

Metodele gaussiene au o precizie mai mare decât

metodele de tip Newton-Cotes (având gradul de

valabilitate mai ridicat) şi pot fi utilizate şi pentru

calculul unor integrale improprii.

Page 38: C13-Integrarea si derivarea numerica.pdf

Integrarea dubla

Page 39: C13-Integrarea si derivarea numerica.pdf

Integrarea dubla

Page 40: C13-Integrarea si derivarea numerica.pdf

Integrarea dubla

Page 41: C13-Integrarea si derivarea numerica.pdf

Integrarea dubla

Page 42: C13-Integrarea si derivarea numerica.pdf

Integrarea dubla

Page 43: C13-Integrarea si derivarea numerica.pdf

Integrarea dubla

Page 44: C13-Integrarea si derivarea numerica.pdf

Integrarea dubla

Page 45: C13-Integrarea si derivarea numerica.pdf

Integrarea dubla

Page 46: C13-Integrarea si derivarea numerica.pdf

Integrarea dubla

Se notează:

Page 47: C13-Integrarea si derivarea numerica.pdf

Derivare numerică

Pentru o funcţie fC([a,b]) cunoscută numai

prin valorile f(x0), f(x1),…,f(xn) se cere

aproximarea derivatei f(p)() într-un punct

[a,b].

Aproximarea derivatei se exprimă printr-o

funcţională liniară discretă

Coeficienţii Ai()se determină impunând ca

formula să fie exactă (R()=0) pentru o anumită

clasă de funcţii.

De exemplu pentru baza u0(x),u1(x),…, un(x)

se obţine

RxfAf i

n

0i

i

p

n

0i

iki

p

k xuAu

Page 48: C13-Integrarea si derivarea numerica.pdf

Derivare numerică

sistem de ecuaţii care ne permite să determinăm necunoscutele Ai().

Utilizarea bazei polinomiale 1, x, x2, …, xn

conduce la sistemul liniar

Funcţia f poate fi înlocuită cu polinomul de

interpolare Lagrange, derivata funcţiei fiind

estimată prin derivata polinomului de interpolare.

n

0i

k

ii ,1p:1k,0xA

n

0i

pkk

ii .n:pk,1pk1kkxA

pn

0i

p

ii

pElxff

Page 49: C13-Integrarea si derivarea numerica.pdf

Derivare numerică

de unde prin identificare se obţine

Eroarea formulei de derivare este

Formulele de aproximare obţinute pentru prima derivată, considerând punctele xi echidistante sunt de forma:

n:0i,lAp

ii

pn02nn0

px,x,xFxxxxER

)!1kpn(

)(f)(

!k

!p)(R

kp

)1kpn(

)k(

p

0k

Page 50: C13-Integrarea si derivarea numerica.pdf

Derivare numerică

2

1 0 1 (3)

1

3 4' ( )

2 3

f x f x f x hf x f

h

2

1 1 (3)

0' ( )2 6

f x f x hf x f

h

2

1 0 1 (3)

1

4 3' ( )

2 3

f x f x f x hf x f

h

formule în 3 puncte

Page 51: C13-Integrarea si derivarea numerica.pdf

Derivare numerică

4

2 1 0 1 2 (5)

1

3 10 18 6' ( )

12 20

f x f x f x f x f x hf x f

h

4

2 1 1 2 (5)

0

8 8' ( )

12 30

f x f x f x f x hf x f

h

4

2 1 0 1 2 (5)

1

6 18 10 3' ( )

12 20

f x f x f x f x f x hf x f

h

formule în 5 puncte

4

2 1 0 1 2 (5)

2

3 16 36 48 25' ( )

12 5

f x f x f x f x f x hf x f

h

4

2 1 0 1 2 (5)

2

25 48 36 16 3' ( )

12 5

f x f x f x f x f x hf x f

h

Page 52: C13-Integrarea si derivarea numerica.pdf

Derivare numerică

Derivata de ordinul 2 in cazul a 3 noduri echidistante:

Eroarea în acest caz este:

Page 53: C13-Integrarea si derivarea numerica.pdf

Exemplu derivare numerică

Fie funcţia dată prin tabelul de valori:

Să se calculeze f’(2) şi f′′(2).