JuliaManifolds / Manifolds.jl

Manifolds.jl provides a library of manifolds aiming for an easy-to-use and fast implementation.
https://juliamanifolds.github.io/Manifolds.jl
MIT License
373 stars 55 forks source link

RFC / WIP Start submersions #734

Closed kellertuer closed 2 months ago

kellertuer commented 3 months ago

This is a start to get submersions and their differentials implemented for the manifolds where that is reasonable.

Before continuing a bit of feedback about the approach and naming of the functions would be great.

codecov[bot] commented 3 months ago

Codecov Report

Attention: Patch coverage is 0% with 5 lines in your changes missing coverage. Please review.

Project coverage is 99.53%. Comparing base (732ab72) to head (9048938).

Files Patch % Lines
src/manifolds/Sphere.jl 0.00% 3 Missing :warning:
src/submersion.jl 0.00% 2 Missing :warning:
Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #734 +/- ## ========================================== - Coverage 99.58% 99.53% -0.05% ========================================== Files 114 115 +1 Lines 11244 11249 +5 ========================================== Hits 11197 11197 - Misses 47 52 +5 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

mateuszbaran commented 3 months ago

As far as I can tell, Boumal and Absil's books you refer to in the comment refer to significantly different things. You probably want the $$h$$ function from Boumal's section 7.7 ("Manifolds defined by h(x) = 0)? I wouldn't call that a submersion, maybe something related to level sets?

kellertuer commented 3 months ago

We also indeed might not need these, we just noticed, so it would anyways be a point whether we do those.

It is a super special case of a submersion, but I would also be fine with level set

kellertuer commented 2 months ago

Since for now we do not directly need these, I will close this PR and open an issue for that first to discuss the details before restarting an implementation.