Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Numéricos
Métodos Numéricos
𝜽 𝑨𝒔 1 2
𝐴𝑠 = 𝑟 ( 𝜃 − 𝑠𝑖𝑛 𝜃 )
2
1 7.28
Raíz de la
2 3.09 ecuación:
3 -4.86 cambio de
signo en f(x)
4 -13.40
5 -18.81
Métodos para solución numérica de ecuaciones se dividen en:
Métodos cerrados Métodos abiertos
Definiciones preliminares
Existen 2 tipos de ecuaciones a las cuales se les puede determinar sus raíces:
• Ecuaciones algebraicas
• Ecuaciones trascendentes
Ecuaciones algebraicas
Ecuaciones trascendentes
(polinomios)
𝒂 𝟎 +𝒂 𝟏 𝒙 + 𝒂𝟐 𝒙 𝟐 +…+ 𝒂 𝒏 𝒙 𝒏= 𝟎 • Funciones trigonométricas
• Funciones exponenciales
Polinomio de grado n con • Funciones logarítmicas
parámetros constantes • Etc.
Ambas tienen raíces, reales o
complejas
1.1 Método de bisección
Algoritmo:
f() f(b Dentro de este intervalo hay al
Paso 1 Elija valores iniciales inferior y
menos una raíz
superior que encierren la raíz, de
forma tal que la función cambie de
signo en el intervalo. Esto se
verifica comprobando que f(a) f(b.
𝑓 ( 𝑥 )=5 𝑥 3 +5 𝑥 2+ 6 𝑥 −2
𝑥3.5 =80
Ejercicios
Como se ilustra en la figura la velocidad
del agua, v=(m/s), en la descarga de un
tanque cilíndrico a través de un tubo largo
se puede calcular como: H
L
Donde g=9.8 m/ , H=carga hidrostática inicial (m), L=longitud del tubo (m) y
t=tiempo transcurrido. Determine la carga hidrostática para obtener v=5 m/s en
2.5 s, para un tubo de 4m de longitud. Utilice valores iniciales de y , con una
1.2 Método de Newton 𝐲=𝐟 (𝐱)
𝑦 𝑓 (𝑥 1)
El método de Newton, también
llamado “método de Newton-
Raphson”, es un esquema para pendiente:
encontrar una solución numérica de
una ecuación de la forma f(x)=0 𝑓 (𝑥 2)
donde f(x) es:
• Continua solución 𝑓 (𝑥 3)
• Diferenciable
𝑓 (𝑥 4 )
• Se conoce que tiene una solución 0 𝑥 4 𝑥3 𝑥2 𝑥1 𝑥
cerca de un punto dado 𝑓′(𝑥2)
𝑓′(𝑥3)
𝐲=𝐟 (𝐱)
𝑦 𝑓 (𝑥 1)
Matemáticamente, para la primera
iteración, la pendiente, de la tangente )
pendiente: es dada por :
𝑓 (𝑥 2)
m
solución 𝑓 (𝑥 3)
𝑓 (𝑥 4 ) Resolviendo para :
0 𝑥 4 𝑥3 𝑥 2 𝑥1 𝑥
𝑓′(𝑥 ) 𝑓′(𝑥2)
3
Esta ecuación puede ser generalizada para determinar la “siguiente” solución a partir de la
presente solución
Esta ecuación es la iteración general de la
fórmula para el Método de Newton
Código computacional:
clear,clc
function [fun]=fun(x)
fun=-0.5*x.^2+2.5*x+4.5
endfunction
function [funder]=funder(x)
funder=-x+2.5
endfunction
xest=2, err=.0001, imax=10,
mprintf("i \t xest \t \t xs \t \t fun(xi) \t error \n")
for i=1:imax
xi=xest-fun(xest)/funder(xest)
errori=abs((xi-xest)/xest)
funx=fun(xi)
Código computacional:
mprintf("%2.0f \t %0.4f \t %0.4f \t %0.4f \t %0.4f \n",i,xi,xest,funx,errori)
if abs((xi-xest)/xest) < err
xs=xi
break
end
xest=xi
end
if i==imax then
mprintf("No se encontró una solución en %g iteraciones",imax)
end
2
Sistema de
ecuaciones lineales
SISTEMA DE ECUACIONES LINEALES
2 SISTEMAS DE ECUACIONES LINEALES
Número de ecuaciones
Número de incógnitas
Caso 1: Si se tiene solución única. Es importante verificar (por ejemplo a través de la eliminación de Gauss que
las ecuaciones son linealmente independientes entre sí.
Caso 2: Si . Se tendrían grados de libertad ; es decir, se proponen valores a algunas variables de forma arbitraria.
Por lo que el sistema tendría un número infinito de soluciones.
Caso 3: Si se dice que el sistema está sobre especificado; por lo tanto, no tiene solución.
Métodos iterativos
Para un sistema con n ecuaciones, las ecuaciones explícitas para los valores desconocidos
de xi son:
[ ]
𝑛
1
𝑥𝑖 = 𝑏 𝑖 − ∑ 𝑎𝑖𝑗 𝑥 𝑗
𝑎𝑖𝑖 𝑗=1 , 𝑗≠ 𝑖
2.1 Método de Jacobi
Código computacional:
clear,clc
i=1,x(1)=0,x(2)=0,x(3)=0,x(4)=0,tol=0.001
imax=input("Ingrese la cantidad máxima de iteraciones deseadas: ")
mprintf("i \t x1 \t \t x2 \t \t x3 \t \t x4 \n")
mprintf("%0.4f \t %0.4f \t %0.4f \t %0.4f \t %0.4f \t \n",i, x(1),x(2),x(3),x(4))
for i=2:imax
xn(1)=(54.5-(-2*x(2)+3*x(3)+2*x(4)))/9
xn(2)=(-14-(2*x(1)-2*x(3)+3*x(4)))/8
xn(3)=(12.5-(-3*x(1)+2*x(2)-4*x(4)))/11
xn(4)=(-21-(-2*x(1)+3*x(2)+2*x(3)))/10
for k=1:length(x)
errori(k)=abs(xn(k)-x(k))
Código computacional:
end
if errori<tol then
for k=1:length(x)
x(k)=xn(k)
end
break
end
for k=1:length(x)
x(k)=xn(k)
end
mprintf("%0.4f \t %0.4f \t %0.4f \t %0.4f \t %0.4f \t \n",i,x(1),x(2),x(3),x(4))
end
2.2 Método de Gauss-Seidel
Código computacional:
clear,clc
i=1,x(1)=0,x(2)=0,x(3)=0,x(4)=0,tol=0.001
imax=input("Ingrese la cantidad máxima de iteraciones deseadas: ")
mprintf("i \t x1 \t \t x2 \t \t x3 \t \t x4 \n")
mprintf("%0.4f \t %0.4f \t %0.4f \t %0.4f \t %0.4f \t \n",i, x(1),x(2),x(3),x(4))
for i=2:imax
xn(1)=(54.5-(-2*x(2)+3*x(3)+2*x(4)))/9
xn(2)=(-14-(2*xn(1)-2*x(3)+3*x(4)))/8
xn(3)=(12.5-(-3*xn(1)+2*xn(2)-4*x(4)))/11
xn(4)=(-21-(-2*xn(1)+3*xn(2)+2*xn(3)))/10
for k=1:length(x)
errori(k)=abs(xn(k)-x(k))
Código computacional:
end
if errori<tol then
for k=1:length(x)
x(k)=xn(k)
end
break
end
for k=1:length(x)
x(k)=xn(k)
end
mprintf("%0.4f \t %0.4f \t %0.4f \t %0.4f \t %0.4f \t \n",i,x(1),x(2),x(3),x(4))
end
Código computacional:
clear,clc
i=1,x(1)=0,x(2)=0,x(3)=0,x(4)=0,tol=0.001
imax=input("Ingrese la cantidad máxima de iteraciones deseadas: ")
mprintf("i \t x1 \t \t x2 \t \t x3 \t \t x4 \n")
mprintf("%0.4f \t %0.4f \t %0.4f \t %0.4f \t %0.4f \t \n",i,x1,x2,x3,x4)
for k=2:imax
x1=(54.5-(-2*x2+3*x3+2*x4))/9
x2=(-14-(2*x1-2*x3+3*x4))/8
x3=(12.5-(-3*x1+2*x2-4*x4))/11
x4=(-21-(-2*x1+3*x2+2*x3))/10
mprintf("%0.4f \t %0.4f \t %0.4f \t %0.4f \t %0.4f \t \n",i,x1,x2,x3,x4)
end
2.3 Método de la inversa
Puesto que ahora son varias funciones se puede escribir en forma vectorial.