OpenMX (Open source package for Material eXplorer) is a software package for
nano-scale material simulations based on density functional theories (DFT) [1],
norm-conserving pseudopotentials [19,20,21,22,23], and pseudo-atomic
localized basis functions [28]. The methods and algorithms used in OpenMX and their implementation
are carefully designed for the realization of large-scale *ab initio* electronic structure calculations
on parallel computers based on the MPI or MPI/OpenMP hybrid parallelism.
The efficient implementation of DFT enables us to investigate electronic, magnetic, and geometrical structures
of a wide variety of materials such as biological molecules, carbon-based materials, magnetic materials, and
nanoscale conductors. Systems consisting of 1000 atoms can be treated using the conventional diagonalization
method if several hundreds cores on a parallel computer are used.
Even *ab initio* electronic structure calculations for systems consisting of more than 10000 atoms are
possible with the O() method implemented in OpenMX if several thousands cores on a parallel computer are available.
Since optimized pseudopotentials and basis functions, which are well tested, are provided for many elements,
users may be able to quickly start own calculations without preparing those data by themselves.
Considerable functionalities have been implemented for calculations of physical properties such as magnetic, dielectric,
and electric transport properties. Thus, we expect that OpenMX can be a useful and powerful theoretical tool for
nano-scale material sciences, leading to better and deeper understanding of complicated and useful materials based on
quantum mechanics. The development of OpenMX has been initiated by the Ozaki group in 2000, and from then onward
many developers listed in the top page of the manual have contributed for further development of the open source
package.
The distribution of the program package and the source codes follow the practice of
the GNU General Public License (GPL) [59], and they are
downloadable from http://www.openmx-square.org/

Features and capabilities of OpenMX Ver. 3.7 are listed below:

- total energy and forces by cluster, band, O(), and low-order scaling methods
- local density approximation (LDA, LSDA) [2,3,4] and generalized gradient approximation (GGA) [5] to the exchange-correlation potential
- LDA+U methods [16]
- norm-conserving pseudopotentials [2,20,21,23]
- variationally optimized pseudo-atomic basis functions [28]
- fully and scalar relativistic treatment within pseudopotential scheme [10,19,13]
- non-collinear DFT [6,7,8,9]
- constraint DFT for non-collinear spin and orbital orientation [11]
- macroscopic polarization by Berry's phase [12]
- Divide-conquer (DC) method [37] and Krylov subspace method for O() eigenvalue solver
- Parallel eigensolver by ELPA [26]
- simple, RMM-DIIS [40], GR-Pulay [39], Kerker [41], and RMM-DIIS with Kerker's metric [40] charge mixing schemes
- exchange coupling parameter [14,15]
- effective screening medium (ESM) method [81,84]
- scanning tunneling microscope (STM) simulation [52]
- nudged elastic band (NEB) method [53]
- charge doping
- uniform electric field
- full and constrained geometry optimization
- electric transport calculations by a non-equilibrium Green's function (NEGF) method [54]
- construction of maximally localized wannier functions
- NVE ensemble molecular dynamics
- NVT ensemble molecular dynamics by a velocity scaling [17] and the Nose-Hoover methods [18]
- Mulliken, Voronoi, and ESP fitting analysis of charge and spin densities
- analysis of wave functions and electron (spin) densities
- dispersion analysis by the band calculation
- density of states (DOS) and projected DOS
- flexible data format for the input
- Interface to XCrySDen for visualizing data such as charge density [61]
- completely dynamic memory allocation
- parallel execution by Message Passing Interface (MPI)
- parallel execution by OpenMP
- useful user interface for developers

The collinear and non-collinear (NC) DFT methods are implemented including scalar and fully relativistic pseudopotentials, respectively. The constraint NC-DFT is also supported to control spin and orbital magnetic moments. These methods will be useful to investigate complicated NC magnetic structures and the effect of spin-orbit coupling. The diagonalization of the conventional calculations is performed by a ELPA based parallel eigensolver [26] which scales up to several thousands cores. The feature may allow us to investigate systems consisting of 1000 atoms using the conventional diagonalization. Not only the conventional diagonalization scheme is provided for clusters, molecules, slab, and solids, but also linear scaling and a low-order scaling methods are supported as eigenvalue solver. With a proper choice for the eigenvalue solvers, systems consisting of more than 10000 atoms can be treated with careful consideration to balance between accuracy and efficiency. As one of the other important features of OpenMX Ver. 3.7, it is worth mentioning that electronic transport calculations based on the NEGF method are supported not only for the collinear DFT method, but also the NC-DFT method with fully relativistic pseudopotentials and the constraint schemes.

We are continuously working toward development. Motivated contributors who want to develop the open source codes are always welcome.