Matlab - Metodo de Euler (como gráfico la respuesta?)

 
Vista:

Metodo de Euler (como gráfico la respuesta?)

Publicado por Jack (1 intervención) el 29/07/2014 22:31:30
Problema: Dada la ecuacion diferencial y':sqrt(x^2+y^2) use el metodo de euler para aproximar y(2.3) tomando como numero de pasos n=3 para el proceso iterativo si la condicion inicial es y(2)=0.5
Respuesta y(2.3)=1.166470

Ya esta hecho el problema, lo que me falta es hacer que se grafique.

Código

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);
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Metodo de Euler (como gráfico la respuesta?)

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 30/07/2014 05:09:39
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
%function euler
 fprintf('\n \tRESOLUCION DE ECUACIONES DIFERENCIALES POR MEDIO METODO DE EULER\n')
 f=input('Ingrese la ecuacion diferencial de la forma: dy/dx=f(x,y): ','s');
 x0=input('Ingrese el primer punto x0:');
 x1=input('Ingrese el segundo punto x1:');
 y0=input('Ingrese la condicion inicial y(x0):');
 n=input('Ingrese el numero de pasos n:');
 h=(x1-x0)/n;
 fprintf('\n i     xi      yi');
  x=x0;
  X(1)=x;
  y=y0;
  Y(1)=y;
     fprintf('\n%2d  %10.4f  %10.6f%10.6f\n',0,x,y);
 for i=1:n
     y=y+h*eval(f);
     x=x0+i*h;
     X(i+1)=x;
     Y(i+1)=y;
     fprintf('\n%2d  %10.4f  %10.6f%10.6f',i,x,y);
 end
 fprintf('\nEl punto aproximado y(x1) es = %10.6f\n',y1);
 plot(X,Y)




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
>> euler
 
 	RESOLUCION DE ECUACIONES DIFERENCIALES POR MEDIO METODO DE EULER
Ingrese la ecuacion diferencial de la forma: dy/dx=f(x,y): sqrt(x^2+y^2)
Ingrese el primer punto x0:2
Ingrese el segundo punto x1:2.3
Ingrese la condicion inicial y(x0):0.5
Ingrese el numero de pasos n:3
 
 i     xi      yi
 0      2.0000    0.500000
 1      2.1000    0.706155
 2      2.2000    0.927710
 3      2.3000    1.166470
El punto aproximado y(x1) es =   1.166470
>>


Saludos.
JOSE JEREMÍAS CABALLERO
Asesoría online y Presencial en Matlab
programador en matlab
Servicios de programación matlab
[email protected]
Estimado Usuario de Matlab, el correo es para servicios de programación, toda ayuda gratuita es vía foro.


http://matlabcaballero.blogspot.com

http://www.lawebdelprogramador.com/foros/Matlab/1371532-FORMA_DE_APRENDER_MATLAB.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Metodo de Euler (como gráfico la respuesta?)

Publicado por willian (1 intervención) el 15/02/2019 16:44:33
fprintf('\nEl punto aproximado y(x1) es = %10.6f\n',(y1));
para la linea 22
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar