Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incorrect handling of trajectory endpoints #13

Open
ghost opened this issue Mar 26, 2015 · 3 comments
Open

Incorrect handling of trajectory endpoints #13

ghost opened this issue Mar 26, 2015 · 3 comments

Comments

@ghost
Copy link

ghost commented Mar 26, 2015

We have been seeing some issues with the false-negatives in the endpoints of some trajectory comparisons. It usually happens when the signal have a "high" derivative.
For example:
fig1
You can see that the bounds calculation doesn't account for the derivative of the trajectory at the end point. The two results are very close and should be accepted.

Example files can be found here:
https://gist.github.com/jon-modelon/656e05349415bb2776a8

Command:

Compare.exe -o -m csvFileCompare -r . -t 0.001 --inline actual.csv expected.csv

Version:

Compare.exe --help
CSV File Comparison Tool v2.0.0-rel
Copyright ? 2015 ITI GmbH

@tbeu
Copy link
Contributor

tbeu commented Apr 15, 2015

  1. Why was the tolerance decreased from 0.002 (= default) to 0.001?
  2. In general, what do you suggest for the minimal acceptable lower tube, i.e. the light blue horizontal segment at the end? We also need to consider the case with infinite slope resulting in acceptance of every possible result point near the end.

@ghost
Copy link
Author

ghost commented Apr 15, 2015

  1. We always run with 1e-3 for some historical reason, it's an arbitrary number. Even though changing to 2e-3 might fix this case the problem is still valid.
  2. My first intuition is that the tube should be extrapolated based on the derivative/slope of the tube bound at the endpoint(s?). If there is an infinite slope, then I'll guess that all points are valid (since the trajectory also has infinite slop in that point).

elmirjagudin pushed a commit to modelon/csv-compare that referenced this issue Jul 11, 2016
Extrapolating the Y-value horizontally leads to false positives for
curves with hight derivative twords the end of the curve.

Take the reference curve's slope when calculating tube's end-points.

Solves modelica-tools#13
elmirjagudin pushed a commit to modelon/csv-compare that referenced this issue Jul 15, 2016
Extrapolating the Y-value horizontally leads to false positives for
curves with hight derivative twords the end of the curve.

Take the reference curve's slope when calculating tube's end-points.

Solves modelica-tools#13
@bastianbin
Copy link
Contributor

Hi ghost,

This is indeed a problem we have been thinking about. However, there're several reasons not to simply extrapolate the last slope when computing the polygonal chain. please check out thomas' response to this pull request.

We are, however, planning on adding a command line flag to enable pretty much what you have described. However, I cannot give you a time frame yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants