Bug 160332 - Increase speed of the simulation (faster than realtime, for example)
Summary: Increase speed of the simulation (faster than realtime, for example)
Status: RESOLVED FIXED
Alias: None
Product: step
Classification: Applications
Component: general (show other bugs)
Version: 0.0.4
Platform: Compiled Sources Linux
: NOR wishlist
Target Milestone: ---
Assignee: Vladimir Kuznetsov
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-04-03 19:14 UTC by Carsten Niehaus
Modified: 2008-04-05 13:02 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Carsten Niehaus 2008-04-03 19:14:00 UTC
Version:           0.0.4 (using KDE 4.0.3)
Installed from:    Compiled From Sources
OS:                Linux

For many simulations, realtime is too slow. For example, the "brownian motion"-example takes at least 5 minutes to run until you see that there is really no pattern.

In school, it would be great to have a "simulate 10x faster" button. It would be perfectly fine if the accuracy would be lessened in this mode (as long as it isn't really faulty, of course).
Comment 1 Vladimir Kuznetsov 2008-04-03 21:43:45 UTC
Actually the feature to increase simulation speed is already present: just change timeScale property of the World. But I totally agree that discoverability of this feature is almost zero and it need to be improved somehow. I'm planning more advanced simulation panel which will allow to change it in the more obvious way.
Comment 2 Carsten Niehaus 2008-04-03 21:53:44 UTC
Wow, that is really well hidden :-)

Why don't you (or I for that matter, perhaps I can do that tomorrow) add a KComboBox like widget into the toolbar. It defaults to 1.0 speed and offers also 2,4,10 and 20x speed-factors? No need for a complex GUI here, I think.
Comment 3 Vladimir Kuznetsov 2008-04-03 22:50:05 UTC
I've thought about implementing the results of the discussion on mailinglist of stop/reset buttons and timeline... But just adding KComboBox will be already very good. One need to connect it to WorldModel::worldDataChanged(bool) signal in order to keep in sync with the property. The KComboBox could also allow specifying the factor by hand.
Comment 4 Chintalagiri Shashank 2008-04-04 09:39:15 UTC
Perhaps a slider bar similar to the ones on media players could also be used. It seems people tend to get a better felling of usability when the variation in the property is continuous rather than discrete. A small text label next to the slider could display the current simulation speed.
Comment 5 Carsten Niehaus 2008-04-04 16:26:52 UTC
I am currently working on this feature. In the brownian example I am getting many asserts like this with a factor of 4:

* 1,376000e+01 1,376000e+01 1,000000e+00
*** StepCore: failed assertion on line 702 of file /home/kde4/kde/src/step/stepcore/world.cc
*** asserted expression: targetTime - _time > _solver->stepSize() / 1000
*** in function: int StepCore::World::doEvolve(double)

* 1,552000e+01 1,552000e+01 1,000000e+00
*** StepCore: failed assertion on line 702 of file /home/kde4/kde/src/step/stepcore/world.cc
*** asserted expression: targetTime - _time > _solver->stepSize() / 1000
*** in function: int StepCore::World::doEvolve(double)

* 1,664000e+01 1,664000e+01 1,000000e+00
*** StepCore: failed assertion on line 702 of file /home/kde4/kde/src/step/stepcore/world.cc
*** asserted expression: targetTime - _time > _solver->stepSize() / 1000
*** in function: int StepCore::World::doEvolve(double)
Comment 6 Carsten Niehaus 2008-04-05 13:02:22 UTC
I just implemented this feature.