Why this ode45 solver gives NAN as output for f ?
2 ビュー (過去 30 日間)
古いコメントを表示
I would like to solve df/dl = function (f), why it gives me NAN values as output ?
How should I fix that?
I have uploaded my files.
I really appreciate your help.
回答 (1 件)
Walter Roberson
2022 年 4 月 7 日
nT = sum(f(1):f(5));
That code means that the first value of the f vector should be looked up, and the 5th value of the f vector should be looked up, and that you should create a vector of values starting from the first one and incrementing by 1 and ending no later than the 5th value. So it is
sum(0.0104019018290415 : 1 : 0.0101171959808271)
but the last value f(5) is greater than the first value f(1), so you are asking to sum the empty vector, and the sum of the empty vector is 0.
Perhaps you wanted the code
nT = sum(f(1:5));
1 件のコメント
Walter Roberson
2022 年 4 月 7 日
It is recommended that you do not readtable() inside the function. Read the table outside the function and pass it into the function, the way you pass f0 into the function.
参考
カテゴリ
Help Center および File Exchange で Ordinary Differential Equations についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!