Mètode de Newton

De testwiki
Salta a la navegació Salta a la cerca

En càlcul numèric, el mètode de Newton, o mètode de Newton-Raphson, és un algorisme per tal de trobar aproximacions del zero d'una funció amb valors reals.

Història

El mètode Newton va ser descobert per Isaac Newton i publicat al Method of Fluxions el 1736. Encara que aquest mètode també sigui descrit per Joseph Raphson a Analysis Aequationum el 1690, cal dir que el Method of Fluxions ja havia estat escrit el 1671.

El mètode

Suposem que la funció f és contínuament diferenciable dues vegades a l'interval [a,b], o sigui f𝒞2[a,b]. I existeix un zero de la funció en aquest interval. Direm que α[a,b] és la solució si f(α)=0.

Sigui x0[a,b] una aproximació a la solució α tal que f(x0)0. Si escrivim el polinomi de Taylor de primer grau per a f(x) al voltant de x0, tindrem: f(x)=f(x0)+(xx0)f(x)+(xx0)22f(ξ(x))

Però com que f(α)=0, aquest anterior polinomi de Taylor, el podem escriure de la forma: 0=f(x0)+(αx0)f(x)+(αx0)22f(ξ(α)).

En aquest punt, el mètode de Newton suposa que el terme (αx0)2 serà menyspreable, i que: 0f(x0)+(αx0)f(x),

i aïllant α:

αx0f(x0)f(x0),

que ha de ser una millor aproximació cap a α. Anomenem x1 a aquesta millor aproximació. Per inducció definim una successió de valors de xn, que es pot escriure de la forma: xn=x(n1)f(x(n1))f(x(n1)), amb n1.

Imatge gràfica

L'aproximació gràfica és la següent: S'escull un valor de l'abscissa raonablement pròxim a l'autèntic zero. En aquest punt, es reemplaça la corba per la seva tangent, i es calcula el zero d'aquesta recta tangent. Aquest zero, normalment, és més pròxim al zero de la funció, que el valor inicial. Aquest procés es reitera, fins a arribar a una aproximació que es dona per bona. En el cas de la gràfica, a partir de x0, s'anirà trobant la successió x1,x2,..., fins a arribar a un cert valor que es donarà com a solució de α.

Observacions

La fallada d'aquest mètode, normalment ve motivada per l'anul·lació del valor de la derivada en algun punt entre el valor del zero de la funció i el valor x0 inicial que s'hagi agafat com aproximació d'arrencada. No cal dir que l'eficiència d'aquest mètode també està a saber trobar una aproximació inicial suficientment pròxima a la solució.

Exemple

Suposem que es vulgui trobar un valor de la x que fa que xcosx=0. Es pot intuir que existeix un valor entre 0 i 1 que ha de complir aquesta condició.

La derivada de la funció és: 1+sinx, sempre és >0.

Es pot agafar com a valor d'inici: x0=0.5.

I d'aquí:

x1=0.50.5cos0.51+sin0.5=0.75522

x2=0.755220.75522cos0.755221+sin0.75522=0.73914

x3=0.739140.73914cos0.739141+sin0.73914=0.73909

x4=0.739090.73909cos0.739091+sin0.73909=0.73909

Valor que evidentment soluciona el problema, dins l'aproximació en què s'ha treballat.

Algorisme

Algorisme Mètode_Newton
funció func(x:real): real; /retorna el valor de la funció en x.
funció deriv(x:real): real;/retorna el valor de la derivada en x.
 
var.x0=W: real;/W allunyat de V, per evitar que |x0-x1|<Tol.
x1=V: real;	/V=aproximació inicial.
Tol: real;/Tol=marge màxim d'error que s'acceptarà.
n=N: enter;/controla el número d'iteracions, màxim N.
 
fer 
mentre [n>0] i [|x0-x1|>Tol] fer
x0=x1;
x1=x0-func(x0)/deriv(x0); 
n=n-1;
fi mentre;
si n>0
SORTIDA=x1;
altrament
SORTIDA=ERROR;
fi si;
fi procés;

Generalització

Es pot també utilitzar el mètode de Newton per tal de resoldre sistemes de n equacions (generalment no lineals), això representa trobar els zeros de les funcions contínuament derivables F:RnRn.

Si designem per 𝐉(𝐱) la matriu jacobiana d'aquest sistema de funcions, el mètode de Newton en aquest cas, es pot escriure amb el següent procés iteratiu:

𝐱𝐤=𝐱(𝐤𝟏)𝐉(𝐱(𝐤𝟏))𝟏𝐅(𝐱(𝐤𝟏)).

Expressió que recorda força l'anterior.

Vegeu també

Plantilla:Commonscat