Subido por Heyder Caro

Script Ejercicios

Anuncio
Método de Euler
Ejercicio 1.
Script
%Solucion metodo de euler
x0=0;
xf=2;
y0=4;
h=0.03;
n=(xf-x0)/h;
x(1)=x0;
y(1)=y0;
%solucion analitica
t=@(x) (((0.25*(log(2*x+1)))+2)^2); %funcion anonima
%este me gusta mas
for i=1:n;
x(i+1)=x(i)+h(1);
fx=edo(x(i),y(i));%funcion creeada
y(i+1)=y(i)+fx*h;
r(i)=t(x(i));
plot(x(i),y(i),'r.',x(i),r(i),'b.');
grid on;
xlabel('Valores de x');
ylabel('Valores de y,');
title('Metodo de Euler');
legend('Solucion Numerica','Solucion Analitica')
hold on;
end
%Lo que se buscaba era graficar la solucion analitica con la solucion
%numerica y ver la diferencia a medida que se disminuye el tamaño de paso.
%heyder colocale los nombres a los ejes y a cada curva
%Solucion metodo de euler del chapra ejercicio 25.1
x0=0;
xf=2;
y0=1;
h=0.05;
n=(xf-x0)/h;
x(1)=x0;
y(1)=y0;
%solucion Analitica
f=@(x)(exp(1))^(((((x)^3)/3)-(1.1*x))); %Solucion Numerica
t=@(x,y) (y*(x^2))-(1.1*y) %EDO
%Solucion Numerica
for i=1:n
x(i+1)=x(i)+h;
z(i)=t(x(i),y(i));%Evaluada en condiciones iniciales
y(i+1)=y(i)+h*z(i);
%funcion evaluada con inicales
plot(x(i),y(i),'r*',x(i),(f(x(i))),('b.'));
title('Metodo de Euler Mejorado');
xlabel('Valores de x');
ylabel('Valores de y');
legend('Solucion Numerica','Solucion Analitica')
grid on;
hold on;
end
Terminar ejercicios con los métodos de Euler y Runge Kutta página 764.
Revisemos la página 826
%Solucion metodo de euler del chapra ejercicio 25.1
x0=0;
xf=2;
y0=1;
h1=0.25;
h2=0.5;
h3=0.1;
n1=(xf-x0)/h1;
n2=(xf-x0)/h2;
n3=(xf-x0)/h3;
x(1)=x0;
y(1)=y0;
x1(1)=x0;
y1(1)=y0;
x2(1)=x0;
y2(1)=y0;
%solucion Analitica
f=@(x)(exp(1))^(((((x)^3)/3)-(1.1*x))); %Solucion Analitica
t=@(x,y) (y*(x^2))-(1.1*y); %EDO Solucion Numerica
for i=1:n1
x(i+1)=x(i)+h1;
z1(i)=t(x(i),y(i));%Evaluada en condiciones iniciales
y(i+1)=y(i)+h1*z1(i);%funcion evaluada con inicales
end
hold on;
for j=1:n2
x1(j+1)=x1(j)+h2;
z2(j)=t(x1(j),y1(j));%Evaluada en condiciones iniciales
y1(j+1)=y1(j)+h2*z2(j);%funcion evaluada con inicales
end
hold on;
for r=1:n3
x2(r+1)=x2(r)+h3;
z3(r)=t(x2(r),y2(r));%Evaluada en condiciones iniciales
y2(r+1)=y2(r)+h3*z3(r);%funcion evaluada con inicales
end
hold on
plot(x,y,'r',x1,y1,'y',x2,y2,'g');
fplot(f,[0 2],'b');%Graficando Solucion Analitica
legend('h=0.1','h=0.5','h=0.1','Solucion Analitica');
title('Metodo de Euler');
xlabel('Valores de x');
ylabel('Valores de y');
grid on;
hold off;
Descargar