laboratorio 5 metodos
DESCRIPTION
Metodos Numericos- Derivación e integracion numericaTRANSCRIPT
UNIVERSIDAD NACIONAL DE COLOMBIA
FACULTAD DE INGENIERÍA
DEPARTAMENTO DE INGENIERÍA DE SISTEMAS E INDUSTRIAL
MÉTODOS NUMÉRICOS
MÓDULO 5
DERIVACIÓN E INTEGRACIÓN NÚMERICA
1. INTRODUCCIÓN
El cálculo es una herramienta importante de la ingeniería, y es habitual implementarlo en
situaciones que afectan nuestra profesión como por ejemplo al tratar de manera continua
con sistemas y procesos que cambian.
En el concepto de las matemáticas, la derivación sirve como un principal vehículo para la
diferenciación, representa la razón de cambio de una variable dependiente con respecto a
una variable independiente. Las fórmulas de derivación numérica son importantes en el
desarrollo de algoritmos para resolver problemas de contorno de ecuaciones diferenciales
ordinarias y ecuaciones en derivadas parciales. El uso de funciones conocidas como
ejemplo de aplicación en las técnicas de derivación numérica permite comparar la
aproximación numérica con la respuesta exacta.
La integración numérica es una herramienta esencial implementada en la ciencia y la
ingeniería para obtener valores aproximados de integrales definidas que no pueden
calcularse analíticamente. A diferencia de la derivación, la integración es su operación
inversa y busca juntar partes de un todo.
2. OBJETIVOS
Conocer los métodos estándares de diferenciación e integración numérica,
aplicarlos usando su implementación en Scilab.
Lograr que el estudiante desarrolle cierta capacidad para analizar y escoger, de
entre los métodos disponibles para resolver problemas, cual es el más eficiente.
Ofrecer al estudiante ejemplos de aplicación que ilustren de una manera simple la
forma como funcionan los algoritmos que se estudian en el curso.
Comprender como se desarrolla el programa Scilab a través de los códigos creados
para obtener una respuesta óptima.
Vincular la actividad teórica con la práctica para generar un conocimiento integral
que pueda ser implementado como una herramienta en la solución de problemas
que estén vinculados a la ingeniería.
3. MARCO TEÓRICO
DERICACION NUMERICA:
La derivación numérica es una técnica de análisis numérico para calcular una
aproximación a la derivada de una función en un punto utilizando los valores y propiedades
de la misma. En este tema el objetivo principal es aproximar las derivadas de orden
arbitrario 𝑣 en un punto cualquier 𝛼 de una función 𝑓 de la cual solo conocemos sus valores
en los (𝑛 + 1) nodos distintos 𝑥0 , 𝑥1, … , 𝑥𝑛.
Para ello se pueden implementar diferentes métodos:
-El límite del cociente incremental, donde se busca aproximar numéricamente la derivada
de 𝒇(𝒙)
𝑓´(𝑥) = limℎ→0
𝑓(𝑥 + ℎ) − 𝑓(𝑥)
ℎ
-Formula de diferencias centradas, las cuales son fórmulas de aproximación a 𝑓´(𝑥) que
requieren que la función e pueda evaluar en abscisas situadas simétricamente a ambos
lados del punto 𝑥0 (donde se desea hallar la derivada).
Para ellos se implementan las siguientes fórmulas
Si se quiere obtener un error menor se implementan las formulas:
-
-Formula de diferencias progresivas y regresivas, S solo se puede evaluar la función
en abscisas a un lado de 𝑥0, entonces las fórmulas de diferencias centradas no pueden
usarse. Las fórmulas que utilizan abscisas equiespaciadas que están todas a la derecha
(o izquierda) de 𝑥0 se llaman fórmulas de diferencias progresivas (o regresivas), las
cuales pueden deducirse derivando el polinomio integrador de Lagrange.
-Derivada del polinomio interpolador de Newton, la relación que existe entre las fórmulas
de orden 𝑂(ℎ2) para aproxima𝑓´(𝑥) y un algoritmo general que permite calcular las
derivadas numéricamente.
Y al sustituir estos valores la derivada del polinomio de Newton se tiene:
INTEGRACIÓN NÚMERICA:
La integración numérica constituye una amplia gama de algoritmos para calcular el valor
numérico de una integral definida y, por extensión, el término se usa a veces para describir
algoritmos numéricos para resolver ecuaciones diferenciales. El término cuadratura
numérica (a menudo abreviado a cuadratura) es más o menos sinónimo de integración
numérica, especialmente si se aplica a integrales de una dimensión a pesar de que para el
caso de dos o más dimensiones (integral múltiple) también se utilizan. El objetivo es
aproximar la integral definida de una función 𝑓(𝑥) en un intervalo [𝑎, 𝑏] evaluando 𝑓(𝑥)en
un número finito de puntos.
Para ello se implementan las fórmulas de cuadratura cerradas de Newton-Cotes:
Para las cuales se implementa un h de la siguiente manera:
Regla del trapecio 𝒉 = 𝒃 − 𝒂
Regla de Simpson 𝒉 = (𝒃 − 𝒂) /2
Regla de Simpson 3/8 trapecio 𝒉 = (𝒃 − 𝒂)/𝟑
Regla de Boole trapecio 𝒉 = (𝒃 − 𝒂)/𝟒
4. RESULTADOS
Punto 1:
Resolver a través de Scilab el problema propuesto identificando las siguientes
funciones, a saber:
a) Función SCILAB que tiene el método numérico a utilizar
b) Función SCILAB que tiene la función a investigas
c) Modulo principal SCILAB que tiene los datos de entrada y que ejecuta el método
numérico con la función a investigar
Codigo:
- Función SCILAB que tiene el método numérico a utilizar:
clc
disp(" ** Laboratorio Cinco - Grupo 04 ** ") // Según sea el caso
disp("Codigos: 2879824 215559 215548") // En concordancia con los participantes
ww=getdate();
mprintf( "AA:%d ,MM:%d ,DD:%d a las HH:%d ,MM:%d ,SS:%d
",ww(1),ww(2),ww(6),ww(7),ww(8),ww(9));
X=[5 6 7 8 9 10];
a=metodo()
- Función SCILAB que tiene la función a investigas
function B=metodo()
B=0.5*(f(X(1))+2*f(X(2))+2*f(X(3))+2*f(X(4))+2*f(X(5))+f(X(6))) endfunction
- Modulo principal SCILAB que tiene los datos de entrada y que ejecuta el método
numérico con la función a investigar
function [A]=f(X) A=10.0./(X.*sqrt(X))
endfunction
Punto 2:
Realizar en SCILAB un solo programa principal que efectúe los cálculos de la primera
derivada de tan(x) en x = 1 utilizando las cinco aproximaciones que aparecen a
continuación (las ecuaciones (1), (2) y (3) y las ecuaciones (A) y (B)), utilizando h=0.1, 0.05
y 0.02. El programa también debe evaluar el error relativo verdadero de cada aproximación.
-Código:
clc disp( disp(" ** Laboratorio Cinco - Grupo 04 ** ") // Según sea el caso disp("Codigos: 2879824 215559 215548") // En concordancia con los participantes ww=getdate(); mprintf( "AA:%d ,MM:%d ,DD:%d a las HH:%d ,MM:%d ,SS:%d ",ww(1),ww(2),ww(6),ww(7),ww(8),ww(9));
function y=f(x) y=tan(x); endfunction x=1; valor_real=derivative(f,x) valor_real1=2*tan(1)*(sec(1))^2; A=zeros(15,4);
A(1:3:15,2)=0.1; A(2:3:15,2)=0.05;
A(3:3:15,2)=0.02; for i=1:3 A(i,1)=1;
A(i,3)=(f(x)-f(x-A(i,2)))/A(i,2); A(i,4)=abs(A(i,3)-valor_real)*100/valor_real; end for i=4:6 A(i,1)=2; A(i,3)=(f(x+A(i,2))-f(x))/A(i,2); A(i,4)=abs(A(i,3)-valor_real)*100/valor_real; end
for i=7:9 A(i,1)=3; A(i,3)=(f(x+A(i,2))-f(x-A(i,2)))/(2*A(i,2)); A(i,4)=abs(A(i,3)-valor_real)*100/valor_real; end for i=10:12 A(i,1)=4; A(i,3)=(3*f(x)-4*f(x-A(i,2))+f(x-(2*A(i,2))))/(2*A(i,2));
A(i,4)=abs(A(i,3)-valor_real)*100/valor_real; end for i=13:15 A(i,1)=5; A(i,3)=(f(x)-2*f(x-A(i,2))+f(x-(2*A(i,2))))/(A(i,2))^2; A(i,4)=abs(A(i,3)-valor_real)*100/valor_real; end disp('EcuaN°/Valor de h/Valor aprox/Error Relativo %') disp (A)
4. ANALISIS DE RESULTADOS
1 Punto:
Dada la explicación analítica del problema propuesto:
Comparando con la respuesta proporcionada por el programa t= 2.6380027 seg, el valor
se aproxima mucho al obtenido en la demostración realizada.
2 Punto:
Derivando la función 𝑓(𝑥) = tan 𝑥 obtenemos que su derivada es 𝑓´(𝑥) = sec2 𝑥
Y para cada h postulada: 0.1, 0.05 y 0.02 se reemplaza en las ecuaciones sugeridas
(1) h
fff 10
0'
(2)h
fff 01
0'
(3)h
fff
2' 110
(A) h
ffff
2
43'' 2100
(B) 2
2100
2''
h
ffff
Las cuales nos brindara una aproximación cercana a la derivada de la función, para este
caso remplazada en x=1, en la cual tenemos que el valor de 𝑓´(𝑥) = sec2 𝑥 evaluada en x=1
tenemos
𝑓´(1) = sec2 1 = 3.425518821
Analizando los valores encontrados para cada ecuación reemplazado para el h especificado
se puede afirmar que implementando la ecuación N° 3 se tienen valores más cercanos al
valor verdadero, específicamente con un h = 0.02 dado que el valor aproximado obtenido
es de 3.4293037 con un Error relativo verdadero 0.1104893 %.
La ecuación que más se aleja del valor real de la derivada de la función es la N°5 en el
programa y en las ecuaciones numerada como (B) dado que el valor más lejano calculado
en el programa es de 9.6217086 que genera un error relativo verdadero de 180.88325 %
5. CONCLUSIONES
El método de derivación numérica implementado en el primer punto nos permite
obtener un aproximación optima de acuerdo a los valores de las abscisas y
ordenadas para el experimento realizado, siendo fácil de calcular de manera
analítica a que no conlleva mucho tiempo en remplazar y organizar valores y
además se hace incluso más práctico en el programa de Scilab el cual genera un
valor muy confiable y cercano al calculado analíticamente
En el punto 2 nos permite hallar la derivada de funciones sin necesidad de calcular
la derivada, lo cual facilita en muchos casos cuando la derivada es difícil de
encontrar, permitiendo que a través de diferentes ecuaciones se pueda acercar de
manera muy confiable al valor verdadero en este caso de la función 𝑓(𝑥) = tan 𝑥
De las ecuaciones implementadas en el punto 2 la que mejor se acerca al valor
verdadero de la derivada de la función 𝑓(𝑥) = tan 𝑥 es la identificada con el N° 3
debido a que el valor del error relativo verdadero es de 0.1104893 %.
La ecuación que se aleja mucho del valor verdadero de la función se encuentra
registrada como (B) dado que su valor aproximado genere un error relativo
verdadero de 180.88325 %, lo cual no sería factible a la hora de implementarla en
otros cálculos