r - Calculating the analogue of Euler angles/Tait-Bryan angles for dimensions >3 -
while trying answer another question, issue of how calculate euler angles dimensions > 3 came up. rspincalc
package has straightforward dcm2ea
function converting 3d rotation matrix euler or tait-bryan angles, handles specific case of 3 dimensions. wikipedia page on euler angles briefly discusses issue of extending euler angles higher dimensions , cites italian paper apparently generalises method greater numbers of dimensions. unfortunately, neither italian nor maths quite taking paper , creating usable r function.
my current method, used in this answer little cumbersome, least. use ryacas
package create symbolic matrix composite of series of rotations arbitrary number of dimensions. can solved iteratively against known rotation matrix find angles required. works, gets increasingly slow once number of dimensions 5 or more.
is there better way achieve objective, either through implementation of method in italian paper or else?
there interesting paper here 1972 addresses issue of computing n-dimensional euler angles given n-dimensional orthogonal matrix (which assume have). skimmed paper , gives formulas seem need:
- the transformation matrix given n-dimensional euler angles
- the n-dimensional euler angles given transformation matrix
- alternative parameterizations since equations given in paper address 1 particular parameterization, common euler representations.
i did not try re-derive , validate equations give explicit formulas implement them low-dimensions have answers , see if agree.
Comments
Post a Comment