WHY do I get this error

1 回表示 (過去 30 日間)
mahesh tom
mahesh tom 2017 年 11 月 17 日
コメント済み: asavra siddiqui 2021 年 4 月 10 日
function dydt = free25(t,y);
g = 9.81;
l = 1;
dydt = [y(2);-g/l.*sin(y(1))];
end
[t,y]= ode45('free25',[0 10],[0 0.09]);%I typed this in command window
plot(t,y(:,1));
refline([0 0]);
Error using feval Undefined function 'free25' for input arguments of type 'double'.
Error in odearguments (line 87) 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);

採用された回答

Mischa Kim
Mischa Kim 2017 年 11 月 17 日
編集済み: Mischa Kim 2017 年 11 月 17 日
mahesh, is the above code all in one and the same script? If it is modify like this:
[t,y]= ode45(@free25,[0 10],[0 0.09]);%I typed this in command window
plot(t,y(:,1))
function dydt = free25(t,y)
g = 9.81;
l = 1;
dydt = [y(2);-g/l.*sin(y(1))];
end
Another option would be to store the first part of the script (first two commands) in one function and the second part in a different function. For this second option make sure you name the file the same way you name the function: free25.m
  4 件のコメント
mahesh tom
mahesh tom 2017 年 11 月 17 日
編集済み: mahesh tom 2017 年 11 月 17 日
Thank you! The problem was that the file was not on the MATLAB search path!
asavra siddiqui
asavra siddiqui 2021 年 4 月 10 日
I have the same problem with my code how can I put it on MATLAB search path

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeProgramming についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by