xjiang4 / ellipsoids

Automatically exported from code.google.com/p/ellipsoids
Other
0 stars 1 forks source link

Backward-time reachability domains are calculated incorrectly in ReachContinuous #108

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
timeVec in ellipsoidal tubes created by ReachContinuous in backward time 
contains decreasing values.

1) Please introduce a check for timeVec in checkTuple method of 
\products\+gras\+ellapx\+smartdb\+rels\EllTubeBasic

and make sure that the existing tests fail for backward-time systems. 

2) Add the tests for correctness of timeVec field in elltool.reach.test.mlunit 
package

3) Fix the bug in rotateEllTube 

4) Run the tests and make sure that they pass

Original issue reported on code.google.com by heartofm...@gmail.com on 20 Apr 2013 at 3:52

GoogleCodeExporter commented 8 years ago

Original comment by kirill.m...@gmail.com on 26 May 2013 at 3:40

GoogleCodeExporter commented 8 years ago
Looks good except for the fact that refine test fails. Why do you think that 
refine is implemented incorrectly? If this incorrectness is related to 
backward-time systems that it is two-fold problem, Vitaly could not do it 
correctly because all backward-time tests were switched off so saying that it 
is not your problem is not quite correct. I can help to fix it but I need to 
know more details. What are the steps to reproduce?

Also, can you please switch back the disabled tests? This way we can forget to 
switch them back...

Original comment by heartofm...@gmail.com on 27 May 2013 at 5:51

GoogleCodeExporter commented 8 years ago
Vitaly could do it correctly, I've written in the comment what is wrong.
All backward tests passed, I sorry that I forgot to enable tests.

Original comment by kirill.m...@gmail.com on 27 May 2013 at 5:55

GoogleCodeExporter commented 8 years ago
Ok, I agree. Once you finish the investigation I suggest we create a separate 
issue to fix refine. Of course this won't be done by you. We just need to make 
sure that all the tests that call refine do not try to call it after evolve 
with a different system. 

Original comment by heartofm...@gmail.com on 27 May 2013 at 5:59

GoogleCodeExporter commented 8 years ago
Ok, good. Soon I will tell you about refine test, I think.

Original comment by kirill.m...@gmail.com on 27 May 2013 at 6:01

GoogleCodeExporter commented 8 years ago

Original comment by kirill.m...@gmail.com on 27 May 2013 at 7:27

GoogleCodeExporter commented 8 years ago
What is a meaning of the following change? What is so special about 
numel(switchSysTimeVec)=2 case? We need a general solution, not a patch just to 
make all the snippets work...

1203    1203        newPointsNum = numel(compEllTube.timeVec{1});
1204        -   if self.isBackward
    1204    +   if self.isBackward && numel(self.switchSysTimeVec) == 2 &&...
    1205    +   numel(reachObj.switchSysTimeVec) == 2
1205    1206        compTimeGridIndVec = 2 .* (1 : pointsNum);
1206    1207        else
1207    1208        compTimeGridIndVec = 2 .* (1 : pointsNum) - 1;

Original comment by heartofm...@gmail.com on 29 May 2013 at 8:15

GoogleCodeExporter commented 8 years ago

Original comment by heartofm...@gmail.com on 29 May 2013 at 12:10

GoogleCodeExporter commented 8 years ago

Original comment by kirill.m...@gmail.com on 29 May 2013 at 12:29

GoogleCodeExporter commented 8 years ago

Original comment by heartofm...@gmail.com on 30 May 2013 at 1:13