Skip to content

Data Operations should allow for reasonable numerical fluctuations in q (Trac #493) #626

@butlerpd

Description

@butlerpd

Data Operations allows a user to perform simple arithmetic on two data sets (add, subtract, multiply, divide). At this time it does not however interpolate so that a check is made before performing a requested operation that the two data sets have exactly the same number of q points AND that each q point is '''EXACTLY''' the same. This is generally appropriate but will cause the operation to fail even if the q values are essentially identical but differ by even one in the last decimal place.

The attached 2D files provided by Jun-Li Lin of the University of Illionois are an example. These are large data sets presumably generated by a SAXS camera? Somehow the qx of 0.0755253 (either positive or negative) is so close to 0.07552525 that in the blank data set it evaluated to 0.0755252. This was the ONLY discrepancy yet the subtract operation fails as expected. this is roughly a difference of 1.5ppm and is clearly the same value. However in order to fix we will have to decide on a cutoff: how close is close enough? A more complicated but more satisfying answer would be to allow for an option that sets the maximum allowed jiggle.

Another option that might be interesting is to allow interpolation. interpolation

Migrated from http://trac.sasview.org/ticket/493

{
    "status": "closed",
    "changetime": "2016-10-07T15:28:42",
    "_ts": "2016-10-07 15:28:42.671742+00:00",
    "description": "Data Operations allows a user to perform simple arithmetic on two data sets (add, subtract, multiply, divide).  At this time it does not however interpolate so that a check is made before performing a requested operation that the two data sets have exactly the same number of q points AND that each q point is '''EXACTLY''' the same.  This is generally appropriate but will cause the operation to fail even if the q values are essentially identical but differ by even one in the last decimal place.  \n\nThe attached 2D files provided  by Jun-Li Lin of the University of Illionois are an example.  These are large data sets presumably generated by a SAXS camera? Somehow the qx of 0.0755253 (either positive or negative) is so close to 0.07552525 that in the blank data set it evaluated to 0.0755252.  This was the ONLY discrepancy yet the subtract operation fails as expected.  this is roughly a difference of 1.5ppm and is clearly the same value.  However in order to fix we will have to decide on a cutoff: how close is close enough?  A more complicated but more satisfying answer would be to allow for an option that sets the maximum allowed jiggle.  \n\nAnother option that might be interesting is to allow interpolation. interpolation",
    "reporter": "butler",
    "cc": "",
    "resolution": "fixed",
    "workpackage": "SasView Framework Enhancements",
    "time": "2016-01-10T03:56:01",
    "component": "SasView",
    "summary": "Data Operations should allow for reasonable numerical fluctuations in q",
    "priority": "major",
    "keywords": "",
    "milestone": "SasView 4.1.0",
    "owner": "mathieu",
    "type": "enhancement"
}

Metadata

Metadata

Assignees

Labels

EnhancementFeature requests and/or general improvementsMajorBig change in the code or important change in behaviour

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions