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

More elegant way to access v1 programmatically? #61

Open
eschnett opened this issue Apr 30, 2020 · 1 comment
Open

More elegant way to access v1 programmatically? #61

eschnett opened this issue Apr 30, 2020 · 1 comment
Labels

Comments

@eschnett
Copy link
Contributor

I am using projective or conformal bases, such as

julia> S = S"∞++"
julia> B = Λ(S)

I want to write dimension-generic code, and want to access the i-th basis vector. Unfortunately, Grassmann counts starting from v∞, so that v₁ is B.v(2) etc. It would be more convenient if B.v(1) returned v1, independent of whether v∞ or v∅ were present. I currently have to write B.v(i+1) or B.v(i+2), depending on the basis.

I realize this would be a breaking change, and obviously this is not an urgent feature request.

@chakravala
Copy link
Owner

As it turns out, the space S"∞++" is isomorphic to ℝ^3, aside from having a dedicated index for the up and down projection of the Riemann sphere. Therefore, it should be trivial for you to simply switch to using the ℝ^3 space instead of S"∞++" if it is the basis ordering which you don't like. By switching to the ℝ^3 you can pick v3 as your projection basis instead.

The only difference is that ℝ^3 does not currently have an automatic up and down projection method defined for it, thus you'll have to define your own method.

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

No branches or pull requests

2 participants