Está en la página 1de 8

NOMBRE: Aranda Salinas Jose

MATERIA: Métodos Numéricos

MAESTRO: Genaro Velázquez

TAREA: Reporte Unidad 6

CARRERA: Ing. Mecatrónica

FECHA: 06/05/19

UNIDAD 6
Método de Euler.
En matemática y computación, el método de Euler, llamado así en honor
de Leonhard Euler, es un procedimiento de integración numérica para
resolver ecuaciones diferenciales ordinarias a partir de un valor inicial dado.
El método de Euler es el más simple de los métodos numéricos resolver un
problema del siguiente tipo:

Consiste en multiplicar los intervalos que va de a en subintervalos de


ancho ; osea:

de manera que se obtiene un conjunto discreto


de puntos: del intervalo de interes . Para
cualquiera de estos puntos se cumlple que:

La condición inicial , representa el punto por donde


pasa la curva solución de la ecuación de el planteamiento inicial, la cual se
denotará como .

Ya teniendo el punto se puede evaluar la primera derivada de en ese


punto; por lo tanto:

Con esta información se traza una recta, aquella que pasa por y de
pendiente . Esta recta aproxima en una vecinidad de . Tómese
la recta como reemplazo de y localícese en ella (la recta) el valor de y
correspondiente a . Entonces, podemos deducir segun la Gráfica A:
Se resuelve para :

Es evidente que la ordenada calculada de esta manera no es igual a ,


pues existe un pequeño error. Sin embargo, el valor sirve para que se
aproxime en el punto y repetir el procedimiento anterior a fin
de generar la sucesión de aproximaciones siguiente:
Método de Euler Mejorado
Este método se basa en la misma idea del método anterior, pero hace un
refinamiento en la aproximación, tomando un promedio entre ciertas pendientes.
La fórmula es la siguiente:

Donde

Para entender esta fórmula, analicemos el primer paso de la aproximación,


con base en la siguiente gráfica:

En la gráfica, vemos que la pendiente promedio corresponde a la pendiente


de la recta bisectriz de la recta tangente a la curva en el punto de la
condicióninicial y la "recta tangente" a la curva en el punto donde es la
aproximación obtenida con la primera fórmula de Euler. Finalmente, esta recta
bisectriz se traslada paralelamente hasta el punto de la condición inicial, y se
considera el valor de esta recta en el punto como la aproximación de Euler
mejorada.
Método de Runge-Kutta
El método de Runge-Kutta es un método genérico de resolución numérica
de ecuaciones diferenciales. Este conjunto de métodos fue inicialmente
desarrollado alrededor del año 1900 por los matemáticos C. Runge y M. W. Kutta.
Los métodos de Runge-Kutta (RK) son un conjuntos de métodos iterativos
(implícitos y explícitos) para la aproximación de soluciones de ecuaciones
diferenciales ordinarias, concretamente, delproblema de valor inicial.
Sea

una ecuación diferencial ordinaria, con donde es un


conjunto abierto, junto con la condición de que el valor inicial de ƒ sea

Entonces el método RK (de orden s) tiene la siguiente expresión, en su forma más


general:

,
donde h es el paso por iteración, o lo que es lo mismo, el incremento entre
los sucesivos puntos y . Los coeficientes son términos de aproximación
intermedios, evaluados en ƒ de manera local

con coeficientes propios del esquema numérico elegido, dependiente de


la regla de cuadratura utilizada. Los esquemas Runge-Kutta pueden ser
explícitos o implícitos dependiendo de las constantes del esquema. Si esta
matriz es triangular inferior con todos los elementos de la diagonal principal
iguales a cero; es decir, para , los esquemas son explícitos.
Código Euler.
Clc;
function f
fprintf('\n \tRESOLUCION DE ECUACIONES DIFERENCIALES POR MEDIO METODO
DE EULER\n')
f=input('\nIngrese la ecuacion diferencial de la forma: dy/dx=f(x,y)\n','s');
x0=input('\nIngrese el primer punto x0:\n');
x1=input('\nIngrese el segundo punto x1:\n');
y0=input('\nIngrese la condicion inicial y(x0):\n');
n=input('\nIngrese el numero de pasos n:\n');
h=(x1-x0)/n;
xs=x0:h:x1;
y1=y0;
fprintf('\n''it x0 x1 y1');
for i=1:n
it=i-1;
x0=xs(i);
x=x0;
x1=xs(i+1);
y=y0;
y1=y0+h*eval(f);
fprintf('\n%2.0f%10.6f%10.6f%10.6f\n',it,x0,x1,y1);
y0=y1;
end
fprintf('\n El punto aproximado y(x1) es = %10.6f\n',y1);

Programa de Runge-Kutta de orden cuatro.


function f
fprintf('\n \tRESOLUCION DE ECUACIONES DIFERENCIALES POR MEDIO RUNGE-
KUTTA DE ORDEN 4\n')
f=input('\n Ingrese la ecuacion diferencial\n','s');
x0=input('\n Ingrese el primer punto x0:\n');
x1=input('\n Ingrese el segundo punto x1:\n');
y0=input('\n Ingrese la condicion inicial y(x0):\n');
n=input('\n Ingrese el numero de pasos n:\n');
h=(x1-x0)/n;
xs=x0:h:x1;
fprintf('\n''it x0 y(x1)');
for i=1:n
it=i-1;
x0=xs(i);
x=x0;
y=y0;
k1=h*eval(f);
x=x0+h/2;
y=y0+k1/2;
k2=h*eval(f);
x=x0+h/2;
y=y0+k2/2;
k3=h*eval(f);
x=x0+h;
y=y0+k3;
k4=h*eval(f);
y0=y0+(k1+2*k2+2*k3+k4)/6;
fprintf('\n%2.0f%10.6f%10.6f\n',it,x0,y0);
end
fprintf('\n El punto aproximado y(x1) es = %8.6f\n',y0);
conclusiones.

También podría gustarte