why is it not plotting?? blank graph

1 回表示 (過去 30 日間)
LG
LG 2022 年 6 月 16 日
編集済み: MJFcoNaN 2022 年 6 月 16 日
% Ecuaciones Diferenciales Ordinarias dy/dx=f(x,y) a resolver --------------
f1 =@(x,y1,y2) (-6*y2-5*y1)/.5
f1 = function_handle with value:
@(x,y1,y2)(-6*y2-5*y1)/.5
f2 =@(x,y1,y2) (-.5*y1-5)/6
f2 = function_handle with value:
@(x,y1,y2)(-.5*y1-5)/6
% Condiciones iniciales -----------------------------------------------
%y1(0)=1;
%y2(0)=0;
x=0
x = 0
xn=5
xn = 5
y1=1
y1 = 1
y2=0
y2 = 0
h=0.2
h = 0.2000
% Método de RK4Orden ---------------------------------------------------
while x(end)<=xn
k11= f1(x(end),y1(end),y2(end));
k12= f2(x(end),y1(end),y2(end));
k21= f1(x(end)+.5*h,y1(end)+.5*k11*h,y2(end)+.5*k12*h);
k22= f2(x(end)+.5*h,y1(end)+.5*h*k11,y2(end)+.5*h*k12);
k31= f1(x(end)+.5*h,y1(end)+.5*k21*h,y2(end)+.5*k22*h);
k32= f2(x(end)+.5*h,y2(end)+.5*k22*h,y2(end)+.5*k22*h);
k41= f1(x(end)+h,y1(end)+k31*h,y2(end)+k32*h);
k42= f2(x(end)+h,y2(end)+k32*h,y2(end)+k32*h);
x(end+1)=x(end)+h;
%y1(end+1)=y1(end)+1/6*(k11+2*k21+2*k31+k41)*h;
%y2(end+1)=y2(end)+1/6*(k12+2*k22+2*k32+k42)*h;
end
% Graficación de la solución ------------------------------------------
plot(x,y1)
title('Carga respecto al tiempo')
xlabel('tiempo')
ylabel('carga')
hold on
plot(x,y2)
xlabel('tiempo')
ylabel('corriente')
title('Corriente respecto al tiempo')

採用された回答

MJFcoNaN
MJFcoNaN 2022 年 6 月 16 日
編集済み: MJFcoNaN 2022 年 6 月 16 日
Why do you comment the lines of calculate y1 and y2?
% Ecuaciones Diferenciales Ordinarias dy/dx=f(x,y) a resolver --------------
f1 =@(x,y1,y2) (-6*y2-5*y1)/.5;
f2 =@(x,y1,y2) (-.5*y1-5)/6;
% Condiciones iniciales -----------------------------------------------
%y1(0)=1;
%y2(0)=0;
x=0;
xn=5;
y1=1;
y2=0;
h=0.2;
% Método de RK4Orden ---------------------------------------------------
while x(end)<=xn
k11= f1(x(end),y1(end),y2(end));
k12= f2(x(end),y1(end),y2(end));
k21= f1(x(end)+.5*h,y1(end)+.5*k11*h,y2(end)+.5*k12*h);
k22= f2(x(end)+.5*h,y1(end)+.5*h*k11,y2(end)+.5*h*k12);
k31= f1(x(end)+.5*h,y1(end)+.5*k21*h,y2(end)+.5*k22*h);
k32= f2(x(end)+.5*h,y2(end)+.5*k22*h,y2(end)+.5*k22*h);
k41= f1(x(end)+h,y1(end)+k31*h,y2(end)+k32*h);
k42= f2(x(end)+h,y2(end)+k32*h,y2(end)+k32*h);
x(end+1)=x(end)+h;
% these two lines update y1 and y2
y1(end+1)=y1(end)+1/6*(k11+2*k21+2*k31+k41)*h;
y2(end+1)=y2(end)+1/6*(k12+2*k22+2*k32+k42)*h;
end
% Graficación de la solución ------------------------------------------
plot(x,y1)
title('Carga respecto al tiempo')
xlabel('tiempo')
ylabel('carga')
hold on
plot(x,y2)
xlabel('tiempo')
ylabel('corriente')
title('Corriente respecto al tiempo')

その他の回答 (0 件)

カテゴリ

Help Center および File Exchange2-D and 3-D Plots についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by