-
Notifications
You must be signed in to change notification settings - Fork 56
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
Poincaré models for Hyperbolic space #219
Conversation
Codecov Report
@@ Coverage Diff @@
## master #219 +/- ##
==========================================
- Coverage 95.50% 95.17% -0.33%
==========================================
Files 65 69 +4
Lines 4089 4248 +159
==========================================
+ Hits 3905 4043 +138
- Misses 184 205 +21
Continue to review full report at Codecov.
|
I noticed something interesting: While to define your own allocate_result boils down to defining a function for So maybe something like |
That's a good idea. There may be some minor things to work out though. Type conversion would have to be more precise (forwarding the type argument of the wrapper) like |
So now the main thing missing might be either look for log/exp in the different 2 other models or derive conversions for tangent vectors accordingly (taking the derivative of the conversion functions). And it might be worth doing both. |
…the representation they convert into.
despite two conversions being done as double conversions, one conversion is missing, namely how to transform Poincaré ball tangent vectors to Hyperboloid ones. Still have to look for that formula (or derive it from the push forward of the isometry myself). |
…s for the new data types.
All methods should now be implemented, all formula documented (derived the last one by hand just now); still have to check whether the remaining exp/log/retract methods are failing due to a typo in the formulae or whether that's numerical instability. |
…sions that are ambiguous with StaticArrays.
It seems, that conversion between both Poincaré models still has a bug. |
…or seems to be in the tangent transforms.
Co-authored-by: Mateusz Baran <[email protected]>
…ngs in the tests, for example for in().
I convert everything to everything (and its 4 types) as well as points to points, point/vector to vector and point&vector to point&vector. We can omit the last case if that is not needed, especially if I change the point/vector->vector interface now anyways. |
Co-authored-by: Mateusz Baran <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks OK now 👍 .
Oh well... it fails on MacOS but not Ubuntu or Windows... |
I think it works now 🎉. |
I started testing how different formats for the same manifold work, i.e. besides the arrays, which are assumed to be form the hyperbolic model implicitly there is now
Where all have types for their
MPoints
andTVectors
. All concerning converts have been implemented. Still todoallocate_result
functions