-
-
Notifications
You must be signed in to change notification settings - Fork 4.8k
Quaternion - added Hamilton's "operators" for Quaternion class #22713
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
Conversation
✅ Hi, I am the SymPy bot (v162). I'm here to help you write a release notes entry. Please read the guide on how to write release notes. Your release notes are in good order. Here is what the release notes will look like:
This will be added to https://github.com/sympy/sympy/wiki/Release-Notes-for-1.11. Click here to see the pull request description that was parsed.
Update The release notes on the wiki have been updated. |
ping @oscarbenjamin |
Benchmark results from GitHub Actions Lower numbers are good, higher numbers are bad. A ratio less than 1 Significantly changed benchmark results (PR vs master) Significantly changed benchmark results (master vs previous release) before after ratio
[907895ac] [d7bddf4f]
- 248±3ms 155±9ms 0.62 large_exprs.TimeLargeExpressionOperations.time_subs
- 264±5μs 133±8μs 0.50 matrices.TimeMatrixExpression.time_MatMul
- 17.2±0.7ms 9.66±0.7ms 0.56 matrices.TimeMatrixExpression.time_MatMul_doit
- 4.89±0.01s 394±30ms 0.08 polygon.PolygonArbitraryPoint.time_bench01
+ 4.29±0.1ms 6.85±0.6ms 1.60 solve.TimeMatrixOperations.time_det(4, 2)
+ 4.02±0.1ms 6.67±0.1ms 1.66 solve.TimeMatrixOperations.time_det_bareiss(4, 2)
+ 45.6±2ms 81.0±4ms 1.78 solve.TimeMatrixSolvePyDySlow.time_linsolve(1)
+ 46.4±3ms 82.5±6ms 1.78 solve.TimeMatrixSolvePyDySlow.time_solve(1)
Full benchmark results can be found as artifacts in GitHub Actions |
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.
The new tests are great! The explicit equations like "norm*axis", and some changes in docstrings made everything more clear!
There are some small documentation writing issues, as detailed, this time I can see no problem in the Python code. I'm not being systematic with checking stuff like "ending dots" in the text, or capitalizing True/False/None (perhaps these should be always inside double backticks for proper rendering, where a ``True``
would be rendered like this: True
).
This will solve 11 tasks (out of 14) from the original issue. The missing tasks are:
- Add
Quaternion.versor()
as a new name toQuaternion.normalize()
- Add Hamilton operators to the
Quaternion
documentation - Add the deprecated terminology "norm" and "tensor" to the documentation
Sorry but I'm ain't understanding this , should a new method named
I feel these documentation changes be made in a separate PR after this is merged or maybe done with PR itself? |
ping @danilobellini |
Don't worry with those 3 other tasks, I was just stating the scope of these changes in order to avoid closing all the tasks from the original issue once this gets merged. |
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.
It's great! Sorry for being late to review! There's a single missed mod(q)
notation that should be \mathbf{T}(q)
instead, and some other minor details.
d75c09b
to
6320e4f
Compare
ping @danilobellini , I've made the changes as you have mentioned above, is this PR now good to be merged once all the tests are passing? |
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.
It's great! I don't know why you rebased it, but I'm assuming that it was to "move" onto a more recent commit, so I didn't review all the steps in history (I'm assuming they're all there with the proper authoring metadata). Looks good to me, and this implements 11 out of the 14 tasks from the original issue!
I edited the OP to say that this is a partial fix so that the issue is not closed when this is merged. Thanks @praneethratna and @mayankray2020 and also @danilobellini for this work. I'll merge this now. It would be good to update the original issue to say what is left to be done. |
References to other Issues or PRs
Brief description of what is fixed or changed
This is a partial fix for #20769 and also part of this PR is taken from unmerged PR #20853 and made changes in code and tests as requested by @danilobellini
Other comments
Release Notes