ode solver , restart from where the simulation ended
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Deepa Maheshvare
am 28 Feb. 2020
Bearbeitet: Deepa Maheshvare
am 28 Feb. 2020
Hi,
I am using ode solver to simulate a system of differential equations.
tspan = 0:0.0001:1
[t s] = ode15s(@(t,s) fun(t,s), tspan , s0 ,options);
I ran for the tspan that is defined and obtained the results (0 to 1 second). I want to restart the simulation from where it ended and run for 2 seconds instead of rerunning the whole simulation again.
Any suggestions?
Thanks
0 Kommentare
Akzeptierte Antwort
Bjorn Gustavsson
am 28 Feb. 2020
Just extract the solution at 1 s from s (i.e. the last row in s). Then simly run the integration from there:
t2 = linspace(1,3,2001); % or what resoution you need
s0_2 = s(end,:); %
[t1to3 s1to3] = ode15s(@(t,s) fun(t,s), t2 , s0_2 ,options);
That should be enough.
HTH
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Ordinary Differential Equations finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!