Professional Documents
Culture Documents
1. Introducción
2. Metodos de intervalos
2.1. Metodos gráficos
2.2. Metodo de la biseccion
2.3. Metodo de la falsa posicion
2.4.
3. Metodos abiertos
3.1. Iteracion simple de punto fijo
3.2. Metodo de newton – raphson
3.3. Metodo de la secante
1. INTRODUCCION
Las raíces de una función son los valores de la función, que cumplen la siguiente
condición:
= 0
Prueba: Prueba:
3x + 5x + 2 = 0
2
3x 2 + 5 x + 2 = 0
3(−0.667) 2 + 5(−0.667) + 2 = 0 3(−1.000) 2 + 5(−1.000) + 2 = 0
0=0 0=0
Algunos métodos gráficos se pueden usar para explorar inicialmente las raices. Se
debe graficar la función y determinar por donde cruza al eje “x”.
gm − t
c
v= 1− e m
c
(1)
Para solucionar este problema, se usan métodos numéricos para calcular la raíz
de la ecuación.
gm − t gm − t
c c
v= 1− e m f (c ) = 0 = 1− e m − v
c c
gm − t
c
v−v = 1− e m
c
Es decir se cumple: f(c)=0; es la raiz de la ecuación y este valor representa el
coeficiente de arrastre
2. METODOS DE INTERVALOS
Estos métodos aprovechan el hecho que una función cambia de signo en la
vecindad de una raíz.
El método grafico puede ser considerado como también un método de intervalos;
ya que se explora entre dos valores; un valor bajo y un valor alto.
Aprovechan el hecho que una función en forma típica cambia de signo en la
vecindad de una raíz.
Se contemplan los siguientes casos:
a) Método Gráfico
b) Método de la Bisección
c) Método de Falsa Posición
Algunos casos:
a) No existen raices o un número par de raices
Si:
f(xL) y f(xU); tienen el mismo sigo, entonces no hay raices en el intervalo, o hay un
número par de raices
f(x)
f(x)
X X
b) Si existe un cambio de sigo f(xL) y f(xU); tienen signo diferentes, entonces hay
un número impar de raices
f (c)
1.5687
RAIZ
+
XU= 15
0
XL= 14 c
-0.4248
-
En el gráfico se observa de f(c) cambia de signo a ambos lados de la raíz; es
decir:
f(x)
+ f(xu ) Intervalo
Inferior
Raiz
Aproximada
XL XR XU
0 Raiz
f(xR )
Verdadera x
-
Intervalo
Superior
f(xL )
La Raiz es: =
Procedimiento:
Problema Nº 1:
Encontrar las raices de la siguiente función
= − − !
15
10
Raiz
5 Raiz
f(x)
-5
-10
-2 -1 0 1 2 3 4 5 6
x
Notamos que existen 2 raices que están en los intervalos:
La raiz es : 5.541992188
c)
3.5
2.5
2
f(x )
1.5
Raiz
1 Raiz
0.5
-0.5
-2 -1.8 -1.6 -1.4 -1.2 -1 -0.8 -0.6 -0.4 -0.2 0
X
Explora las raíces en los intervalos que se observan en la exploración gráfica:
a) [-1.2,-0.8]
b) [-0.8,-0.6]
La raiz es : -1.000195313
La raiz es : -0.666601562
gm − t
c
v= 1− e m
c
Arreglando la ecuación
gm − t
c
f (c ) = 0 = 1− e m − v
c
m=68.1;t=10;v=40;
c=1:20;
ec=(g*m./c).*(1-exp(-(c./m*t)))-v;
ta=[c;ec]'
plot(c,ec),grid
50
40
30
f( c )
20
Raiz
10
-10
0 2 4 6 8 10 12 14 16 18 20
c
>> ec=inline('(9.8*68.1./c).*(1-exp(-(c./68.1*10)))-40')
ec =
Inline function:
ec(c) = (9.8*68.1./c).*(1-exp(-(c./68.1*10)))-40
>> fxl=feval(ec,14)
fxl =
1.5687
>> fxu=feval(ec,16)
fxu =
-2.2688
Probar:
∗ < 0
>> pru=fxl*fxu
pru =
INICIO
FUNCION
XL, XU
EVALUAR
f(XL), f(XU)
I=1
err=1
R=0 (raiz)
NO
f(XL).f(XU)<0
SI
NO err>=0.03 &
Cambiar Límites I<020
SI
Raiz VA=R
R R=(XL+XU)/2
f(XL)
f(XU)
f(XR)
FIN NO
f(XL)*f(XR)<=0 XL=R
SI
err=(VA-R)/R*100
XU=R
err=(VA-R)/R*100
I=I+1
Bisec_1.m
CODIGO
%bisec_1
%programa que calcula
%raiz de una función
%usando el método de la bisección
clc
clear all
nombre1=input('Ingrese nombre de la función asociada ','s');
nombre=inline(nombre1);
a=input(' limite inferior ');
b=input(' limite superior ');
fprintf('\n');
i=1;e=1;r=0;
%bis=bisec_2(fu,a,b)
fa=feval(nombre,a);
fb=feval(nombre,b);
if fa*fb<=0
fprintf(' it a b aprox error \n');
while e>=3e-2 & i<=50
va=r;
r=(a+b)/2;
fa=feval(nombre,a);
fb=feval(nombre,b);
fr=feval(nombre,r);
fprintf('%3d%10.6f%10.6f%12.6f',i,a,b,r);
if fa*fr<=0
b=r;
e=abs((va-r)/r)*100;
%e=abs((r-va)/r)*100;
fprintf('%10.2f\n',e);
else
a=r;
e=abs((va-r)/r)*100;
%e=abs((r-va)/r)*100;
fprintf('%12.2f\n',e);
end
i=i+1;
end
fprintf('\n');
fprintf('La raiz es : %10.9f\n',r);
else
fprintf('cambiar límites \n');
end
Ejemplo.
Encontrar las raíces de la siguiente función: 3 x + 5 x + 2 = 0 , usando el método de la
2
bisección
Solución
2
f (x )
-1
-2 -1.8 -1.6 -1.4 -1.2 -1 -0.8 -0.6 -0.4 -0.2 0
x
>> bisec_1
Ingrese nombre de la función asociada 3*x^2+5*x+2
limite inferior -1.2
limite superior -0.8
it a b aprox error
1 -1.200000 -0.800000 -1.000000 100.00
2 -1.200000 -1.000000 -1.100000 9.09
3 -1.100000 -1.000000 -1.050000 4.76
4 -1.050000 -1.000000 -1.025000 2.44
5 -1.025000 -1.000000 -1.012500 1.23
6 -1.012500 -1.000000 -1.006250 0.62
7 -1.006250 -1.000000 -1.003125 0.31
8 -1.003125 -1.000000 -1.001562 0.16
9 -1.001562 -1.000000 -1.000781 0.08
10 -1.000781 -1.000000 -1.000391 0.04
11 -1.000391 -1.000000 -1.000195 0.02
La raiz es : -1.000195313
>> bisec_1
Ingrese nombre de la función asociada 3*x^2+5*x+2
limite inferior -0.8
limite superior -0.6
it a b aprox error
1 -0.800000 -0.600000 -0.700000 100.00
2 -0.700000 -0.600000 -0.650000 7.69
3 -0.700000 -0.650000 -0.675000 3.70
4 -0.675000 -0.650000 -0.662500 1.89
5 -0.675000 -0.662500 -0.668750 0.93
6 -0.668750 -0.662500 -0.665625 0.47
La raiz es : -0.666601562
La raiz es : -0.666601562
Ejemplo.
gm − t
c
Solución
Mediante método gráfico se explora y se tienen raíces en los siguientes intervalos:
60
50
40
30
f(c )
20
Raiz
10
-10
0 2 4 6 8 10 12 14 16 18 20
c
it a b aprox error
1 14.000000 16.000000 15.000000 100.00
2 14.000000 15.000000 14.500000 3.45
3 14.500000 15.000000 14.750000 1.69
4 14.750000 15.000000 14.875000 0.84
5 14.750000 14.875000 14.812500 0.42
6 14.750000 14.812500 14.781250 0.21
7 14.750000 14.781250 14.765625 0.11
8 14.765625 14.781250 14.773438 0.05
9 14.773438 14.781250 14.777344 0.03
La raiz es : 14.777343750
-
Si f(XL) está más cerca a “cero” que f(XU); entonces la raíz se encuentra
más cerca de XL que XU.
Este método une con una línea recta f(XL) con f(XU) y la intersección de
esta línea con el eje “X” representa una estimación de la raíz.
El hecho de reemplazar la curva con una línea recta da una “posición
falsa” de la raíz.
Usando la propiedad de los triángulos semejantes, la intersección se puede
estimar como sigue:
0− − 0
=
− −
− −
=
−
Despejando XR; se tiene:
Reacomodando términos:
− = −
Procedimiento:
Ejemplo Nº 01:
Sea la siguiente función:
= − 5 − 3
Encontrar las raíces, usando el método de la falsa posición.
Explorar la raíz que está cerca a 5. En el intervalo [5 6]
Solución
30
25
20
15
f(x )
10
Raiz
5
-5
-10
-4 -3 -2 -1 0 1 2 3 4 5 6
X
>> f=inline('x^2-5*x-3')
>> fplot(f,[-4,6]),grid
Mediante método grafico notamos que existen 2 raices; una de las raíces está
entre 5 y 6 (esta se hará la exploración)
Entonces el intervalo inicial será: [5 – 6]
>> xr=xu-((fxu)*(xl-xu))/(fxl-fxu)
xr =
5.5000
>> prueba=fxl*fxr
∗ < 0 Inferior XU=XR prueba =
∗ > 0 Superior XL=XR 0.7500
Es mayor a “0”; entonces se considera
>> fxl=feval(f,xl) el intervalo superior y
fxl = >> xl=xr
-3 xl =
>> fxu=feval(f,xu) 5.5000
fxu =
3 El nuevo intervalo es [5.5, 6.0]
>> fxr=feval(f,xr)
fxr =
-0.2500
f ( xU )(x L − xU )
x R = xU −
f ( x L ) − f ( xU )
Verificar:
f (xL ) f (xR ) > 0
f (xL ) f (xR ) < 0
INICIO
FUNCION
XL, XU
EVALUAR
f(XL), f(XU)
I=1
err=1
R=1 (raiz)
NO
f(XL).f(XU)<0
SI
NO err>=0.03 &
Cambiar Límites I<50
SI
Raiz
R
Va = R
f (xL )
f ( xU )
f ( x U ) (x L − x U )
x R = xU −
f ( x L ) − f ( xU )
FIN
NO
f(XL)*f(XR)<=0 XL=R
SI
err=(VA-R)/R*100
XU=R
err=(VA-R)/R*100
I=I+1
CODIGO
%falsa_posi_1
%Ing. Hector Bolaños
%programa que calcula
%raiz de una función
%usando el método de la
%falsa posición
clc
clear all
nombre1=input('Ingrese nombre de la función asociada ','s');
nombre=inline(nombre1);
a=input(' limite inferior ');
b=input(' limite superior ');
fprintf('\n');
i=1;e=1;r=0;
fa=feval(nombre,a);
fb=feval(nombre,b);
if fa*fb<=0
fprintf(' it a b aprox error \n');
fprintf('______________________________________________________\n');
while e>=3e-2 & i<=50
va=r;
fa=feval(nombre,a);
fb=feval(nombre,b);
fr=feval(nombre,r);
r=b-(fb*(a-b))/(fa-fb);
fprintf('%3d%10.6f%10.6f%12.6f',i,a,b,r);
if fa*fr<=0
b=r;
e=abs((va-r)/r)*100;
fprintf('%10.2f\n',e);
else
a=r;
e=abs((va-r)/r)*100;
fprintf('%12.2f\n',e);
end
i=i+1;
end
fprintf('\n');
fprintf('La raiz es : %10.9f\n',r);
else
fprintf('cambiar límites \n');
end
Ejemplo Nº 02:
Sea la siguiente función: = 3 + 5 + 2
Encontrar las raíces, usando el método de la falsa posición
Solución
Mediante el método gráfico se explora y se ha identificado dos raíces:
2
f(x )
1
Raiz 1 Raiz 2
-1
-2 -1.8 -1.6 -1.4 -1.2 -1 -0.8 -0.6 -0.4 -0.2 0
f(x)
it a b aprox error
______________________________________________________
1 -0.800000 -0.600000 -0.700000 100.00
2 -0.800000 -0.700000 -0.640000 9.38
3 -0.640000 -0.700000 -0.669388 4.39
4 -0.669388 -0.700000 -0.666362 0.45
5 -0.666362 -0.700000 -0.666701 0.05
6 -0.666701 -0.700000 -0.666663 0.01
La raiz es : -0.666662903
Ejemplo Nº 03:
Sea la siguiente función:
= − 5 − 3
Encontrar las raíces, usando el método de la falsa posición.
Explorar la raíz que está cerca a 5. En el intervalo [5, 6]. Usar el método de de la
falsa posición.
Solución:
Ingrese nombre de la función asociada x^2-5*x-3
limite inferior 5
limite superior 6
it a b aprox error
______________________________________________________
1 5.000000 6.000000 5.500000 100.00
2 5.500000 6.000000 5.538462 0.69
3 5.538462 6.000000 5.541176 0.05
4 5.541176 6.000000 5.541367 0.00
La raiz es : 5.541366906
Ejemplo Nº 04:
Sea la siguiente función:
= - ./ −
Encontrar las raíces, usando el método de la falsa posición.
Solución
Efectuando una exploración gráfica, se determina que la raíz está entre 0 y 1
>> f=inline('exp(-x)-x')
f=
Inline function:
f(x) = exp(-x)-x
>> fplot(f,[-10,10]),grid
>> fplot(f,[-2,2]),grid
10
6
Raiz
f(x)
-2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
X
it a b aprox error
______________________________________________________
1 0.000000 1.000000 0.612700 100.00
2 0.612700 1.000000 0.563838 8.67
3 0.563838 1.000000 0.567385 0.63
4 0.567385 1.000000 0.567126 0.05
5 0.567126 1.000000 0.567145 0.00
La raiz es : 0.567144584
3. METODOS ABIERTOS
En los métodos de intervalos, se requieren de dos valores entre los cuales se
encuentra la raíz.
Los métodos abiertos, se basan en fórmulas que requieren únicamente de un solo
valor de inicio.
Estos métodos pueden alejarse de la raíz (divergencia) o pueden acercarse a la
raíz (convergencia)
Divergencia Convergencia
Procedimiento:
Paso 1: Reordenar la ecuación, de tal manera de “x” quede en el lado
izquierdo de la ecuación.
Paso 2: Dar un valor inicial 0 y calcular 01
Ejemplo Nº 1
Encontrar la raíz de la siguiente expresión
= − 5 − 3
Solución
a) Mediante un método gráfico se exploran las raíces
35
30
25
20
15
f(x )
10
Raiz
5
-5
-10
-4 -3 -2 -1 0 1 2 3 4 5 6
X
Se pueden apreciar dos raíces en los intervalos:
[-2 , 0] y [4 , 6]
= − 5 − 3 = 0
/ 2 .3
=
4
→ = 6
Paso 2: Dar un valor inicial y calcular 0
-0.6000 -13.6364
>> xi1=feval(gx,xi)
xi1 =
-0.5280
Tabla Resumen
Iter. xi ea (%)
0 0
1 -0.6000 100.00
2 -0.5280 13.64
3 -0.5442 2.98
4 -0.5408 0.6442
5 -0.5415 0.1396
6 -0.5414 0.0302
7 -0.5414 0.0065
Efectuando la prueba:
>> xi1
xi1 =
-0.5414
>> fx=inline('x^2-5*x-3')
>> pru=feval(fx,xi1)
pru =
3.8367e-005
= − 5 − 3 = 0
= √5 + 3 → = 6
Paso 2: Dar un valor inicial y calcular 0
Primera iteración: Error Aproximado:
>> gx=inline('sqrt(5*x+3)') >> ae=(xi1-xi)/xi1*100
gx = ae =
Inline function: 16.5942
gx(x) = sqrt(5*x+3)
>> xi=4
xi =
4
>> xi1=feval(gx,xi)
xi1 =
4.7958
>> fx=inline('x^2-5*x-3')
>> xi1= 5.5411
>> prueba=feval(fx,xi1)
prueba = -0.0017
Se extrapola una pendiente (tangente) hasta el eje “x” para obtener la raíz en
01 .
Por definición de pendiente se tiene:
0 − 0
′0 =
0 − 01
Luego:
:
:; = : − Fórmula de Newton-Raphson
<:
Procedimiento:
Paso 1: Encontrar la derivada de la función f(x)
Paso 2: Dar un valor inicial xi
Paso 3: Evaluar f(x) y f’(x)
Paso 4: Aplicar la fórmula de Newton-Raphson
0
01 = 0 −
′0
Paso 5: ARepetir hasta encontrar la raíz aproximada
Ejemplo Nº 1
Encontrar la raíz de la siguiente expresión
= − 5 − 3
Solución
Mediante un método gráfico se exploran las raíces
35
30
25
20
15
f(x ) 10
Raiz
5
-5
-10
-4 -3 -2 -1 0 1 2 3 4 5 6
X
Se pueden apreciar dos raíces en los intervalos:
[-2 , 0] y [4 , 6]
evfx =
0.3600
>> evdfx=feval(dfx,xi)
evdfx =
-6.2000
>> xi1=xi-(evfx/evdfx)
xi1 =
-0.5419
Tabla resumen
Iter. xi %ea
0 0
1 -0.6000 100.00
2 -0.5419 10.7143
3 -0.5414 0.1024
4 -0.5414 9.3257x10-6
Prueba:
>> evfx=feval(fx,xi)
evfx =
2.2204e-015
INICIO
FUNCION;
X
k=1;err=1
NO err>3e-2
&
k<=10
SI
x0=x;
El valor de la Raiz f ( x)
es: x = xo −
f ' ( x)
k=k+1
FIN
e=abs((x-x0)/x)*100
Imprime
k;x; e
e<3e-2 NO
ó
k>=10
SI
break
Códigos:
%princi_newton
%PRINCIPAL_NEWTON
%calculo de Raiz
clc
clear all
disp('RAIZ METODO DE NEWTON-RAPHSON')
disp(' ')
f=input('Ingrese la función que contiene la ecuación ')
x=input('ingrese el valor inicial ')
newton3(f,x);
v=[-2:0.1:2];
w=feval(f,v);
plot(v,w),grid
function f=ecuacion(x)
f=x.^2-5*x-3;
function newton3(f,x)
%Metodo de Newton_Raphson
%Héctor Bolaños Sosa
k=1;err=1;
while err>3e-2 & k<=10
xo=x;
x=xo-(feval(f,xo)/derivada1(f,xo));
k=k+1;
e=abs((x-xo)/x)*100;
fprintf('%5d%10.5f%10.4f\n',k,x,e)
if e<=3e-2|(k>=10)
break
end
end
fprintf('=================================\n')
fprintf('El valor de la raiz es %5.5f\n',x)
function y=derivada1(f,x)
%determina derivada central
%Héctor Bolaños Sosa
if x>1
h=0.01*x;
else
h=0.01;
end
y=0.5*(feval(f,x+h)-feval(f,x-h))/h;
5 -0.54138 0.0000
=================================
El valor de la raiz es -0.54138
: :.; − :
:; = : −
:.; − :
Ejemplo Nº 1
Encontrar la raíz de la siguiente expresión
= − 5 − 3
Solución
Mediante un método gráfico se exploran las raíces, observándose dos raíces.
Explorar la raíz que está en el intervalo [4 , 6]
Valores iniciales:
>> x_1=4
x_1 =
4
>> x0=6
x0 =
6
>> f=inline('x^2-5*x-3')
f=
Inline function:
f(x) = x^2-5*x-3
5.5313
Quinta Iteración
>> x_1=x0
x_1 =
5.5416
>> x0=x1
x0 =
5.5414
>> ex_1=feval(f,x_1)
ex_1 =
0.0015
>> ex0=feval(f,x0)
ex0 =
-2.4506e-006
>> x1=x0-(ex0)*(x_1-x0)/(ex_1-ex0)
x1 =
5.5414
Tabla resumen
Iter. xi-1 xi Xi+1 %ea
1 4 6 5.4
2 6 5.4 5.5313
3 5.40 5.5313 5.5416
4 5.5313 5.5416 5.5414
5 5.5416 5.5414 5.5414
Retorna un vector columna con los elementos de la raiz del polinomio “c”,
los cuales están ordenados en forma descendente de acuerdo a las
potencias.
Ejemplo Nº 1:
Sea la siguiente función: f ( x) = x 2 − 5 x − 3
Encontrar las raíces:
a) Explorar mediante método gráfico
b) Encontrar las raices
Solución
35
30
25
20
15
f(x )
10
Raiz
5
-5
-10
-4 -3 -2 -1 0 1 2 3 4 5 6
X
>> f=inline('x^2-5*x-3');
>> p=[1 -5 -3]
p=
1 -5 -3
>> raices=roots(p)
raices =
5.5414
-0.5414
Ejemplo Nº 2
Encontrar las raices del siguiente polinomio (comparar con problema 1)
f ( x) = 3x 2 + 5 x + 2
Solución
2
f (x )
-1
-2 -1.8 -1.6 -1.4 -1.2 -1 -0.8 -0.6 -0.4 -0.2 0
x
>> p=[3 5 2]
p=
3 5 2
>> raiz=roots(p)
raiz =
-1.0000
-0.6667
Ejemplo Nº 3
Sea la siguiente función: f ( x) = x 2 − 5 x − 3
Encontrar las raíces usando la función fzero, para los intervalos [-1 , 0] y [4 , 6]
Solución
Para en intervalo [-1 , 0] Para en intervalo [4 , 6]
>> f=inline('x^2-5*x-3'); >> f=inline('x^2-5*x-3');
>> x=fzero(f,0) >> x=fzero(f,4)
x= x=
-0.5414 5.5414
>> f = @(x)x.^2-5*x-3
f=
@(x)x.^2-5*x-3
>> ra=fzero(f,[4,6])
ra =
5.5414
Ejemplo Nº 04
Sea la siguiente función: f ( x) = e − x − x
Encontrar la raiz
Solución
10
6
Raiz
f(x)
-2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
X
>> f=inline('exp(-x)-x'); >> r=fzero(f,[0-1])
>> r=fzero(f,0.5) r=
r= 0.5671
0.5671
Problema Nº 05
Sea la siguiente función: f ( x) = sen(10 x) + cos(3x)
Deberá
Encontrar:
a) Explorar mediante método gráfico en el intervalos [0:5] y luego verificar las
raices que se encuentran entre 4.2 y 4.3
b) Explorar una de las raices
Problema Nº 06
Mediante una aproximación gráfica determinar el coeficiente de rozamiento “c”
necesario para que un paracaidista de masa m=68.1 Kg; tenga una velocidad de 40
m/s después de una caida libre de t= 10 s. Considerar g= 9.8 m/s2.
Solución
La ecuación arreglada sería:
− t
c
gm
f (c ) = 0 = 1− e n − v
c