Why this ode45 solver gives NAN as output for f ?
2 views (last 30 days)
Show older comments
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.
Answers (1)
Walter Roberson
on 7 Apr 2022
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 Comment
Walter Roberson
on 7 Apr 2022
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.
See Also
Categories
Find more on Ordinary Differential Equations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!