-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Avoid lossing precision when scaling frequencies (#12392)
* Avoid lossing precision when scaling frequencies Classes in pulse_instruction.py scale frequency values to GHz by multipliying `ParameterExpression` with float 1e9. This can lead to numerical errors on some systems using symengine. Instead, this scaling can be done multiplying by integer 10**9. See: #12359 (comment) * Add release note --------- Co-authored-by: Jake Lishman <[email protected]>
- Loading branch information
1 parent
b12e9ec
commit 96607f6
Showing
2 changed files
with
14 additions
and
6 deletions.
There are no files selected for viewing
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
8 changes: 8 additions & 0 deletions
8
releasenotes/notes/fix-symbolic-unit-scaling-c3eb4d9be674dfd6.yaml
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
--- | ||
fixes: | ||
- | | ||
Fixed a floating-point imprecision when scaling certain pulse units | ||
between seconds and nanoseconds. If the pulse was symbolically defined, | ||
an unnecessary floating-point error could be introduced by the scaling | ||
for certain builds of ``symengine``, which could manifest in unexpected | ||
results once the symbols were fully bound. See `#12392 <https://github.com/Qiskit/qiskit/pull/12392>`__. |