Research papers
2020 · Nature · 23,187 citations
Abstract 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 waves 1 and in the first imaging of a black hole 2 . 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.
2013 · Science · 16,837 citations
Background Metal-organic frameworks (MOFs) are made by linking inorganic and organic units by strong bonds (reticular synthesis). The flexibility with which the constituents’ geometry, size, and functionality can be varied has led to more than 20,000 different MOFs being reported and studied within the past decade. The organic units are ditopic or polytopic organic carboxylates (and other similar negatively charged molecules), which, when linked to metal-containing units, yield architecturally robust crystalline MOF structures with a typical porosity of greater than 50% of the MOF crystal volume. The surface area values of such MOFs typically range from 1000 to 10,000 m 2 /g, thus exceeding those of traditional porous materials such as zeolites and carbons. To date, MOFs with permanent porosity are more extensive in their variety and multiplicity than any other class of porous materials. These aspects have made MOFs ideal candidates for storage of fuels (hydrogen and methane), capture of carbon dioxide, and catalysis applications, to mention a few. Advances The ability to vary the size and nature of MOF structures without changing their underlying topology gave rise to the isoreticular principle and its application in making MOFs with the largest pore aperture (98 Å) and lowest density (0.13 g/cm 3 ). This has allowed for the selective inclusion of large molecules (e.g., vitamin B 12 ) and proteins (e.g., green fluorescent protein) and the exploitation of the pores as reaction vessels. Along these lines, the thermal and chemical stability of many MOFs has made them amenable to postsynthetic covalent organic and metal-complex functionalization. These capabilities enable substantial enhancement of gas storage in MOFs and have led to their extensive study in the catalysis of organic reactions, activation of small molecules (hydrogen, methane, and water), gas separation, biomedical imaging, and proton, electron, and ion conduction. At present, methods are being developed for making nanocrystals and supercrystals of MOFs for their incorporation into devices. Outlook The precise control over the assembly of MOFs is expected to propel this field further into new realms of synthetic chemistry in which far more sophisticated materials may be accessed. For example, materials can be envisaged as having (i) compartments linked together to operate separately, yet function synergistically; (ii) dexterity to carry out parallel operations; (iii) ability to count, sort, and code information; and (iv) capability of dynamics with high fidelity. Efforts in this direction are already being undertaken through the introduction of a large number of different functional groups within the pores of MOFs. This yields multivariate frameworks in which the varying arrangement of functionalities gives rise to materials that offer a synergistic combination of properties. Future work will involve the assembly of chemical structures from many different types of building unit, such that the structures’ function is dictated by the heterogeneity of the specific arrangement of their constituents.
2021 · Computer Physics Communications · 12,124 citations
Since the classical molecular dynamics simulator LAMMPS was released as an open source code in 2004, it has become a widely-used tool for particle-based modeling of materials at length scales ranging from atomic to mesoscale to continuum. Reasons for its popularity are that it provides a wide variety of particle interaction models for different materials, that it runs on any platform from a single CPU core to the largest supercomputers with accelerators, and that it gives users control over simulation details, either via the input script or by adding code for new interatomic potentials, constraints, diagnostics, or other features needed for their models. As a result, hundreds of people have contributed new capabilities to LAMMPS and it has grown from fifty thousand lines of code in 2004 to a million lines today. In this paper several of the fundamental algorithms used in LAMMPS are described along with the design strategies which have made it flexible for both users and developers. We also highlight some capabilities recently added to the code which were enabled by this flexibility, including dynamic load balancing, on-the-fly visualization, magnetic spin dynamics models, and quantum-accuracy machine learning interatomic potentials. Program Title: Large-scale Atomic/Molecular Massively Parallel Simulator (LAMMPS) CPC Library link to program files: https://doi.org/10.17632/cxbxs9btsv.1 Developer's repository link: https://github.com/lammps/lammps Licensing provisions: GPLv2 Programming language: C++, Python, C, Fortran Supplementary material: https://www.lammps.org Nature of problem: Many science applications in physics, chemistry, materials science, and related fields require parallel, scalable, and efficient generation of long, stable classical particle dynamics trajectories. Within this common problem definition, there lies a great diversity of use cases, distinguished by different particle interaction models, external constraints, as well as timescales and lengthscales ranging from atomic to mesoscale to macroscopic. Solution method: The LAMMPS code uses parallel spatial decomposition, distributed neighbor lists, and parallel FFTs for long-range Coulombic interactions [1]. The time integration algorithm is based on the Størmer-Verlet symplectic integrator [2], which provides better stability than higher-order non-symplectic methods. In addition, LAMMPS supports a wide range of interatomic potentials, constraints, diagnostics, software interfaces, and pre- and post-processing features. Additional comments including restrictions and unusual features: This paper serves as the definitive reference for the LAMMPS code. S. Plimpton, Fast parallel algorithms for short-range molecular dynamics. J. Comp. Phys. 117 (1995) 1–19. L. Verlet, Computer experiments on classical fluids: I. Thermodynamical properties of Lennard–Jones molecules, Phys. Rev. 159 (1967) 98–103.
2017 · Journal of Physics Condensed Matter · 7,665 citations
Quantum EXPRESSO is an integrated suite of open-source computer codes for quantum simulations of materials using state-of-the-art electronic-structure techniques, based on density-functional theory, density-functional perturbation theory, and many-body perturbation theory, within the plane-wave pseudopotential and projector-augmented-wave approaches. Quantum EXPRESSO owes its popularity to the wide variety of properties and processes it allows to simulate, to its performance on an increasingly broad array of hardware architectures, and to a community of researchers that rely on its capabilities as a core open-source development platform to implement their ideas. In this paper we describe recent extensions and improvements, covering new methodologies and property calculators, improved parallelization, code modularization, and extended interoperability both within the distribution and with external software.
2023 · Materials Science in Semiconductor Processing · 38 citations