Skip to content

Product of a Rotor with a Vector of Rotor(s) #70

@empet

Description

@empet

Thank you for Quaternionic.jl. It is almost perfect for my needs in developing HopfFibrations.jl.
There is a small issue: the product between a Rotor{T} and a Vector{Rotor{T}} is a Vector{Quaternion{T}}, instead of a Vector{Rotor{T}}:

julia> p = Rotor(3,-1,2, 1.2)
rotor(0.7634798978389314 - 0.2544932992796438𝐢 + 0.5089865985592876𝐣 + 0.30539195913557254𝐤)

julia> vr = [Rotor(-2,1,1,3), Rotor(2,0,-1,3)]
2-element Vector{RotorF64}:
 rotor(-0.5163977794943222 + 0.2581988897471611𝐢 + 0.2581988897471611𝐣 + 0.7745966692414834𝐤)
                 rotor(0.5345224838248488 + 0.0𝐢 - 0.2672612419124244𝐣 + 0.8017837257372732𝐤)

julia> p*vr
2-element Vector{QuaternionF64}:
 -0.6965248056142178 + 0.6439568957565411𝐢 + 0.2102716394307073𝐣 + 0.23655559435954573𝐤
  0.29927125898501883 + 0.3536842151641131𝐢 + 0.27206478089547165𝐣 + 0.843400820775962𝐤

julia> vr*p
2-element Vector{QuaternionF64}:
 -0.6965248056142179 + 0.013141977464419141𝐢 - 0.34169141407489934𝐣 + 0.630814918292122𝐤
   0.29927125898501883 - 0.6257489960595848𝐢 - 0.1360323904477358𝐣 + 0.7073684303282262𝐤

Taking into account that operations involved in computing Hopf fibres and Hopf tori are such multiplications it would be nice to get the respective products as Vector(s) of Rotor(s), according to the theory.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions