"Inputs must be floats, namely single or double"
1 回表示 (過去 30 日間)
古いコメントを表示
system of equations is:
F = @(t, r, y) [y(1), y(2), y(3), f_integral]
And then calling the ode solver:
[t, y] = ode45(F, [0 5], [1 1 1]).
1 件のコメント
Torsten
2017 年 6 月 13 日
Please show the differential equation you are trying to solve in a mathematical notation.
From the question you deleted meanwhile, it was not clear what you were trying to solve (at least for me).
Best wishes
Torsten.
採用された回答
Torsten
2017 年 6 月 13 日
function main
tspan=[0 5];
y0=[1; 1; 1; 0];
[t,y]=ode45(@fun,tspan,y0)
function dy=fun(t,y)
dy=zeros(4,1);
dy(1)=y(1);
dy(2)=y(2);
dy(3)=y(3);
funint=@(r)(y(3)^2+y(4)^2)*r;
dy(4)=integral(funint,-1,1);
Best wishes
Torsten.
1 件のコメント
Torsten
2017 年 6 月 13 日
r is just a formal integration variable - it's not needed in the parameter list for "fun".
Best wishes
Torsten.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Numerical Integration and Differential Equations についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!