Array programming with NumPy
Harris, C. R., Millman, K. J., van der Walt, S. J., Gommers, R., Virtanen, P., Cournapeau, D., Wieser, E., Taylor, J., Berg, S., Smith, N. J., Kern, R., Picus, M., Hoyer, S., van Kerkwijk, M. H., Brett, M., Haldane, A., del Río, J. F., Wiebe, M., Peterson, P., . . . Oliphant, T. E. (2020). Array programming with NumPy. Nature, 585(7825), 357-362. https://doi.org/10.1038/s41586-020-2649-2
Published in
NatureAuthors
Date
2020Copyright
© Authors, 2020
Array programming provides a powerful, compact and expressive syntax for accessing, manipulating and operating on data in vectors, matrices and higher-dimensional arrays. NumPy is the primary array programming library for the Python language. It has an essential role in research analysis pipelines in fields as diverse as physics, chemistry, astronomy, geoscience, biology, psychology, materials science, engineering, finance and economics. For example, in astronomy, NumPy was an important part of the software stack used in the discovery of gravitational waves1 and in the first imaging of a black hole2. Here we review how a few fundamental array concepts lead to a simple and powerful programming paradigm for organizing, exploring and analysing scientific data. NumPy is the foundation upon which the scientific Python ecosystem is constructed. It is so pervasive that several projects, targeting audiences with specialized needs, have developed their own NumPy-like interfaces and array objects. Owing to its central position in the ecosystem, NumPy increasingly acts as an interoperability layer between such array computation libraries and, together with its application programming interface (API), provides a flexible framework to support the next decade of scientific and industrial analysis.
...
Publisher
Nature Publishing GroupISSN Search the Publication Forum
0028-0836Publication in research information system
https://converis.jyu.fi/converis/portal/detail/Publication/42415434
Metadata
Show full item recordCollections
Additional information about funding
K.J.M. and S.J.v.d.W. were funded in part by the Gordon and Betty Moore Foundation through grant GBMF3834 and by the Alfred P. Sloan Foundation through grant 2013-10-27 to the University of California, Berkeley. S.J.v.d.W., S.B., M.P. and W.W. were funded in part by the Gordon and Betty Moore Foundation through grant GBMF5447 and by the Alfred P. Sloan Foundation through grant G-2017-9960 to the University of California, Berkeley. ...License
Related items
Showing items with similar title or keywords.
-
Monte Carlo -hiukkassimulaation toteuttaminen ja kiihdyttäminen Pythonin Numba-kirjastolla
Pitkänen, Tuomas (2022)Tutkielmassa vertaillaan alkuperäisen C-kielisen MCERD-simulaatiosovelluksen ja siitä tutkielmaa varten kehitettyjen Python-kielisten versioiden suorituskykyä. MCERD simuloi Elastic Recoil Detector (ERD) ja Rutherford ... -
SciPy 1.0 : fundamental algorithms for scientific computing in Python
Virtanen, Pauli; Gommers, Ralf; Oliphant, Travis E.; Haberland, Matt, Reddy, Tyler; Cournapeau, David; Burovski, Evgeni; Peterson, Pearu; Weckesser, Warren; Bright, Jonathan; van der Walt, Stéfan J.; Brett, Matthew; Wilson, Joshua; Millman, K. Jarrod; Mayorov, Nikolay; Nelson, Andrew R. J.; Jones, Eric; Kern, Robert; Larson, Eric; Carey, C. J.; Polat, İlhan; Feng, Yu; Moore, Eric W.; VanderPlas, Jake; Laxalde, Denis; Perktold, Josef; Cimrman, Robert; Henriksen, Ian; Quintero, E. A.; Harris, Charles R.; Archibald, Anne M.; Ribeiro, Antônio H.; Pedregosa, Fabian; van Mulbregt, Paul; SciPy 1.0 Contributors (Nature Publishing Group, 2020)SciPy is an open-source scientific computing library for the Python programming language. Since its initial release in 2001, SciPy has become a de facto standard for leveraging scientific algorithms in Python, with over ... -
GPAW : An open Python package for electronic structure calculations
Mortensen, Jens Jørgen; Larsen, Ask Hjorth; Kuisma, Mikael; Ivanov, Aleksei V.; Taghizadeh, Alireza; Peterson, Andrew; Haldar, Anubhab; Dohn, Asmus Ougaard; Schäfer, Christian; Jónsson, Elvar Örn; Hermes, Eric D.; Nilsson, Fredrik Andreas; Kastlunger, Georg; Levi, Gianluca; Jónsson, Hannes; Häkkinen, Hannu; Fojt, Jakub; Kangsabanik, Jiban; Sødequist, Joachim; Lehtomäki, Jouko; Heske, Julian; Enkovaara, Jussi; Winther, Kirsten Trøstrup; Dulak, Marcin; Melander, Marko M.; Ovesen, Martin; Louhivuori, Martti; Walter, Michael; Gjerding, Morten; Lopez-Acevedo, Olga; Erhart, Paul; Warmbier, Robert; Würdemann, Rolf; Kaappa, Sami; Latini, Simone; Boland, Tara Maria; Bligaard, Thomas; Skovhus, Thorbjørn; Susi, Toma; Maxson, Tristan; Rossi, Tuomas; Chen, Xi; Schmerwitz, Yorick Leonard A.; Schiøtz, Jakob; Olsen, Thomas; Jacobsen, Karsten Wedel; Thygesen, Kristian Sommer (American Institute of Physics, 2024)We review the GPAW open-source Python package for electronic structure calculations. GPAW is based on the projector-augmented wave method and can solve the self-consistent density functional theory (DFT) equations using ... -
Evidence-based programming language design : a philosophical and methodological exploration
Kaijanaho, Antti-Juhani (University of Jyväskylä, 2015)Background: Programming language design is not usually informed by empirical studies. In other fields similar problems have inspired an evidence-based paradigm of practice. Such a paradigm is practically inevitable in ... -
Concept Analysis in Programming Language Research : Done Well It Is All Right
Kaijanaho, Antti-Juhani (ACM, 2017)Programming language research is becoming method conscious. Rigorous mathematical or empirical evaluation is often demanded, which is a good thing. However, I argue in this essay that concept analysis is a legitimate ...