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

Suppress numpy warning during uarray creation #1070

Merged
merged 4 commits into from
Mar 9, 2023

Conversation

wshanks
Copy link
Collaborator

@wshanks wshanks commented Mar 8, 2023

Suppress invalid value warning from numpy during data processing

When handling level one data, DataProcessor would produce a numpy warning about
an invalid value. Briefly, the reason the warning is emitted is that
uncertainties calls numpy.vectorize which calls
uncertainties.core.Variable from within numpy C extension code. Variable
does a std_dev < 0 check and DataProcessor sets std_dev initially to
nan. When the CPU does a floating point comparison with nan, it sets an
exception flag. Python ignores this flag, but numpy emits a warning, so when
Variable is created from within the numpy C code the warning is detected and
emitted. As we know this chain of events will happen, we can simply ignore the
warning for this operation.

@wshanks wshanks marked this pull request as ready for review March 8, 2023 21:24
@wshanks
Copy link
Collaborator Author

wshanks commented Mar 8, 2023

This PR will eliminate the remaining warnings issued by sphinx when building the docs in #983 and so allow us to use -W to make future warnings fail the docs build, so that new warnings do not creep in.

@coruscating
Copy link
Collaborator

This looks good to me but I want @nkanazawa1989 to have the chance to look it over too.

@coruscating coruscating enabled auto-merge March 9, 2023 17:21
@coruscating coruscating added this pull request to the merge queue Mar 9, 2023
Merged via the queue into qiskit-community:main with commit 1790d40 Mar 9, 2023
@wshanks wshanks mentioned this pull request Mar 9, 2023
@wshanks wshanks deleted the uarray-warning branch December 20, 2023 00:00
wshanks added a commit to wshanks/qiskit-experiments that referenced this pull request Dec 20, 2023
This PR is a follow up to
qiskit-community#1070. It
suppresses numpy warnings during uncertainties array creation in more
places in the code. Something changed recently in the numpy code so that
it generates warnings when it used to suppress them, in particular when
using `numpy.vectorize` which wraps user-level Python code inside of
numpy C code and seems to lose context about warning state. See
numpy/numpy#21416 for more information.
github-merge-queue bot pushed a commit that referenced this pull request Dec 27, 2023
This PR is a follow up to
#1070. It
suppresses numpy warnings during uncertainties array creation in more
places in the code. Something changed recently in the numpy code so that
it generates warnings when it used to suppress them, in particular when
using `numpy.vectorize` which wraps user-level Python code inside of
numpy C code and seems to lose context about warning state. See
numpy/numpy#21416 for more information.
nkanazawa1989 pushed a commit to nkanazawa1989/qiskit-experiments that referenced this pull request Jan 17, 2024
This PR is a follow up to
qiskit-community#1070. It
suppresses numpy warnings during uncertainties array creation in more
places in the code. Something changed recently in the numpy code so that
it generates warnings when it used to suppress them, in particular when
using `numpy.vectorize` which wraps user-level Python code inside of
numpy C code and seems to lose context about warning state. See
numpy/numpy#21416 for more information.
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

Successfully merging this pull request may close these issues.

2 participants