modelica-tools / csv-compare

Tool to compare curves from one csv files with curves from other csv files using an adjustable tolerance
https://www.modelica.org
BSD 3-Clause "New" or "Revised" License
26 stars 15 forks source link

Set tolerance of tube in y-axis #34

Open JohanYli opened 8 years ago

JohanYli commented 8 years ago

I am working with a set of signals of varying magnitude where one signal is very small (and very small variation). Since there seem to be some limitation on the ratio of sides of the rectangle used to calculate the tube (I saw a max statement with 0.0004 in the ratio calculation) this allows really big relative differences of small results.

As I understand the setting of tolerance, it only affects the width of the tube on the x-axis, is there a way to specify the width of the tube on the y-axis instead? Preferably on a signal-to-signal basis (not all signals are small). Or can you improve the tube algorithm, there seems to be an attempt to this in the function 'SetStandardBaseAndRatio' in Modelica_ResultCompare/CurveCompare/TubeSize.cs but for some reason 'SetFormerBaseAndRatio' is used instead.

bastianbin commented 8 years ago

Hi Johan,

If I am not mistaken, the CurveCompare (which contains the algorithms used in CSVCompare) already supports setting both the tolerance on x- and y-axis. This feature has not been passed through to the command line interface, however.

I also intend on adding this but cannot give you a time frame when I will get to it. But yes, this would be nice to have.

Best, bastian

beutlich commented 2 months ago

There also is some discussion going on in https://github.com/modelica/ModelicaStandardLibrary/issues/4421 for how to introduce the concept of nominal values.

FYI @casella