SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
Pr 1 – Derivación e Integración Numérica

     Función para aproximación de integrales mediante la
regla del trapecio
       En esta parte de la práctica se confeccionará el código de programación para
la obtención de la integral aproximada de una función empleando para ello el
método del trapecio. La declaración de la función se ha realizado introduciendo
como argumentos la función objetivo fx (recordar que se introduce entrecomillado
como un vector de caracteres), el paso h y los extremos del intervalo de integración
a y b. Además, la salida de la función es el valor de la integral aproximada
declarada con el nombre integral_trapecio.

      Para evitar que el usuario introduzca un valor del paso h incorrecto, se han
preparado unas líneas de código con la intención de impedir que el código se ejecute
para un valor erróneo de paso h. Para ello se emplea la función rem y abs, de modo
que obtengamos el resto de la división entre la diferencia positiva entre los
extremos y el paso. Por lo tanto, si se introdujera un valor de h incorrecto, el
programa quedaría “encerrado” en un bucle de repetición a la espera de que el
usuario acertara con un valor correcto de h.

       El cuerpo del programa queda claramente dividido en dos partes, la
obtención de los valores extremos del método y la de los valores centrales. Para la
obtención de los valores extremos empleamos valor=subs(fx,'x',a) y
valor=subs(fx,'x',b). En cambio, para obtener el valor de las áreas interiores
empleamos un bucle donde se “machaca” el valor de la suma de las áreas con el
suyo propio más la nueva área añadida.

      Al final, se obtiene el valor del resultado multiplicando por h/2.



function integral_trapecio=mitrapecio(fx,h,a,b)

% Comprobación de que el valor de h debe ser un divisor exacto de|b-a|

while rem(abs(b-a),h)~=0
h=input('Nos has introducido un paso válido. Inténtalo de nuevo:');
end

%Calculamos los términos de la integral

valor=subs(fx,'x',a);
for i=a+h:h:b-h
valor=valor+2*subs(fx,'x',i);
end

valor=valor+subs(fx,'x',b);
integral_trapecio=valor*h/2;

return




      Jaime Martínez Verdú                                                 Página 1
Pr 1 – Derivación e Integración Numérica

     Función para aproximación de integrales mediante la
regla del Simpson
       En esta ocasión se confeccionará el código de programación para la
obtención de la integral aproximada de una función empleando para ello la regla de
Simpson. La declaración de la función se ha realizado introduciendo como
argumentos la función fx, el paso h y los extremos del intervalo de integración a y
b. Además, la salida de la función es integral_simpson.

       Para evitar que el usuario introduzca un paso incorrecto se ha preparado
unas líneas de código con la intención de impedir que el código se ejecute para un
valor erróneo de paso h. El planteamiento es semejante al del caso anterior.

       El cuerpo del programa queda claramente dividido en dos partes, la
obtención de los valores extremos del método y la de los valores centrales. Para la
obtención de los valores extremos empleamos valor=subs(fx,'x',a) y
valor=subs(fx,'x',b). En cambio, para obtener el valor de las áreas interiores
empleamos un bucle donde se “machaca” el valor de la suma de las áreas con el
suyo propio más la nueva área añadida.

       En esta ocasión el código tiene una curiosidad puesto que los términos
interiores van alternándose. Para contemplar este caso en el código es necesario
realizar una comprobación para averiguar si el contador es par o impar. Si el valor
del contador es divisible por dos, entonces estamos en un elemento interior de la
forma f1, f3, f5,… por lo que es necesario multiplicarlo por 4. En caso contrario se
multiplica por 2. Al final, se obtiene el valor del resultado multiplicando por h/3.

function integral_simpson=misimpson(fx,h,a,b)

% Comprobación de que el valor de h debe ser un divisor exacto de |b-
a|

while rem(abs(b-a),h)~=0
    h=input('No has introducido un paso válido. Inténtalo de nuevo:');
end

%Calculamos los términos de la integral

valor=subs(fx,'x',a);
j=2;
for i=a+h:h:b-h
     if(rem(j,2)==0)
          valor=valor+4*subs(fx,'x',i);
     else
          valor=valor+2*subs(fx,'x',i);
     end
     j=j+1;
end

valor=valor+subs(fx,'x',b);
integral_simpson=valor*h/3;
return



      Jaime Martínez Verdú                                                 Página 2
Pr 1 – Derivación e Integración Numérica

    Función para aproximación de integrales mediante el
método de Romberg
        En esta práctica se confeccionará el código de programación para la
obtención de la integral aproximada de una función empleando para ello el método
de Romberg. La declaración de la función se ha realizado introduciendo como
argumentos la función fx, el paso h y los extremos del intervalo de integración a y b
y el valor del k-ésimo. Además, la salida de la función es integral_simpson.

       Debe comentarse un aspecto. El valor de h introducido será el valor de
(2^(k-1))*h por lo que es un aspecto a tenerse en cuenta.

       Para evitar que el usuario introduzca un paso incorrecto se ha preparado
unas líneas de código con la intención de impedir que el código se ejecute para un
valor erróneo de paso h. Para ello se emplea la función rem y abs, de modo que
obtengamos el resto de la división entre la diferencia positiva entre los extremos y
el paso.

      A continuación, se machaca el valor de (2^(k-1))*h a h para empezar por el
primer elemento de la aproximación. A continuación, inicializamos el valor de la
matriz donde se colocarán los valores procedentes del algoritmo.

        El cuerpo del programa queda claramente dividido en tres partes, la
obtención de los valores de la primera columna del algoritmo, el resto de valores y
el volteo de la matriz para que visualmente se represente como el método.

      En       la      primera   parte del    código      se      emplea
R(i,1)=mitrapecio(fx,h*2^(i-1),a,b) para calcular los primeros elementos
empleando la regla del trapecio.

       En la segunda parte del código se calculan el resto de “casillas” de modo que,
aplicando     R(i,j)=(4^(j-1)*R(i,j-1)-R(i+1,j-1))/(4^(j-1)-1)                     se
consigue calcular el resto de códigos. Véase que se trata de la fórmula de la página
21 donde el término k de la fórmula se ha implementado empleando j-1, R(i,j-1)
hace referencia al término de la fórmula k-1-ésimo para paso h y el término
R(i+1,j-1) hace referencia al k-1-ésimo para paso 2h.

       Finalmente, se procede a invertir la matriz para que se asemeje a la matriz
estudiada en teoría.




       Jaime Martínez Verdú                                                 Página 3
Pr 1 – Derivación e Integración Numérica


function integral_romberg=miromberg(fx,h,a,b,k)

while rem(abs(b-a),h)~=0
     h=input('No has introducido un paso válido. Inténtalo de nuevo:');
end
h=h/2^(k-1);
%Calculamos los términos de la integral
R=zeros(k,k);
i=1;
while (i<=k)
     R(i,1)=mitrapecio(fx,h*2^(i-1),a,b);
     i=i+1;
end
i=1;
j=2;
while(j<=k)
     while(i<=k-j+1)
          R(i,j)=(4^(j-1)*R(i,j-1)-R(i+1,j-1))/(4^(j-1)-1);
          i=i+1;
     end
     i=1;
     j=j+1;
end
i=1;
T=zeros(k,k);
while(i<=k)
     T(i,:)=R(1+k-i,:);
     i=i+1;
end
T
integral_romberg=T(k,k);
return




     Jaime Martínez Verdú                                       Página 4
Pr 1 – Derivación e Integración Numérica

    Función para aproximación de integrales mediante el
método de Richardson
      El programa para implementar informáticamente el método de Richardson
para obtener la segunda derivada de una función dada en un punto usando
esquemas hacia delante de orden O(h4) es el siguiente

function integral_richardson=mirichardson(fx,h,a,o)

if (nargin~=4)
     disp('Se ha confundido. Esta función tiene 4 parámetros.')
    fx=input('Introduzca fx: ');
    h=input('Introduzca el paso h: ');
    a=input('Introduzca el punto donde quiere conocer la derivada: ');
    o=input('Introduzca el orden: ');
end

k=(o-2)/2;
%Calculamos los términos de la integral
R=zeros(k,k);
i=1;
while (i<=k)
     R(i,1)=(subs(fx,a+2*h*2^(i-1))-2*subs(fx,a+h*2^(i-
1))+subs(fx,a))/(h*2^(i-1))^2;
     i=i+1;
end
i=1;
j=2;
while(j<=k)
     while(i<=k-j+1)
          R(i,j)=(4^(j-1)*R(i,j-1)-R(i+1,j-1))/(4^(j-1)-1);
          i=i+1;
     end
     i=1;
     j=j+1;
end
i=1;
T=zeros(k,k);
while(i<=k)
     T(i,:)=R(1+k-i,:);
     i=i+1;
end
T
integral_richardson=T(k,k);
return
       En la primera parte del programa se procede a comprobar que se han
indicado cuatro variables. Primeramente, emplearemos una línea de código para
calcular el valor de k en función del orden deseado (según apuntes de teoría). Se
crea posteriormente una matriz donde se almacenarán todos los valores deseados.
Una vez creada la matriz, se emplea un bucle para generar los valores de la
primera columna empleando la expresión para las diferencias hacia delante:

R(i,1)=(subs(fx,a+2*h*2^(i-1))-2*subs(fx,a+h*2^(i-1))+subs(fx,a))/(h*2^(i-1))^2;

       Posteriormente se emplea la misma línea de código que en el método de
Romberg puesto que el algoritmo es el mismo. Finalmente se voltea la matriz y se
obtiene la integral de Richardson.

      Jaime Martínez Verdú                                              Página 5
Pr 1 – Derivación e Integración Numérica

      El programa anterior podemos modificarlo del siguiente modo:

function [secdevRich,T]=mirichardsonimp(fx,h,a,o,e)
if (nargin~=5)
     disp('Se ha confundico. Esta función tiene 4 parámetros.')
    fx=input('Introduzca fx: ');
    h=input('Introduzca el paso h: ');
    a=input('Introduzca el punto donde quiere conocer la derivada: ');
    o=input('Introduzca el orden: ');
    e=input('Introduzca el error deseado: ');
end
k=(o-2)/2;
%Calculamos los términos de la integral
R=zeros(k,k);
i=1;
while (i<=k)
     R(i,1)=(subs(fx,a+2*h*2^(i-1))-2*subs(fx,a+h*2^(i-
1))+subs(fx,a))/(h*2^(i-1))^2;
     if (abs(subs(diff(fx,'x',2),a)-R(i,1))<e)
          secdevRich=R(i,1);
           break
     end
     i=i+1;
end
if i==k+1;
     i=1;
     j=2;
     while(j<=k)
          while(i<=k-j+1)
               R(i,j)=(4^(j-1)*R(i,j-1)-R(i+1,j-1))/(4^(j-1)-1);
               if abs(subs(diff(fx,'x',2),a)-R(i,j))<e
                   secdevRich=R(i,j);
                   break
               end
               i=i+1;
          end
          if abs(subs(diff(fx,'x',2),a)-R(i,j))<e
               secdevRich=R(i,j);
               break
          end
          i=1;
          j=j+1;
     end
i=1;
T=zeros(k,k);
while(i<=k)
     T(i,:)=R(1+k-i,:);
     i=i+1;
end
T
end
return
       Este código incluye una variación respecto al anterior puesto que ahora se
introduce como dato también el error deseado. Por tanto, el programa calculará
términos hasta que encuentre el valor cuyo error sea inferior al deseado. Una vez
comentados todos los programas sólo queda comentar que ante alguna duda
respecto de la resolución o cualquier corrección por favor comunícamelo.
Finalmente, Mavi me gustaría agradecerte tu ayuda en las prácticas y la gran
labor realizada.

      Jaime Martínez Verdú                                              Página 6
Pr 1 – Derivación e Integración Numérica

     Bibliografía
1. Burden, Richard L., "Análisis numérico", México International Thomson
   Editores op.1998
2. Mathews, John H., "Métodos numéricos con MATLAB", Madrid [etc.] Prentice
   Hall 1999
3. Chapra, Steven C., "Métodos numéricos para ingenieros", México [etc.]
   McGraw-Hill cop. 1999
4. Kincaid, David, "Análisis numérico las matemáticas del cálculo científico",
   Buenos Aires [etc.] Addison-Wesley Iberoamericana cop.1994
5. Amigó García, José María, "Métodos numéricos", [Alicante] Universidad
   Miguel Hernández D.L. 2002
6. Nakamura, Shoichiro, "Análisis numérico y visualización gráfica con
   MATLAB", Naucalpan de Juárez (México) Prentice-Hall Hispanoamericana
   cop. 1997




     Jaime Martínez Verdú                                            Página 7
Pr 1 – Derivación e Integración Numérica

          Tabla de contenidos
Función para aproximación de integrales mediante la regla del trapecio ................. 1
Función para aproximación de integrales mediante la regla del Simpson ................ 2
Función para aproximación de integrales mediante el método de Romberg ............. 3
Función para aproximación de integrales mediante el método de Richardson ......... 5
Bibliografía .................................................................................................................. 7
Tabla de contenidos ..................................................................................................... 8
Tabla de software ........................................................................................................ 8




          Tabla de software
integral_trapecio=mitrapecio ...................................................................................... 1
integral_simpson=misimpson ..................................................................................... 2
integral_romberg=miromberg ..................................................................................... 4
integral_richardson=mirichardson ............................................................................. 5
[secdevRich,T]=mirichardsonimp ............................................................................... 6




          Jaime Martínez Verdú                                                                                     Página 8

Más contenido relacionado

La actualidad más candente

Integrales inmediatas
Integrales inmediatasIntegrales inmediatas
Integrales inmediatasYuriko Lam
 
Definicion de antiderivadas victor
Definicion de antiderivadas victorDefinicion de antiderivadas victor
Definicion de antiderivadas victorVICTORMSABE
 
Presentacion de antiderivadas
Presentacion de antiderivadasPresentacion de antiderivadas
Presentacion de antiderivadaslaura narro
 
Aplicacion de las derivadas
Aplicacion de las derivadas Aplicacion de las derivadas
Aplicacion de las derivadas Daniela Amaro
 
Cálculo Integral
Cálculo IntegralCálculo Integral
Cálculo IntegralMarioyFrida
 
Relacion entre derivada e integral
Relacion entre derivada e integralRelacion entre derivada e integral
Relacion entre derivada e integralpacomtzye
 
Derivadas y su interpretacion
Derivadas y su interpretacionDerivadas y su interpretacion
Derivadas y su interpretacionCristian Sanchez
 
Aplicaciones de la derivada-UNIDAD 5 CALCULO DIFERENCIAL
Aplicaciones de la derivada-UNIDAD 5 CALCULO DIFERENCIALAplicaciones de la derivada-UNIDAD 5 CALCULO DIFERENCIAL
Aplicaciones de la derivada-UNIDAD 5 CALCULO DIFERENCIALeleazarbautista35
 
Concepto de integral indefinida
Concepto de integral indefinida Concepto de integral indefinida
Concepto de integral indefinida Jose R Padrón
 
Maximos y minimos
Maximos y minimosMaximos y minimos
Maximos y minimosuagrm
 
Integral Indefinida
Integral IndefinidaIntegral Indefinida
Integral IndefinidaAndy Silva
 
Integrales infefinidas
Integrales infefinidasIntegrales infefinidas
Integrales infefinidasGlenda Freire
 
Derivadas e integrales
Derivadas e integralesDerivadas e integrales
Derivadas e integralestrionice
 
Antiderivada Ing
Antiderivada IngAntiderivada Ing
Antiderivada IngMarcos Boe
 

La actualidad más candente (20)

Integrales inmediatas
Integrales inmediatasIntegrales inmediatas
Integrales inmediatas
 
1 la antiderivada
1 la antiderivada1 la antiderivada
1 la antiderivada
 
Definicion de antiderivadas victor
Definicion de antiderivadas victorDefinicion de antiderivadas victor
Definicion de antiderivadas victor
 
Presentacion de antiderivadas
Presentacion de antiderivadasPresentacion de antiderivadas
Presentacion de antiderivadas
 
Aplicacion de las derivadas
Aplicacion de las derivadas Aplicacion de las derivadas
Aplicacion de las derivadas
 
Cálculo Integral
Cálculo IntegralCálculo Integral
Cálculo Integral
 
Derivadas Parciales
Derivadas ParcialesDerivadas Parciales
Derivadas Parciales
 
Relacion entre derivada e integral
Relacion entre derivada e integralRelacion entre derivada e integral
Relacion entre derivada e integral
 
Derivadas y su interpretacion
Derivadas y su interpretacionDerivadas y su interpretacion
Derivadas y su interpretacion
 
Integral indefinida
Integral indefinidaIntegral indefinida
Integral indefinida
 
Aplicaciones de la derivada-UNIDAD 5 CALCULO DIFERENCIAL
Aplicaciones de la derivada-UNIDAD 5 CALCULO DIFERENCIALAplicaciones de la derivada-UNIDAD 5 CALCULO DIFERENCIAL
Aplicaciones de la derivada-UNIDAD 5 CALCULO DIFERENCIAL
 
Calculo integral
Calculo integralCalculo integral
Calculo integral
 
Concepto de integral indefinida
Concepto de integral indefinida Concepto de integral indefinida
Concepto de integral indefinida
 
Maximos y minimos
Maximos y minimosMaximos y minimos
Maximos y minimos
 
Integral Indefinida
Integral IndefinidaIntegral Indefinida
Integral Indefinida
 
Ode45
Ode45Ode45
Ode45
 
Integrales infefinidas
Integrales infefinidasIntegrales infefinidas
Integrales infefinidas
 
Derivadas e integrales
Derivadas e integralesDerivadas e integrales
Derivadas e integrales
 
Antiderivada Ing
Antiderivada IngAntiderivada Ing
Antiderivada Ing
 
Deribadas
DeribadasDeribadas
Deribadas
 

Similar a DERIVACIÓN E INTEGRACIÓN NUMÉRICA

RAÍCES DE ECUACIONES
RAÍCES DE ECUACIONESRAÍCES DE ECUACIONES
RAÍCES DE ECUACIONESJenny López
 
escuela superiror politecnica de chimborazo
escuela superiror politecnica de chimborazoescuela superiror politecnica de chimborazo
escuela superiror politecnica de chimborazoJhon Vega
 
011 integracion grafica por-trapecios
011 integracion grafica por-trapecios011 integracion grafica por-trapecios
011 integracion grafica por-trapeciosGabriela Cellan
 
Integración numérica muy bueno
Integración numérica muy buenoIntegración numérica muy bueno
Integración numérica muy buenoLuis Elias
 
Presentacion Profesional Materia Calculo I
Presentacion Profesional Materia Calculo IPresentacion Profesional Materia Calculo I
Presentacion Profesional Materia Calculo IJose Luis Ortega Arenas
 
Actividad 5 presentacion profesional
Actividad 5   presentacion profesionalActividad 5   presentacion profesional
Actividad 5 presentacion profesionalroger_villarroel
 
Integracion aproximada...
Integracion aproximada...Integracion aproximada...
Integracion aproximada...Pablo Perez
 
Integracion aproximada.
Integracion aproximada.Integracion aproximada.
Integracion aproximada.Pablo Perez
 
Integracion aproximada
Integracion aproximadaIntegracion aproximada
Integracion aproximadaPablo Perez
 
EL PODER DE SYMPY.docx
EL PODER DE SYMPY.docxEL PODER DE SYMPY.docx
EL PODER DE SYMPY.docxssuserd2a0fa
 
EL PODER DE SYMPY.docx
EL PODER DE SYMPY.docxEL PODER DE SYMPY.docx
EL PODER DE SYMPY.docxssuserd2a0fa
 
Fundamentos de programación en scilab
Fundamentos de programación en scilabFundamentos de programación en scilab
Fundamentos de programación en scilabGabriel Romero
 

Similar a DERIVACIÓN E INTEGRACIÓN NUMÉRICA (20)

RAÍCES DE ECUACIONES
RAÍCES DE ECUACIONESRAÍCES DE ECUACIONES
RAÍCES DE ECUACIONES
 
escuela superiror politecnica de chimborazo
escuela superiror politecnica de chimborazoescuela superiror politecnica de chimborazo
escuela superiror politecnica de chimborazo
 
011 integracion grafica por-trapecios
011 integracion grafica por-trapecios011 integracion grafica por-trapecios
011 integracion grafica por-trapecios
 
integracion grafica por trapecios
integracion grafica por trapeciosintegracion grafica por trapecios
integracion grafica por trapecios
 
Acciones funciones
Acciones funcionesAcciones funciones
Acciones funciones
 
Integración numérica muy bueno
Integración numérica muy buenoIntegración numérica muy bueno
Integración numérica muy bueno
 
Modulo4
Modulo4Modulo4
Modulo4
 
Presentacion Profesional Materia Calculo I
Presentacion Profesional Materia Calculo IPresentacion Profesional Materia Calculo I
Presentacion Profesional Materia Calculo I
 
Actividad 5 presentacion profesional
Actividad 5   presentacion profesionalActividad 5   presentacion profesional
Actividad 5 presentacion profesional
 
Integral de riemann
Integral de riemannIntegral de riemann
Integral de riemann
 
Metodos numericos equipo 3
Metodos numericos equipo 3Metodos numericos equipo 3
Metodos numericos equipo 3
 
Integracion aproximada...
Integracion aproximada...Integracion aproximada...
Integracion aproximada...
 
Integracion aproximada.
Integracion aproximada.Integracion aproximada.
Integracion aproximada.
 
Integracion aproximada
Integracion aproximadaIntegracion aproximada
Integracion aproximada
 
EL PODER DE SYMPY.docx
EL PODER DE SYMPY.docxEL PODER DE SYMPY.docx
EL PODER DE SYMPY.docx
 
EL PODER DE SYMPY.docx
EL PODER DE SYMPY.docxEL PODER DE SYMPY.docx
EL PODER DE SYMPY.docx
 
Cuaderno 1
Cuaderno 1Cuaderno 1
Cuaderno 1
 
Taller 10-14-ii
Taller 10-14-iiTaller 10-14-ii
Taller 10-14-ii
 
Fundamentos de programación en scilab
Fundamentos de programación en scilabFundamentos de programación en scilab
Fundamentos de programación en scilab
 
Integrales numericas
Integrales numericasIntegrales numericas
Integrales numericas
 

Más de Jaime Martínez Verdú

Informe difusión y acceso de información
Informe difusión y acceso de informaciónInforme difusión y acceso de información
Informe difusión y acceso de informaciónJaime Martínez Verdú
 
Diapositivas apuntes cuestiones de ensayos no destructivos
Diapositivas apuntes cuestiones de ensayos no destructivosDiapositivas apuntes cuestiones de ensayos no destructivos
Diapositivas apuntes cuestiones de ensayos no destructivosJaime Martínez Verdú
 
Teoría, Prácticas y Exámenes de Control Inteligente
Teoría, Prácticas y Exámenes de Control InteligenteTeoría, Prácticas y Exámenes de Control Inteligente
Teoría, Prácticas y Exámenes de Control InteligenteJaime Martínez Verdú
 
Prácticas y exámenes de control óptimo (subida a slide share)
Prácticas y exámenes de control óptimo (subida a slide share)Prácticas y exámenes de control óptimo (subida a slide share)
Prácticas y exámenes de control óptimo (subida a slide share)Jaime Martínez Verdú
 
Prácticas y exámenes de control estocastico y de mínima varianza
Prácticas y exámenes de control estocastico y de mínima varianzaPrácticas y exámenes de control estocastico y de mínima varianza
Prácticas y exámenes de control estocastico y de mínima varianzaJaime Martínez Verdú
 
Apuntes y prácticas de tecnología energética
Apuntes y prácticas de tecnología energéticaApuntes y prácticas de tecnología energética
Apuntes y prácticas de tecnología energéticaJaime Martínez Verdú
 
Diapositivas Visión por Computador: Visión 3D
Diapositivas Visión por Computador: Visión 3DDiapositivas Visión por Computador: Visión 3D
Diapositivas Visión por Computador: Visión 3DJaime Martínez Verdú
 
Métodos numéricos para ecuaciones diferenciales ordinarias
Métodos numéricos para ecuaciones diferenciales ordinariasMétodos numéricos para ecuaciones diferenciales ordinarias
Métodos numéricos para ecuaciones diferenciales ordinariasJaime Martínez Verdú
 
Respuestas a preguntas frecuentes rd235 2013
Respuestas a preguntas frecuentes rd235 2013Respuestas a preguntas frecuentes rd235 2013
Respuestas a preguntas frecuentes rd235 2013Jaime Martínez Verdú
 

Más de Jaime Martínez Verdú (20)

Apuntes ecomonía aplicada
Apuntes ecomonía aplicadaApuntes ecomonía aplicada
Apuntes ecomonía aplicada
 
Informe difusión y acceso de información
Informe difusión y acceso de informaciónInforme difusión y acceso de información
Informe difusión y acceso de información
 
Finanzas empresariales
Finanzas empresarialesFinanzas empresariales
Finanzas empresariales
 
Fiscalidad de la empresa
Fiscalidad de la empresaFiscalidad de la empresa
Fiscalidad de la empresa
 
Diapositivas apuntes cuestiones de ensayos no destructivos
Diapositivas apuntes cuestiones de ensayos no destructivosDiapositivas apuntes cuestiones de ensayos no destructivos
Diapositivas apuntes cuestiones de ensayos no destructivos
 
Teoría, Prácticas y Exámenes de Control Inteligente
Teoría, Prácticas y Exámenes de Control InteligenteTeoría, Prácticas y Exámenes de Control Inteligente
Teoría, Prácticas y Exámenes de Control Inteligente
 
Prácticas y exámenes de control óptimo (subida a slide share)
Prácticas y exámenes de control óptimo (subida a slide share)Prácticas y exámenes de control óptimo (subida a slide share)
Prácticas y exámenes de control óptimo (subida a slide share)
 
Qué estoy haciendo aquí
Qué estoy haciendo aquíQué estoy haciendo aquí
Qué estoy haciendo aquí
 
Prácticas y exámenes de control estocastico y de mínima varianza
Prácticas y exámenes de control estocastico y de mínima varianzaPrácticas y exámenes de control estocastico y de mínima varianza
Prácticas y exámenes de control estocastico y de mínima varianza
 
Apuntes y prácticas de tecnología energética
Apuntes y prácticas de tecnología energéticaApuntes y prácticas de tecnología energética
Apuntes y prácticas de tecnología energética
 
Diapositivas Visión por Computador: Visión 3D
Diapositivas Visión por Computador: Visión 3DDiapositivas Visión por Computador: Visión 3D
Diapositivas Visión por Computador: Visión 3D
 
Chua's circuit
Chua's circuitChua's circuit
Chua's circuit
 
Métodos numéricos para ecuaciones diferenciales ordinarias
Métodos numéricos para ecuaciones diferenciales ordinariasMétodos numéricos para ecuaciones diferenciales ordinarias
Métodos numéricos para ecuaciones diferenciales ordinarias
 
Respuestas a preguntas frecuentes rd235 2013
Respuestas a preguntas frecuentes rd235 2013Respuestas a preguntas frecuentes rd235 2013
Respuestas a preguntas frecuentes rd235 2013
 
Presentación grúas auxiliares
Presentación grúas auxiliaresPresentación grúas auxiliares
Presentación grúas auxiliares
 
Trabajo sobre Grúas Auxiliares
Trabajo sobre Grúas AuxiliaresTrabajo sobre Grúas Auxiliares
Trabajo sobre Grúas Auxiliares
 
Prácticas de DERIVE
Prácticas de DERIVEPrácticas de DERIVE
Prácticas de DERIVE
 
Apuntes de prácticas de DERIVE
Apuntes de prácticas de DERIVEApuntes de prácticas de DERIVE
Apuntes de prácticas de DERIVE
 
Introducción de química
Introducción de químicaIntroducción de química
Introducción de química
 
Apuntes SITR
Apuntes SITRApuntes SITR
Apuntes SITR
 

DERIVACIÓN E INTEGRACIÓN NUMÉRICA

  • 1. Pr 1 – Derivación e Integración Numérica Función para aproximación de integrales mediante la regla del trapecio En esta parte de la práctica se confeccionará el código de programación para la obtención de la integral aproximada de una función empleando para ello el método del trapecio. La declaración de la función se ha realizado introduciendo como argumentos la función objetivo fx (recordar que se introduce entrecomillado como un vector de caracteres), el paso h y los extremos del intervalo de integración a y b. Además, la salida de la función es el valor de la integral aproximada declarada con el nombre integral_trapecio. Para evitar que el usuario introduzca un valor del paso h incorrecto, se han preparado unas líneas de código con la intención de impedir que el código se ejecute para un valor erróneo de paso h. Para ello se emplea la función rem y abs, de modo que obtengamos el resto de la división entre la diferencia positiva entre los extremos y el paso. Por lo tanto, si se introdujera un valor de h incorrecto, el programa quedaría “encerrado” en un bucle de repetición a la espera de que el usuario acertara con un valor correcto de h. El cuerpo del programa queda claramente dividido en dos partes, la obtención de los valores extremos del método y la de los valores centrales. Para la obtención de los valores extremos empleamos valor=subs(fx,'x',a) y valor=subs(fx,'x',b). En cambio, para obtener el valor de las áreas interiores empleamos un bucle donde se “machaca” el valor de la suma de las áreas con el suyo propio más la nueva área añadida. Al final, se obtiene el valor del resultado multiplicando por h/2. function integral_trapecio=mitrapecio(fx,h,a,b) % Comprobación de que el valor de h debe ser un divisor exacto de|b-a| while rem(abs(b-a),h)~=0 h=input('Nos has introducido un paso válido. Inténtalo de nuevo:'); end %Calculamos los términos de la integral valor=subs(fx,'x',a); for i=a+h:h:b-h valor=valor+2*subs(fx,'x',i); end valor=valor+subs(fx,'x',b); integral_trapecio=valor*h/2; return Jaime Martínez Verdú Página 1
  • 2. Pr 1 – Derivación e Integración Numérica Función para aproximación de integrales mediante la regla del Simpson En esta ocasión se confeccionará el código de programación para la obtención de la integral aproximada de una función empleando para ello la regla de Simpson. La declaración de la función se ha realizado introduciendo como argumentos la función fx, el paso h y los extremos del intervalo de integración a y b. Además, la salida de la función es integral_simpson. Para evitar que el usuario introduzca un paso incorrecto se ha preparado unas líneas de código con la intención de impedir que el código se ejecute para un valor erróneo de paso h. El planteamiento es semejante al del caso anterior. El cuerpo del programa queda claramente dividido en dos partes, la obtención de los valores extremos del método y la de los valores centrales. Para la obtención de los valores extremos empleamos valor=subs(fx,'x',a) y valor=subs(fx,'x',b). En cambio, para obtener el valor de las áreas interiores empleamos un bucle donde se “machaca” el valor de la suma de las áreas con el suyo propio más la nueva área añadida. En esta ocasión el código tiene una curiosidad puesto que los términos interiores van alternándose. Para contemplar este caso en el código es necesario realizar una comprobación para averiguar si el contador es par o impar. Si el valor del contador es divisible por dos, entonces estamos en un elemento interior de la forma f1, f3, f5,… por lo que es necesario multiplicarlo por 4. En caso contrario se multiplica por 2. Al final, se obtiene el valor del resultado multiplicando por h/3. function integral_simpson=misimpson(fx,h,a,b) % Comprobación de que el valor de h debe ser un divisor exacto de |b- a| while rem(abs(b-a),h)~=0 h=input('No has introducido un paso válido. Inténtalo de nuevo:'); end %Calculamos los términos de la integral valor=subs(fx,'x',a); j=2; for i=a+h:h:b-h if(rem(j,2)==0) valor=valor+4*subs(fx,'x',i); else valor=valor+2*subs(fx,'x',i); end j=j+1; end valor=valor+subs(fx,'x',b); integral_simpson=valor*h/3; return Jaime Martínez Verdú Página 2
  • 3. Pr 1 – Derivación e Integración Numérica Función para aproximación de integrales mediante el método de Romberg En esta práctica se confeccionará el código de programación para la obtención de la integral aproximada de una función empleando para ello el método de Romberg. La declaración de la función se ha realizado introduciendo como argumentos la función fx, el paso h y los extremos del intervalo de integración a y b y el valor del k-ésimo. Además, la salida de la función es integral_simpson. Debe comentarse un aspecto. El valor de h introducido será el valor de (2^(k-1))*h por lo que es un aspecto a tenerse en cuenta. Para evitar que el usuario introduzca un paso incorrecto se ha preparado unas líneas de código con la intención de impedir que el código se ejecute para un valor erróneo de paso h. Para ello se emplea la función rem y abs, de modo que obtengamos el resto de la división entre la diferencia positiva entre los extremos y el paso. A continuación, se machaca el valor de (2^(k-1))*h a h para empezar por el primer elemento de la aproximación. A continuación, inicializamos el valor de la matriz donde se colocarán los valores procedentes del algoritmo. El cuerpo del programa queda claramente dividido en tres partes, la obtención de los valores de la primera columna del algoritmo, el resto de valores y el volteo de la matriz para que visualmente se represente como el método. En la primera parte del código se emplea R(i,1)=mitrapecio(fx,h*2^(i-1),a,b) para calcular los primeros elementos empleando la regla del trapecio. En la segunda parte del código se calculan el resto de “casillas” de modo que, aplicando R(i,j)=(4^(j-1)*R(i,j-1)-R(i+1,j-1))/(4^(j-1)-1) se consigue calcular el resto de códigos. Véase que se trata de la fórmula de la página 21 donde el término k de la fórmula se ha implementado empleando j-1, R(i,j-1) hace referencia al término de la fórmula k-1-ésimo para paso h y el término R(i+1,j-1) hace referencia al k-1-ésimo para paso 2h. Finalmente, se procede a invertir la matriz para que se asemeje a la matriz estudiada en teoría. Jaime Martínez Verdú Página 3
  • 4. Pr 1 – Derivación e Integración Numérica function integral_romberg=miromberg(fx,h,a,b,k) while rem(abs(b-a),h)~=0 h=input('No has introducido un paso válido. Inténtalo de nuevo:'); end h=h/2^(k-1); %Calculamos los términos de la integral R=zeros(k,k); i=1; while (i<=k) R(i,1)=mitrapecio(fx,h*2^(i-1),a,b); i=i+1; end i=1; j=2; while(j<=k) while(i<=k-j+1) R(i,j)=(4^(j-1)*R(i,j-1)-R(i+1,j-1))/(4^(j-1)-1); i=i+1; end i=1; j=j+1; end i=1; T=zeros(k,k); while(i<=k) T(i,:)=R(1+k-i,:); i=i+1; end T integral_romberg=T(k,k); return Jaime Martínez Verdú Página 4
  • 5. Pr 1 – Derivación e Integración Numérica Función para aproximación de integrales mediante el método de Richardson El programa para implementar informáticamente el método de Richardson para obtener la segunda derivada de una función dada en un punto usando esquemas hacia delante de orden O(h4) es el siguiente function integral_richardson=mirichardson(fx,h,a,o) if (nargin~=4) disp('Se ha confundido. Esta función tiene 4 parámetros.') fx=input('Introduzca fx: '); h=input('Introduzca el paso h: '); a=input('Introduzca el punto donde quiere conocer la derivada: '); o=input('Introduzca el orden: '); end k=(o-2)/2; %Calculamos los términos de la integral R=zeros(k,k); i=1; while (i<=k) R(i,1)=(subs(fx,a+2*h*2^(i-1))-2*subs(fx,a+h*2^(i- 1))+subs(fx,a))/(h*2^(i-1))^2; i=i+1; end i=1; j=2; while(j<=k) while(i<=k-j+1) R(i,j)=(4^(j-1)*R(i,j-1)-R(i+1,j-1))/(4^(j-1)-1); i=i+1; end i=1; j=j+1; end i=1; T=zeros(k,k); while(i<=k) T(i,:)=R(1+k-i,:); i=i+1; end T integral_richardson=T(k,k); return En la primera parte del programa se procede a comprobar que se han indicado cuatro variables. Primeramente, emplearemos una línea de código para calcular el valor de k en función del orden deseado (según apuntes de teoría). Se crea posteriormente una matriz donde se almacenarán todos los valores deseados. Una vez creada la matriz, se emplea un bucle para generar los valores de la primera columna empleando la expresión para las diferencias hacia delante: R(i,1)=(subs(fx,a+2*h*2^(i-1))-2*subs(fx,a+h*2^(i-1))+subs(fx,a))/(h*2^(i-1))^2; Posteriormente se emplea la misma línea de código que en el método de Romberg puesto que el algoritmo es el mismo. Finalmente se voltea la matriz y se obtiene la integral de Richardson. Jaime Martínez Verdú Página 5
  • 6. Pr 1 – Derivación e Integración Numérica El programa anterior podemos modificarlo del siguiente modo: function [secdevRich,T]=mirichardsonimp(fx,h,a,o,e) if (nargin~=5) disp('Se ha confundico. Esta función tiene 4 parámetros.') fx=input('Introduzca fx: '); h=input('Introduzca el paso h: '); a=input('Introduzca el punto donde quiere conocer la derivada: '); o=input('Introduzca el orden: '); e=input('Introduzca el error deseado: '); end k=(o-2)/2; %Calculamos los términos de la integral R=zeros(k,k); i=1; while (i<=k) R(i,1)=(subs(fx,a+2*h*2^(i-1))-2*subs(fx,a+h*2^(i- 1))+subs(fx,a))/(h*2^(i-1))^2; if (abs(subs(diff(fx,'x',2),a)-R(i,1))<e) secdevRich=R(i,1); break end i=i+1; end if i==k+1; i=1; j=2; while(j<=k) while(i<=k-j+1) R(i,j)=(4^(j-1)*R(i,j-1)-R(i+1,j-1))/(4^(j-1)-1); if abs(subs(diff(fx,'x',2),a)-R(i,j))<e secdevRich=R(i,j); break end i=i+1; end if abs(subs(diff(fx,'x',2),a)-R(i,j))<e secdevRich=R(i,j); break end i=1; j=j+1; end i=1; T=zeros(k,k); while(i<=k) T(i,:)=R(1+k-i,:); i=i+1; end T end return Este código incluye una variación respecto al anterior puesto que ahora se introduce como dato también el error deseado. Por tanto, el programa calculará términos hasta que encuentre el valor cuyo error sea inferior al deseado. Una vez comentados todos los programas sólo queda comentar que ante alguna duda respecto de la resolución o cualquier corrección por favor comunícamelo. Finalmente, Mavi me gustaría agradecerte tu ayuda en las prácticas y la gran labor realizada. Jaime Martínez Verdú Página 6
  • 7. Pr 1 – Derivación e Integración Numérica Bibliografía 1. Burden, Richard L., "Análisis numérico", México International Thomson Editores op.1998 2. Mathews, John H., "Métodos numéricos con MATLAB", Madrid [etc.] Prentice Hall 1999 3. Chapra, Steven C., "Métodos numéricos para ingenieros", México [etc.] McGraw-Hill cop. 1999 4. Kincaid, David, "Análisis numérico las matemáticas del cálculo científico", Buenos Aires [etc.] Addison-Wesley Iberoamericana cop.1994 5. Amigó García, José María, "Métodos numéricos", [Alicante] Universidad Miguel Hernández D.L. 2002 6. Nakamura, Shoichiro, "Análisis numérico y visualización gráfica con MATLAB", Naucalpan de Juárez (México) Prentice-Hall Hispanoamericana cop. 1997 Jaime Martínez Verdú Página 7
  • 8. Pr 1 – Derivación e Integración Numérica Tabla de contenidos Función para aproximación de integrales mediante la regla del trapecio ................. 1 Función para aproximación de integrales mediante la regla del Simpson ................ 2 Función para aproximación de integrales mediante el método de Romberg ............. 3 Función para aproximación de integrales mediante el método de Richardson ......... 5 Bibliografía .................................................................................................................. 7 Tabla de contenidos ..................................................................................................... 8 Tabla de software ........................................................................................................ 8 Tabla de software integral_trapecio=mitrapecio ...................................................................................... 1 integral_simpson=misimpson ..................................................................................... 2 integral_romberg=miromberg ..................................................................................... 4 integral_richardson=mirichardson ............................................................................. 5 [secdevRich,T]=mirichardsonimp ............................................................................... 6 Jaime Martínez Verdú Página 8