Daniel, I replied too quickly. This is a package with about 1000 lines of code distributed over 94 separate functions. So I think it is beyond the scope of the Function Repository.
Not clear to me what you mean. Please explain a bit more.
Sorry. My understanding and explanation was not clear enough.
For example, Julia’s library rotation.jl has a QuatRotation that represents a unit quaternion. Since your package is 3D rotation oriented, I was wondering if you have such a mechanism.
Use Conjugate[q] if the quaternion is symbolic, otherwise you can also use q^-1
I got it!
Note also that the standard package does not handle symbolic quaternions
Oh,really? I had not considered that some mathematica packages do not support symbolic processing.
There is a description of quaternion on this page, but does it not support symbolic processing?
For example, Julia’s library rotation.jl has a QuatRotation that
represents a unit quaternion. Since your package is 3D rotation
oriented, I was wondering if you have such a mechanism.
The function that converts a quaternion to explicit rotation parameters is quatToFromθV[quat]. Numeric input will be normalized, while symbolic input is assumed to be normalized.
It could still be a good item in the newer paclet repository. Alternatively, have a look at EisensteinIntegers in the Wolfram Function Repository for a way to bundle functionality that might be applicable here as well.
Note also that the standard package does not handle symbolic quaternions
Well, the standard package does handle symbolic input to some functions. NonCommutativeMultiply is one example. But several functions does not accept symbolic input. So it is better to say that symbolic support is limited.
I see that the quaternion-related matters in Mathematica are quite complicated. I will first try to see if the standard package and your QuaternionsHM can be adapted to my use case.