Skip to content
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

Rotor type only is correct for at maximum 3 dimensions #22

Open
porky11 opened this issue Aug 6, 2017 · 2 comments
Open

Rotor type only is correct for at maximum 3 dimensions #22

porky11 opened this issue Aug 6, 2017 · 2 comments

Comments

@porky11
Copy link

porky11 commented Aug 6, 2017

for heigher dimeinsions, rotors just cover simple rotors (products of vectors), not products of bivectors, as they should (for example in 4d, there is no pseudoscalar in the rotor type)
This isn't a problem in code, when using auto, but if you want to create a 4d object, that has a rotation:

struct object {
    vector pos;
    rotor rot;
}
@wolftype
Copy link
Owner

This is an interesting point. While one could define such a type:
using Rotor_ = decltype ( Bivector() * Bivector())
I can see it being useful to have a GeneralRotor type built-in, in addition to the scalar + bivector Rotor. I'd rather not change the meaning of Rotor itself -- that is, I'd rather keep them simple. The question is what to call the product of Bivectors version. Perhaps GeneralRotor. Thoughts?

@porky11
Copy link
Author

porky11 commented Sep 6, 2017

Problem: The Product of bivectors is not a general rotor for arbitrary dimensions.
I'd prefer to call the general rotor Rotor, because that's what rotors are normally called. The simple rotors may be called SimpleRotor for efficiency reasons, but in such case, using auto type seems more useful. I don't think, this would cause problems.
But GeneralRotor also sounds ok.
Having arbitrary subalgebras may also be useful (even grade (which are rotors) or other factors) if possible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants