manifolds.jl

Manifolds.jl provides a library of manifolds aiming for an easy-to-use and fast implementation.

https://github.com/juliamanifolds/manifolds.jl

Science Score: 77.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
    Links to: arxiv.org, zenodo.org
  • Committers with academic emails
    4 of 46 committers (8.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.6%) to scientific vocabulary

Keywords

julia manifolds

Keywords from Contributors

manopt optim data-structures automatic-differentiation pde unconstrained-optimization unconstrained-optimisation optimisation julialang interpretability
Last synced: 6 months ago · JSON representation ·

Repository

Manifolds.jl provides a library of manifolds aiming for an easy-to-use and fast implementation.

Basic Info
Statistics
  • Stars: 404
  • Watchers: 11
  • Forks: 63
  • Open Issues: 54
  • Releases: 0
Topics
julia manifolds
Created over 6 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing License Citation Zenodo

README.md

Manifolds.jl logo with text on the side

| Documentation | Source | Citation | |:-----------------:|:----------------------:|:------------:| | | Code Style: Blue | arXiv | | | CI | DOI | | | codecov |

Package Manifolds.jl aims to provide both a unified interface to define and use manifolds as well as a library of manifolds to use for your projects. This package is mostly stable, see https://github.com/JuliaManifolds/Manifolds.jl/issues/438 for planned upcoming changes.

Getting started

To install the package just type

julia using Pkg; Pkg.add("Manifolds")

Then you can directly start, for example to stop half way from the north pole on the Sphere to a point on the equator, you can generate the shortest_geodesic. It internally employs exp and log.

julia using Manifolds M = Sphere(2) γ = shortest_geodesic(M, [0., 0., 1.], [0., 1., 0.]) γ(0.5)

Ecosystem highlights

  • A wide selection of Riemannian manifolds like spheres, hyperbolic spaces, Stiefel and Grassmann manifolds.
  • Support for optimization on manifolds using Manopt.jl.
  • Support for many operations used in optimization and manifold-valued statistics with a focus on performance and ease of use.
  • Connection manifolds.
  • Lie groups.
  • Atlases, charts and custom metrics (work in progress).
  • A lightweight interface package: ManifoldsBase.jl.
  • Differential equations on manifolds: ManifoldDiffEq.jl.
  • Finite differences and automatic differentiation on manifolds using ManifoldDiff.jl (work in progress).
  • Integration and measures on manifolds: ManifoldMeasures.jl (work in progress).
  • Functional manifolds: FunManifolds.jl (work in progress).

Support

If you have any questions regarding the Manifolds.jl ecosystem feel free to reach us using Github discussion forums, Julia Slack, Julia Zulip or Julia discourse forums. We are interested in new applications and methods on manifolds -- sharing your work is welcome!

Citation

If you use Manifolds.jl in your work, please cite the following open access article

biblatex @article{AxenBaranBergmannRzecki:2023, AUTHOR = {Axen, Seth D. and Baran, Mateusz and Bergmann, Ronny and Rzecki, Krzysztof}, ARTICLENO = {33}, DOI = {10.1145/3618296}, JOURNAL = {ACM Transactions on Mathematical Software}, MONTH = {dec}, NUMBER = {4}, TITLE = {Manifolds.Jl: An Extensible Julia Framework for Data Analysis on Manifolds}, VOLUME = {49}, YEAR = {2023} }

To refer to a certain version we recommend to also cite for example

biblatex @software{manifoldsjl-zenodo-mostrecent, Author = {Seth D. Axen and Mateusz Baran and Ronny Bergmann}, Title = {Manifolds.jl}, Doi = {10.5281/ZENODO.4292129}, Url = {https://zenodo.org/record/4292129}, Publisher = {Zenodo}, Year = {2021}, Copyright = {MIT License} }

for the most recent version or a corresponding version specific DOI, see the list of all versions. Note that both citations are in BibLaTeX format.

Owner

  • Name: Julia Manifolds
  • Login: JuliaManifolds
  • Kind: organization

Citation (CITATION.bib)

@article{AxenBaranBergmannRzecki:2023,
    AUTHOR     = {Seth D. Axen and Mateusz Baran and Ronny Bergmann and Krzysztof Rzecki},
    EPRINT     = {2021.08777},
    EPRINTTYPE = {arXiv},
    JOURNAL    = {AMS Transactions on Mathematical Software},
    NOTE       = {accepted for publication},
    TITLE      = {Manifolds.jl: An Extensible {J}ulia Framework for Data Analysis on Manifolds},
    YEAR       = {2023}
}
@software{manifoldsjl-zenodo-mostrecent,
    AUTHOR    = {Seth D. Axen and Mateusz Baran and Ronny Bergmann},
    TITLE     = {Manifolds.jl},
    DOI       = {10.5281/ZENODO.4292129},
    URL       = {https://zenodo.org/record/4292129},
    PUBLISHER = {Zenodo},
    YEAR      = {2021},
    COPYRIGHT = {MIT License}
}

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 1,819
  • Total Committers: 46
  • Avg Commits per committer: 39.543
  • Development Distribution Score (DDS): 0.518
Past Year
  • Commits: 55
  • Committers: 12
  • Avg Commits per committer: 4.583
  • Development Distribution Score (DDS): 0.636
Top Committers
Name Email Commits
Ronny Bergmann g****t@r****t 876
Mateusz Baran m****9@g****m 603
Seth Axen s****n@g****m 187
Renee Dornig r****g@s****e 41
Manuel Weiss m****s@s****e 29
github-actions[bot] 4****] 13
dependabot[bot] 4****] 9
Olivier Verdier o****r@g****m 8
Patrick Kofod Mogensen p****n@g****m 6
Antoine Levitt a****t@g****m 3
Gilles Bareilles g****s@u****m 2
Dehann Fourie 6****n 2
hajg-ijk 1****k 2
Johannes Terblanche 6****e 2
Guillaume Dalle 2****e 2
Gilles Bareilles g****s@p****m 2
David Hong d****7 2
Constantin c****e 2
Marek Kaluba m****a@k****u 1
Ben Murrell m****b@g****m 1
Dilum Aluthge d****m@a****m 1
Erik Schnetter s****r@g****m 1
spaette 1****e 1
adienes 5****s 1
Vincent Tjeng v****g@g****m 1
Tim Quelch t****m@t****m 1
Simon Schölly s****l@g****m 1
Simon Jacobsson 4****n 1
Simon Jacobsson 4****r 1
Nikdwal n****e@g****m 1
and 16 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 104
  • Total pull requests: 275
  • Average time to close issues: 4 months
  • Average time to close pull requests: about 1 month
  • Total issue authors: 28
  • Total pull request authors: 25
  • Average comments per issue: 8.63
  • Average comments per pull request: 6.7
  • Merged pull requests: 208
  • Bot issues: 0
  • Bot pull requests: 50
Past Year
  • Issues: 16
  • Pull requests: 103
  • Average time to close issues: 26 days
  • Average time to close pull requests: 10 days
  • Issue authors: 11
  • Pull request authors: 12
  • Average comments per issue: 2.81
  • Average comments per pull request: 3.16
  • Merged pull requests: 66
  • Bot issues: 0
  • Bot pull requests: 29
Top Authors
Issue Authors
  • mateuszbaran (27)
  • kellertuer (20)
  • olivierverdier (15)
  • sethaxen (5)
  • dehann (4)
  • Affie (4)
  • r0uv3n (3)
  • Nimrais (3)
  • blegat (2)
  • jonas-pueschel (2)
  • lukas-weber (2)
  • cormullion (1)
  • arielgoodwin (1)
  • JuliaTagBot (1)
  • dnguyend (1)
Pull Request Authors
  • mateuszbaran (110)
  • kellertuer (88)
  • github-actions[bot] (44)
  • olivierverdier (16)
  • dependabot[bot] (16)
  • sethaxen (11)
  • gdalle (5)
  • dehann (5)
  • vtjeng (2)
  • spaette (2)
  • hajg-ijk (2)
  • sjacobsson (2)
  • r0uv3n (2)
  • murrellb (2)
  • mahaa2 (2)
Top Labels
Issue Labels
extend manifold (11) enhancement (10) new manifold (7) good first issue (4) bug (4) documentation (4) help wanted (4) discussion (4) small issue (3) breaking (2) restructure (2) LieGroups(.jl) (2) question (1) renaming (1) dependencies (1)
Pull Request Labels
Ready-for-Review (115) preview docs (110) dependencies (16) extend manifold (9) new manifold (8) breaking (5) documentation (4) enhancement (3) discussion (3) WIP (2) help wanted (1) restructure (1) github_actions (1)

Dependencies

.github/workflows/IntegrationTest.yml actions
  • actions/checkout v2 composite
  • julia-actions/julia-buildpkg latest composite
  • julia-actions/setup-julia v1 composite
.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite
.github/workflows/ci.yml actions
  • actions/checkout v2 composite
  • codecov/codecov-action v2 composite
  • julia-actions/julia-buildpkg latest composite
  • julia-actions/julia-processcoverage v1 composite
  • julia-actions/julia-runtest latest composite
  • julia-actions/setup-julia v1 composite
.github/workflows/clear_preview.yml actions
  • actions/checkout v2 composite
.github/workflows/documenter.yml actions
  • actions/checkout v2 composite
  • julia-actions/julia-docdeploy v1 composite
  • julia-actions/setup-julia latest composite
.github/workflows/format.yml actions
  • actions/checkout v2 composite
  • julia-actions/setup-julia v1 composite
  • reviewdog/action-suggester v1 composite
.github/workflows/nightly.yml actions
  • actions/checkout v2 composite
  • julia-actions/julia-buildpkg latest composite
  • julia-actions/julia-runtest latest composite
  • julia-actions/setup-julia v1 composite
.github/workflows/CompatHelper.yml actions