Вы находитесь на странице: 1из 52

1.

Introducción
Las técnicas numéricas son muy sencillas y en sus aplicaciones, por lo que es
importante entender el concepto de “error” para utilizar en forma efectiva los métodos
numéricos.

Para validar una técnica numérica para un problema dado se necesita de alguna manera
que esta tenga solución analítica.

De no tenerla se usará aproximaciones o estimaciones de los errores.

 8 bits
 16 bits
 32bits
 64 bits

Los errores más comunes son los errores de redondeo y los errores de truncamiento:

-Los errores de redondeo se deben a que la computadora solo puede representar


cantidades numéricas con un número infinito de dígitos.

-Los errores de truncamiento son los que representa la diferenciación exacta de un


problema y la aproximación dada por un método numérico.

Otros errores que se pueden dar que no están relacionados con los métodos numéricos.

-Errores por equivocación.

-Errores en la formulación del modelo.

-Incertidumbre en la obtención de los datos.


2. Cifras Significativas
Cuando empleamos un numero en un determinado calculo, se debe tener la seguridad de
que pueda usarse con confianza.

El concepto de cifras significativas, se ha desarrollado para designar formalmente la


confiabilidad de un valor numérico.

Los ceros causan siempre confusión al operar.

Ejemplo:

0.00001845

0.001845 Tiene 4 cifras significativas

0.01845

El concepto de cifras significativas tiene dos implicaciones importantes en el estudio de los


métodos numéricos.

 Los métodos numéricos dan resultados aproximados. Por lo que se deben


desarrollar para especificar que tan confiables son dichos resultados, “El valor
obtenido será correcta cuando se especifica la cantidad n de cifras significativas.”

 Ciertas cantidades como π, e ,√7, representen numéricos específicos, no se puede


expresar exactamente como un numero finito de dígitos.

Ejemplo:

Sea π = 3.141592653589793228462643…..∞

Y la aproximación dada por un método numérico.

Otros errores que se pueden dar que no están relacionados con los métodos numéricos.

Y debido a que las computadoras retienen solo un numero finito de cifras significativas tales
números jamás se podrán representar con exactitud.

A la omisión del resto de cifras significativas se le conoce como errores de redondeo.

En el sistema decimal un cierto “número real” se encuentra representado por un numeral N,


tal que su descomposición polinómica.

N=𝑎𝑚 𝑥10𝑚 + 𝑎𝑚−1 𝑥10𝑚−1 + 𝑎𝑚−2 𝑥10𝑚−2 + ⋯


Siendo los coeficientes:

𝑎𝑖 (𝑖 = 𝑚, 𝑚 − 1, 𝑚 − 2, … )

Valores enteros y positivos menores que diez.

Orden: El orden de un número es el mayor valor que adopta el exponente de 10 en la


descomposición polinómica del número, asumiendo que sus coeficientes de cero.

Cifras significativas: Serán todos los coeficientes comprendidos en la descomposición


polinómica del numeral.

Ejemplo:

Sea N=27.048

𝑁 = 2𝑥101 + 7𝑥100 + 0𝑥10−1 + 4𝑥10−2 + 8𝑥10−3

M=1

C.S=5

Notación científica =2.7048x101

Ejemplo:

N=0.002804

Descomposición polinómica:

𝑁 = 2𝑥10−3 + 8𝑥10−4 + 0𝑥10−5 + 4𝑥10−6

Orden m=-3

C.S=4

Notación científica =2.804x10−3

Entonces las cifras significativas son los dígitos de un número que consideremos no nulos.

8723 4c. s/ Son significativas todos los dígitos distintos de cero.

105 3c.s/ Los ceros situados entre cifras significativas son significativas

0.005 1c. s/Los ceros a la izquierda de la primera cifra significativa no lo son

8.00 3c. s/ Para números mayores que uno, los ceros a la derecha del punto
decimal son significativas
7x102 1c. s /Para números sin punto decimal, los ceros posteriores a la última
cifra distinta de cero pueden o no considerarse significativas.

7.0x10 2c. s/ Para este caso que es 70 podemos considerar una o dos cifras
significativas.

3. Conceptos de Exactitud y Precisión


Los errores asociados a los cálculos se pueden caracterizar con respecto a su exactitud y
precisión.

A. Exactitud: Se refiere a que tan cercano está el valor calculado o medida respecto al
valor verdadero.

B. Precisión: Se refiere a que tan cercano se encuentra, los valores calculados o


medidos unos de otros.

a) Inexacta o impreciso
b) Exacto e impreciso
c) Inexacto y preciso
d) Exacto y preciso

C. Inexactitud: Es una desviación sistemática del valor verdadero.


D. Precisión: Se llama también incertidumbre, esta se refiere a la magnitud es la
dispersión de los valores, calculados o medidas.

En Matlab

De acuerdo al ejemplo anterior podemos decir:

Valor Verdadero = Valor aproximado + Error

Error = Valor Verdadero – Valor Aproximado

En notación matemática:

Ev = 𝑥-𝑥̅

Dónde: Ev = Denota el valor verdadero (exacto) del error

𝑥 = representa el valor verdadero

𝑥̅ = representa el valor aproximado

Existe un problema al utilizar esta definición de error, esto es la magnitud que no nos indica
que tan representativa es esta cantidad

Para resolver esta incertidumbre en la interpretación del Error se recurre a la normalización


del mismo usando el valor verdadero como referencia.
𝐸𝑟𝑟𝑜𝑟 𝑣𝑒𝑟𝑑𝑎𝑑𝑒𝑟𝑜
Error relativo fraccionario =
𝑉𝑎𝑙𝑜𝑟 𝑣𝑒𝑟𝑑𝑎𝑑𝑒𝑟𝑜

( 𝑥− ̅̅̅
𝑥)
Er = 𝑥

También el valor del error relativo se puede expresar en forma porcentual al multiplicar por
100 el error relativo fraccionario.

( 𝑥− ̅̅̅
𝑥)
Ep = 𝑥100
𝑥

Para fines de poder comparar los errores de un cálculo contra las de otro, se prefiere usar
valores absolutos.

Ev = |𝑥-𝑥̅ |
( 𝑥− ̅̅̅
𝑥)
Er = | |
𝑥

( 𝑥− ̅̅̅
𝑥)
Ep = | |𝑥100
𝑥

Para los errores anteriores es que para ser evaluados se requiere del valor verdadero,
entonces el error se puede estimar como la diferencia entre la aproximación previa y la
aproximación actual:

a) Error aproximado

ea = xi+1 - xi

b) Error relativo fraccionario aproximado

𝑥𝑖+1 − 𝑥𝑖
er = 𝑥𝑖+1

c) Error relativo porcentual aproximado

𝑥𝑖+1 − 𝑥𝑖
ep = ( ) 𝑥100
𝑥𝑖+1

reescribiendo:

ea = |xi+1 - xi |

𝑥𝑖+1 − 𝑥𝑖
er = | |
𝑥𝑖+1

𝑥𝑖+1 − 𝑥𝑖
ep = | |𝑥100
𝑥𝑖+1

Programa de Chauca

𝐸 𝑉𝑎𝑙𝑜𝑟 𝑟𝑒𝑎𝑙−𝑉𝑎𝑙𝑜𝑟 𝑐𝑎𝑙 ∗ 100


𝑣𝑟 =| |
𝑉𝑎𝑙𝑜𝑟 𝑟𝑒𝑎𝑙
Error permisible:

Es; es=0.1 es=0.0001

Controlar el proceso iterativo en el cual el error aproximado sea <= al error permisible.

𝐸𝑣𝑟 ≤ 𝑒𝑠

SERIE DE MACLAURIN
clc
clear all
format long
x=0.5;
Es=0.00001; %error permisible
vreal=exp(x);
fprintf('Valor real de exp(x) %12.8f\n',vreal)
%Algoritmo para utilizar la serie de Maclaurin
n=input('Ingrese cantidad de términos de la serie :
');
suma=1; %variable que va acumular para obtener exp(x)
facto=1;
%ciclo repetitivo for
for i=1:n-1
facto=facto*i;
y=x^i/facto;
suma=suma+y;
error=abs((vreal-suma)/vreal)*100;
if (error<Es)
fprintf('El error obtenido es
%12.8f\n',error)
fprintf('El valor de exp(x) aprox
%12.8f\n',suma)
break
end
end

Para obtener es= (0.5x102-n) %

Donde “n” es el número de cifras significativas (scaroborough,1960).

Para añadir al informe

1. Se tiene la serie infinita


es válida para el intervalo -1<x<1 y puede ser usada para el cálculo de logaritmos naturales

a) Determinar el valor del logaritmo natural de 1.5 usando la serie finita con 20
términos
b) Calcule el error relativo porcentual usando el valor del logaritmo natural de Matlab.

2. Existen muchas formas para el cálculo del valor aproximado para el cálculo del valor
aproximado de π una de ellas, llamada del producto de Wallis consiste en el producto
infinito siguiente:

Calcular el valor del error relativo porcentual cuando se usan10 términos de la serie infinita,
use 8 decimales
1. Objetivos:

Al termino este capítulo el alumno será capaz de:

 Calcular el valor de las raíces de una ecuación, por medio de la aplicación de


métodos cerrados y abiertos.
 Determinar la posibilidad de convergencia al usar métodos abiertos.

Raices de
Ecuaciones

Metodos Metodos
Cerrados Abiertos

Regula newton
Biseccion Punto fijo Horner Secante
Falsi Raphson

Dentro de la formación del estudiante se ha ido calculando raíces de ecuaciones triviales y


sencillas.

Ejemplo:

La raíz cuadrática

−𝑏 ± √𝑏 2 − 4𝑎𝑐
𝑥=
2𝑎

1. Métodos Cerrados
Aprovechan de que una función cambia de signo en la vecindad de una raíz.

Esto es dentro de un intervalo cerrado, por lo que se necesita dos valores iniciales

X ϵ [ a, b]

Una forma de visualizar la posible raíz de una ecuación es utilizando el método gráfico, esto
es para la ecuación
F(x)=0

Ejemplo: Sea la función

F(x) = sen(10x) + cos(3x),

Donde X esta en el rango [ 0, 5]

>> fplot('sin(*x) +cos(3*x)',[0,5]),grid

Podemos apreciar que tiene 13 raíces en este intervalo, a excepción del intervalo [4 ,4.5],
que puede ser una o dos raíces adicionales.

>> fplot('sin(10*x)+cos(3*x)',[4,4.5])

Existen 2 raíces entre 4.2 y 4.3

>> fplot(' ',[4,4.5]) , grid


Otro ejemplo:

Localizar las raíces gráficamente

F(x) = x2 + 2x – 4,[-4 , 4]

>> fplot('[x.^2+2*x-4]',[-4,4])

Otro ejemplo: Para la función anterior lo separamos en dos sub-funciones

F(x)=0 --- x2 = 4 – 2x

F1(x)=x2 y F2(x) = 4 – 2x
Otro ejemplo:

Visualizar la posible raíz para la función

F(x)=e-x – x X ϵ [ -2, 2]
Este método consiste en tomar un intervalo de valores donde al evaluar la función ((F(x)=0)
en los extremos se presenta un cambio de signo, con lo cual se asegura que por lo menos
exista una raíz dentro del intervalo.

F(x)=0 X ϵ [ a, b]

A continuación, se calcula el punto medio del intervalo, por lo que, de esta manera de
intervalo inicial se divide en dos nuevos intervalos más pequeños. Se repite el análisis del
cambio de signo para desechar el sub-intervalo que no contiene la raíz
𝑎+𝑏
XM = =c
2

Este método puede requerir de muchas iteraciones, para poder localizar en que intervalo se
encuentra una posible raíz por lo que esto se hace lento.

En general : si F(x) es real y continua en el intervalo entre [a , b] y F(a) y F(b) tienen


signos opuestos -- Ǝ al menos una raíz real entre a y b

La posición de la raíz se determina situándola en el punto medio del sub-intervalo en el cual


ocurre un cambio de signo.

Se ha visto en el método grafico que la función cambia de signo en la vecindad de una raíz.

De forma general, si la f(x) es real y continua en el intervalo que va desde Xi

Hasta un Xu, y la función evaluada f(xi) y f(xu) tienen signos opuestos.

f(xi).f(xu)<0

Entonces hay al menos una raíz real entre Xi y Xu.

El Método de la Bisección también se le conoce como corte binario, de partición de


intervalos o de Bolzano.

Este método es un tipo de búsqueda incremental en el que el intervalo se divide siempre a la


mitad.

Si la función cambia de signo sobre un intervalo, se evalúa el valor de la función en el punto


medio del sub-intervalo, dentro del cual ocurre un cambio de signo. Este proceso se repite
hasta tener una mejor aproximación.
GRAFICAMENTE.

F(x)=0 y que está definido en [Xi,Xu] y que sea continua ---> f(Xi) y f(Xu) deben ser signos
opuestos.

F(Xu)

Solucion exacta

[ ]

F(x) f(Xi)<0 [ ]

[ ]

Procedimiento para el Método de la Bisección:

Paso1: Elegir el valor inicial inferior Xi y superior Xu, que encierra una raíz.

Evalúa la función f(xi) y f(xu) de tal forma que la función cambie de signo en el intervalo.

F(xi).f(xu)<0.

Paso2: Se determina una raíz aproximada Xr mediante

𝑋𝑖 + 𝑋𝑢
𝑋𝑟 =
2
Paso3: Realizar las siguientes evaluaciones para determinar en qué sub-intervalo esta la raíz.

Se encuentra dentro del sub-intervalo inferior o izquierda, por lo tanto, hacer Xu=Xr y
regrese al paso2.
b)si f(Xi).f(Xu)>0  la raíz se encuentra dentro del sub-intervalo superior o derecho, por lo
tanto hacer Xp=Xn y volver al paso 2.

c)Si f(Xi).f(Xr)=0 La raíz es igual a Xr y termina el calculo.

Como control del proceso iterativo podemos usar el error relativo porcentual

Ea:

𝑋𝑟𝑛𝑢𝑒𝑣𝑜 − 𝑋𝑟𝑎𝑛𝑡𝑒𝑟𝑖𝑜𝑟
𝐸𝑎 = 𝑥100
𝑋𝑟𝑛𝑢𝑒𝑣𝑜

Es=(0.5x102-n)%

Ea<=Es

Ejemplo:

Usar el método de la bisección para calcular la raíz de f(x)=e-x-x

En el intervalo [0,1], con una aproximación de 4 cifras.

Solución:

Xi=0 y Xu=1, n=4 cifras

Es=(0.5x102-u)%

Es=0.005%

 El proceso iterativo será para Ea<=Es=0.005%

Xi=Xu
El programa principal
clear all
clc
disp('Metodo cerrado de la biseccion')
f=input('Ingrese la funcion=','s');
f=inline(f);
n=input('Ingrese cifras significativas=');
xl=input('Ingrese valor inferior del intervalo=');
xu=input('Ingrese valor superior del intervalor=');
es=0.5*10^(2-n);
ea=100;
xr=0;
i=0;
%variable contador
while ea>es
xa=xr;
xr=(xl+xu)/2; %Formula de la biseccion
ea=abs((xr-xa)/xr)*100;
r=f(xl)*f(xr);
if r<0
xu=xr;
elseif r>0
xl=xr;

end
i=i+1;
end %fin del ciclo while
fprintf('La raiz de la ecuacion:%12.5f\n',xr)
fprintf('Error aproximado:%12.10f\n',ea)
fprintf('Numero de iteraciones:%i\n',i)
F(X0)
F(Xu)

Xl
Xu X

F(Xl)

Este método consiste en unir f(xi) y f(Xu) con una línea recta, la intersección de esta línea recta con
la abscisa nos da una raíz aproximada a la solución exacta. También se le conoce como el método
de interpolación lineal.

F(Xu)

Xl Xr
Xu
F(Xl)

Por semejanza de triángulos

𝑓(𝑋𝑙) 𝑓(𝑋𝑢)
=
𝑋𝑟 − 𝑋𝑙 𝑋𝑟 − 𝑋𝑢
𝑓(𝑋𝑢).(𝑋𝑙−𝑋𝑢)
Xr=Xu -
𝑓(𝑋𝑙)−𝑓(𝑋𝑢)

(−0.6321).(0−1)
Xr=1-
[1—0.6321]

0.6321
Xr=1- =0.61270
1.6321

Programa General
clear all
clc
disp('Solucion de ecuaciones no lineales')
f=input('Ingrese la funcion=','s');
f=inline(f);
disp('Por el metodo cerrado regula falsi')
n=input('Ingrese cantidad de cifras significativas=');
xl=input('Ingrese el valor del intervalo inferior=');
xu=input('Ingrese el valor del intervalo superior=');
es=0.5*10^(2-n);
ea=100;
xr=0;
i=0;
while ea>es
xa=xr;
xr=xu-(f(xu)*(xl-xu))/(f(xl)-f(xu));
r=f(xl)*f(xr);
if(r<0)
xu=xr;
ea=abs((xr-xa)/xr)*100;
elseif(r>0)
xl=xr;
ea=abs((xr-xa)/xr)*100;
end
i=i+1;
end %fin del while
fprintf('Raiz obtenida:%12.8f\n',xr)
fprintf('Error aproximado:%12.8f\n',ea)
fprintf('Numero de iteraciones:%12.0f\n',i)
2. Métodos Abiertos
Solución de Ecuaciones No Lineales por métodos abiertos

a. Método Newton Raphson.


b. Método Secante.
c. Método Punto Fijo.

Este es uno de los métodos mas utilizados en el campo de ingeniería.

El algoritmo se deduce de la siguiente manera.

𝑓(𝑋𝑖)
𝑋(𝑓) = 𝑋(𝑖) −
𝑓′(𝑋𝑖)

Del gráfico: f’(xi)=(f(xi)-0) /Xi

Ejemplo: USANDO EL MÉTODO DE NEWTON RAPHSON

f(x)=e-x-x

valor inicial(semilla), x=0 del algoritmo

Xi+1=xi-(f(xi)/(f’(xi))

Para el algoritmo

i=0,1,2,3,4,5….

f’(x)=-e-x-1, 0.005
es=(0.5*102-n) n=Cantidad de cifras significativas

Consideramos: es=0.001

Xi-1=xi-(e-xi-xi)/(-e-xi-1)

Adjuntar tabla:

Algoritmo de computación para N.Raphson


clear all
clc
disp('Sol de una ecuacion no lineal')
disp('Metodo abierto N.Raphson')
n=input('Ingrese cifras significativas=');
xi=input('Ingrese valor inicial=');
es=(0.5*10^(2-n));
ea=100; %Error absoluto
i=0;
%Uso del ciclo while
while (ea>es)
xa=xi;
fxi=exp(-xi)-xi;
dxi=-exp(-xi)-1;
xi=xa-fxi/dxi;
ea=abs((xi-xa)/xi)*100;
i=i+1;
end
fprintf('La raiz obtenida:%12.8f/n',xi)
fprintf('Numero de iteraciones:%12.0f/n',i)
OTRA FORMA

clear all
clc
x0=0; %Valor inicial
es=0.001;
%Ciclo for
for i=1:1000
fx=exp(-x0)-x0;
dfx=-exp(-x0)-1;
x1=x0-fx/dfx; %Algoritmo de newton raphson
ea=abs((x1-x0)/x1)*100;
if(ea<es)
disp('raiz cuadrada')
disp(x1)
disp('iteraciones')
i
break
end
x0=x1;
end
F(xi-1)

y Solucion exacta f(xi-1) –f(xi)

(Xi-1)-x1

Xi+1

𝑓(𝑋𝑖)
𝑋𝑖 + 1 = 𝑋𝑖 −
𝑓(𝑥𝑖 − 1) − 𝑓((𝑥𝑖)
𝑋𝑖 − 1 − 𝑋𝑖

𝑓(𝑥𝑖).(𝑋𝑖−1−𝑋𝑖)
𝑋𝑖 + 1 = 𝑋𝑖 −
𝑓(𝑋𝑖−1)−𝑓(𝑋𝑖)

Algoritmo de la secante

F(x)=e-x-x

Ejemplo: Método de la secante.

F(x)=e-x-x

Xi-1=0; Xi=1
f(x)=0 ………………………..1
Geométrica:

Si se tiene una ecuación algebraica o transcendente cualquiera de la forma (1).

Se puede transformar a su equivalente en

g(x)=x……………..2

Esto es al sumar x en ambos miembros de la ecuación 1.

f(x)+x=x

g(x)=x

g(x)=f(x)+x…………3

El Método del Punto Fijo consiste en sustituir un valor inicial(x0) aproximado a la raíz en el
primer miembro de la ecuación 2.

G(X0)=x0……………..4

X1=g(x0)……………….5

Nuevamente al sustituir x1 en el primer miembro de la ecuación 2 se obtiene la siguiente


aproximación.

X2=g(x1)

Entonces para la enésima aproximación…


Xn=g(Xn-1), n=1,2,3,4,…..

Algoritmo del método del punto fijo.

El método será convergente si la diferencia del valor absoluto entre los valores calculados en
dos iteraciones sucesivas, es cada vez menos a medida que “n” aumenta.

Debe cumplirse el criterio de:

LIPSCHITZ.

|g’(x)|<1

Convergencia monotómica

Convergencia oscilatoria

Divergencia monotómica

Divergencia oscilatoria

Ejemplo:

f(x)=e-x-x=0

e-x-x+x=0

e-x=x

g(x)=x

si X0=1 Valor inicial

g(x)=e-x

g’(x)=-e-x

|g’(x0)|=|-e-x0|<1

=|-e-1|<1

|-0.3678|

X(i+1)=e-xi
PROGRAMA
clear all
clc
disp('Ecuacion no lineal_punto fijo')
n=input('Cantidad de cifras
significativas:');
Xi=input('Ingrese valor inicial:');
es=(0.5*10^(2-n));
ea=100;
i=0;
while (ea>es)
xa=xi;
xi=exp(-xi);
ea=abs((xi-xa)/xi)*100;
i=i+1;
end
fprintf('raiz=%12.8f\n',xi)
Este método consiste en obtener las raíces de un conjunto de ecuaciones simultaneas no
lineales.

f(x)=0

f1(x1,x2,x3,…,xn)=0

f2(x1,x2,x3,…,xn)=0

… …

fn(x1,x2,x3,…,xn)=0

Entonces la solución de este sistema de ecuaciones simultaneas, consiste de un conjunto de


valores xi que simultáneamente verifican todas las ecuaciones.

Ejemplo:  Sean las ecuaciones:

x2+xy=10

y+3xy2=57

Para este tipo de ecuación las dos ecuaciones tienen 2 variables lo cual podemos hacer que
x1=x y x2=y

Por lo que podemos representarlo a las 2 ecuaciones como:

U(x,y)= x2+xy-10=0

V(x,y)= y+3xy2-57=0

Para solucionar este tipo de ecuaciones vamos a considerar los métodos abiertos; punto fijo
y newton raphson.

Método punto fijo:

Este método puede modificarse para resolver 2 ecuaciones simultaneas no lineales.

f(x)=0  x=g(x);algoritmo: xi+1=g(xi)

para un sistema de dos ecuaciones simultaneas no lineales

xi+1=g(xi,yi)

yi+1=h(xi,yi)

aplicacion: desarrolle el método del punto fijo para las 2 ecuaciones dadas en el ejemplo:
xi=1.5 ; yi=3.5

>> U(x,y)= x2+xy-10=0…….(1)

>>V(x,y)= y+3xy2-57=0…….(2)

De (1) despejamos x:

X=√10 − 𝑥𝑦

Xi+1=√10 − 𝑥𝑖 𝑦𝑖

De (2) despejamos y:

57−𝑦
Y=√ 3𝑥

57−𝑦𝑖
Yi+1=√ 3𝑥𝑖

clear all
clc
disp('metodo de ecuacciones no lineales')
n=input('ingresar numero de cifras significativas:');
x0=input('ingresar valor inicial de x= ');
y0=input('ingresar valor inicial de y= ');
es=(0.5*10^(2-n));
eax=100;
eay=100;
i=0;
%ciclo while
fprintf('\n i\t\t\t xi \t\t\t yi \n')
while (eax>es & eay>es)
xi=sqrt(10-x0*y0);
yi=sqrt((57-y0)/(3*xi));
eax=abs((xi-x0)/xi)*100;
eay=abs((yi-y0)/yi)*100;
x0=xi;
y0=yi;
i=i+1;
fprintf('%12.5f\t\t%12.5f\t\t\t%i\n',[i;xi;yi])
end

%TAREA:MODIFICAR EL PROGRAM DE TAL MANERA QUE PRESENTE 2 GRAFICOS:


%XI VS ITERACIONES
%YI VS ITERACIONES
%TAREA2:ESCIBIRLO EN FORTRAN Y SU EJECUCION
PROGRAM ECUACIONES

INTEGER::N

REAL::X0,Y0,XI,YI,EAX,EAY

PRINT*,"INGRSE NUMERO DE ITERACIONES"

READ*,N

PRINT*,"INGRESE VALOR INICIAL DE X"

READ*,X0

PRINT*,"INGRESE VALOR INICIAL DE Y"

READ*,Y0

ES=0.0001

DO I=1,N

XI=SQRT(10-X0*Y0)

YI=SQRT((57-Y0)/(3*XI))

EAX=ABS((XI-X0)/XI)*100

EAY=ABS((YI-Y0)/YI)*100

IF (EAX>ES .AND. EAY>ES) THEN

X0=XI

Y0=YI

END IF

END DO

PRINT*,XI,YI

END PROGRAM ECUACIONES


CODIGO EN FORTRAN:

METODO DE NEWTON RAPHSON

El algoritmo de N.R también se puede obtener de la serie de Taylor de primer orden:

F(XI+1) =F(XI)+F’(XI)(XI+1-XI)………....(1)

Donde:

XI= Es el valor inicial de la raíz

XI+1 = Es el valor en el cual la recta tangente intersecta al eje x, donde por definición en la
intersección hace F(XI+1) =0

La ecuación (1) lo reordenamos:

0=F(XI)+F’(XI)*(XI+1-XI)
𝐹(𝑋 )
XI+1=XI-𝐹′(𝑋𝐼 )…………..(2)
𝐼

Este algoritmo es valido para una sola variable

Entonces el algoritmo de N. R. para múltiples ecuaciones se obtendrán en forma idéntica.


Se debe tomar en cuenta la serie de Taylor para múltiples variables esto es para tomar en
cuenta el hecho de que más de una variable independiente contribuye a la determinación de
una raíz.

Para el caso de dos variables una serie de Taylor de primer orden se escribe para cada
ecuación no lineal.
𝜕𝑈 𝜕𝑈
Ui+1=ui+ 𝜕𝑋𝐼(xi+1-xi)+ 𝜕𝑌𝐼(yi+1-yi)……(3)

𝜕𝑉 𝜕𝑉
Vi+1=vi+ 𝜕𝑋𝐼(xi+1-xi)+ 𝜕𝑌𝐼(yi+1-yi)……..(4)

Entonces como en el caso de una sola ecuación no lineal la raíz correspondiente a los valores
de x y y, donde ui+1 y vi+1 son iguales a cero.

En tal sentido las ecuaciones (3) y (4) la reordenamos de la siguiente manera:

𝜕𝑈𝐼 𝜕𝑈𝐼 𝜕𝑈 𝜕𝑈
xi+1 + yi+1=- ui+ xi 𝜕𝑋𝐼+ yi 𝜕𝑌𝐼……(5)
𝜕𝑋 𝜕𝑌

𝜕𝑉𝐼 𝜕𝑉𝐼 𝜕𝑉 𝜕𝑉
xi+1+ yi+1=- vi+ xi 𝜕𝑋𝐼+ yi 𝜕𝑌𝐼………..(6)
𝜕𝑋 𝜕𝑌

En las ecuaciones (5) y (6) se conocen todos los valores con subíndice “i”, las únicas
incógnitas son xi+1 y yi+1  las 2 ecuaciones serán dos ecuaciones lineales con dos
incógnitas, por lo que podemos usar manipulaciones algebraicas(Regla de Crammer) para
resolverlo.

>>el algoritmo de N.R para 2 ecuaciones no lineales simultáneamente es:

𝜕𝑉 𝜕𝑈
𝑈𝐼 ∗ 𝜕𝑌𝐼 −𝑉𝐼∗ 𝜕𝑌𝐼
XI+1=XI-𝜕𝑈𝐼 𝜕𝑉𝐼 𝜕𝑈𝐼 𝜕𝑉𝐼
∗ − ∗
𝜕𝑋 𝜕𝑌 𝜕𝑌 𝜕𝑋
Para el ejemplo anterior:

clear all
clc
disp('calculo de raices de ecuaciones no
lineales')
disp('usando metodo de n.r')
n=input('ingrese numero de cifras
significativas:')
xi=input('ingrese valor inicial de x');
yi=input('ingrese valor inicial a y');
es=(0.5*10^(2-n));
eax=100;
eay=100;
i=0;
while (eax>es & eay>es)
xa=xi;
ya=yi;
ui=xi^2+xi*yi-10;
vi=yi+3*xi*(yi^2)-57;
duidx=2*xi*yi;
duidy=xi;
dvidx=3*(yi^2);
dvidy=1+6*xi*yi;
jacobi=duidx*dvidy-duidy*dvidx;
%EL ALGORITMO DE N.R PARA XI
xi=xi-(ui*dvidy-vi*duidy)/jacobi;
yi=yi-(vi*duidx-ui*dvidx)/jacobi;
eax=abs((xi-xa)/xi)*100;
eay=abs((yi-ya)/yi)*100;
i=i+1;
end
fprintf('raiz de x %12.8f\n',xi)
fprintf('raiz de y%12.8f\n',yi)
fprintf('numero de iteraciines %12.8f\n',i)
1)En este capítulo vamos a encontrar los valores de:

x1, x2, x3,……….xn


que en forma simultanea satisfacen un sistema de ecuaciones lineales.

𝑎11 𝑥1+ 𝑎12 𝑥2+ 𝑎13 + ⋯ … … … … … … … . +𝑎1𝑛 𝑥𝑛 = 𝑏1


𝑎21 𝑥1+ 𝑎22 𝑥2+ 𝑎23 + ⋯ … … … … … … … . +𝑎2𝑛 𝑥𝑛 = 𝑏2

𝑎𝑛1 𝑥1+ 𝑎𝑛2 𝑥2+ 𝑎𝑛3 + ⋯ … … … … … … … . +𝑎𝑛𝑛 𝑥𝑛 = 𝑏𝑛


Donde los 𝑎𝑖𝑗 son los coeficientes,los 𝑏𝑖 son los términos independientes constantes y “n”es
el numero de ecuaciones.

Las 𝑥𝑖 son las incógnitas.

2) Matrices y Vectores

 Notación matricial: Una matriz consiste de un arreglo rectangular de elementos


representados por:
𝑎11 𝑎12 𝑎13 𝑎1𝑛
𝑎21 𝑎22 𝑎23 𝑎2𝑛
𝑎31 𝑎32 𝑎33 𝑎3𝑛
[𝐴] = .
.
.
[𝑎𝑛1 𝑎𝑛2 𝑎𝑛3 𝑎𝑛𝑛 ]
Donde:

[𝐴]= Es la notación breve para la matriz

𝑎𝑖𝑗 = Es el elemento individual de la matriz ubicado en la i-esima fila y la j-esima


columna. (i=fila ; j=columna)

Y para la matriz [𝐴],se dice que tiene una dimensión de n por m(nxm);es decir: n filas y m
columnas.
Vector fila:

Se designa a las matrices con dimensión de n=1(fila) de tal forma:

[𝐵]=[𝑏1 𝑏2 𝑏3 … 𝑏𝑛 ]

Vector columna:

Se designa a las matrices con dimensión columna m=1,


𝑐1
𝑐2
𝑐3
[𝐶]= .
.
.
[𝑐𝑛 ]

Matriz cuadrada:

Es aquella en que n=m

1 2 3
[𝐴] = [4 5 6](n * m) =(3* 3)
7 8 9

Tipos de matrices cuadradas:

a) Matriz simétrica:

𝑎𝑖𝑗 =𝑎𝑗𝑖 ∀ 𝑖, 𝑗

5 1 2 3 1 2
[𝐴] = [1 3 7 ] = [ 1 3 7]Es una matriz simétrica de 3*3
2 7 8 2 7 8

b) Matriz diagonal:

Es una matriz cuadrada donde todos los elementos fuera de la diagonal principal son
iguales a cero.

𝑎11 0 0
[𝐴] = [ 0 𝑎22 0 ]
0 0 𝑎33
c)Matriz identidad:

Es una matriz diagonal donde todos los elementos en la diagonal principal son
iguales a 1.

1 0 0
[𝐼] = [0 1 0]
0 0 1

d)Matriz triangular superior:

Es una matriz cuadrada, donde todos los elementos por debajo de la diagonal
principal son ceros.

𝑎11 𝑎12 𝑎13 𝑎14


0 𝑎22 𝑎23 𝑎24
[𝐴] = [ 𝑎34 ]
0 0 𝑎33
0 0 0 𝑎44

e) Matriz triangular inferior:

𝑎11 0 0 0
0 𝑎22 0 0
[𝐴] = [ ]
0 0 𝑎33 0
0 0 0 𝑎44

g) Matriz bandeada:

Una matriz bandeada tiene todos los elementos iguales acero, con excepción de una
banda centrada sobre la diagonal principal.

𝑎11 𝑎12 0 0
𝑎 𝑎 𝑎23 0
[𝐴] = [ 21 22 ]
0 𝑎32 𝑎33 𝑎34
0 0 𝑎43 𝑎44
Operaciones:

a) Suma de matrices:

[𝐴]𝑛∗𝑚 𝑦 [𝐵]𝑛∗𝑚

[𝐶] = [𝐴] ± [𝐵]

𝑐𝑖𝑗 = 𝑎𝑖𝑗 ± 𝑏𝑖𝑗 ; 𝑝𝑎𝑟𝑎 𝑖, 𝑗 = 1,2,3, … , 𝑛

Nota :La suma y resta de matrices es conmutativa y asociativa:


([𝐶] + [𝐴]) + [𝐵] = [𝐶] + ([𝐴] + [𝐵])

b) Multiplicación de matrices:

 Multiplicación de una matriz por un escalar 𝜆:

𝜆𝑎11 𝜆0 𝜆0
𝜆[𝐴] = [ 𝜆0 𝜆𝑎22 𝜆0 ]
𝜆0 𝜆0 𝜆𝑎33

 Multiplicación de dos matrices:


La regla es:

[𝐶] = [𝐴]. [𝐵]


𝑚

𝑐𝑖𝑗 = ∑ 𝑎𝑖𝑘 𝑏𝑘𝑗


𝑘=1

Donde “m” es la dimensión columna de [𝐴] y la dimensión fila de [𝐵],esto es el elemento


𝑐𝑖𝑗 se obtiene al sumar el producto de elemento individuales de la i-esima fila de la matriz
[𝐴] por la j-esima columna de la segunda matriz [𝐵].

[𝐴]𝑁∗𝑀 [𝐵]𝑀∗𝐿 = [𝐶]𝑁∗𝐿


clear all
clc
A=input('ingrese [A]:');
B=input('ingrese [B]:');
a=size(A);
b=size(B);
n=a(1);
m1=a(2);
m2=b(1);
l=b(2);
for i=1:n
for j=1:l
if m1==m2
suma=0;
for k=1:m1
suma=suma+A(i,k)*B(k,j);
end
C(i,j)=suma;
else
disp('TAMAÑO DE MATRICES DIFERENTES')
end
end
end
C

Métodos directos para resolver sistema de ecuaciones lineales:

En forma general, podemos clasificar los métodos para resolver sistemas de ecuaciones
lineales como métodos gráficos, métodos directos y métodos iterativos.

1) Método de eliminación gaussiana simple: consta de dos fases

a) Realiza la eliminación de las incógnitas

b) Se busca la solución mediante la sustitución hacia atrás

NOTA: La eliminación hacia delante de las incognitas reduce el conjunto de ecuaciones a un


sistema triangular superior.

Ejemplo:

2x-y+3z=5

2x+2y+3z=7

-2x+3y+0=-3

Vamos escribirlo en notación matricial los coeficientes y ********

𝟐 −𝟏 𝟑 𝟓
[𝟐 𝟐 𝟑| 𝟕 ]
−𝟐 𝟑 𝟎 −𝟑
Entonces de acuerdo al esquema, a su vez la diagonal principal debe estar formado “+”

−𝟏 𝟐 𝟑 𝟓 𝟏 −𝟐 −𝟑 −𝟓
[𝟐 𝟐 𝟑| 𝟕 ] *(-1) [𝟐 𝟐 𝟑 | 𝟕 ] Solo a la 1 fila
𝟑 −𝟐 𝟎 −𝟑 𝟑 −𝟐 𝟎 −𝟑

−𝟏 𝟐 𝟑 −𝟓
[ 𝟎 𝟔 𝟗| 𝟏𝟕 ] f2=-2F1+F2; F3=-3F1+F3
𝟎 𝟒 𝟗 𝟏𝟐

−𝟏 𝟐 𝟑 −𝟓
[ 𝟎 𝟏 𝟑/𝟐|𝟏𝟕/𝟔] Se hizo el elemento a (2,2) igual a 1
𝟎 𝟒 𝟗 𝟏𝟐

Dividiendo a todo entre 6

−𝟏 𝟐 𝟑 −𝟓
[ 𝟎 𝟏 𝟑/𝟐|𝟏𝟕/𝟔]SE OBTUVO F3=(-4F2+F3) /3
𝟎 𝟎 𝟏 𝟐/𝟗

Este método es similar al anterior, en la cual la matriz de coeficiente debe una matriz
identidad.

1 0 0 𝑏1
[0 1 0|𝑏2 ]
0 0 1 𝑏3
Ejemplo

3𝑥1 + 𝑥2 − 𝑥3 = 2

𝑥1 − 4𝑥2 + 2𝑥3 = −1

𝑥1 + 𝑥2 + 4𝑥3 = 15
3 1 −1 2
[1 −4 2 |−1] (F1/3)
1 1 4 15

1 0.3333 −0.3333 0.6666


[1 −4 2 | −1 ] F2=F2-F1(1) Y F3=F3-F1(1)
1 1 4 15

1 0.3333 −0.3333 0.6666


.[0 −4.3333 2.3253 |−1.6667]
0 0.6667 4.3333 14.3333

NOTA: Para normalizar la segunda fila y transformar en ceros los elementos que se
encuentran arriba y abajo del elemento 𝑎22 hacemos lo siguiente :

El elemento 𝑎22 = 1 ; F2=F2/(-4.3333)

1 0.3333 −0.3333 0.6666


[0 1 2.3253 | 0.3846 ] Luego F1=F1-F2(0.3383) =
0 0.6667 4.3333 14.3333

1-0.(0.33)=1

0.3333-1(0.3336)=0

-0.3333-(-0.5384)(0.3333)=-0.153846

0.6667-(0.3816)(0.3333)=0.538462

F3=F3-F2(0.6667)

=0-0(0.6667)=0

=0.6667-(1)(0.6667)=0

=4.333-(-0.5384)(0.6667)=4.692308

=14.333-(0.3846)(0.6667)=14.076923
1 0 −0.1538416 0.538462
.[0 1 −0.5384 | 0.3846 ]
0 0 4.692308 14.076923

Para normalizar la 3era fila 𝑎33 debe ser 1 ==F3/4.692308

1 0 −0.1538416 0.538462
.[0 1 −0.5384 | 0.3846 ]
0 0 1 3.0

luego la regla F1=F1-F3(-0.1532846)=1

= -0.153846-(1)(-0.153846)=0

=0.538462-(3)(-0.153846)=1

F2=F2-F3(-0.5384) =0

PONER MATRIZ IDENTIDAD:

1 0 0 0.538462
[0 1 84 | 0.3846 ]
0 0 4.692308 14.076923

Métodos iterativos para la solución de ecuaciones lineales

A. Método directo:

Implica terminar todo el proceso para encontrar la solución de las incógnitas.

Gaus: Matriz, triangular superior

Gauss Jordan: Matriz identidad

B. Método indirecto (iterativo):

Es un método que progresivamente va calculando aproximaciones a la solución de un


problema para nuestro es la aproximación de la solución de las incognitas de un S.E.L.
 Método iterativo:

1) Una solución aproximación (valor inicial).

2) Realizar una serie de pasos para obtener o construir una mejor aproximación
partiendo del valor inicial.

La fórmula que permite construir la aproximación usando otra, se conoce como


“ecuación de recurrencia”

3) Se repite el paso 2 utilizando como valor inicial el nuevo valor encontrado

Los métodos iterativos de gaus jordan y jacobi trabajan sobre matrices cuadradas.

 Métodos de Jacobi:

Este método se asemeja al algoritmo del punto fijo.

Esto consiste en despejar una de las incógnitas de una ecuación dejándolas en


función de las otras incógnitas.

Sea el sistema lineal:

𝑎11 𝑥1 + 𝑎12 𝑥2 + 𝑎13 𝑥3 + ⋯ … … … … … … … . +𝑎1𝑛 𝑥𝑛 = 𝑐1


𝑎21 𝑥2 + 𝑎22 𝑥2+ 𝑎23 𝑥3 + ⋯ … … … … … … … . +𝑎2𝑛 𝑥𝑛 = 𝑐2

𝑎𝑛1 𝑥1+ 𝑎𝑛2 𝑥2+ 𝑎𝑛3 + ⋯ … … … … … … … . +𝑎𝑛𝑛 𝑥𝑛 = 𝑐𝑛

Si despejamos las incógnitas 𝑥1 , 𝑥2 ,…, 𝑥𝑛 ;de cada ecuación se tiene:


𝑐 𝑎 𝑎 𝑎
𝑥1 =𝑎 1 − 𝑎12 𝑥2 − 𝑎13 𝑥3 − ⋯ − 𝑎1𝑛 𝑥𝑛
11 11 11 11

𝑐 𝑎 𝑎 𝑎
𝑥2 =𝑎 2 − 𝑎21 𝑥1 − 𝑎23 𝑥3 − ⋯ − 𝑎2𝑛 𝑥𝑛
22 22 22 22

𝑐 𝑎 𝑎 𝑎
𝑥3 =𝑎 3 − 𝑎31 𝑥1 − 𝑎13 𝑥2 − ⋯ − 𝑎1𝑛 𝑥𝑛
33 33 11 11

𝑐 𝑎 𝑎 𝑎𝑛𝑛−1
𝑥𝑛 =𝑎 𝑛 − 𝑎𝑛1 𝑥1 − 𝑎 𝑛2 𝑥3 − ⋯ − 𝑥𝑛−1
𝑛𝑛 𝑛𝑛 𝑛𝑛 𝑎𝑛𝑛

Para encontrar la solución, se necesita un vector inicial, generalmente un vector de


ceros.X=0

Hay que considerar un error permisible para cada incógnita.


Ejemplo: Resolver el sistema de ecuaciones lineales por el Método de Jacobi y emplear un
vector inicial X°=0

6𝑥1 − 𝑥2 − 𝑥3 + 4𝑥4 = 17……………..(1)

𝑥1 − 10𝑥2 + 2𝑥3 − 𝑥4 = −17……….(2)

3𝑥1 − 2𝑥2 + 8𝑥3 − 𝑥4 = 19……………..(3)

𝑥1 + 𝑥2 + 𝑥3 − 5𝑥4 = −14…………….…(4)

Despejando de 1,2,3 y 4 cada incógnita:


17 𝑥2 𝑥3 4𝑥4
.𝑥1 = + + −
6 6 6 6

17 𝑥 2𝑥3 𝑥
.𝑥2 = 10 + 101 + − 104
10

19 3𝑥1 2𝑥2 𝑥4
.𝑥3 = − + +
8 8 8 8

14 𝑥1 𝑥2 𝑥3
.𝑥4 = + + +
5 5 5 5

Primera iteración:

[X1=0 X 2=0 X3=0 X4=0], es=0.001

>>X1=2.833

>>X2=1.7

>>X3=2.375

>>X4=2.8

Segunda iteración:

X= [2.8333 1.7 2.375 2.8]

X1=17/6 +1.7/6+2.375/6-4*2.8/6=1.6458

X2=17/10+2.833/10+2*2.375/10-2.8/10=2.17833

X3=2.375-0.375*2.833+0.25*1.7+0.125*2.8=2.0875

X4=4.18
4.18 − 2.8
𝐸𝑎𝑥4 = | | ∗ 100 ≤ 𝐸𝑠
4.18
….>>>>>>>>>>>TERMINAR EL PROCESO EN EL INFORME.

El algoritmo computacional después de haber realizado el proceso de ejecución del ejemplo:

𝑘+1
𝑐1 𝑎12 𝑥2 𝑘 𝑎13 𝑥3 𝑘 𝑎1𝑛 𝑥𝑛 𝑘
𝑥1 = − − −
𝑎11 𝑎11 𝑎11 𝑎11

𝑘+1
𝑐2 𝑎21 𝑥1 𝑘 𝑎23 𝑥3 𝑘 𝑎2𝑛 𝑥𝑛 𝑘
𝑥2 = − − −
𝑎22 𝑎22 𝑎22 𝑎22

𝑐3 𝑎31 𝑥1 𝑘 𝑎32 𝑥2 𝑘 𝑎3𝑛 𝑥𝑛 𝑘


𝑥3 𝑘+1 = − − −
𝑎33 𝑎33 𝑎33 𝑎33

𝑛
𝑘+1
1
𝑥𝑖 = [𝑐 − ∑ 𝑎𝑖𝑗 𝑥 𝑘𝑗 ] ; 𝑗 ≠ 1
𝑎𝑖𝑖 𝑖
𝑗=1

METODO DE GAUS SEIDEl

(método de convergencia acelerada)

Este método trabaja de manera similar al de Jacobi ya que se realiza los mismos despejes de
las incógnitas en cada ecuación.

La diferencia con Jacobi, consiste en que el proceso iterativo, cada una de las
aproximaciones de cada variable que se calcule se sustituye inmediatamente en el cálculo de
la siguiente variable en una misma iteración. De esta forma la convergencia es más rápida.

Ejemplo: Resolver el problema anterior por Gaus Seidel:

Para un X°=0 y es=0.001

6𝑥1 − 𝑥2 − 𝑥3 + 4𝑥4 = 17……………..(1)

𝑥1 − 10𝑥2 + 2𝑥3 − 𝑥4 = −17……….(2)

3𝑥1 − 2𝑥2 + 8𝑥3 − 𝑥4 = 19……………..(3)

𝑥1 + 𝑥2 + 𝑥3 − 5𝑥4 = −14…………….…(4)
Primera iteración: [X1=0 X 2=0 X3=0 X4=0], es=0.001

17 0 0 0
.𝑥1 = + 6 + 6 − 6 = 2.8333
6

17 2.8333 0 0
.𝑥2 = 10 + + 10 − 10 = 1.983
10

19 3∗2.833 2∗1.983 0
.𝑥3 = − + + 8 = 1.8083
8 8 8

14 2.8333 1.983 1.8083


.𝑥4 = + + + = 4.1249
5 5 5 5

Segunda iteración: X1=[2.8333 1.983 1.8083 4.1249]

>>COMPLETAR EN EL INFORME

LA REPRESENTACION GENERAL ES:

𝑖−1 𝑛
1
𝑥𝑖 𝑘+1 = [𝑐 − ∑ 𝑎𝑖𝑗 𝑥 𝑘+1𝑗 − ∑ 𝑎𝑖𝑗 𝑥𝑗 𝑘 ] ; 𝑗 ≠ 1
𝑎𝑖𝑖 𝑖
𝑗=1 𝑗=𝑖+1

Tarea=

X1+6x2-x3-x4=6

X1-x2+8x3-4x4=7

5x1+x2-x3-x4=0

X1+x2+x3+6x4=30

Por jacobi,gaus seidel,es=0.001 y X°=0


INTERPOLACION NUMERICA:

Vamos a explicar las diversas formas para aproximar datos experimentales a polinomios de
interpolación.

Si en las tablas generadas de datos, los valores de las abscisas(x) se encuentran igualmente
espaciadas y la n-esima diferencia de las ordenadas es tan pequeña que puede ser cero.

Para alcanzar algún valor de n podemos utilizar diversos métodos de interpolación entre
ellas.

>>la fórmula de Newton-gregory:en diferencias progresivas o regresivas

>>la fórmula de Gauss , Stirling, Everet o Bessel en diferencia centrales

Los polinomios de Newton y Lagrange pueden ser empleados sin importar si las abscisas
están o no igualmente espaciadas.

Interpolación por medio de polinomios con diferencias divididas de newton

Interpolación lineal: De acuerdo a la figura conocemos los puntos (x0, fx0, x1, fx1), si
construimos una línea recta entre ellas podemos realizar:

𝐹𝑋1 − 𝐹𝑋0 𝐹𝑋 − 𝐹𝑋0


=
𝑋1 − 𝑋0 𝑋 − 𝑋0
Despejamos:
𝐹𝑋1−𝐹𝑋0
FX=FX0+ (𝑋 − 𝑋0)
𝑋1−𝑋0

Representa la fórmula de interpolación lineal donde fx es un polinomio de primer orden.


Integración Numérica:

Simpson 1/3:

En este método se usa un polinomio de interpolación de 2º grado, la cual se sustituye en la fórmula


de integración.
𝑏 𝑏
I=∫𝑎 𝑓(𝑥)𝑑𝑥 = ∫𝑎 𝑓(𝑥)2

El polinomio que se espera obtener; la obtendremos a partir de la interpolación de Lagrange.


𝑥2 (𝑥 − 𝑥1)(𝑥 − 𝑥2) (𝑥 − 𝑥0)(𝑥 − 𝑥2) (𝑥 − 𝑥0)(𝑥 − 𝑥1)
𝐼=∫ [ 𝑓(𝑥0) + 𝑓(𝑥1) + 𝑓(𝑥2)]
𝑥0 (𝑥0 − 𝑥1)(𝑥0 − 𝑥2) (𝑥1 − 𝑥0)(𝑥1 − 𝑥2) (𝑥2 − 𝑥0)(𝑥2 − 𝑥1)

Desarrollando la expresión y reordenando en forma conveniente:


𝐼= (𝑓(𝑥0) + 4(𝑥1) + 𝑓(𝑥2)) … … … … … . (1)
3
𝑏−𝑎
Donde>> h=
2

Esta ecuación se conoce como la regla de Simpson 1/3 y es la segunda integral cerrada de newton-
cotes.

Nota: La especificación 1/3 se origina de que h esta dividido en 3.

La regla de Simpson 1/3 se mejorar al incrementar el # de intervalos de un mismo tamaño.


𝑏−𝑎
h= 𝑛

Donde la integral total se puede escribir como:


𝑥2 𝑥4 𝑥6 𝑥𝑛
I=∫𝑥0 𝑓(𝑥)𝑑𝑥 + ∫𝑥2 𝑓(𝑥)𝑑𝑥 + ∫𝑥4 𝑓(𝑥)𝑑𝑥 + ⋯ … . + ∫𝑥 𝑓(𝑥)𝑑𝑥 … … … … … … … . . (2)
𝑛−2
Si se reemplaza en cada termino de la expresión (2) por la de la (1):

𝑛−1 1,2

𝐼 = [𝑓(𝑥0) + 4 ∑ 𝑓(𝑥𝑖) + 2 ∑ 𝑓(𝑥𝑖) + 𝑓(𝑥𝑛)]
3
𝑖=1,3,5 𝑗=2,4

Nota:Se debe utilizar un numero par de segmentos para implementar el método.(n es par)

>>Los puntos impares representan el termino medio en cada aplicación y por lo tanto llevan el
peso de 4 ,esto es para la regla de S 1/3.

>>Los puntos pares son comunes a las aplicaciones adyacentes y por lo tanto se cuenta 2 veces.

Ejemplo:
Diferenciación numérica
1.-Concepto:

Viene hacer una aproximación numérica para obtener el valor de la derivada de una función:𝑓(𝑥).

Se puede obtener a través de la serie de Taylor.



𝑓 (𝑛) (𝑎)
𝑓(𝑥) = ∑ (𝑥 − 𝑎)𝑛
𝑛!
𝑛=0

𝑓 ′ (𝑎) f ′′ (a) f ′′′ (a)


f(x) = 𝑓(𝑎) + (𝑥 − 𝑎) + (𝑥 − 𝑎)2 + (𝑥 − 𝑎)3 + ⋯ (2)
1! 2! 3!

2.-aproximacion a la primera derivada con diferencias hacia adelante.

Según la serie de Taylor

𝑓 ′ (𝑥𝑖 ) f ′′ (𝑥𝑖 ) f n (𝑥𝑖 )


f(x𝑖+1 ) = 𝑓(𝑥𝑖 ) + (𝑥𝑖+1 − 𝑥𝑖 ) + (𝑥𝑖+1 − 𝑥𝑖 )2 + ⋯ + (𝑥𝑖+1 − 𝑥𝑖 )𝑛 + 𝑅𝑛 … (3)
1! 2! 𝑛!

si truncamos la serie después del primer término de la primera derivada.

𝑓(𝑥𝑖+1 ) = 𝑓(𝑥𝑖 ) + 𝑓′(𝑥𝑖 )(𝑥𝑖+1 − 𝑥𝑖 ) despejando 𝑓′(𝑥𝑖 )

𝑓(𝑥𝑖+1 ) − 𝑓(𝑥𝑖 ) 𝑅1
𝑓 ′ (𝑥𝑖 ) = −
𝑥𝑖+1 − 𝑥𝑖 (𝑥𝑖+1 − 𝑥𝑖 )

𝑑𝑓(𝑥) 𝑓(𝑥𝑖+1 ) − 𝑓(𝑥𝑖 )



𝑑𝑥 𝑥𝑖+1 − 𝑥𝑖
𝑓(𝑥𝑖+1 )−𝑓(𝑥𝑖 )
𝑓 ′ (𝑥𝑖 ) = 𝑥𝑖+1 −𝑥𝑖
− 0(𝑥𝑖+1 − 𝑥𝑖 )

𝑓(𝑥𝑖+1 )−𝑓(𝑥𝑖 )
𝑓 ′ (𝑥𝑖 ) = 𝑥𝑖+1 −𝑥𝑖
− 0(ℎ) …… (4)

La ecuación (4) se le conoce como aproximación de diferencia divida hacia adelante .

Nota-. Es posible desarrollar aproximaciones mas exactas de la primera derivada incluyendo


términos de orden más altos en la serie de Taylor.

Aproximación a la primera derivada con diferencias hacia atrás

𝑓 ′ (𝑥𝑖 ) f ′′ (𝑥𝑖 )
f(x𝑖−1 ) = 𝑓(𝑥𝑖 ) − (𝑥𝑖 − 𝑥𝑖−1 ) + (𝑥𝑖 − 𝑥𝑖−1 )2 + ⋯
1! 2!

truncando la serie después de la primera derivada.

𝑓(𝑥𝑖 )−𝑓(𝑥𝑖−1 )
𝑓 ′ (𝑥𝑖 ) = 𝑥𝑖 −𝑥𝑖−1
− 0(ℎ) ……(4)
Aproximación a la primera derivada con diferencia centradas.

Para obtener con la serie de Taylor .

𝑓′ (𝑥𝑖 ) f′′ (𝑥𝑖 )


Hacia adelante: f(x𝑖+1 ) = 𝑓(𝑥𝑖 ) + 1!
(𝑥𝑖+1 − 𝑥𝑖 ) + 2!
(𝑥𝑖+1 − 𝑥𝑖 )2 + ⋯ (a)

𝑓′ (𝑥𝑖 ) f′′ (𝑥𝑖 )


Hacia atrás : f(x𝑖−1 ) = 𝑓(𝑥𝑖 ) − 1!
(𝑥𝑖 − 𝑥𝑖−1 ) + 2!
(𝑥𝑖 − 𝑥𝑖−1 )2 + ⋯ (b)

Vamos a restar a-b

2𝑓′′′ (𝑥𝑖 ).∆𝑥 3


𝑓(𝑥𝑖+1 ) − 𝑓(𝑥𝑖−1 ) = 2𝑓 ′ (𝑥𝑖 )(∆𝑥) + 3!
+ ⋯ 𝑓(𝑥𝑖+1 ) = 𝑓(𝑥𝑖 ) + 𝑓′(𝑥𝑖 )(𝑥𝑖+1 − 𝑥𝑖 )

𝑓(𝑥𝑖+1 ) − 𝑓(𝑥𝑖−1 ) 2 ′′ ∆𝑥 3
𝑓 ′ (𝑥𝑖 ) = + 𝑓 (𝑥𝑖 ) +⋯
2∆𝑥 6 ∆𝑥
𝑓(𝑥𝑖+1 ) − 𝑓(𝑥𝑖−1 )
𝑓 ′ (𝑥𝑖 ) = + 0(∆𝑥 2 )
2∆𝑥
𝑓(𝑥𝑖+1 ) − 𝑓(𝑥𝑖−1 )
𝑓 ′ (𝑥𝑖 ) = + 0(ℎ2 )
2∆𝑥

Ejemplo 1 aproximar por diferencias divididas

a)hacia adelante

b)hacia atrás

c)cuadrática para la función :𝑓(𝑥) = 2𝑒 1.5𝑥 donde h=∆𝑥 = 0.1 x=3

encontrar los errores

solución . encontramos el valor real

𝑓 ′ (𝑥) = 2(1.5)𝑒 1.5𝑥 = 3𝑒 1.5∗3 = 270.0513939

Para diferencia hacia adelante

𝑓(𝑥𝑖 ) − 𝑓(𝑥𝑖−1 ) 𝑓(3 + 0.1) − 𝑓(3) 𝑓(3.1) − 𝑓(3)


𝑓 ′ (𝑥𝑖 ) = → 𝑓 ′ (3) = =
𝑥𝑖 − 𝑥𝑖−1 0.1 0.1

2𝑒 (1.5)(3.1) − 2𝑒 1.5(3)
𝑓 ′ (3) = = 291.3570855
0.1
270.0513939 − 291.3570855
𝐸𝑘 = | | ∗ 100 = 7.88%
270.0513939

Solución la diferencia hacia atrás

𝑓(3) − 𝑓(3 − 0.1) 𝑓(3) − 𝑓(2.9)


𝑓 ′ (3) = =
0.1 0.1
2𝑒 (1.5∗3) − 2𝑒 1.5∗2.9
𝑓 ′ (3) = = 250.7738675
0.1

𝐸𝑘 = 7.13%

Centrada

𝑓(𝑥𝑖+1 ) − 𝑓(𝑥𝑖−1 )
𝑓 ′ (𝑥𝑖 ) =
2∆𝑥
𝑓(3 + 0.1) − 𝑓(3 − 0.1) 𝑓(3.1) − 𝑓(2.9)
𝑓 ′ (3) = =
2(0.1) 0.2

2𝑒 (1.5∗3.1) − 2𝑒 (1.5∗2.9)
𝑓 ′ (3) = = 271.0652 268
2(0.1)

𝐸𝑘 =0.375%
Formula de diferencias divididas finitas hacia delante

Primera derivada:

𝑓(𝑥𝑖+1 ) − 𝑓(𝑥𝑖 )
𝑓 ′ (𝑥𝑖 ) =

−𝑓(𝑥𝑖+2 ) + 4𝑓(𝑥𝑖+1 ) − 3𝑓(𝑥𝑖 )
𝑓 ′ (𝑥𝑖 ) =
2ℎ

Segunda derivada:

𝑓(𝑥𝑖+2 ) − 2𝑓(𝑥𝑖+1 ) + 𝑓(𝑥𝑖 )


𝑓 ′ ′(𝑥𝑖 ) =
ℎ2

−𝑓(𝑥𝑖+3 ) + 4𝑓(𝑥𝑖+2 ) − 5𝑓(𝑥𝑖+1 ) + 2𝑓(𝑥𝑖 )


𝑓 ′ ′(𝑥𝑖 ) =
ℎ2

Tercera derivada:

𝑓(𝑥𝑖+3 ) − 3𝑓(𝑥𝑖+2 ) + 3𝑓(𝑥𝑖+1 ) − 𝑓(𝑥𝑖 )


𝑓 ′ ′′(𝑥𝑖 ) =
ℎ3

𝑓(𝑥𝑖+4 ) − 4𝑓(𝑥𝑖+3 ) + 6𝑓(𝑥𝑖+2 ) − 4𝑓(𝑥𝑖+1 ) + 𝑓(𝑥𝑖 )


𝑓 ′ ′′(𝑥𝑖 ) =
ℎ4

Cuarta derivada:

𝑓(𝑥𝑖+4 ) − 4𝑓(𝑥𝑖+3 ) + 6𝑓(𝑥𝑖+2 ) − 4𝑓(𝑥𝑖+1 ) + 𝑓(𝑥𝑖 )


𝑓 ′ ′′′(𝑥𝑖 ) =
ℎ4

−2𝑓(𝑥𝑖+5 ) + 11𝑓(𝑥𝑖+4 ) − 24𝑓(𝑥𝑖+3 ) + 26𝑓(𝑥𝑖+2 ) − 14𝑓(𝑥𝑖+1 ) + 3𝑓(𝑥𝑖 )


𝑓 ′ ′′′(𝑥𝑖 ) =
ℎ4
Formula de diferencias divididas hacia atrás:

Primera derivada:

𝑓(𝑥𝑖 ) − 𝑓(𝑥𝑖−1 )
𝑓 ′ (𝑥𝑖 ) =

𝑓(𝑥𝑖+2 ) − 4𝑓(𝑥𝑖+1 ) + 3𝑓(𝑥𝑖 )
𝑓 ′ (𝑥𝑖 ) =
2ℎ

Segunda derivada:

𝑓(𝑥𝑖+2 ) − 2𝑓(𝑥𝑖−1 ) + 𝑓(𝑥𝑖 )


𝑓 ′ ′(𝑥𝑖 ) =
ℎ2

−𝑓(𝑥𝑖−3 ) + 4𝑓(𝑥𝑖−2 ) − 5𝑓(𝑥𝑖−1 ) + 2𝑓(𝑥𝑖 )


𝑓 ′ ′(𝑥𝑖 ) =
ℎ2

>>modificar el programa anterior para evaluar las segundas derivadas de los 3 casos

Diferencia centrada:

Primera derivada:

𝑓(𝑥𝑖+1 ) − 𝑓(𝑥𝑖−1 )
𝑓 ′ (𝑥𝑖 ) =
2ℎ
−𝑓(𝑥𝑖+2 ) + 8𝑓(𝑥𝑖+1 ) − 8𝑓(𝑥𝑖−1 ) + 𝑓(𝑥𝑖+2 )
𝑓 ′ (𝑥𝑖 ) =
12ℎ

Segunda derivada:

𝑓(𝑥𝑖+1 ) − 2𝑓(𝑥𝑖 ) − 𝑓(𝑥𝑖−1 )


𝑓 ′ ′(𝑥𝑖 ) =
ℎ2

−𝑓(𝑥𝑖+2 ) + 16𝑓(𝑥𝑖+1 ) − 30𝑓(𝑥𝑖 ) + 16𝑓(𝑥𝑖−1 ) − 𝑓(𝑥𝑖−2 )


𝑓 ′ ′(𝑥𝑖 ) =
12ℎ2

Вам также может понравиться