runge-Kutta problem command ode45

1 次查看(过去 30 天)
I try to solve an equation with the command ode45 b ut I have an error, this is my code:
tspan = [0 5];
y0 = 100;
Q = 30, b = 0.2;
[t,y,x] = ode45(@(tspan,y,x) Q-b*x*y, t, y0);
plot (t,y,x,'-o')
and the error:
Q =
30
Not enough input arguments.
Error in rungrkutta_y>@(tspan,y,x)Q-b*x*y (line 4)
[t,y,x] = ode45(@(tspan,y,x) Q-b*x*y, t, y0);
Error in odearguments (line 90)
f0 = feval(ode,t0,y0,args{:}); % ODE15I sets args{1} to yp0.
Error in ode45 (line 115)
odearguments(FcnHandlesUsed, solver_name, ode, tspan, y0, options, varargin);
Error in rungrkutta_y (line 4)
[t,y,x] = ode45(@(tspan,y,x) Q-b*x*y, t, y0);
how can I solve it?

采纳的回答

Star Strider
Star Strider 2021-3-1
I have no idea what you want to do, or what ‘x’ and ‘y’ are.
This will get you closer to an actual result:
tspan = [0 5];
y0 = [100; 0];
Q = 30;
b = 0.2;
[t,y] = ode45(@(t,y) [y(1); Q-b*y(1)*y(2)], tspan, y0);
figure
plot (t,y,'-o')
.
  4 个评论

请先登录,再进行评论。

更多回答(1 个)

Stephan
Stephan 2021-3-1
tspan = [0 5];
y0 = 100;
Q = 30;
b = 0.2;
[t,y] = ode45(@(t,y)Q-b*t*y, tspan, y0);
plot (t,y,'-o')

类别

Help CenterFile Exchange 中查找有关 Ordinary Differential Equations 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by