Raices de ecuaciones

15
UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA La Universidad Católica de Loja Escuela de Ingeniería Civil Área de Física y Matemáticas Solución de Ecuaciones de una Variable MATLAB 7.1.lnk

Transcript of Raices de ecuaciones

Page 1: Raices de ecuaciones

UNIVERSIDAD TÉCNICAPARTICULAR DE LOJA

La Universidad Católica de Loja

Escuela de Ingeniería CivilÁrea de Física y Matemáticas

Solución de Ecuaciones de una Variable

MATLAB 7.1.lnk

Page 2: Raices de ecuaciones

Raíces de Ecuaciones no lineales

Dada una ecuación de una variable independiente x,

f(x) = 0, (1)

se desea encontrar el valor o valores de x que hacenque se cumpla la igualdad, donde en general, f es unafunción no lineal de x. A los valores de x que hacen quese cumpla la igualdad se les denomina raíces de laecuación 1

Dada una ecuación de una variable independiente x,

f(x) = 0, (1)

se desea encontrar el valor o valores de x que hacenque se cumpla la igualdad, donde en general, f es unafunción no lineal de x. A los valores de x que hacen quese cumpla la igualdad se les denomina raíces de laecuación 1

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

Page 3: Raices de ecuaciones

Método de Interpolación Lineal

Si se tiene los valores f(x1) y f(x2) (obtenidos por tanteos omediante un grafico) y de signos contrarios, esto significa queentre x1 y x2 hay una raíz.

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

P1(x1, y1)

C(x3, 0)

A(x1, 0)

P3(x3, y3)

P2(x2, y2)

B(x2 ,0)

12

21123 yy

xyxyx

Page 4: Raices de ecuaciones

Método de Interpolación Lineal

1.) Con x1, x2, y1, y2, se calcula x3

2.) Se realiza a continuación una interpolación entre P1 y P2 para obtener unamejor aproximación a x3,

3.) x3 es una mejor aproximación de la raíz buscada. Con x3 se obtiene y3

4.) Se realiza a continuación una interpolación entre P2 y P3 para obtener unamejor aproximación a x4.

5.) El proceso se repite hasta cuando dos valores sucesivos de x difieran enuna cantidad menor que cierto valor de prueba de precisión ε (epsilon).

6.) Si f (x) tiene más de unas raíz, el proceso se repite para cada una de ellas.

1.) Con x1, x2, y1, y2, se calcula x3

2.) Se realiza a continuación una interpolación entre P1 y P2 para obtener unamejor aproximación a x3,

3.) x3 es una mejor aproximación de la raíz buscada. Con x3 se obtiene y3

4.) Se realiza a continuación una interpolación entre P2 y P3 para obtener unamejor aproximación a x4.

5.) El proceso se repite hasta cuando dos valores sucesivos de x difieran enuna cantidad menor que cierto valor de prueba de precisión ε (epsilon).

6.) Si f (x) tiene más de unas raíz, el proceso se repite para cada una de ellas.

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

Page 5: Raices de ecuaciones

Método de Interpolación Lineal

Texto: Análisis Numérico; Autor: R. Burden; Ejercicio 2.1:

6) Aplique Interpolación Lineal para encontrar la solución exacta dentro de 10-3 , siendof(x) = 2+ cos(ex – 2) - ex , en [0.5, 1.5]. Datos: x1 = 0.5; x2 = 1.5; y1 = 1.29; y2 = -3.27; = 0.001.

Solución: Con x1 = 0.5; x2 = 1.5; y1 = 1.29; y2 = -3.27 , se obtiene x3 con ;

x3 = 0.7828

n xn xn+1 yn yn+1 error

12

21123 yy

xyxyx

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

n xn xn+1 yn yn+1 error

1 0.5 1.5 1.2902122 -3.27174041

2 1.5 0.78282017 -3.27174041 0.79481544 4.06655585

3 0.78282017 0.92299422 0.79481544 0.35258233 0.44223311

4 0.92299422 1.03475177 0.35258233 -0.12810812 0.48069045

5 1.03475177 1.00496743 -0.12810812 0.01214232 0.14025044

6 1.00496743 1.00754604 0.01214232 0.00035724 0.01178508

7 1.00754604 1.0076242 0.00035724 -1.051E-06 0.00035829

8 1.0076242 1.00762397 -1.051E-06 9.0503E-11 1.0511E-06

Page 6: Raices de ecuaciones

Método de Interpolación Lineal - Matlab>> x0=[0.2,0.3];

>> x=fzero('x*cos(x)-2*x^2+3*x-1',x0)

x =

0.2975

>> x0=[0.2,0.3];

>> option=optimset('DIS','ITER');

>> x=fzero(inline('x*cos(x)-2*x^2+3*x-1'),x0,option);

Func-count x f(x) Procedure

2 0.3 0.00660095 initial

3 0.297728 0.000530775 interpolation

4 0.29753 -2.02949e-007 interpolation

5 0.29753 3.6575e-011 interpolation

6 0.29753 0 interpolation

Zero found in the interval [0.2, 0.3]

>> x0=[0.2,0.3];

>> x=fzero('x*cos(x)-2*x^2+3*x-1',x0)

x =

0.2975

>> x0=[0.2,0.3];

>> option=optimset('DIS','ITER');

>> x=fzero(inline('x*cos(x)-2*x^2+3*x-1'),x0,option);

Func-count x f(x) Procedure

2 0.3 0.00660095 initial

3 0.297728 0.000530775 interpolation

4 0.29753 -2.02949e-007 interpolation

5 0.29753 3.6575e-011 interpolation

6 0.29753 0 interpolation

Zero found in the interval [0.2, 0.3]

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

Page 7: Raices de ecuaciones

Método de Bisección

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

Page 8: Raices de ecuaciones

Método de Bisección

Entrada Proceso

Una “f”continua enun intervalo[a, b]

Numeromáximo de

iteraciones n

Error oTolerancia ()

Salida

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

Una “f”continua enun intervalo[a, b]

Numeromáximo de

iteraciones n

Para determinar el numero de iteraciones, se puedeaplicar la siguiente ecuación:

2ln

ln)abln(n

Page 9: Raices de ecuaciones

Método de Bisección - Proceso1.) a1 = a y b1 = b

2.) Sea i = 1

3.) Calcule f(a1) y f(b1)

4.) Si f(a1)*f(b1) < = 0, ir a (5); Fin del proceso (Salida M1)

5.) Si i<=n, calcule pi usando: , determine f(pi) y si n = 1 ir a (7); calculef(ai) y vaya al paso (6)

6.) Si ; , vaya al paso (7); Fin del proceso (Salida M2)

7.) Si f(ai)*f(pi)>0, ai+1 = p1 y bi+1 = b1; ai+1 = a y bi+1 = pi

8.) sea i = i+1, ir a paso (5)

9.) Fin del proceso (Salida M3)

2ii

i

bap

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

1.) a1 = a y b1 = b

2.) Sea i = 1

3.) Calcule f(a1) y f(b1)

4.) Si f(a1)*f(b1) < = 0, ir a (5); Fin del proceso (Salida M1)

5.) Si i<=n, calcule pi usando: , determine f(pi) y si n = 1 ir a (7); calculef(ai) y vaya al paso (6)

6.) Si ; , vaya al paso (7); Fin del proceso (Salida M2)

7.) Si f(ai)*f(pi)>0, ai+1 = p1 y bi+1 = b1; ai+1 = a y bi+1 = pi

8.) sea i = i+1, ir a paso (5)

9.) Fin del proceso (Salida M3)

01 p

i

ii

p

pp 1

Page 10: Raices de ecuaciones

Método de Bisección

Entrada Proceso

M1:No es posibledeterminar la

raíz en elintervalo

M2:El valor de laraíz pedida es

p

M3:No se puedoencontrar laraíz luego den iteraciones

Salida

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

M1:No es posibledeterminar la

raíz en elintervalo

M2:El valor de laraíz pedida es

p

M3:No se puedoencontrar laraíz luego den iteraciones

Page 11: Raices de ecuaciones

Método de Bisección - EjemploTexto: Análisis Numérico; Autor: R. Burden; Ejercicio 2.1:

4) Aplique Bisección para las soluciones exactas dentro de 10-2 para, siendof(x) = x4-2x3-4x2+4x+4 en a. [-2,-1]. c. [2,3]. Datos: a =-2; b = -1; = 0.01.Solución: El numero de iteraciones se calcula con:

Para este ejemplo n = 6.64, que debe redondearse a 7 iteraciones.

1.) a1 = -2 y b1 = -1 2.) Sea i = 1

3.) f(a1) = ? y f(b1) = ?, donde f(-2) = -2 y f(-1) = -1

4.) Si f(a1)*f(b1) < = 0, ir a (5); Fin del proceso (Salida M1)

5.) Si i<=n, calcule pi usando: , determine f(pi) y si n = 1 ir a (7); calcule f(ai) yvaya al paso (6)

2ln

ln)abln(n

n a b pn f(a) f(pn) Error

1 -2 -1 -1.5 12 0.8125

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

Texto: Análisis Numérico; Autor: R. Burden; Ejercicio 2.1:

4) Aplique Bisección para las soluciones exactas dentro de 10-2 para, siendof(x) = x4-2x3-4x2+4x+4 en a. [-2,-1]. c. [2,3]. Datos: a =-2; b = -1; = 0.01.Solución: El numero de iteraciones se calcula con:

Para este ejemplo n = 6.64, que debe redondearse a 7 iteraciones.

1.) a1 = -2 y b1 = -1 2.) Sea i = 1

3.) f(a1) = ? y f(b1) = ?, donde f(-2) = -2 y f(-1) = -1

4.) Si f(a1)*f(b1) < = 0, ir a (5); Fin del proceso (Salida M1)

5.) Si i<=n, calcule pi usando: , determine f(pi) y si n = 1 ir a (7); calcule f(ai) yvaya al paso (6)

1 -2 -1 -1.5 12 0.8125

2ii

i

bap

Page 12: Raices de ecuaciones

Método de Bisección - EjemploTexto: Análisis Numérico; Autor: R. Burden; Ejercicio 2.1:

4) Aplique Bisección para las soluciones exactas dentro de 10-2 para, siendof(x) = x4-2x3-4x2+4x+4 en a. [-2,-1]. c. [2,3]. Datos: a =-2; b = -1; = 0.01.

6.) Si ; , vaya al paso (7); Fin del proceso (Salida M2)

7.) Si f(ai)*f(pi)>0, ai+1 = p1 y bi+1 = b1; ai+1 = a y bi+1 = pi

8.) sea i = i+1, ir a paso (5)

9.) Fin del proceso (Salida M3)

n a b pn f(a) f(pn) Error

1 -2 -1 -1.5 12 0.8125

2 -1.5 -1 -1.25 0.8125 -0.90234375 0.5

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

Texto: Análisis Numérico; Autor: R. Burden; Ejercicio 2.1:

4) Aplique Bisección para las soluciones exactas dentro de 10-2 para, siendof(x) = x4-2x3-4x2+4x+4 en a. [-2,-1]. c. [2,3]. Datos: a =-2; b = -1; = 0.01.

6.) Si ; , vaya al paso (7); Fin del proceso (Salida M2)

7.) Si f(ai)*f(pi)>0, ai+1 = p1 y bi+1 = b1; ai+1 = a y bi+1 = pi

8.) sea i = i+1, ir a paso (5)

9.) Fin del proceso (Salida M3)

2 -1.5 -1 -1.25 0.8125 -0.90234375 0.5

01 p

i

ii

p

pp 1

Page 13: Raices de ecuaciones

Método de Bisección - Ejemplo

Texto: Análisis Numérico; Autor: R. Burden; Ejercicio 2.1:

4) Aplique Bisección para las soluciones exactas dentro de 10-2 para, siendof(x) = x4-2x3-4x2+4x+4 en a. [-2,-1]. c. [2,3]. Datos: a =-2; b = -1; = 0.01.

n a b pn f(a) f(pn) Error

1 -2 -1 -1.5 12 0.8125

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

1 -2 -1 -1.5 12 0.8125

2 -1.5 -1 -1.25 0.8125 -0.90234375 0.5

3 -1.5 -1.25 -1.375 0.8125 -0.28881836 0.25

4 -1.5 -1.375 -1.4375 0.8125 0.195327759 0.125

5 -1.4375 -1.375 -1.40625 0.195327759 -0.06266689 0.0625

6 -1.4375 -1.40625 -1.421875 0.195327759 0.062262595 0.03125

7 -1.421875 -1.40625 -1.4140625 0.062262595 -0.00120812 0.015625

8 -1.421875 -1.4140625 -1.41796875 0.062262595 0.030274373 0.0078125

Page 14: Raices de ecuaciones

Método de Bisección - Archivo.m (Matlab)function [p,err,yp] = bisect(fun,a,b,delta)% Datos% fun es la función, introducida como una cadana de caracteres ‘fun’;% a y b son el estremo izquierdo y el extremo derecho;% delta es la tolerancia;% Resultados% p es el cero ;% yp=f(p);% err es el error estimado de la aproximación a pya=feval('f', a);yb=feval('f', b)if ya*yb>0, return, endmax1 = 1+round((log(b-a)-log(delta))/log(2));for k=1:max1

p=(a+b)/2;yp=feval(f, p);if yp==0

a=p;b=p;

elseif yb*yc>0b=p;yb=yp;

elsea=p;ya=yp;

endif b-a < delta, break, end

endp=(a+b)/2 ;err=abs(b-a)yp=feval(f, p)

Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk

function [p,err,yp] = bisect(fun,a,b,delta)% Datos% fun es la función, introducida como una cadana de caracteres ‘fun’;% a y b son el estremo izquierdo y el extremo derecho;% delta es la tolerancia;% Resultados% p es el cero ;% yp=f(p);% err es el error estimado de la aproximación a pya=feval('f', a);yb=feval('f', b)if ya*yb>0, return, endmax1 = 1+round((log(b-a)-log(delta))/log(2));for k=1:max1

p=(a+b)/2;yp=feval(f, p);if yp==0

a=p;b=p;

elseif yb*yc>0b=p;yb=yp;

elsea=p;ya=yp;

endif b-a < delta, break, end

endp=(a+b)/2 ;err=abs(b-a)yp=feval(f, p)

Page 15: Raices de ecuaciones

Método de Bisección - AplicaciónTexto: Análisis Numérico; Autor: R. Burden; Ejercicio 2.1:

17) Un abrevadero de longitud L tiene una sección transversal en forma desemicírculo con radio r (ver figuras). Cuando se llena el agua hasta unadistancia h de la parte superior, el volumen del agua es

V = L[0.5 r2-r2 arcsen(h/r) – h(r2- h2)1/2]Suponga que L = 10 pies , r = 1 pie, y que V = 12.4 pies3 . Determine laprofundidad (D) del agua en el abrevadero hasta 0.01 pies.

Texto: Análisis Numérico; Autor: R. Burden; Ejercicio 2.1:

17) Un abrevadero de longitud L tiene una sección transversal en forma desemicírculo con radio r (ver figuras). Cuando se llena el agua hasta unadistancia h de la parte superior, el volumen del agua es

V = L[0.5 r2-r2 arcsen(h/r) – h(r2- h2)1/2]Suponga que L = 10 pies , r = 1 pie, y que V = 12.4 pies3 . Determine laprofundidad (D) del agua en el abrevadero hasta 0.01 pies.

Escuela de Ingeniería CivilEscuela de Ingeniería CivilÁrea deÁrea de Física y MatemáticasFísica y Matemáticas Ing. Carmen Esparza V.Ing. Carmen Esparza V.MATLAB 7.1.lnk