-
Notifications
You must be signed in to change notification settings - Fork 37
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
Quaternions has no support for autodiff or symbolic expressions #8
Comments
Pull requests to change this are very welcome and easy to write :) |
Is this actually true? I tried to use The issue I ran into is this line in Quaternions.jl/src/Quaternion.jl Line 197 in 08d7fa7
I was trying to differentiate with respect to theta , and u was a Vector{Float64} , so I got the (correct) error that theta could not be converted to a Float64 .
I don't see any reason this conversion needs to happen. Indeed, autodiff worked for me after overriding the method to not have that line. I'll try to send in a PR. |
You're right, the Real annotation could not have been the problem.. |
Temporarily excludes notebook "6. Symbolics using SymPy" because of Quaternions.jl issue on handling symbols from SymPy.jl. (See JuliaGeometry/Quaternions.jl#8.)
* Add failing regression test for #8 (comment) * Remove unnecessary type conversion. Addresses #8. * minor: simplify the "test this doesn't crash" logic Co-authored-by: Seth Axen <[email protected]> Co-authored-by: Seth Axen <[email protected]>
I'll close this issue because this seems stale. Please comment here if you have further thoughts. |
Definitions like
Quaternion(s::Real, v1::Real, v2::Real, v3::Real, n::Bool = false)
prevents the use of packages likeDualNumbers
to perform automatic differentiation.http://www.juliadiff.org/
The type specification
::Real
further makes it impossible to use any kind of symbolic math software.This could be worth considering to make the package useful in more situations.
The text was updated successfully, but these errors were encountered: