Diferencia entre revisiones de «Lógistica con umbral (Grupo 18)»
| Línea 17: | Línea 17: | ||
=== Resolución numérica === | === Resolución numérica === | ||
| − | Para la resolución numérica de este problema vamos a implementar los métodos de Euler, Heun y Runge-Kutta ambos tres con diferente paso: 0.1 | + | Para la resolución numérica de este problema vamos a implementar los métodos de Euler, Heun y Runge-Kutta ambos tres con diferente paso: 1; 0.1; 0.01 de tal modo que podremos observar tanto las diferencias entre los diferentes métodos |
{{matlab|codigo= | {{matlab|codigo= | ||
| Línea 79: | Línea 79: | ||
}} | }} | ||
| + | === Interpretación Numérica=== | ||
| + | |||
| + | |||
| + | Se aprecia que con tamaño de paso 1 exite una leve diferencia entre los métodos de Runge-kutta y Heun frente al método de Euler, mientras que según vamos disminuyendo el tamaño de paso las diferencias entre los diferentes métodos disminuyen de manera sustancial, aún así los métodos de Runge-Kutta y Heun siguen siendo mas precisos que el de Euler. | ||
| + | === Interepretacion según la dinámica de poblaciones === | ||
Revisión del 18:20 3 mar 2015
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Logistica con umbral. Grupo 18-C/D |
| Asignatura | Ecuaciones Diferenciales |
| Curso | Curso 2014-15 |
| Autores | Gonzalo Ucar Lopez-Monis 1638
Alvaro Solís Gonzalez 1628 Luis Moreno Fernandez de Soria 1348 Fabio Torres Salas 1635 Eduardo Rodríguez Ubeda 1620 |
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
Contenido
1 Introducción
En este trabajo se estudiarán dos modelos matemáticos, el primero de ellos sobre dinamica de poblaciones y en el segundo se estudiará un modelo de competencia.
2 Problema de valor inicial
2.1 Resolución numérica
Para la resolución numérica de este problema vamos a implementar los métodos de Euler, Heun y Runge-Kutta ambos tres con diferente paso: 1; 0.1; 0.01 de tal modo que podremos observar tanto las diferencias entre los diferentes métodos
clear all
%DATOS DEL PROBLEMA
%Intervalo de tiempo [0,100].
t0=0;tN=100;
%Población inicial
y0=input('introduzca poblacion inicial');
%Se ejecutarán los 3 métodos con tres tamaños de paso: h=1,0.1,0.01 viendo asi como cambia la precisión
%Tamaño de paso
h=input('Introduce tamaño de paso:');
%Nodos
N=(tN-t0)/h;
%Constantes de la ecuación logística.
%r:constante de crecimiento
%M1:umbral
%M2: población cuando el tiempo tiende a infinito
r=0.04;M1=30;M2=100;
%Discretizacion del tiempo.
t=t0:h:tN;
%Condición inicial.
E=zeros(1,N+1);E(1)=y0; %Euler
HE=zeros(1,N+1);HE(1)=y0; %Heun
R=zeros(1,N+1); R(1)=y0; %Runge-Kutta
for i=1:N
%Método Euler:
E(i+1)=E(i)+h*((-r*R(i))*(1-R(i)/M1)*(1-R(i)/M2));
%Método de Heun:
Kh1=-r*HE(i)*(1-HE(i)/M1)*(1-HE(i)/M2);
Kh2=-r*(HE(i)+Kh1*h)*(1-((HE(i)+Kh1*h)/M1))*(1-((HE(i)+Kh1*h)/M2));
HE(i+1)= HE(i)+h/2*(Kh1+Kh2);
%Método Runge-Kutta:
K1=-r*R(i)*(1-R(i)/M1)*(1-R(i)/M2);
K2=-r*(R(i)+1/2*K1*h)*(1-((R(i)+1/2*K1*h)/M1))*(1-((R(i)+1/2*K1*h)/M2));
K3=-r*(R(i)+1/2*K2*h)*(1-((R(i)+1/2*K2*h)/M1))*(1-((R(i)+1/2*K2*h)/M2));
K4=-r*(R(i)+K3*h)*(1-((R(i)+K3*h)/M1))*(1-((R(i)+K3*h)/M2));
R(i+1)= R(i)+h/6*(K1+2*K2+2*K3+K4);
end
%Ahora dibujamos las gráficas resultantes:
hold on %Para mostrar todas las gráfcas a la vez
plot(t,E,'k')
plot(t,HE,'r')
plot(t,R,'g')
hold off
legend('EULER','HEUN','RUNGE-KUTTA','location','best')
format long
%Máximo error entre métodos (2 a 2)
C1=max(abs(R-E)) %Runge-Kutta y Euler
C2=max(abs(E-HE)) %Euler y Heun
C3=max(abs(HE-R)) %Heun y Runge-Kutta
2.2 Interpretación Numérica
Se aprecia que con tamaño de paso 1 exite una leve diferencia entre los métodos de Runge-kutta y Heun frente al método de Euler, mientras que según vamos disminuyendo el tamaño de paso las diferencias entre los diferentes métodos disminuyen de manera sustancial, aún así los métodos de Runge-Kutta y Heun siguen siendo mas precisos que el de Euler.