-
Notifications
You must be signed in to change notification settings - Fork 71
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
Correctly handle GINI negative calibration values #488
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
GINI calibration values can be negative (for the data value range), and GEMPAK uses the left most bit of the stored integer to designate the signedness. Fixes Unidata#480 Minor addition - since the long_name attribute was there and so close, go ahead an add the standard_name attribute to the x and y coordinate variables.
// 0x7FFFFFFF -> left-most bit is zero, all the rest are 1's. | ||
// The bit-wise & results in flipping the first bit of "mind" (because we know it is 1 at this point, and | ||
// 1 & 0 -> 0) while retaining the rest of the pattern of mind (because 0 & 1 -> 0, 1 & 1 -> 1). | ||
// To negate, just use the negative sign...we could do (mind & 0x7FFFFFFF) + 1, but let's not hang out |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't understand the "+1" bit here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missed the tilde...should be ~(mind & 0x7FFFFFFF) + 1
Update incoming
dopplershift
approved these changes
Sep 22, 2020
lesserwhirls
added a commit
to lesserwhirls/thredds
that referenced
this pull request
Oct 8, 2020
Backport of Unidata/netcdf-java#488 GINI calibration values can be negative (for the data value range), and GEMPAK uses the left most bit of the stored integer to designate the signedness. Fixes Unidata/netcdf-java#480. Minor addition - since the `long_name` attribute was there and so close, go ahead an add the `standard_name` attribute to the `x` and `y` coordinate variables.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
GINI calibration values can be negative (for the data value range), and GEMPAK uses the left most bit of the stored integer to designate the signedness. Fixes #480
Minor addition - since the
long_name
attribute was there and so close, go ahead an add thestandard_name
attribute to thex
andy
coordinate variables.This change is