{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,2]],"date-time":"2026-07-02T01:51:35Z","timestamp":1782957095135,"version":"3.54.5"},"reference-count":43,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2023,12,15]],"date-time":"2023-12-15T00:00:00Z","timestamp":1702598400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"name":"National Science Foundation","award":["1650113"],"award-info":[{"award-number":["1650113"]}]},{"DOI":"10.13039\/501100001659","name":"Deutsche Forschungsgemeinschaft","doi-asserted-by":"crossref","award":["390727645"],"award-info":[{"award-number":["390727645"]}],"id":[{"id":"10.13039\/501100001659","id-type":"DOI","asserted-by":"crossref"}]},{"DOI":"10.13039\/501100001870","name":"Foundation for Polish Science","doi-asserted-by":"crossref","id":[{"id":"10.13039\/501100001870","id-type":"DOI","asserted-by":"crossref"}]},{"name":"European Union under the European Regional Development Fund","award":["POIR.04.04.00-00-15E5\/18"],"award-info":[{"award-number":["POIR.04.04.00-00-15E5\/18"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Math. Softw."],"published-print":{"date-parts":[[2023,12,31]]},"abstract":"<jats:p>\n            We present the Julia package\n            <jats:monospace>Manifolds.jl<\/jats:monospace>\n            , providing a fast and easy-to-use library of Riemannian manifolds and Lie groups. This package enables working with data defined on a Riemannian manifold, such as the circle, the sphere, symmetric positive definite matrices, or one of the models for hyperbolic spaces. We introduce a common interface, available in\n            <jats:monospace>ManifoldsBase.jl<\/jats:monospace>\n            , with which new manifolds, applications, and algorithms can be implemented. We demonstrate the utility of\n            <jats:monospace>Manifolds.jl<\/jats:monospace>\n            using B\u00e9zier splines, an optimization task on manifolds, and principal component analysis on nonlinear data. In a benchmark,\n            <jats:monospace>Manifolds.jl<\/jats:monospace>\n            outperforms all comparable packages for low-dimensional manifolds in speed; over Python and Matlab packages, the improvement is often several orders of magnitude, while over C\/C++ packages, the improvement is two-fold. For high-dimensional manifolds, it outperforms all packages except for Tensorflow-Riemopt, which is specifically tailored for high-dimensional manifolds.\n          <\/jats:p>","DOI":"10.1145\/3618296","type":"journal-article","created":{"date-parts":[[2023,9,2]],"date-time":"2023-09-02T11:30:34Z","timestamp":1693654234000},"page":"1-23","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":11,"title":["Manifolds.jl: An Extensible Julia Framework for Data Analysis on Manifolds"],"prefix":"10.1145","volume":"49","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-3933-8247","authenticated-orcid":false,"given":"Seth D.","family":"Axen","sequence":"first","affiliation":[{"name":"University of T\u00fcbingen, Germany"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-9667-5579","authenticated-orcid":false,"given":"Mateusz","family":"Baran","sequence":"additional","affiliation":[{"name":"AGH University of Krakow, Poland and Cracow University of Technology, Poland"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8342-7218","authenticated-orcid":false,"given":"Ronny","family":"Bergmann","sequence":"additional","affiliation":[{"name":"Norwegian University of Science and Technology, Trondheim, Norway"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-6834-2344","authenticated-orcid":false,"given":"Krzysztof","family":"Rzecki","sequence":"additional","affiliation":[{"name":"AGH University of Krakow, Poland and Cracow University of Technology, Poland"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2023,12,15]]},"reference":[{"key":"e_1_3_4_2_2","doi-asserted-by":"publisher","DOI":"10.1137\/16M1057978"},{"key":"e_1_3_4_3_2","doi-asserted-by":"publisher","DOI":"10.1515\/9781400830244"},{"key":"e_1_3_4_4_2","doi-asserted-by":"publisher","DOI":"10.2478\/amcs-2018-0029"},{"key":"e_1_3_4_5_2","doi-asserted-by":"publisher","DOI":"10.1137\/140953393"},{"key":"e_1_3_4_6_2","doi-asserted-by":"publisher","DOI":"10.1137\/15M101988X"},{"key":"e_1_3_4_7_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICIP.2017.8296271"},{"key":"e_1_3_4_8_2","doi-asserted-by":"publisher","DOI":"10.21105\/joss.03866"},{"key":"e_1_3_4_9_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10851-018-0840-y"},{"key":"e_1_3_4_10_2","doi-asserted-by":"publisher","DOI":"10.3389\/fams.2018.00059"},{"key":"e_1_3_4_11_2","doi-asserted-by":"publisher","DOI":"10.1137\/15M1052858"},{"key":"e_1_3_4_12_2","doi-asserted-by":"publisher","DOI":"10.1137\/141000671"},{"key":"e_1_3_4_13_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.exmath.2018.01.002"},{"key":"e_1_3_4_14_2","doi-asserted-by":"publisher","DOI":"10.1017\/9781009166164"},{"issue":"42","key":"e_1_3_4_15_2","first-page":"1455","article-title":"Manopt, a matlab toolbox for optimization on manifolds","volume":"15","author":"Boumal N.","year":"2014","unstructured":"N. Boumal, B. Mishra, P.-A. Absil, and R. Sepulchre. 2014. Manopt, a matlab toolbox for optimization on manifolds. Journal of Machine Learning Research 15, 42 (2014), 1455\u20131459. Retrieved from https:\/\/www.manopt.org","journal-title":"Journal of Machine Learning Research"},{"key":"e_1_3_4_16_2","doi-asserted-by":"publisher","DOI":"10.1146\/annurev.earth.28.1.169"},{"key":"e_1_3_4_17_2","doi-asserted-by":"publisher","DOI":"10.1080\/02626667.2012.743661"},{"key":"e_1_3_4_18_2","doi-asserted-by":"publisher","DOI":"10.2307\/2347881"},{"key":"e_1_3_4_19_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-1-4757-2201-7"},{"key":"e_1_3_4_20_2","doi-asserted-by":"publisher","DOI":"10.1214\/09-AOAS249"},{"key":"e_1_3_4_21_2","doi-asserted-by":"publisher","DOI":"10.1109\/TMI.2004.831793"},{"key":"e_1_3_4_22_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.sigpro.2005.12.018"},{"key":"e_1_3_4_23_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-85988-8_102"},{"key":"e_1_3_4_24_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10851-018-0865-2"},{"key":"e_1_3_4_25_2","doi-asserted-by":"publisher","DOI":"10.1090\/qam\/1668732"},{"key":"e_1_3_4_26_2","doi-asserted-by":"publisher","DOI":"10.1007\/BF01214029"},{"key":"e_1_3_4_27_2","series-title":"Proceedings of the 16th International Conference on Artificial Intelligence and Statistics","first-page":"325","volume":"31","author":"Ho Jeffrey","year":"2013","unstructured":"Jeffrey Ho, Guang Cheng, Hesamoddin Salehian, and Baba Vemuri. 2013. Recursive karcher expectation estimators and geometric law of large numbers. In Proceedings of the 16th International Conference on Artificial Intelligence and Statistics(Proceedings of Machine Learning Research, Vol. 31). Carlos M. Carvalho and Pradeep Ravikumar (Eds.), PMLR, Scottsdale, Arizona, 325\u2013332. Retrieved from http:\/\/proceedings.mlr.press\/v31\/ho13a.html"},{"key":"e_1_3_4_28_2","doi-asserted-by":"publisher","DOI":"10.1145\/3218822"},{"key":"e_1_3_4_29_2","doi-asserted-by":"publisher","DOI":"10.1002\/cpa.3160300502"},{"key":"e_1_3_4_30_2","unstructured":"Max Kochurov Rasul Karimov and Serge Kozlukov. 2020. Geoopt: Riemannian optimization in pytorch. arXiv:2005.02819. Retrieved from https:\/\/arxiv.org\/abs\/2005.02819"},{"key":"e_1_3_4_31_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-67675-3_15"},{"key":"e_1_3_4_32_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-1-4419-9982-5"},{"key":"e_1_3_4_33_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-91755-9"},{"key":"e_1_3_4_34_2","doi-asserted-by":"publisher","DOI":"10.1109\/IROS.2001.976367"},{"key":"e_1_3_4_35_2","unstructured":"Mayank Meghwanshi Pratik Jawanpuria Anoop Kunchukuttan Hiroyuki Kasai and Bamdev Mishra. 2018. McTorch a manifold optimization library for deep learning. arXiv:1810.01811. Retrieved from https:\/\/arxiv.org\/abs\/1810.01811"},{"key":"e_1_3_4_36_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.neuroimage.2004.07.021"},{"issue":"223","key":"e_1_3_4_37_2","first-page":"1","article-title":"Geomstats: A python package for riemannian geometry in machine learning","volume":"21","author":"Miolane Nina","year":"2020","unstructured":"Nina Miolane, Nicolas Guigui, Alice Le Brigant, Johan Mathe, Benjamin Hou, Yann Thanwerdas, Stefan Heyder, Olivier Peltre, Niklas Koep, Hadi Zaatiti, Hatem Hajri, Yann Cabanes, Thomas Gerald, Paul Chauchat, Christian Shewmake, Daniel Brooks, Bernhard Kainz, Claire Donnat, Susan Holmes, and Xavier Pennec. 2020. Geomstats: A python package for riemannian geometry in machine learning. Journal of Machine Learning Research 21, 223 (2020), 1\u20139. Retrieved from http:\/\/jmlr.org\/papers\/v21\/19-027.html","journal-title":"Journal of Machine Learning Research"},{"key":"e_1_3_4_38_2","volume-title":"Riemannian Geometric Statistics in Medical Image Analysis (1st.ed.)","author":"Pennec Xavier","year":"2019","unstructured":"Xavier Pennec, Stefan Sommer, and Tom Fletcher (Eds.). 2019. Riemannian Geometric Statistics in Medical Image Analysis (1st.ed.). Academic Press, San Diego."},{"key":"e_1_3_4_39_2","doi-asserted-by":"publisher","DOI":"10.1109\/TETC.2021.3074242"},{"key":"e_1_3_4_40_2","unstructured":"Oleg Smirnov. 2021. TensorFlow RiemOpt: a library for optimization on Riemannian manifolds. arXiv:2105.13921. Retrieved from https:\/\/arxiv.org\/abs\/2105.13921"},{"key":"e_1_3_4_41_2","doi-asserted-by":"publisher","DOI":"10.1109\/TPAMI.2010.184"},{"issue":"137","key":"e_1_3_4_42_2","first-page":"1","article-title":"Pymanopt: A python toolbox for optimization on manifolds using automatic differentiation","volume":"17","author":"Townsend James","year":"2016","unstructured":"James Townsend, Niklas Koep, and Sebastian Weichwald. 2016. Pymanopt: A python toolbox for optimization on manifolds using automatic differentiation. Journal of Machine Learning Research 17, 137 (2016), 1\u20135. Retrieved from http:\/\/jmlr.org\/papers\/v17\/16-177.html","journal-title":"Journal of Machine Learning Research"},{"key":"e_1_3_4_43_2","doi-asserted-by":"publisher","DOI":"10.1088\/1361-6560\/ab25ab"},{"key":"e_1_3_4_44_2","doi-asserted-by":"publisher","DOI":"10.1109\/TPAMI.2011.52"}],"container-title":["ACM Transactions on Mathematical Software"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3618296","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3618296","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T00:03:46Z","timestamp":1750291426000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3618296"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,12,15]]},"references-count":43,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2023,12,31]]}},"alternative-id":["10.1145\/3618296"],"URL":"https:\/\/doi.org\/10.1145\/3618296","relation":{},"ISSN":["0098-3500","1557-7295"],"issn-type":[{"value":"0098-3500","type":"print"},{"value":"1557-7295","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023,12,15]]},"assertion":[{"value":"2021-07-16","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2023-08-18","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2023-12-15","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}