Basically it lacks isNaN checking. Since it is documented as TRUE if the data changed, it should work for NaNs as well.
Posted 05 June 2012 - 02:04 PM
Posted 05 June 2012 - 03:40 PM
Posted 05 June 2012 - 03:47 PM
data_changed_DBL_NaN_aware.vi 7.81K
28 downloadsPosted 05 June 2012 - 06:51 PM
Posted 06 June 2012 - 01:54 AM
Posted 06 June 2012 - 04:50 PM
Posted 06 June 2012 - 06:54 PM
You are probably still the poster boy since we had to use another buddy in order to find that the first buddy make a mistake. I'm just curious what your code originally looked like in order to get the results you did.Sorry I couldn't be a poster boy, AQ
Posted 06 June 2012 - 10:35 PM
It's in the opposite case of the diagram disable structure, so:You are probably still the poster boy since we had to use another buddy in order to find that the first buddy make a mistake. I'm just curious what your code originally looked like in order to get the results you did.
Posted 06 June 2012 - 11:27 PM
Posted 06 June 2012 - 11:32 PM
I agree. However, I'd like to spend a few minutes and see if they benchmark differently. I fully expect the compiler to be smart enough to reduce mine.So if this goes into OpenG, I would prefer Gotz's implementation (less logic). And Gotz, I prefer the FB node over the shift registers. They look cleaner for some reason.
Posted 07 June 2012 - 07:17 AM
I agree. However, I'd like to spend a few minutes and see if they benchmark differently. I fully expect the compiler to be smart enough to reduce mine.
Rolf Kalbermatter
CIT Engineering Netherlands
A division of Test & Measurement Solutions
Posted 07 June 2012 - 02:46 PM
What about using a simple typecast to U64 before checking diff?
![]()
It will however return TRUE for differently represented NANs, but otherwise it should be fine.
/J
Rolf Kalbermatter
CIT Engineering Netherlands
A division of Test & Measurement Solutions
Posted 07 June 2012 - 03:37 PM
That could be overcome with a bitmask check.That should work if the NaNs are guaranteed to come from LabVIEW itself but could fail because of the reason you mention, if the NaN could come from somewhere else such as a network bytestream.
Posted 07 June 2012 - 06:17 PM
Then you'd need to find out if a type cast and mask are faster than logical comparisons. Depends on how much overhead there is in the LabVIEW operators for NaN but hopefully it's pretty ideal.That could be overcome with a bitmask check.
Posted 07 June 2012 - 08:27 PM
That could be overcome with a bitmask check.
Rolf Kalbermatter
CIT Engineering Netherlands
A division of Test & Measurement Solutions