photo

Hossein


Active since 2011

Followers: 0   Following: 0

Message

Hi,

I am using odeXXX for solving a simple ordinary equation. I need to have the solution in different times. For doing so, I though I only need a time span like
timespan=linspace(0,45E-6,88)
but the number of outputs does not have any correlation with the size of timespan

timespan=linspace(0,45E-6,88);
sol=ode45(handle,timespan,y0)

so I am expecting to see 88 answer in the output, but depending on the 'RelTol' the number of output is something about 24 to 290

right now I am using a for loop like this,

for i=1:size(timespan)
sol=ode45(handle, [0 timespan(i)],y0)
y=sol.y(:,end)
end

I am sure there must be a much better and faster way to obtain these results.

Hossein's Badges

MATLAB Answers Badges

All
  • First AnswerFirst Answer
    20 Jul 2017
  • Knowledgeable Level 1Knowledgeable Level 1
    20 Jul 2017