6.17. Solid ‣ OpenMX menu

Menu related to OpenMX

6.17.1. How to configure OpenMX

VPS and PAO files to be loaded in Winmostar’s workflow and keyword settings are loaded from the path specified by the OPENMX_DATA_PATH environment variable in CygwinWM. In addition, for remote jobs, the same version of OpenMX as OpenMX on CygwinWM must be installed on the remote server, and the same environment variable OPENMX_DATA_PATH as on CygwinWM must be set on the remote server.

When using OpenMX3.8 or earlier with DFT_DATA13, copy omxprm_dft_data13.txt from the wm_systemwmx folder to the UserPref folder as omxprm.txt, and the recommended settings for DFT_DATA13 will be used by default for the VPS and PAO files. DFT_DATA13 is used by default for VPS and PAO files.

6.17.2. Workflow configuration

Configure and run the OpenMX calculation flow in project mode.

Preset

Import and saves a preset of settings.

# of Jobs

Specifies the number of jobs.

Enable parameter/structure scan

This feature requires the purchase of an add-on. It makes it possible to run multiple calculations where only certain parameters differ (parameter scan) or to run calculations with the same parameters for multiple structures (structure scan).

Clicking on Config opens the configuration window for the scan calculation. For a parameter scan, select %WM_SCAN1% for the Target Variable and enter the parameters you want to set for %WM_SCAN1% in each line of the Values. Then enter %WM_SCAN1% in the parameters you want to set in the workflow settings window or in the keyword settings window. For structure scans, select %WM_STRUCT% for the Target Variable when the animation appears in the molecule display area (e.g. by opening an SDF file).

After the scan calculation is finished, use File ‣ Project ‣ Scan Results Display to tabulate the calculation results.

Import

Load the settings output by Export. Click on the arrow to the right of the button to recall settings previously used in the same project or on Winmostar.

Export

Outputs the configuration to a file.

OK

Runs a calculation or generates a file with the settings. See For project mode for more information.

Details

Set detailed calculation conditions. The Configure will be launched.

Task

Specifies the type of calculation.


Settings
Energy
MD.Type=nomd
Optimize(Atom)
MD.Type=Opt
Optimize(Atom&Cell)
MD.Type=RFC5
BOMD
MD.Type=NVE
Charge

Specifies the charge for the entire system.

Spin

Set up spin polarization calculations.

K points

Specifies how the K point is calculated.

Pressure

Specify pressure.

Functional

Specifies a functional.

Properties

Calculate the physical properties checked in conjunction with the time of calculation.

Precision

Sets the calculation accuracy.


Settings
Extra-low
SCF.criterion=5e-6
MD.Opt.criterion=5e-3
KSpacing=0.44(metal) 0.63(nonmetal)
SCF.EnergyCutoff=80(metal) 80(nonmetal)
Low
SCF.criterion=5e-7
MD.Opt.criterion=5e-4
KSpacing=0.44(metal) 0.63(nonmetal)
SCF.EnergyCutoff=120(metal) 120(nonmetal)
Medium
SCF.criterion=1e-7
MD.Opt.criterion=2.5e-4
KSpacing=0.31(metal) 0.50(nonmetal)
SCF.EnergyCutoff=160(metal) 160(nonmetal)
High
SCF.criterion=5e-8
MD.Opt.criterion=1.5e-4
KSpacing=0.25(metal) 0.44(nonmetal)
SCF.EnergyCutoff=300(metal) 200(nonmetal)
Extra-High
SCF.criterion=2.5e-8
MD.Opt.criterion=5e-5
KSpacing=0.08(metal) 0.11(nonmetal)
SCF.EnergyCutoff=600(metal) 400(nonmetal)
Metal

Enable smearing. Set SCF.ElectronicTemperature to 800 if enabled, 300 if disabled, and also adjust the contents of Precision (above).

6.17.3. Configure

Set the OpenMX calculation conditions. Click the Run button to execute the calculation immediately after setting, or the: guilabel:` OK` button to return to the main window.

See Run for behavior when clicking Run.

The Reset button returns to the default state. Click the OK button to reflect the settings and return to the main window. Cancel button closes the window without doing anything.

When calling this function, if the structure displayed in the main window can be changed to a primitive cell, Convert Lattice is automatically executed.

Preset

Select a settings preset.

Use MPI

Specify whether to perform parallel computation using MPI when running OpenMX. Enter the number of MPI processes in the horizontal column.

Use OpenMP

Specify whether to perform parallel computation using OpenMP when running OpenMX. Enter the number of OpenMP threads in the horizontal column.

Basic tab
Restart

Set to On to take over the final state of the job being taken over.

Restart Directory

Specify the rst folder of the job to take over if other than Restart=Off.

XcType

Specify exchange correlation potential. You can specify “LDA”, “LSDA-CA”, “LSDA-PW”, or “GvG-PBE”. Here, “LSDA-CA” is the Ceperley-Alder local spin density function, and “LSDA-PW” is the Perdew-Wang local spin density function with zero density gradient in the GGA format. “GGA-PBE” is a GGA functional proposed by Perdew et al.

EigenvalueSolver

Specify the calculation method for eigenvalue problems with “scf.EigenvalueSolver”. O (N) divide-and-conquer method is “DC”, O (N) Krylov subspace method is “Krylov”, numerically exact low-order scaling method is “ON2”, cluster calculation is “Cluster”, band calculation is specified “Band”.

Specify Kgrid by spacing

Set Kgrid with the Spacing parameter ( Spacing parameter ).

Kgrid

In OpenMX, the first Brillouin zone in k-space is separated by an equidistant mesh. At that time, when “Band” is specified with the “scf.EigenvalueSolver” keyword, the number of grids (n1, n2, n3) for discretizing the first Brillouin zone in k-space must be specified with the “scf.Kgrid” keyword. Specify as “n1 n2 n3” to discretize the reciprocal lattice vector in k space.

energycutoff

Specifies the cutoff energy that defines the integration grid spacing. This integration grid is used to calculate matrix elements for the difference electron Coulomb potential and exchange correlation potential, and to solve the Poisson equation using the Fast Fourier Transform (FFT).

System.Charge

Specifies the charge for the entire system.

ElectronicTemperature

Set the electronic temperature (K).

MD.Type

Specifies the type of molecular dynamics calculation or structure optimization. Currently available options are: No MD (“ Nomd ”), structural optimization of atomic coordinates (“ Opt ”), Structural optimization (“RFC5”), including unit cell flexibility, NVE Ensemble MD (“NVE>”), NVT ensemble MD (“NVT_VS”) by speed scaling method, NVT ensemble MD (“NVT_NH”) by the Nose-Hoover method.

Advanced(1) tab
criterion

Specify the convergence condition for the SCF calculation (in Hartree). The SCF iteration ends when the condition dUele < scf.criterion is met. Here dUele is the absolute difference in band energy between the current SCF iteration and the previous iteration. The default value is 1.0e-6 (Hartree units).

maxIter

Sets the maximum number of SCF iterations. The SCF iteration loop ends with the number of times specified by this keyword even if the convergence condition is not met.

Mixing.Type

Specify the electron density mixing method to generate the electron density (or density matrix) that is input to the next iteration step of the SCF calculation. Simple mixing method (“Simple”), Guaranteed-Reduction Pulay method (“GR-Pulay”), RMM-DIIS method (“RM-DIIS”), Kerker method (“Kerker”), or RMM-DIISK method (“RMM- DIISK”) or RMM-DIISH method (“RM-DIISH”) can be specified. OpenMX’s simple mixing method has been improved to reference the convergence history to speed up the convergence. When using “GR-Pulay”, “RMM-DIIS”, “Kerker” or “RMM-DIISK”, the SCF calculation can be accelerated by paying attention to the following points. Some convergence is required before mixing begins in a way that conforms to the Pulay method. Therefore, use a slightly larger “scf.Mixing.StartPulay” value. A good value for “scf.Mixing.StartPulay” is 10-30. For metal systems, use a high “scf.ElectronicTemperature” value. When “scf.ElectronicTemperature” is small, numerically unstable behavior is often seen. Increase the value of “scf.Mixing.History”. In most cases, “scf.Mixing.History = 30” is a reasonable value. Among the mixing methods described above, “RMM-DIISK” is the most robust.

Init.Mixing.Weight

Specify the initial mixing ratio used in the Simple, GR-Pulay, RMM-DIIS, Kerker, RMM-DIISK, and RMM-DIISH methods. Valid range is 0 <Init.Mixing.Weight < 1

Min.Mixing.Weight

Specifies the lower limit of the mixing ratio in simple and Kerker mixing methods.

Max.Mixing.Weight

Specifies the upper limit of the mixing ratio in simple and Kerker mixing methods.

Mixing.History

In the GR-Pulay method, RMM-DIIS method, Kerker method, RMM-DIISK method and RMM-DIISH method, the input electron density (Hamirutonian) in the next iteration step of SCF is estimated based on the electron density of the past SCF iteration (Hamiltonian). ). The “scf.Mixing.History” keyword specifies the number of past SCF iteration steps used for this estimation. For example, if “Mixing.History” is set to 3, the 6th SCF iteration takes into account the 5th, 4th, and 3rd step electron density in the past.

Mixing.StartPulay

Specify the SCF step that starts the GR-Pulay, RMM-DIIS, Kerker, RMM-DIISK, and RMM-DIISH methods. SCF steps up to the start of these methods use simple or Kerker mixing.

lapack.dste

Select the LAPACK routine.

ProExpn.VNA

Set the neutral atom potential VNA to” ON “when expanding with the projection operator, otherwise set to” OFF “. When set to” OFF “, the matrix elements of the VNA potential are calculated using a discrete grid in real space.

HoppingRanges

Defines the radius (Å) of the sphere centered on each atom. In the DC method and the O (N) Krylov subspace method, a cluster is formed by selecting the atoms contained in this sphere.

KrylovH.order

Specifies the Krylov subspace dimensions for the Hamiltonian of each cut cluster.

KrylovS.order

If you set” Exact.Inverse.S = off “in the keyword below, the inverse matrix of the overlap integral is approximated using the Krylov subspace method. At this time, specify the dimension of the Krylov subspace method of the overlap matrix for each cut cluster.

Exact.Inverse.S

When set to” on “, the inverse of the overlap matrix of each clipped cluster is evaluated strictly. Please refer to the keyword” KrylovS.order “above when setting to” off “.

Recalc.Buffer

If set to” on “, the buffer matrix is recalculated for each SCF iteration. If” off “, the buffer matrix is calculated in the first SCF step and fixed in subsequent SCF iterations.

Expand.Core

When set to” on “, the core region consists of atoms in a sphere with a radius of 1.2×rmin. Where rminis the distance between the central atom and the nearest neighbor. This core region defines the set of vectors used in the first step when generating the Krylov subspace. If” off “, the central atom is considered the core region.

Advanced(2) tab
maxIter

Specify the maximum number of iterations for MD and structural optimization calculations.

Opt.criterion

If you choose a structure optimization method with the” Type “keyword, set the convergence condition (Hartree/Bohr) with the keyword” Opt.criterion “. Structural optimization ends when the maximum absolute value of the force applied to the atom is smaller than the value specified here.

Opt.DIIS.History

When performing structure optimization using “DIIS”, “EF”, or “RF”, the “Opt.DIIS.History” keyword is used to specify the past step number to be referred to for structure optimization.

Opt.StartDIIS

Specify the step to start structural optimization with “DIIS”, “EF”, and “RF” with the “Opt.StartDIIS” keyword. The steepest descent method is used in the previous steps before starting the DIIS-type structural optimization.

Opt.EveryDIIS

Specifies how often to switch between structural optimization by “DIIS”, “EF”, or “RF” and structural optimization by the steepest descent method; this setting is ignored when MD.Type=Opt.

Spin/DFT+U tab
SpinPolarization

Specifies the non-spin or spin polarization of the electron system. Specify “ON” to perform spin polarization calculations and “OFF” to perform non-spin polarization calculations. In addition to the two aforementioned options, specify the option “NC” to perform a non-colinear DFT calculation. For spin polarization calculations, the initial spin density is set according to the spin density (interpreted as the difference between the number of Up and Down spin electrons) set for each atom in the main window. The spin density can be set with Charge/Spin Density and so on.

SpinOrbit.Coupling

Specifies spin-orbit interaction.

Constraint.NC.Spin

Specifies whether to perform constrained DFT calculations for non-colinear spin orientations.

Constraint.NC.Spin.V

Specifies the strength of the constraint in constrained DFT calculations for noncollinear spin orientations.

Hubbard.U

Set to“ ON ”for LDA + U and GGA + U calculations.

Hubbard.Occupation

In the LDA + U method, you can choose from three occupancy operators: “onsite”, “full” and “dual”.

MD tab
TimeStep

Specify time step (fs).

Applied.Pressure

Specify pressure (GPa).

NH.Mass.HeatBath

If you select “NVT_NH” for the “Type” keyword, this keyword sets the mass of the heat bath. Units are unified atomic mass units (units where the mass of the main isotope of a carbon atom is 12.0).

TempControl

Specify the temperature of atomic motion in MD and NVT ensembles. If” NVT_VS “is selected, the temperature of atomic motion can be controlled as shown in the example below.

<MD.TempControl
  3
  100   2  1000.0  0.0
  400  10   700.0  0.4
  700  40   500.0  0.7
MD.TempControl>

The description starts with “<MD.TempControl” and ends with “MD.TempControl>” .The first number “3” indicates the number of lines for the temperature specification that follows. There are three lines in the example. The first column of the following row indicates the number of MD steps, and the second column specifies the MD step interval for speed scaling. In the example, speed scaling is performed every 2 steps up to the 100th step, every 10 steps between 100 and 400 steps, and every 40 steps between 400 and 700 steps. Columns 3 and 4 specify temperature (K) and scaling parameter alpha, respectively. For details, refer to the “Molecular Dynamics” chapter. On the other hand, for NVT_NH, the temperature of atomic motion can be controlled with the following description.

<MD.TempControl
  4
  1    1000.0
  100  1000.0
  400   700.0
  700   600.0
MD.TempControl>

The description starts with “<MD.TempControl” and ends with “MD.TempControl>”. The first number “4” refers to the number of lines that follow the temperature specification. In this example, there are 4 lines. The first and second columns of the subsequent rows specify the number of MD steps and the temperature of the atomic motion, respectively. The temperature between the specified MD steps is linearly complemented.

Others tab

Enter any OpenMX parameter.

Preview tab

A preview of the configuration keywords will be displayed.

Options tab
level.of.stdout

Specify the level of output information to the standard output. If” 0 “is specified, the minimum information is output. If “1”, additional information is output in addition to the minimum output. “2” is an option for developers.

level.of.fileout

Specify the level of output information to the output file. If “0” is specified, the minimum information is output (no Gaussian cube and grid file output). “1” is the standard output information level. If “2”, additional information is output in addition to the standard output.

Atoms.Coord.Unit

Specify the unit of the atomic coordinate.

Edit and confirm Atoms.SpeciesAndCoordinates

Edit Atoms.SpeciesAndCoordinates directly.

Properties tab
dispersion

Set to“ ON ”to evaluate band dispersion.

Use default path

Sets the path of k points for evaluating band variance based on the automatically determined Bravais lattice type.

DOS.fileout

Set to ON to evaluate the total density of states (DOS) and projected partial density of states (PDOS).

Erange

Specify the energy range (lower limit and upper limit) for DOS calculation separated by single-byte spaces.

Kgrid

Specify (n1, n2, n3) grid points to discretize the first Brillouin zone for DOS calculations.

MO.fileout

If you want to output molecular orbitals to a file, specify “ON”.

num_HOMOs

Specify the number of highest occupied molecular orbitals (HOMO) to output.

num_LUMOs

Specify the number of lowest unoccupied molecular orbitals (LUMOs) to output.

Nkpoint

If “fileout”is set to “ON” and “EigenvalueSolver” in the SCF tab is set to “Band”, specify the number of k points to output MO with the “Nkpoint” keyword.

Species tab
Atom

Specify the name of the atomic species.

Basis

Specify the number of primitive trajectories and the number of reduced trajectories.

PAO

Specify the file name without extension of pseudo-atomic base orbit.

VPS

Specify file name without pseudopotential extension.

Reset

Reset settings.

Import

Loads a configuration file.

Export

Outputs a configuration file.

6.17.4. Run

Execute OpenMX

The following files are generated upon execution. As an example, the file/folder name when the input file is: file:` dia.mxin` and System.Name is wm is shown.

Type

Description

bat file
dia.bat

A batch file for running OpenMX. Run dia.sh via CygwinWM.

sh file
dia.sh

A shell script file for running OpenMX.

log file
dia.log

log file of dia.sh

mxout file
dia.mxout

Calculation output file. A copy of wm.out in the working folder.

Working folder
dia_mx_data\
Working folder

The following files are generated in the working folder. Only the main files are shown here.

Type

Description

tmp.dat
File to specify calculation conditions. A copy of dia.mxin.
tmp.std
This is a redirected file of OpenMX standard output.
wm.out
History of SCF calculation and structure optimization, Mulliken charge, total energy and dipole moment are preserved.
wm.xyz
The final geometric structure obtained by MD or structural optimization is preserved.
wm.bulk.xyz
“scf.EigenvalueSolver = Band” will output the atomic coordinates including the copied cell atoms.
wm.md
Atomic coordinates for each MD step are saved.
wm.md2
Atomic coordinates in the last MD step are saved. An atom is specified using the specified atomic species symbol.
wm.ene
Calculated values for each MD step are saved. The contents of each saved value can be checked in the“ iterout.c ”routine.
wm.Band
Band dispersion data file is saved.
wm.Dos.val
Eigenvalue data file for calculating density of states.
wm.Dos.vec
Eigenvector data file for calculating density of states.
wm.tden.cube
The total electron density in Gaussian cube format is stored.
wm.sden.cube
The spin electron density is preserved when spin polarization calculations are performed using “LSDA-CA”, “LSDA-PW”, “GGA-PBE”.
wm.dden.cube
The difference electron density calculated based on the superposition of the electron density of the isolated atoms of the constituent atoms is stored.
wm.v0.cube
Kohn-Sham potential is preserved except for non-local potential of upspin.
wm.v1.cube
Kohn-Sham potential is excluded except for non-local potential of downspin in spin polarization calculations.
wm.vhart.cube
The difference electron Hartree potential resulting from the difference electron density is preserved.

Hint

**Working folder**

  • A working folder is a folder with the suffix of the name of the file opened in the main window.

    • ** The suffix depends on the type of solver. **

    • For example, for Gromacs, if the file opened in the main window is aaa.gro and the suffix is _gmx_tmp, the name of the working folder is aaa_gmx_tmp.

  • It must be on the same level as the file opened in the main window.

  • Although processing continues in the working folder with the same name for continued jobs, by default, a backup of the working directory of the previous job is created immediately before the continuous job is executed.

    • The name of the backup will be the lowest number in the range where there are no duplicate names. For example, if your working folder is aaa_gmx_tmp, it will be aaa_gmx_tmp1.

    • ** Unnumbered directories are always up to date. **

Job is run through Winmostar Job Manager.

6.17.5. Open Log File (mxout)

Open the log file with a text editor.

6.17.6. Show log excerpts

Displays excerpts of key information from the log file.

6.17.7. Animation (md)

Create and display animations such as structure optimization and molecular dynamics calculations from md file information.

Please refer to Animation operation area for how to operate the animation. From the animation operation area, you can calculate the radial distribution function, self-diffusion coefficient, mean-square displacement, and displacement of each atom.

6.17.8. energy change

6.17.8.1. SCF energy change (std)

Select the std file and display a graph of the residuals.

Please refer to How to operate the graph for how to operate the graph drawing area.

6.17.9. Analyses

6.17.9.1. Density of of States

Specify the working folder ( dia_mx_data\) and display the density of states.

Calculation must be completed with Dos.fileout = on

Please refer to How to operate the graph for how to operate the graph drawing area.

6.17.9.2. Partial DOS

Specify the working folder ( dia_mx_data\) and display the partial density of states (PDOS).

Calculation must be completed with Dos.fileout = on

Please refer to How to operate the graph for how to operate the graph drawing area.

6.17.9.3. Band Structure

Specify the working folder (dia_mx_data\) and display the band structure.

Calculation must be completed with Band.dispersion=on

6.17.9.4. Density/Spin/Energy Distribution

Specify the cube file and display the electron density, spin density, and energy distribution.

See Surface Setup / Cubgen window for how to operate subwindows.

6.17.9.5. Fermi Surface

Specify the working folder ( dia_mx_data\) and display the fermi surface.

Use FermiSurfer <https://mitsuaki1987.github.io/fermisurfer/index_ja.html> to display the Fermi surface. In # of K Points, specify the number of k-point divisions when calculating bands, and press the Calc button to display the Fermi surface.