Quantum 1 Modules



D       DMol3--Keyword Descriptions

This section documents all keywords that are recognized by DMol3, including many that are not accessible from the Cerius2·DMol3 interface.

Commands are described in alphabetical order in this section. Frequently used keywords are listed according to function in DMol3--Keyword Reference.

The input file

The .input file is a simplified command input file that consists of keywords followed by values (real, integer, or character). These keywords and their values specify flags for the calculation, such as the type of basis set or the maximum number of self-consistent iterations to be employed.

How to use the .input file and run DMol3 in standalone mode is outlined in DMol3--Running in Standalone


Format for documenting DMol standalone commands

The rest of this section contains detailed descriptions of each of the commands available in the standalone version. For each command, documentation is divided into subsections.

Conventions used in documenting the commands are described below, along with a short description of the intent of each subsection.

Syntax

The Syntax subsection begins with the command syntax presented in as generic a form as possible. Several type style conventions are used to distinguish different kinds of words. For example:

command_keyword [value_keyword, ..., value_number, ...]

Words (or letters) in bold and not italicized indicate the names of keywords that must be typed exactly as shown. However, they are case-insensitive and may be typed in lower-, upper-, or mixed case.

A hash mark (#) at the beginning of a line indicates a comment line. It can also be used to temporarily comment-out a command.

Words in bold italics indicate options that must be replaced with appropriate text, as indicated in the table of allowed values that follows the syntax line for each command.

The values appropriate to each keyword are also listed and may be (as appropriate) numbers or enumerated constants:

Optional item(s) are enclosed in square brackets ([ ]), and, if there is more than one, the items are separated by commas. Ellipses (...) indicate that a kind of item may be repeated. The brackets, commas, and ellipses themselves are used for documentation only and should not be included in the real command.


Keyword specifications

Keywords are documented in alphabetical order. For a functional classification, please see DMol3--Keyword Reference.

Atom_Calculation

Purpose

The Atom_Calculation keyword indicates that an .inatom file is read in, so that a user-specified atomic basis set can be created.

Syntax

Atom_Calculation value

command keyword value keywords default meaning
Atom_Calculation  
default  
default  
Use default DMol3 definition of atomic basis set.  
inatom  
 
Use .inatom file to define atomic basis set.  
other string  
 
Use named file to define atomic basis set.  

Description

The atomic calculations are performed using information in the .inatom file for the DFT functional as specified by Functional keyword. Atomic calculations can be relativistic if the Pseudopotential VPSR keyword is specified.

Atom_Rcut

Purpose

The Atom_Rcut keyword allows you to specify the use of real-space cutoffs in the calculation of atomic basis sets.

Syntax

Atom_Rcut value

command keyword values default meaning
Atom_Rcut  
real > 0  
5.5  
The basis set cutoff in angstroms.  

Description

You can input Atom_Rcut in Bohrs by specifying:


Atom_Rcut            real>0            AU

For Harris calculations, you may use an even smaller cutoff of 4.5 Å. A smaller cutoff improves computational performance but may diminish the accuracy of calculations.

Aux_Density

Purpose

The Aux_Density keyword specifies multipolar fitting functions.

Syntax

Aux_Density value ...

command keyword value keywords corresponds to Lmax of: default meaning
Aux_Density  
monopole  
0  
 
Specifies angular momentum (Lmax) of the multipolar fitting functions.  
dipole  
1  
 
quadrupole  
2  
 
octupole  
3  
3  
hexadecapole  
4  
 
user  
 
 

Description

Aux_Density is used to specify the maximum angular momentum of the multipolar fitting functions that specify the analytical form of the charge density and the Coulombic potential.

Use of higher multipolar fitting functions may require the use of a better integration grid (see Integration_Grid).

By default, the Lmax for the hydrogen atom is 1 less than for all other atoms. You can input Lmax for every type of atom by using the user keyword.

Example

Consider Fe(C5H5)2. An Aux_Density specification of:


Aux_Density                  quadrupole

means that up to l = 2 functions are used to fit the density of all atoms except H (for which l = 1).

If you want to use a different fitting accuracy for Fe, you can use the user option, for example:


Aux_Density          user
6 2
1 1
26 3
which tells the program to use up to l = 2 (quadrupole-type) functions on C, only dipole functions on H, and up to l = 3 functions on Fe.

The default specification is octupole, which corresponds to the following Lmax values:


Lmax  3  2  3

and which tells the program to use up to l = 3 functions on C, quadrupole-type functions on H, and up to l = 3 functions on Fe.

Aux_Partition

Purpose

The Aux_Partition keyword allows you to select a partition function which projects a total density into the multipolar components on every atom of the system. This produces the model (auxiliary or fitted) density, which can than be used to obtain the Coulomb potential by solving the Poisson equations.

Note

The keyword for integration is Integration_Partition.

Syntax

Aux_Partition value

command keyword values default meaning
Aux_Partition  
integer  
11  
Selects the partition function.  
1 The value of this number = n, where n is shown as ng in the equations under Description.

Description

The value refers to the auxiliary partition function to use in the calculation. See Eq. 20 for the definition of a partition function.

The preferred choice for the auxiliary partition function is:

Eq. 2        

where r = |ri - R|, r0 = 0.5, and a is the atomic charge density for atom . This is function number 1.

Other options for auxiliary partition functions include:

Eq. 3        

Eq. 4        

Eq. 5        

Eq. 6        

Eq. 7        

Eq. 8        

Eq. 9        

Eq. 10        

Eq. 11        

Eq. 12        

Eq. 13        

Basis

Purpose

Basis allows you to specify the atomic basis set. This is the number and type of atomic orbitals used in the expansion of the molecular orbitals.

Syntax

Basis value_keyword
[value_number ...
blank line]

command keyword value keywords default meaning
Basis  
min  
 
Use minimal basis set; 1 atomic orbital for each orbital that is occupied in the free atom.  
dn  
 
Use double-numeric quality basis set; approximately 2 atomic orbitals for each 1 occupied in free atom.  
dnp  
 
Use DN basis with polarization functions, i.e., functions with angular momentum one higher than that of highest occupied orbital in free atom1.  
dnd  
dnd  
Double-numerical + d-DNP basis except that no p functions are used on hydrogen.  
mixed  
 
Allows you to customize the basis set, starting on the following line.  
extended  
 
Use additional polarization functions as calculated by the atomic program.  
all  
 
Use all the orbitals calculated by the atomic program.  
user  
 
Select your own orbital basis set from the orbitals calculated by the atomic program.  
1 For example, the polarization function on H is 2p, on C is 3d, and on Fe is 4p.

Description

The size of the DND basis is comparable to Gaussian 6-31G* basis sets, and DNP basis sets are comparable to 6-31G** sets. However, the numerical basis set is much more accurate than a Gaussian basis set of the same size.

Minimal basis sets are generally inadequate for anything but qualitative results, while DNP sets are the most reliable. The min, dn, dnd, and dnp options operate by instructing the program to ignore the extraneous functions. This is reflected in the output file when certain orbitals may be designated as eliminated from the basis set.

At the beginning of a DMol3 run, an .inatm file, which is an input file for the atomic program, is created. The atomic program generates all atomic numeric basis sets, typically with several polarization functions. These functions can be used in a DMol3 calculation by using the extended or all keyword. You can select specific orbitals to be used in the calculation by using the user keyword.

When mixed is specified, you can select different basis sets for different atoms.

Format

Starting on the line immediately after the line containing the Basis keyword, enter the data for those unique atom types for which you want to redefine the basis set. The data have the format:


atomic_number   nfrz  nnls(i), i=1,nfrz

nfrz is the number of atomic basis functions on the atom, and nnls(i) tells DMol3 how to treat the ith function of the atom. nnls(i) = 0 means to include basis function +i in the calculation; and nnls(i) = 2 means to delete this basis function entirely.

Repeat atomic_number nfrz nnls(i), i=1,nfrz for each atom type, and terminate the list with a blank line.

Examples

Example 1

As an example of mixed basis set input, consider the water molecule:


Basis            mixed
8 dnp
1 dn
<BLANK LINE>
This specifies a DNP basis set for oxygen and a DN basis set for hydrogen.

Example 2

As an example of a user-specified basis set consider the following input and corresponding relevant parts of the output for an H2O molecule:

Input:


        Basis    dn

Output:


Specifications for basis set selection:
Hydrogen nbas= 1 z= 1. 3 radial functions, spin energy= -0.033Ha
n=1 L=0 occ= 1.00 e= -0.233107Ha -6.3432eV
n=1 L=0 occ= 0.00 e= -0.845000Ha -22.9936eV
n=2 L=1 occ= 0.00 e= -2.000000Ha -54.4228eV eliminated
Oxygen nbas= 2 z= 8. 7 radial functions, spin energy= -0.054Ha
n=1 L=0 occ= 2.00 e= -18.758046Ha -510.4326eV
n=2 L=0 occ= 2.00 e= -0.871142Ha -23.7050eV
n=2 L=1 occ= 4.00 e= -0.338180Ha -9.2023eV
n=2 L=0 occ= 0.00 e= -2.130079Ha -57.9624eV
n=2 L=1 occ= 0.00 e= -1.593478Ha -43.3608eV
n=3 L=2 occ= 0.00 e= -2.722222Ha -74.0755eV eliminated
n=3 L=2 occ= 0.00 e= -1.388886Ha -37.7935eV eliminated
The polarization functions have been eliminated from the basis set for both H and O.

Input:


Basis      user
8 7 0 0 0 0 0 2 0
Output:


Specifications for basis set selection:
Hydrogen nbas= 1 z= 1. 3 radial functions, spin energy= -0.033Ha
n=1 L=0 occ= 1.00 e= -0.233107Ha -6.3432eV
n=1 L=0 occ= 0.00 e= -0.845000Ha -22.9936eV
n=2 L=1 occ= 0.00 e= -2.000000Ha -54.4228eV eliminated
Oxygen nbas= 2 z= 8. 7 radial functions, spin energy= -0.054Ha
n=1 L=0 occ= 2.00 e= -18.758046Ha -510.4326eV
n=2 L=0 occ= 2.00 e= -0.871142Ha -23.7050eV
n=2 L=1 occ= 4.00 e= -0.338180Ha -9.2023eV
n=2 L=0 occ= 0.00 e= -2.130079Ha -57.9624eV
n=2 L=1 occ= 0.00 e= -1.593478Ha -43.3608eV
n=3 L=2 occ= 0.00 e= -2.722222Ha -74.0755eV eliminated
n=3 L=2 occ= 0.00 e= -1.388886Ha -37.7935eV
Here, the user redefined the oxygen basis set by selecting the second polarization function to be available for molecular calculations of H2O.

Input:


Basis    dnp

Output:


Specifications for basis set selection:
Hydrogen nbas= 1 z= 1. 3 radial functions, spin energy= -0.033Ha
n=1 L=0 occ= 1.00 e= -0.233107Ha -6.3432eV
n=1 L=0 occ= 0.00 e= -0.845000Ha -22.9936eV
n=2 L=1 occ= 0.00 e= -2.000000Ha -54.4228eV
Oxygen nbas= 2 z= 8. 7 radial functions, spin energy= -0.054Ha
n=1 L=0 occ= 2.00 e= -18.758046Ha -510.4326eV
n=2 L=0 occ= 2.00 e= -0.871142Ha -23.7050eV
n=2 L=1 occ= 4.00 e= -0.338180Ha -9.2023eV
n=2 L=0 occ= 0.00 e= -2.130079Ha -57.9624eV
n=2 L=1 occ= 0.00 e= -1.593478Ha -43.3608eV
n=3 L=2 occ= 0.00 e= -2.722222Ha -74.0755eV
n=3 L=2 occ= 0.00 e= -1.388886Ha -37.7935eV eliminated
An alternative input that leads to the same output is:


Basis      user 
1 3 0 0 0
8 7 0 0 0 0 0 0 2
<BLANK LINE>
Finally, you have complete control over the design of basis sets by specifying a run_name.inatom file. DMol3 creates an .inatm scratch file by default.

If the Atom_Calculation inatom keyword is specified, it overwrites the default design of orbitals. Instead, a run_name.inatm file is read and used to create atomic orbitals. The Basis keyword is still needed, since it serves to select which atomic orbitals are used in molecular calculations.

The contents and format of the .inatom file are documented below:

Table 1

line contents format or value meaning
1  
za,ncha,nspin,istart,ithrow  
(f10.5,4i5)  
Repeat lines 1 and 2 for all atoms; terminate input by setting za < 0.  
where:

za  
 
Nuclear charge of atom.  
 
<0  
Terminate input.  
ncha  
 
Number of orbital occupations to be changed from that for neutral atom to specify occupations in ions; if hydrogenic orbitals will be calculated, ncha is number of hydrogenic functions to be included in calculation (see examples below).  
nspin  
0  
Spin-restricted calculation (same orbitals for different spins).  
1  
Spin-unrestricted calculation (different orbitals for different spins).  
istart  
 
Starting potential for atomic DFT calculation.  
-1  
Hydrogenic orbitals (all orbitals must be specified with ncha).  
0  
Thomas-Fermi potential.  
1  
Charge density from previous atom used to generate potential.  
2  
Thomas-Fermi potential without self-consistent iterations (not recommended).  
3  
Calculate orbitals using potential generated from previous atom without iterations (not recommended).  
ithrow  
0  
Write calculated orbitals in .basis file for use as basis sets in molecular calculations; a 0 in the .basis file tells DMol that this is start of basis set for new atom.  
-1  
Write calculated orbitals in .basis file after orthogonalizing against all stored orbitals since ithrow = 0--used to save orbitals from ionic calculations that are being used to generate extended basis sets; orthogonalization is essential for this--a value of -1 tells DMol these atomic orbitals are associated with same atom as previous input.  
2  
Discard calculated orbitals but write atomic energy to the .basis file--used to compute atomic spin energies, which are needed to compute dissociation energies in molecular calculations.  
1  
Discard calculated orbitals--used to generate starting orbitals for other cases, e.g., those that have difficulty converging.  
 
2  
nprinc, Lorb, oup, odown  
free format  
ncha lines of this type are required.  
where:

nprinc  
 
Principal quantum number of orbital whose occupation is to be changed.1  
 
Lorb  
 
Angular momentum quantum number of orbital whose occupation is to be changed.  
oup  
 
Occupation change for spin up.  
odown  
 
Occupation change for spin down.  
1 For hydrogenic orbitals (istart = -1), nprinc and lorb are hydrogenic functions to be included unchanged.

The sample below demonstrates how using extended basis sets is accomplished for several atoms. The general procedure used is:

1. Solve the atomic LDF equations for the neutral molecule. This provides a minimal basis set.

2. Compute the spin energy from a spin-unrestricted calculation but do not save the orbitals.

3. Compute a second set of basis functions by solving the LDF equations for the +2 ion. This provides a double-zeta-type basis set.

4. Compute the following:

a. For first-row atoms, compute hydrogenic d, p, and s orbitals using Z = 5 and again for Z = 7. This provides basis functions for polarization and extended basis sets. (These values of Z have been empirically determined to yield good polarization functions.)

b. For second-row atoms, the ionic (+2) calculation includes extended basis functions, 3d and in some cases 4s.

c. For heavier atoms, compute a third set of basis functions by solving the LDF equations for an excited state. This gives extended basis sets for heavier atoms.

These basis sets are cumulative, in the sense that you can stop after any of the first three steps and have a well-defined basis set. All these orbitals appear in the .basis file, but any of them may be deleted from the calculation by specifying the appropriate input through the Basis keyword of the .input file. In this way you can use a minimal, DN, DNP, or larger basis, as described here.

The following sample input and comments illustrate the use of the .inatom file in generating basis sets.


INPUT                      Comments
_____ _________
1., 0, 0, 0, 0, Normal run for hydrogen.
1., 0, 0, 1, 2, Start with previous orbitals; compute spin energy.
1.3, 2, 0, -1, -1, Generate hydrogenic orbitals with z = 1.3 for use as extended basis set;
orthogonalize to existing orbitals.
1, 0, 0., 0., Use a 1s hydrogenic orbital.
2, 1, 0., 0., Use a 2p hydrogenic orbital.

3., 0, 0, 0, 0, Normal run for Li.
3., 0, 0, 1, 2, Start with previous orbitals, compute spin energy.
3., 2, 0, 1, -1, Start with previous orbitals; compute orbitals using new occupation to
be specified on next 2 lines; orthogonalize before writing out.
2, 0, -1., 0., Remove one alpha electron from 2s.
2, 1, 0., 0. Use a 2p with unchanged occupation.

5., 3, 0, -1, -1, Generate hydrogenic orbitals using Z = 5, for use as polarization and
extended functions.
3, 2, 0., 0. Use 3d.
2, 1, 0., 0., Use 2p.
1, 0, 0., 0., Use 1s.
7., 3, 0, -1, -1, Generate hydrogenic orbitals using Z = 7, for use as polarization and
extended functions.
3, 2, 0., 0. Use 3d.
2, 1, 0., 0., Use 2p.
1, 0, 0., 0., Use 1s.

6., 0, 0, 0, 0, Normal run for carbon.
6. 0, 0, 1, 2, Start with previous orbitals, compute spin energy.
6., 1, 0, 1, -1 Start with previous orbitals; generate orbitals using new occupation
specified by 1 line (this will be C+2).
2, 1, -2., 0. Remove 2 alpha electrons from 2p.
5., 3, 0, -1, -1, Generate hydrogenic orbitals using Z = 5, for use as polarization and
extended functions.
3, 2, 0., 0. Use 3d.
2, 1, 0., 0., Use 2p.
1, 0, 0., 0., Use 1s.
7., 3, 0, -1, -1, Generate hydrogenic orbitals using Z = 7, for use as polarization and
extended functions.
3, 2, 0., 0. Use 3d.
2, 1, 0., 0., Use 2p.
1, 0, 0., 0., Use 1s.

11., 0, 0, 0, 0, Normal run for sodium.
11., 0, 0, 1, 2, Start with previous orbitals, compute spin energy.
11., 4, 0, 1, -1 Start with previous orbitals; generate orbitals using new occupation
specified by next 4 lines; this will be Na+2 with extended functions.
2, 1, -1., 0. Remove one alpha electron from 2p.
3, 0, -1., 0., Remove one alpha electron from 3s.
3, 1, 0. 0., Use 3p orbital, unoccupied.
3, 2, 0., 0., Use 3d orbital, unoccupied (polarization).

21., 0, 0, 0, 0, Normal run for scandium.
21., 0, 0, 1, 2, Compute spin energy.
21., 1, 0, 1, -1 Compute orbitals using new occupation defined by one line;
this will be Sc+2.
4, 0, -.1, -1. Remove one alpha, one beta electron from 4s.
21., 2, 0, 1, -1, Compute more orbitals using new occupation defined by next 2 lines;
this will be a 4s4p excited state.
4, 1, 1., 0. Use 4p with 1 alpha electron added.
4, 0, -1., -1. Use 4s with 1 alpha electron removed.

-1. End of input.

Basis_Version

Purpose

The Basis_Version keyword allows users to select the revision of basis sets to be used in calculations.

Syntax

Basis_Version value

command keyword value keywords default meaning
Basis_Version  
default  
default  
Use basis set from the DMol 3.5 release.  
 
v4.0.0  
 
Use basis set from the DMol 400 release.  

Description

This option allows for choosing a particular type of basis set. It is recommended that the v4.0.0 basis set be used for COSMO calculations, and the default be used for all other calculations.

Bond_Order

Purpose

The Bond_Order keyword allows for calculation of the Mulliken and Mayer bond orders and valence indices.

Syntax

Bond_Order value

command keyword value keywords default meaning
Bond_Order  
off  
off  
Do not calculate bond orders.  
on  
 
Do calculate bond orders.  

Description

This option allows for useful analysis of bond and valence indices, which can be correlated with classical chemistry concepts of bond and reactivity.

Bond orders can be calculated only for systems with C1 symmetry.

Calculate

Purpose

The value of Calculate tells DMol which type of calculation you want to perform.

Syntax

Calculate value_keyword

command keyword value keywords default meaning
Calculate  
energy  
energy  
Compute electronic energy for given geometry and any requested properties (Mulliken, dipole moment, plots, etc.).  
gradient  
 
Compute energy and gradient for a given geometry (no optimization), followed by any requested properties.  
optimize  
 
Perform a geometry optimization, followed by any requested properties.  
frequency  
 
Compute harmonic frequencies at specified geometry, followed by any requested properties.  
optimize_frequency  
 
Same as frequency, but optimize geometry first.  
TS_search  
 
Perform a transition-state search, followed by any requested properties.  
TS_search_frequency  
 
Same as frequency, but find transition state first.  
properties  
 
Calculate properties without calculating energy.  
Molecular_Dynamics  
 
Perform molecular dynamics (constant NVE or constant NVT) calculations.  
Simulated_Annealing  
 
Perform complex combinations of NVE, NVT, melting, quenching and damping procedures.  
 
scan_pes  
 
Perform a scan of an internal or Cartesian coordinate as specified by keyword scan_dim_1  

Description and example

The Calculate keyword selects the type of calculation to perform. You provide one of the value keywords, for example:


Calculate  frequency

Charge

Purpose

The Charge keyword specifies the total molecular charge (valid only for nonperiodic models).

Syntax

Charge value

command keyword values default meaning
Charge  
real  
0.0  
Total molecular charge of ionic systems.  

Description

When Charge and Occupation Fermi are specified, DMol3 automatically chooses appropriate occupations for a neutral or ionic species.

If a user-specified occupation is used (Occupation Fixed), then Charge is automatically overridden: the total number of electrons specified by the user input is counted and used to determine the charge.

COSMO

Purpose

The COSMO keyword is used to specify the COSMO solvation procedure.

Syntax

COSMO value

command keyword values default meaning
COSMO  
on  
 
Perform COSMO calculations.  
off  
off  
Do not use COSMO procedure.  

Description

The COnductor-like Screening MOdel (COSMO) (Klamt and Schuurmann, 1993) is a continuum solvation model where the solute molecule forms a cavity within the dielectric continuum of permittivity that represents the solvent. The charge distribution of the solute polarizes the dielectric medium. The response of the dielectric medium is described by the generation of screening (or polarization) charges on the cavity surface.

The screening charges are determined from the boundary condition of vanishing potential on the surface of a conductor. COSMO provides the electrostatic contribution to the free energy of solvation. In addition there are nonelectrostatic contributions to the free energy of solvation which describe the dispersion interactions and cavity formation effects.

The COSMO model has been incorporated into the DMol3 program (Andzelm et al. 1995). The electrostatic COSMO potential is included in every SCF cycle. Therefore the DMol3/COSMO density is obtained using the variational scheme. This allows for accurate calculation of analytic gradients and efficient geometry optimization.

The DMol3/COSMO method has been tested extensively (Klamt et al. 1998). In order to improve accuracy, particularly for anions, the outlying charge correction was introduced (Klamt and Jonas, 1996). For further details, discussion of accuracy of the method and its extension, the user is encouraged to study the included references.

COSMO_RS

Purpose

The COSMO_RS keyword tells DMol3 to calculate macroscopic thermodynamic properties of solvents using the COSMO_RS model.

Syntax

COSMO_RS value

command keyword values default meaning
COSMO_RS  
on  
 
Perform COSMO_RS calculations.  
off  
off  
Do not use COSMO_RS procedure.  

Description

The COSMO_RS model is an extension of the COSMO model beyond the dielectric approximation. Results of DMol3/COSMO calculations allow you to determine the chemical potential of the compound in the solvent, and consequently, properties of liquid/liquid and vapor/liquid systems such as vapor pressures or partition coefficients.

The following properties are calculated at the end of the DMol3/COSMO run:

The accuracy of those properties was enhanced by optimization of the COSMO_RS model based on the DMol3/COSMO results for more than 200 organic molecules, covering most of the chemical functionality of the elements H, C, N, O and Cl (see Klamt et al. 1998). The typical errors for free energy of hydration are within 1 kcal/mol, whereas the standard deviation of about 0.5 kcal/mol can be seen for other properties.

Since the COSMO_RS parameterization is somewhat dependent on the underlying DMol3/COSMO results it is recommended that you use the default parameters for the DMol3/COSMO/COSMO_RS run:

Functional  
vwn-bp  
basis  
dnp  
basis_version  
v4.0.0  
integration_grid  
fine  
atom_rcut  
5.5  

You can obtain detailed information from the COSMO_RS run and input the exact gas phase energy of the solute. The exact value of energy obtained from the separate calculations of the solute in the gas phase improves accuracy of the free energy of hydration and vapor pressure. To do this run DMol3/COSMO/COSMO_RS with the modified CRS_INPUT file present in the running directory. By default the CRS_INPUT file resides in the DMOL3_DATA directory.

Input Comments
text  
a title, e.g., DMol3/COSMO/COSMO_RS  
debug flag  
0 for short output, 1 for extensive output  
number of compounds  
this value should not be changed  
source of gas phase energies  
0 -- an estimate will be made  
1 -- gas energy must be supplied by the user  
blank line  
 
gas phase energy  
insert the gas phase energy of the solute in a.u. here  

Gas phase calculations must be performed at the same level of DMol3 as the DMol3/COSMO run.

COSMO_Dielectric

Purpose

The COSMO_Dielectric parameter specifies the dielectric constant of the solvent within the COSMO approach.

Syntax

COSMO_Dielectric value

command keyword values default meaning
COSMO_Dielectric  
real  
999.9  
This value corresponds to a conductor.  

Description

The default value of 999.9 is appropriate for the COSMO_RS run. Any positive real value is within the range, e.g., water at room temperature has a dielectric constant of 78.4.

COSMO_Grid_Size

Purpose

The COSMO_Grid_Size parameter tells DMol3 how many basic grid points per atom to consider.

Syntax

COSMO_Grid_Size value

command keyword values default meaning
COSMO_Grid_Size  
integer  
1082  
Number of basic grid points.  

Allowed values: 12, 32, 42, 92, 122, 162, 272, 362, 482, 642, 812, 1082, 1442, 1922.

Note

It is recommended that you use only the default value, i.e., 1082.

Description

The COSMO surface surrounding the solute molecule is constructed as a superposition of spheres centered at the atoms, discarding all parts lying in the interior part of the surface. The spheres are represented by means of a discrete set of points, which is the so-called basic grid.

COSMO_Segments

Purpose

COSMO_Segments parameter specifies the maximum number of segments on each atomic surface.

Syntax

COSMO_Segments value

command keyword values default meaning
COSMO_Segments  
integer  
92  
Number of segments.  

Allowed values: 12, 32, 42, 92, 122, 162, 272, 362, 482, 642, 812, 1082, 1442, 1922.

Description

The basic grid points (specified with the COSMO_Grid_Size parameter) are then assigned to segments, which also are represented as discrete points on the COSMO surface. The position of the screening charges equal the position of the segments.

This is the main COSMO parameter which determines the computational performance of the DMol3/COSMO run.

COSMO_Solvent_Radius

Purpose

The COSMO_Solvent_Radius parameter specifies the solvent probe radius.

Syntax

COSMO_Solvent_Radius value

command keyword values default meaning
COSMO_Solvent_Radius  
real  
1.3  
Solvent probe radius.  

Allowed values are between 0.5 and 2.0.

Note
This parameter is used in the construction of the COSMO cavity and should not be changed, especially when performing a COSMO_RS run.

COSMO_A-Matrix_Cutoff

Purpose

The COSMO_A-Matrix_Cutoff parameter determines the accuracy of the electrostatic interactions on the COSMO surface.

Syntax

COSMO_A-Matrix_Cutoff value

command keyword values default meaning
COSMO_A-Matrix_Cutoff  
real  
7.0  
A-Matrix_Cutoff threshold.  

Note
The A-Matrix_Cutoff should not be smaller than 2.0.

Description

The calculation of the electrostatic interaction between surface charges is done based on either the segments or the basic grid, depending on the cutoff distance specified in COSMO_A-Matrix_Cutoff. If the distance between two segments is less than the cutoff value specified, the electrostatic interaction between segments is calculated using the basic grid. The basic grid method provides the higher accuracy required at shorter distances.

COSMO_Radius_Incr

Purpose

The COSMO_Radius_Incr parameter specifies the increment to the atomic radii used in the construction of the COSMO cavity.

Syntax

COSMO_Radius_Incr value

command keyword values default meaning
COSMO_Radius_Incr  
real  
0.0  
Increment of the atomic radii.  

Note
This parameter is used in the construction of the COSMO cavity and should not be changed, especially when performing a COSMO_RS run.

COSMO_A-Constraint
COSMO_B-Constraint

Purpose

The COSMO_A-Constraint and COSMO_B-Constraint parameters are used to approximate the non-electrostatic contribution to the solvation energy within the COSMO model.

Syntax

COSMO_A-Constraint value

COSMO_B-Constraint value

command keyword values default meaning
COSMO_A-Constraint  
real  
1.88219  
For the vwn-bp/dnp/v4.0.0/fine DMol3 run.  
2.02357  
For the vwn/dnp/v4.0.0/medium DMol3 run.  
COSMO_B-Constraint  
real  
0.01014  
For the vwn-bp/dnp/v4.0.0/fine DMol3 run.  
0.01083  
For the vwn/dnp/v4.0.0/medium DMol3 run.  

Description

The two parameters define the nonelectrostatic contribution via the equation:

The surface area is the area of the COSMO cavity, the solvent accessible surface enclosing the molecule. The nonelectrostatic terms are due to dispersion and cavity formation effects.

The parameters were determined to reproduce the experimental free energy of solvation of methane and octane. They are dependent on the DMol3/COSMO parameters you choose.

The nonelectrostatic contributions should not be used in dissociation processes that are studied with DMol3/COSMO.

COSMO_RadCorr_Incr

Purpose

The COSMO_RadCorr_Incr parameter is used to construct the outer cavity for the outlying charge correction.

Syntax

COSMO_RadCorr_Incr value

command keyword values default meaning
COSMO_RadCorr_Incr  
real  
0.15  
Increase of the original cavity to evaluate outlying charge correction.  

Note
This parameter is used in the construction of the COSMO cavity and should not be changed, especially when performing a COSMO_RS run.

Description

This is an important correction which accounts for the electron density leaking outside of the cavity boundary. It is of particular importance for anion calculations.

The corrected Total COSMO energy is calculated in the .outmol file, e.g., for water:

Total energy corrected (au) [TE(corr)]
{TE(corr) = TE + DE(corr) - DE} = -76.4617695727

For final analysis the corrected energy including nonelectrostatic solvation energy should be considered. This energy is specified as follows:

Total energy corrected (au) [TE(corr)]
+ Nonelectrostatic Energy = -76.4576895922

COSMO_Atomic_Radii

Purpose

The COSMO_Atomic_Radii parameter defines the atomic radius of the atom.

Syntax

COSMO_Atomic_Radii value1 value2
blank line

where:

value1 is the atomic number
value2 is the atomic radius in Angstroms

Leave a blank line after listing all the values, to signify the end of the parameter input.

Recommended radii are as follows:

element atomic number radius
H  
1  
1.30  
C  
6  
2.0  
N  
7  
1.83  
O  
8  
1.72  
Cl  
17  
2.05  

Note
These parameters are used in the construction of the COSMO cavity. You must not use any other values when performing a COSMO_RS run.

Electric_Field

Purpose

The Electric_Field keyword specifies to impose a static electric field on the system (valid only for nonperiodic models).

Syntax

Electric_Field x_value y_value z_value

command keyword values default meaning
Electric_Field  
three reals  
 
Electric field vector in atomic units.  
off  
off  
Do not impose electric field.  

Description

With this option, various properties can be studied in the presence of an electric field. In particular, the polarizability tensor can be computed by computing the dipole moment in the presence of electric fields in the x, y, and z directions.

Polarizabilities are in fact the first-order change of the dipole moment with respect to an external field, which may be estimated by computing the finite change to a dipole moment in the presence of a finite field:, e.g.

Eq. 14        

In practice, these polarizability terms require at least four separate calculations: one without a field and one with the field in each of directions x, y, and z. More reliable results are obtained if fields are applied in both the positive and negative directions and the results are averaged.

Example

To impose an electric field of strength 0.001 atomic units in the y direction, enter:


      Electric_Field    0.00    0.001    0.00

Electrostatic_Moments

Purpose

The Electrostatic_Moments keyword specifies to compute dipole moments (valid only for nonperiodic models).

Syntax

Electrostatic_Moments value

command keyword value keywords default meaning
Electrostatic_Moments  
off  
off  
Do not compute dipole moments.  
on  
 
Compute dipole moments.  

Description

Dipole moments are printed in both atomic units and Debyes.

Functional

Purpose

The Functional keyword specifies the local correlation and gradient-corrected functionals for exchange and correlation.

Syntax

Functional value_keyword

command keyword value keywords default meaning
Functional  
pwc  
pwc  
Perdew-Wang (1992) functional.  
vwn  
 
Vosko-Wilk-Nusair (1980) functional.  
jmw  
 
Hedin-Lundqvist/Janak-Morruzi-Williams (1978) functional.  
ks  
 
Kohn-Sham (1965) exchange-only functional.  
gga (pw91) or p91 or GGA  
 
Perdew-Wang (1991) functional.  
bp  
 
pw91 and b88 functionals.  
blyp  
 
lyp and b88 functionals.  
vwn-bp  
 
bp functional with the local correlation replaced by vwn functional.  

Description

The extension of the Hedin-Lundqvist functional to spin-polarized systems is the von Barth-Hedin functional. DMol3 does not use the original BH parameters, instead using the ones used by Janak, Moruzzi, and Williams (JMW) from their original work on metals.

The Vosko-Wilk-Nusair (VWN) functional is the most popular LSD correlation potential. It uses a fit to accurate numerical results (by Ceperly and Alder) of a uniform electron gas. Ceperley and Alder did quantum Monte Carlo calculations on a uniform electron gas at low- and high-spin limits for several electron densities. VWN used the Pade interpolation procedure to fit the CA results for both the para and ferro states and for low and high densities. DMol3 uses the best VWN (so called "Fit") parameters.

The Perdew-Wang (PWC) functional is a recent parametrization of the Ceperley and Alder data, which corrects some VWN problems with fitting. This is the default for DMol3 calculations.

The LSD approximation can be used to quite accurately predict structures, vibrations, and relative energies of covalent systems. However, bond energies are seriously overestimated. The local DFT should not be used for systems with weak bonds, such as hydrogen bonds. These problems with the LSD method can be corrected to a large extent by using the so-called gradient-corrected (or nonlocal) functionals.

DMol3 supports several nonlocal exchange and correlation functionals. The most popular, the Becke exchange functional (B88) is used in conjunction with the Perdew-Wang correlation functional (BP) or the Lee-Yang-Parr correlation functional (BLYP). The latest, so-called generalized gradient corrected (GGA) functional, by Perdew and Wang (P91) was derived by considering low- and high-density regimes and by enforcing various summation rules.

Although the NLSD methods are significantly better then the LSD method, particularly in studying chemical reactions, the NLSD methods may still lead to reaction barriers that are too low.

The VWN-BP functional is recommended for COSMO and COSMO-RS studies.

Functional_Post_LDA

Purpose

The Functional_Post_LDA keyword allows for calculation of the energy using a gradient-corrected functional at the end of the calculation.

Syntax

Functional_Post_LDA value_keyword

command keyword value keywords default meaning
Functional_Post_LDA  
off  
off  
Do not perform NLDA calculations after LDA calculations.  
BP  
 
Use the BP NLDA functional.  
BLYP  
 
Use the BLYP NLDA functional.  
GGA or P91  
 
Use the GGA NLDA functional.  
VWN-BP  
 
BP functional with the local correlation replaced with VWN functional.  

Description

A typical use of this command would be to carry out a geometry optimization at the local DFT level, followed by calculation of nonlocal DFT energies using the local DFT-optimized structure.

Grid

Purpose

The Grid keyword specifies the grid on which the electronic properties specified by Plot are evaluated.

Syntax

Grid value_keyword
[value_number ...]

command keyword value keywords default meaning
Grid  
box  
box  
Specify a rectangular grid around the molecule, on the next line.  
user  
 
Select a set of grid points in a more versatile way.  

Description

The grid specified by Grid is different from the mesh used for numerical integration. Grid data are read only when Plot is used.

If the box option is used, the next line must contain the data (in free format):


ndim            nx      ny      nz      extnd

where:

ndim = 3, the dimensionality of the plot (default = 3).

nx, ny, nz = Grid spacing in the x,y,z directions (default = 5).
If > 0, these represent the actual grid size in units of 0.1 Å.
If < 0, these represent the number of spacings in each direction.

extnd = The distance in angstroms that the grid extends beyond the molecule (default = 5.0 Å).

For periodic systems, the extnd parameter should be zero, and only the positive values of nx, ny, and nz are considered:

Examples

Example 1

To construct a 3D plot with a grid spacing of 0.5 Å with the grid extending 10 Å beyond the molecule, enter the data:


       Grid   box
3 5 5 5 10.0
Example 2

To construct a 3D plot with 20 X 20 X 20 grid points and the grid extending 5 Å beyond the molecule, enter the data:


       Grid box
3 -20 -20 -20 5
This is a very dense grid, which produces very large files.

Harris

Purpose

The Harris keyword activates the use of Harris functional approximation during the calculation. This option significantly reduces the CPU time, since practically only one SCF iteration is done.

Syntax

Harris value ...

command keyword value keywords default meaning
Harris  
off  
off  
Do not use Harris functional.  
on  
 
Use Harris functional.  

Hirshfeld_Analysis

Purpose

The Hirshfeld_Analysis keyword specifies atomic population analysis by the Hirshfeld partitioning procedure.

Syntax

Hirshfeld_Analysis value ...

command keyword value keywords default meaning
Hirshfeld_Analysis  
off  
off  
No Hirshfeld population analysis.  
on or charge  
 
Compute effective atomic charges.  
dipole  
 
Compute effective atomic charges and effective atomic dipoles.  
quadrupole  
 
Compute effective atomic charges, effective atomic dipoles, and effective atomic quadrupoles.  

Description

The Hirshfeld partitioned charges are defined relative to the deformation density. The deformation density is the difference between the molecular and the unrelaxed atomic charge densities and is given by:

Eq. 15        

where (r) is the molecular charge density and a(r - R) is the density of the free atom at coordinates R. Using the deformation density, the effective atomic charges, dipoles, and quadrupoles on atom are defined as (Delley 1990):

Eq. 16        

Eq. 17        

Eq. 18        

The weight W(r) is defined as the fraction of the atomic density from atom at coordinate r:

Eq. 19        

Integration_Grid

Purpose

The Integration_Grid keyword controls the selection of mesh points for the numerical integration procedure used in the evaluation of the matrix elements. Since the functions in these equations are given numerically, the choice of mesh points can have a significant impact on the final results.

Syntax

Integration_Grid value_keyword
[value_number ...
blank line]

command keyword value keywords default meaning
Integration_Grid  
xfine  
 
Use more mesh points than fine.  
fine  
 
Use more mesh points than medium.  
medium  
medium  
Use an intermediate number of mesh points.  
coarse  
 
Use fewer mesh points than medium.  
xcoarse  
 
Use fewer mesh points than coarse.  
user  
 
Allows you to customize the integration mesh, starting on the following line.  

Description

A value of medium appears to give a reasonable compromise between computational expense and numerical precision.

A value of fine is used whenever difficulties are found with the medium mesh. Such problems can include discontinuous energies (i.e., bumpy rather than smooth potential energy surfaces are observed) and failure of a geometry optimization.

A value of xfine results in a nearly saturated mesh. This option is generally used only for benchmark calculations, not for day-to-day production runs.

A value of coarse results in lower computational cost and a significant reduction in the quality of the calculation. The results are at least qualitatively correct.

A value of xcoarse represents a serious compromise in the quantitative aspects of the calculation. It is useful for:

A value of user allows you complete flexibility in specifying the integration mesh. Six parameters are required to completely specify the integration mesh. The flags xcoarse, coarse, medium, fine, and xfine select predetermined values for them. The parameters are called ipa, iomax, iomin, thres, rmaxp, sp. The mesh is specified in spherical coordinates around each atomic center. The values of rmaxp and sp control the radial distribution of points, and iomax, iomin, and thres control the angular sampling.

Radial points are taken in shells from the nucleus out to a distance of rmaxp (default = 10.0 au). The number of shells is a function of the nuclear charge, so that heavier elements have a greater number of points. The actual number is 14 X (Z + 2)1/3, where Z is the atomic number. The value of sp may be used to increase or decrease this number, that is, sp = 2.0 results in twice as many radial points.

Angular sampling points are generated on each shell using a spherical harmonic function. The initial number of angular sampling points is 14, generated with a harmonic function with l = 5. The number of angular points must be increased at larger radii in order to maintain the quality of the numerical integration. The value of thres specifies the requested numerical precision (default = 0.0001), and the number of angular points is increased to maintain the precision. The minimum value of the harmonic generator is given by iomin (default = 1) and the maximum allowed value by iomax (default = 4). The value cannot increase beyond iomax, even if numerical precision is compromised.

The following table gives the angular momentum of the spherical harmonic function used to generate the points on a radial shell and the number of such points:

iomin (or iomax) l # points
1  
5  
14  
2  
7  
26  
3  
11  
50  
4  
17  
110  
5  
23  
194  
6  
29  
302  
7  
35  
434  
8  
41  
590  

The value of ipa (default = 6) controls the partition function used to improve the convergence of the numerical integration.

The default values for each of these parameters that are selected by the flags xcoarse, coarse, medium, fine, and xfine:

Integration_Grid value ipa iomax iomin thres rmaxp sp
xcoarse  
6  
3  
1  
0.01  
10.0  
1.0  
coarse  
6  
4  
1  
0.001  
10.0  
1.0  
medium  
6  
6  
1  
0.0001  
10.0  
1.0  
fine  
6  
6  
1  
0.00001  
12.0  
1.2  
xfine  
6  
7  
1  
0.000001  
15.0  
1.5  

To input values for these six parameters via the user option, begin immediately after the keyword Integration_Grid line and enter the data for npri, iomax, iomin, thres, rmaxp, and sp on a single line. (npri > 0 results in the printing of debug information.)

Example

The following two inputs result in the same selection of mesh points for CH2:


Integration_Grid       medium

or


Integration_Grid      user
0 6 1 0.0001 10.0 1.0
<BLANK LINE>

Integration_Partition

Purpose

The Integration_Partition keyword allows you to select a partition function, which decomposes 3D integrals into atom-centered integrals that can be accurately evaluated.

Syntax

Integration_Partition value

command keyword values default meaning
Integration_Partition  
integer  
6  
Selects the partition function.  

Description

The value refers to the partition function to use in the calculation.

Partition functions are used to increase the convergence of the numerical integration and to avoid integrating over nuclear cusps (Delley 1990, Hirshfeld 1977, Becke 1988). A partition function a is defined as:

Eq. 20        

where is an atom index and g(r - R) is a function that typically is large for small r - R and small for large r - R (i.e., larger near the nucleus). Integrals are rewritten using partition functions as:

Eq. 21        

which is further reduced to a sum over 3D integration points:

Eq. 22        

In practice, the partition functions are combined with the integration weights w(ri) to simplify the computation.

The complete list of partition functions is shown under Description. The preferred choice for the integration partition function is number 6.

Lower_Energy_Limit

Purpose

The Lower_Energy_Limit keyword defines the lower bound of the transition energy range.

Syntax

Lower_Energy_Limit value [units]

command keyword values default meaning
Lower_Energy_Limit  
real  
 
Value of lower limit.  
units is one of:  
Ry or Rydberg  
 
Use Rydberg units.  
au or a.u.  
 
Use atomic units.  
eV  
 
Use units of electron volts.  
cm-1 or cm(-1) or cm^-1 or cm^(-1)  
cm-1  
Use units of wave number.  
nm  
 
Use units of nanometers.  

Description

If Optical _Absorption is on, the Lower_Energy_Limit and Upper_Energy_Limit keywords control the range of energies within which electronic transitions are computed.

The Rydberg is a fundamental spectroscopic unit (the energy difference between the hydrogen atom 1s ground state level and the continuum is one Rydberg, or half a Hartree).

Max_Loop

Purpose

The Max_Loop keyword specifies the maximum size of the loop size in the numerical integration algorithm.

Syntax

Max_Loop value

command keyword values default meaning
Max_Loop  
integer  
128  
Size of loop.  

Description

You can decrease the amount of memory needed by decreasing the Max_Loop keyword, that is, the maximum size of the loops in the numerical integration algorithm. Smaller loops may be less efficient on vector computers; however, they allow a decrease in the memory required.

Max_Memory

Purpose

The Max_Memory keyword is used to specify the maximum memory (in MBytes) provided for the DMol3 run.

Syntax

Max_Memory value

command keyword values default meaning
Max_Memory  
integer  
128  
Size of memory.  

Description

DMol3 calculates the memory needed, which depends on the size of the system and type of calculation, and compares this with Max_Memory. If the memory needed is greater than Max_Memory, the program stops.

You can decrease the amount of memory needed by decreasing the Max_Loop keyword, that is, the maximum size of the loops in the numerical integration algorithm. Smaller loops may be less efficient on vector computers; however, they allow a decrease in the memory required.

MD_Atom_Mass

Purpose

The MD_Atom_Mass keyword specifies the atomic mass used in the MD run.

command keyword value keyword value default meaning
MD_Atom_Mass  
Physical_Mass  
 
 
Use the actual values of atomic mass. This is the default mass used in the Molecular_Dynamics and Simulated_Annealing calculations.  
Equal_Mass  
Real > 0  
20 AMU  
Set all mass to be equal. This is sometimes more efficient than using the physical masses in searching for global minimum, especially when the mass differences among the elements are large.  
User_Defined  
integer  
<atomlist> <mass in AMU>  
 
User sets the mass for each individual atom as listed in the keyword file in free format. (see example below.)  

Description

Atomic mass can be specified for the MD and Simulated Annealing runs. An example of the use is the study of isotope effects.

An example of the format used in the User_Defined option is as follows:


MD_Atom_Mass   User_Defined   2
1 2.0
3 10.0
The first line specifies that mass will be defined for two atoms. The next two lines define atom index 1 and 3 (as they are defined in the .car file) and their masses in AMU.

MD_Time_Step

Purpose

The MD_Time_Step keyword specifies the size of the time step used in MD propagators. The unit is in femtoseconds.

Syntax

MD_Time_Step value

command keyword values default meaning
MD_Time_Step  
Real value (>0)  
0.463  
In femto seconds, this is the time step used in MD. The default time step was set to be 0.463 fs corresponding to the H atom.  

Description

This is the time step used in the MD propagator. It should be set according to the mass of the lightest atom in the model. Usually, the time step should be proportional to the square root of the atomic mass.

command keyword value keyword value default meaning
MD_Velocity  
Random  
integer  
0  
Assign initial velocity with Maxwell-Boltzmann distribution using the integer random seed. If the integer is 0, the computer will generate a random number seed using the current machine time.  
User_Defined  
integer  
<atom index, |V|, Vx Vy Vz>  
(see example below)  
 
The integer is the number of velocity entry. It is followed by a list of atom index, speed and a vector in Cartesian coordinates indicating the direction of the velocity.  

Description

This keyword sets up the initial velocities needed to start the MD or simulated annealing run. The default is using the Maxwell-Boltzmann distribution. To customize the initial velocity, especially for study of chemical reactions, the user can set the specific velocity for each atom. An example of the format in the User_Defined option is as follows:


MD_Velocity User_Defined 3
1 10.0 1.0 0 0
2 10.0 -1.0 0 0
5 5.0 0 0 1.0
This sets the velocity for three atoms in the molecule, atom index 1, 2 and 5, as it appeared in the .car file. The speed is in Å/ps, the direction of the initial velocity is (1, 0, 0) for atom 1, (-1, 0, 0) for atom 2 and (0, 0, 1) for atom 5. The velocity was computed as the speed x (direction vector), and the direction vector does not need to be unitary.

MD_SimAnn_Panel

Purpose

Perform simple molecular dynamics complex simulated annealing tasks -- such as melting, damping and quenching -- in series.

command keyword values meaning
MD_SimAnn_Panel  
Integer (> 0)  
<index # Step Action temperature parameter>  
The integer specifies the number of simulated annealing stages. It must be immediately followed by the lines specifying the details of each simulated annealing stage in free format. (see description below)  

Description

The MD_SimAnn_Panel keyword uses a panel of value keywords to control the number of steps, type of propagation and their parameters for each stage of the simulated annealing.


MD_SimAnn_Panel integer
index #Step Action Temperature parameter
The "integer" specifies n stages in the simulation. The first line is immediately followed by n lines, each defining the parameters for a stage.

The "index" is the line number of the list.

The "# Step" is the number of MD steps and is an integer 1.

"Action" may be MD_NVE, MD_NVT, QUENCH, MELT, DAMP, or QUTEMP, as explained in detail below.

"Temperature" is a real number (>0) or the word CONTINUE. CONTINUE begins the panel with the temperature from the last step of the previous panel. You must specify a numeric temperature value for the first panel.

With MD_NVE the constant energy velocity Verlet propagator is used. The generated trajectory samples the micro canonical ensemble.

With MD_NVT, the velocity Verlet propagator was modulated with the Gauss least constraint method to keep the temperature constant. The trajectory generated is isothermic. If you use the MD_NVT parameter, you must also specify the temperature window of variance (typically 1% of the trajectory temperature) by including this parameter after the "Temperature" parameter.

With Quench and Melt, velocity Verlet propagation was used at each time step and the temperature is scaled to vary linearly between the specified temperature (as the initial temperature) and the parameter followed as the final temperature.

With Damp, at each time step, velocity Verlet propagation was used and a finite amount of kinetic energy was withdrawn from the system. Starting with the velocity specified by the temperature, the velocity was then scaled (damped) with the parameter. The parameter should be between 0 and 1, and the closer it is to 0, the steeper the damp. If the value of the parameter is 1, it becomes normal velocity Verlet at constant energy.

With QUTEMP, the velocity Verlet propagation was used at each time step and the temperature is scaled to vary between the specified initial and final temperature following a quadratic function. QUTEMP is not available from the graphical user interface.

Note
The molecular dynamics task is equivalent to a single stage simulated annealing task.

Example


MD_SimAnn_Panel 5
1 200 MD_NVT 300 2.0
2 100 MD_NVE Continue
3 100 Melt 300 1000
4 100 Quench Continue 100
5 100 damp 100 0.2
The first of the above commands specifies five stages of simulated annealing.

The second line defines the first stage: 200 time steps of NVT MD at a fixed temperature of 300K. The temperature window is 2K.

The third line defines the second stage: 100 time steps of NVE MD starting with the ending velocity and temperature of the first stage.

The fourth line specifies the third stage: 100 time steps of MD propagation with controlled temperature starting at 300K and rising linearly to reach 1000K at the end.

The fifth line specifies the fourth stage: 100 time steps of MD propagation starting at 1000K and velocity of the last step of the previous panel. The temperature will be decreased linearly to reach 100K at the end of this panel.

The sixth line specifies the fifth stage: 100 time steps of damp propagation starting at 100K. The velocity will be scaled with a factor of 0.2 at each time step.

MD_Fixed_Coordinate

Purpose

The MD_Fixed_Coordinate keyword is used to specify Cartesian coordinate constraints applied during the MD and simulated annealing runs.

command keyword values meaning
MD_Fixed_Coordinate  
Integer  
<atom index> <Coordinates>  
The integer value defines how many atoms will be fixed. It is followed immediately by lines specifying the Cartesian coordinates (x and/or y and/or z coordinates) of each atom to be fixed.  

Description

The coordinates are represented with X, Y and Z.

Example


MD_Fixed_Coordinate 2
1 XYZ
2 Z
In the above example there are two atoms with coordinate constraints. Atom 1 has all of the X, Y and Z components fixed, and atom 2 only has the Z component of its Cartesian coordinate fixed.

Memory_Check

Purpose

The Memory_Check keyword is used to verify the memory needed in a DMol3 run. Based on the type of model and the input parameters, DMol3 calculates and prints out the memory needed.

Syntax

Memory_Check value

command keyword value keywords default meaning
Memory_Check  
on  
 
Calculate memory needed, print a message and stop.  
off  
 
Don't stop after memory is calculated.  

Description

If Memory_Check is off, the program continues if the memory needed is less than Max_Memory.

Mulliken_Analysis

Purpose

The Mulliken_Analysis keyword specifies atomic population analysis by the Mulliken method.

Syntax

Mulliken_Analysis value

command keyword value keywords default meaning
Mulliken_Analysis  
off  
off  
No Mulliken population analysis.  
on or charge  
 
Simple Mulliken analysis.  
population  
 
Population overlap matrix.  
full  
 
Mulliken analysis plus population overlap matrix.  

Description

For a simple Mulliken (1955) analysis (Mulliken_Analysis on), the total effective number of electrons in each atomic orbital is printed. Following this is a reduced or condensed population analysis, giving the total number of electrons in each type of orbital. For example, when using a DN basis, the population analysis gives occupations for two 2s functions, and two 2p functions (for each ml) on every atom. The reduced analysis gives just one 2s, and one 2p population. Following these values comes the effective charge for each atom.

When a population overlap matrix is specified (Mulliken_Analysis population), the orbitals span only the reduced or condensed orbitals; that is, there is only one entry for 1s, 2s, 2p, etc. on each atom, regardless of the size of the atomic basis set.

Requesting both Mulliken analysis and a population overlap matrix (Mulliken_Analysis full) results in the effective number of electrons associated with each pair of atomic orbitals.

Nuclear_EFG

Purpose

The Nuclear_EFG keyword specifies calculation of the electric field gradients at nuclei.

Syntax

Nuclear_EFG value

command keyword value keywords default meaning
Nuclear_EFG  
on  
 
Calculate the EFG.  
off  
off  
Do not calculate EFG.  

Description

When Nuclear_EFG is on, electric field gradients are calculated at the positions of all symmetry-unique nuclei.

Occupation

Purpose

The Occupation keyword specifies orbital occupations and improves SCF convergence.

Syntax

Occupation value_keyword
[ range value_number ...]

command keyword value keywords default meaning
Occupation  
Fermi  
Fermi  
Allow DMol3 to determine optimal orbital occupation that yields lowest energy.  
Smear range{real}  
0.10  
Smear electrons over several orbitals within range of the Fermi level using linear distribution.  
Thermal range{real}  
0.02  
Smear electrons over several orbitals using finite-temperature Fermi function, which can be input with the range parameter.  
Level_Shift range{real}  
0.25  
Separate occupied and virtual orbitals by shifting up virtual orbitals by range a.u.  
Freeze range{integer}  
5  
Optimize orbital occupancy for all iterations up to range, then fix occupancy.  
Fixed  
 
Fix occupancy according to information from .occup file.  
Level_Track  
 
Occupy those states with low-lying eigenvectors that have maximal projection onto the occupied subspace of the previous iteration.  

Description

DMol3, by default, finds the occupations that yield the lowest energy. This means that electrons occupy orbitals with the lowest orbital energies. The occupation numbers are integers.

However, there may be a need to use a fractional occupancy, which effectively mixes some virtual orbitals into the occupied space. This is used when the HOMO-LUMO gap is small and there is significant density of states in the vicinity of the Fermi level. In such situations, you can achieve SCF convergence by using smearing techniques, shifting up the virtual orbitals, or fixing occupancy. Typically, you can encounter problems with SCF convergence for high-symmetry, open-shell, or metallic systems.

The Smear parameter allows electrons to be smeared out among all orbitals within a given range of the Fermi level. The range is defined in Hartrees and typically is from 0.001 to 0.1 a.u. A linear function is used for charge smearing, resulting in orbitals being fractionally occupied. This procedure improves convergence of the SCF procedure by allowing orbitals to relax more rapidly.

The Thermal option, unlike Smear, uses a finite-temperature Fermi function to achieve fractional occupancy. It also implements an electronic entropy term, which is necessary for accurate derivatives of geometry-dependent orbital populations. The fractional occupancy pattern depends on the temperature in thermal smearing. If smearing of electrons is needed, the Thermal option is recommended.

Occupation Level_Shift may be useful when occupied and virtual orbitals are being rapidly interchanged, for example in transition-metal complexes.

The Fixed option allows you to use the occupancy needed for (for example) excited states. It can be input to DMol3 from a run_name.occup file.

Using simply Occupation fixed assumes that a run_name.occup file exists. DMol3 stops if this file does not exist. If the name of the .occup file is different, you can specify that filename as:


Occupation       fixed file
      filename
The file filename is rewritten during the SCF cycles with information about the occupation for this particular DMol3 run.

If Fixed is specified, the occupations are entered, in the .occup file in format (15, 2E22.14), as:


      N      oc      od

where N (an integer) indicates the number of orbitals having this occupation, oc (real number) is the spin-up (alpha) orbital occupation number, and od (real number) is the spin-down (beta) orbital occupation. Terminate the occupation for each irreducible representation with a line containing only a 0. (If you are not using symmetry, there is only one irreducible representation.)

Examples

The triplet state of the CH2 molecule has three doubly occupied and two singly occupied orbitals. If you are not using symmetry, specify the input as:


Occupation  TOTAL
3 0.10000000000000E+01 0.10000000000000E+01
2 0.10000000000000E+01 0.00000000000000E+00
0
If you are using C2v symmetry, then the occupation of CH2 is 1a12 2a12 3a11 1b12 1b21. The a2 block is unoccupied. The occupation can be specified as:


Occupation total
2 0.10000000000000E+01 0.10000000000000E+01
1 0.10000000000000E+01 0.00000000000000E+00
0
0
1 0.10000000000000E+01 0.10000000000000E+01
0
1 0.10000000000000E+01 0.00000000000000E+00
0
The order of the representations (a1 a2 b1 b2) is the same as in Cotton (1971) and a list is always printed in the outmol file. Occupations for unused representations should not be specified, and for degenerate representations one should specify occupations only for the first representation.

The program writes an .occup file during the SCF cycles. The format of the file is as explained in Examples.

Opt_Constraint

Syntax

Opt_Constraint
constraint specifications ...
blank line

Description and example

The Opt_Constraint keyword is used to specify the distance, angle, and dihedral angle constraints that are to be enforced during a geometry optimization. The constraint specifications are input on separate lines of the input file (immediately following the line containing the Opt_Constraint keyword) and are specified as (in the restricted format (4I4,F20.10)):


atom_i atom_j                    distance
atom_i
atom_j atom_k angle
atom_i
atom_j atom_k atom_l dihedral
<BLANK LINE>
Where the atoms are indexed by integers in the order in which they appear in the molecular geometry, distances are expressed in angstroms, and bond angles and dihedral angles are expressed in degrees. The constraint specifications must be terminated with a blank line immediately following the last constraint definition.

For example, referring to the N-phenylbenzamide geometry (see Basis keyword), the following Opt_Constraint input would define four constraints: the central N2-C1 amide bond distance constrained to 1.336 Å, the C5-N2-C1 angle constrained to 120.0°, the H16-N2-C1-C5 dihedral angle constrained to 168.8°, and the C5-C3 distance constrained to 4.12 Å:


Opt_Constraint
1 2 1.336
5 2 1 120.0
16 2 1 5 168.8
5 3 4.12
<BLANK LINE>

Opt_Constraint_Method

Purpose

The Opt_Constraint_Method keyword allows you to select a method to handle constraints for optimization.

Syntax

Opt_Constraint_Method value

command keyword value keywords default meaning
Opt_Constraint_Method  
Lagrange_Penalty or on  
Lagrange_Penalty  
Use Lagrange multipliers if this fails switch to Penalty functions. At convergence, tidy up using Lagrange multipliers.  
Penalty_Lagrange  
 
Use Penalty functions, tidy up at convergence using Lagrange multipliers.  
Penalty  
 
Use only Penalty functions  
Lagrange  
 
Use only Lagrange multipliers.  
off  
 
No constraints.  

Description

The Penalty option is more robust, the Lagrange option is more accurate. A constrained transition-state search can be done only with the Lagrange multiplier method--the penalty function algorithm cannot be used.

If there are angle constraints near 0° or 180°, there may be convergence problems and it may be necessary to optimize using only Penalty functions.

Opt_Coordinate_System

Purpose

The Opt_Coordinate_System keyword specifies the kind of coordinate system to be used in structure optimization.

Syntax

Opt_Coordinate_System value

command keyword value keywords default meaning
Opt_Coordinate_System  
cartesian  
 
Optimize in Cartesian coordinates.  
internal_only  
 
Generate and optimize in internal coordinates; if this fails, abort.  
auto or internal_cartesian  
auto  
Generate and optimize in internal coordinates; if this fails during any stage of the optimization, switch to Cartesians and continue.  

Description and example

The Opt_Coordinate_System keyword is used to select the coordinate system in which to carry out the geometry optimization, for example:


Opt_Coordinate_System    internal_only

Opt_Displacement_Convergence

Purpose

The Opt_Displacement_Convergence keyword specifies the convergence tolerance in geometry optimizations (for the maximum atomic displacement).

Syntax

Opt_Displacement_Convergence value

command keyword values default meaning
Opt_Displacement_Convergence  
real  
0.0011  
Maximum atomic displacement.  
1 A value smaller than 0.001 is generally too stringent for the DMol default integration grid (medium). You should upgrade the integration mesh (e.g., to fine) if you use values smaller than 0.001.

Description and example

The Opt_Displacement_Convergence keyword is used to specify the geometry optimization convergence criterion for the displacement vector, for example:


Opt_Displacement_Convergence    0.0003

The displacement criterion is met if the largest (absolute) component of the displacement vector is less than real. The geometry is considered optimized when the gradient convergence criterion (see Opt_Gradient_Convergence keyword) is satisfied and both the displacement convergence and energy convergence criteria (see Opt_Energy_Convergence keyword) are satisfied.

Opt_Energy_Convergence

Purpose

The Opt_Energy_Convergence keyword specifies the threshold for energy convergence during geometry optimization.

Syntax

Opt_Energy_Convergence value

command keyword values default meaning
Opt_Energy_Convergence  
real > 0  
1.0E-5  
Energy convergence criterion for geometry optimization.  

Description

The Opt_Energy_Convergence keyword is used to specify the geometry optimization convergence criterion for the total molecular energy. The energy criterion is met if the difference between the total energy in two consecutive optimization steps is less than real. The geometry is considered optimized when the gradient convergence criterion (Opt_Gradient_Convergence keyword) is satisfied and both the displacement convergence (Opt_Displacement_Convergence) and energy convergence criteria are satisfied.

Opt_Fixed

Syntax

Opt_Fixed
fix coordinate specifications ...
blank line

Description

The Opt_Fixed keyword is used to specify Cartesian constraints (i.e., to constrain the x and/or y and/or z coordinate(s) of specified atom(s)) that are to be enforced during a geometry optimization. The fix coordinate specifications are input on separate lines of the input file (immediately following the line containing the Opt_Fixed keyword) and are specified as (the restricted format (i4,2x,a3) is needed):

atom X (and/or) Y (and/or) Z

Where the atoms are indexed by integers in the order in which they appear in the molecular geometry. The fix coordinate specifications must be terminated with a blank line immediately following the last fixed atom definition.

Example

This example is for geometry optimization of CO on a fixed cluster of 5 Ni atoms.


Opt_Fixed
      3      XYZ
      4      XYZ
      5      XYZ
      6      XYZ
      7      XYZ
<BLANK LINE>
In this example, atoms 1 and 2 are C and O, respectively, which are allowed to relax during optimization. Atoms 3-7 are fixed Ni atoms.

Opt_GDIIS

Purpose

The Opt_GDIIS keyword specifies the maximum size of the subspace for the GDIIS procedure in geometry optimization.

Syntax

Opt_GDIIS value

command keyword value keywords default meaning
Opt_GDIIS  
off  
off  
Do not use GDIIS.  
on  
 
Automatic size (depends on system; typically 3 or 4).  
integer  
 
Size specified by user (do not set integer too large).  

Description and example

The Opt_GDIIS keyword is used to select the DIIS convergence procedure for geometry optimization, for example:


Opt_GDIIS on

Note: GDIIS can be used only for optimizations to minima. Transition-state searches must be done with GDIIS off.

Opt_Gradient_Convergence

Purpose

The Opt_Gradient_Convergence keyword specifies the threshold for gradient convergence during geometry optimization.

Syntax

Opt_Gradient_Convergence value

command keyword values default meaning
Opt_Gradient_Convergence  
real > 0  
1.0E-3  
Gradient convergence criterion for geometry optimization.  

Description

The geometry is considered converged to a minimum when the largest (in magnitude) component of the gradient vector is less than Opt_Gradient_Convergence. The geometry is considered optimized when the gradient convergence criterion is satisfied and both the displacement convergence and energy convergence criteria are satisfied (see Opt_Energy_Convergence and Opt_Displacement_Convergence).

Opt_Hessian_Project

Purpose

The Opt_Hessian_Project keyword allows you to specify if any of the 6 frequencies corresponding to translation and rotation of the model are to be removed from the Hessian. For periodic models, the 3 frequencies corresponding to translation can be removed.

Syntax

Opt_Hessian_Project value

command keyword value keywords default meaning
Opt_Hessian_Project  
on or all  
 
Remove all zero-frequency modes.  
trans  
 
Remove only translation modes.  
off  
 
Do not remove any modes.  

Description

You should remove all zero-frequency modes during geometry optimizations.

Opt_Hessian_Update

Purpose

The Opt_Hessian_Update keyword controls how the Hessian matrix is updated during the calculation.

Syntax

Opt_Hessian_Update value

command keyword value keywords default meaning
Opt_Hessian_Update  
powell  
 
Powell update (default for transition-state search).  
bfgs  
bfgs  
BFGS update (default for minimization).  
bfgs_safe  
 
BFGS with safeguards to ensure retention of positive definiteness (default for GDIIS).  

Description and example

The Opt_Hessian_Update keyword selects the method for updating the Hessian matrix during a geometry optimization, for example:


Opt_Hessian_Update   BFGS

Opt_Iterations

Purpose

The Opt_Iterations keyword specifies the number of geometry optimization cycles.

Syntax

Opt_Iterations value

command keyword values default meaning
Opt_Iterations  
integer 0  
20  
Controls number of geometry optimization iterations.  

Description

Geometry optimizations are performed by evaluating a gradient, followed by a Hessian update and calculation of a new set of coordinates. The value of Opt_Iterations controls the number of complete iterations that are performed in a DMol3 run.

A value of Opt_Iterations < 0 means that, regardless of the success of the geometry optimization, the run continues after the maximum number of geometry iterations are completed.

Opt_Max_Displacement

Purpose

The Opt_Max_Displacement keyword specifies the maximum allowed step size.

Syntax

Opt_Max_Displacement value

command keyword values default meaning
Opt_Max_Displacement  
real 0  
0.3  
Maximum allowed step size.  

Description and example

The Opt_Max_Displacement keyword is used to specify the maximum length of the geometry update vector, for example:


Opt_Max_Displacement   0.2

The value set is the maximum allowed length of the geometry update vector; if the displacement would be larger than real, the step is scaled. For transition-state searches, smaller displacements are recommended (<0.003), especially when no Hessian information is present but the geometry is close to the transition-state geometry.

Opt_Restart

Purpose

The Opt_Restart keyword is used to restart a geometry optimization and indicates the name of the file that contains the Hessian matrix.

Syntax

Opt_Restart value

command keyword value keywords default meaning
Opt_Restart  
on  
 
Read a file (.hessian) that contains the Hessian matrix. The next line gives the name of the .hessian file.  
off  
off  
Do not restart a geometry optimization.  

Description and example

The Opt_Restart keyword is used for reading the starting Hessian matrix for the geometry optimization from a file, for example:


Opt_Restart                file
../archive/ch3nh2.hessian
The file must contain a Hessian matrix in MSI .hessian file format (see file formats documentation at MSI's website at http://www.msi.com/doc/ ). A DMol3 geometry run always produces a new Hessian file that can be used to restart a run.

You can read in a Hessian matrix created with a different program, as long as it is in the correct format. For information on creating a Hessian file from a MOPAC calculation, refer to the section Creating Hessian and Coordinate Files in the MOPAC Interface chapter of this manual.

Opt_Steep_Tol

Purpose

The Opt_Steep_Tol keyword indicates the point at which the geometry optimization algorithm switches to the steepest descents algorithm. If the rms of the gradient is greater than the tolerance, the optimization algorithm uses a steepest descents approach. This is in effect only for geometry optimization.

Syntax

Opt_Steep_Tol value

command keyword values default meaning
Opt_Steep_Tol  
real > 0  
0.3  
Switch to steepest descents when gradient rms is greater than real.  

Description

Steepest descents typically occurs at the beginning of an optimization run, when gradients are large. It can be advantageous then to enable displacement of coordinates solely in the direction of the gradient:

displacement = -gradient X factor

Currently, the gradient is scaled by factor = 0.4. The displacement actually used in calculations is the smaller of the displacement and Opt_Max_Displacement values.

Opt_TS_Mode

Purpose

The Opt_TS_Mode keyword specifies the Hessian mode being followed during a transition-state search.

Syntax

Opt_TS_Mode value

command keyword values default meaning
Opt_TS_Mode  
integer  
0  
When Opt_TS_Mode = 0, mode following is switched off and maximization occurs along the lowest mode.  

Description

You need to start a transition-state search by reading an appropriate Hessian matrix with the Opt_Restart keyword.

Optical _Absorption

Purpose

The Optical_Absorption keyword controls the calculation of optical absorption spectra in DMol3.

Syntax

Optical_Absorption value

command keyword value keywords default meaning
Optical_Absorption  
on  
 
Calculate optical absorption spectrum.  
off  
off  
Do not calculate optical absorption spectrum.  

Description

If Optical_Absorption is on, the Lower_Energy_Limit and Upper_Energy_Limit keywords control the range of energies within which electronic transitions are computed.

The results are written to the .optabs file. The .optabs file contains two columns: the first for the transition energies, the second for the square of the transition dipole moment associated with the transition energy. Atomic units are used for both the transition energy and the "intensity" (which is reported as the square of the dipole transition moment).

Partial_DOS

Purpose

Setting the Partial_DOS keyword causes the partial density of states coefficients to be written to a run_name.dos file.

Syntax

Partial_DOS value

command keyword value keywords default meaning
Partial_DOS  
on  
 
Output partial density of states information.  
off  
off  
Do not output partial density of states information.  

Plot

Purpose

The Plot keyword specifies how to compute electronic properties for plotting.

Syntax

Plot value_keyword [# ...] ...

command keyword value keywords default meaning
Plot  
density  
 
Plot total charge density.  
deformation  
 
Plot deformation density (i.e., molecular charge density minus atomic charge densities).  
alpha_density  
 
Plot the alpha spin density.  
beta_density  
 
Plot the beta spin density.  
spin  
 
Plot spin density (i.e., alpha spin minus beta spin density).  
difference  
 
Plot difference between numerical charge density and analytically fit (model) density.  
potential  
 
Plot electrostatic potential.  
homo  
 
Plot highest occupied molecular orbital.  
lumo  
 
Plot lowest unoccupied molecular orbital.  
orbital # ...  
 
Plot molecular orbital number(s) #.  
fermi # ...  
 
Plot molecular orbital number(s) # in the vicinity of the Fermi level.  
off  
off  
Do not plot any of the above.  

Description

Plot causes DMol3 to generate values of various electronic properties on a 3D grid for subsequent plotting.

To generate the values for plotting any of the plot options, enter Plot followed by the value keyword. More than one value keyword can be included on one line; however, if the orbital value is used, orbitals must be specified as the last values in the line or on a separate line. To plot orbitals, enter the orbital number(s) after the word orbital.

Orbitals are numbered from lowest to highest orbital energy. Core orbitals are not included in the numbering and can not be plotted.

Example

To plot the total density, the electrostatic potential, and orbitals 7, 8, and 9, enter:


Plot density potential
Plot orbital 7 8 9

Point_Charges

Purpose

The Point_Charges keyword specifies to include point-charges in the calculation.

Syntax

Point_Charges value

command keyword value keywords default meaning
Point_Charges  
off  
off  
Do not include point charges.  
file  
 
The next line specifies the name of the file containing the point charges.  
on  
 
Read in a series of point charges from the named .pchg file.  

Description

Point charges can be used to simulate the chemical environment due to a large molecule or crystal. The validity of such a calculation depends, of course, on the validity of the point-charge model and the choice of charges used.

Point charges are read in from a .pchg file. Alternatively, they can be read from some other file by using the format:


Point_Charges file
      file_name
Point charges can be used in combination with point group symmetry. You need to make sure, however, that the symmetry used in the calculation is a subgroup of the symmetry of both the central molecule and the point charge system.

Print

Purpose

The Print keyword controls what data are printed to the .outmol file.

Syntax

Print value_keyword [option]...

command keyword value keywords option meaning
Print  
eigenvectors  
 
Print eigenvectors at the end of SCF procedure.  
vib_hess  
 
Print final Hessian at the end of frequency calculation.  
eigval_each_it  
 
Print eigenvalues at each SCF iteration.  
eigval_last_it  
 
Print eigenvalues at the end of SCF procedure.  
debug  
 
Debug level of printout.  
Opt  
brief  
Minimal printout from geometry optimization.  
normal  
Default printout from geometry optimization.  
extensive  
Detailed printout from geometry optimization.  
SCF  
brief  
Minimal printout from SCF.  
normal  
Default printout from SCF.  
extensive  
Detailed printout from SCF.  

Pseudopotential

Purpose

The Pseudopotential keyword specifies the form of core potential or relativistic correction to be used in the calculation.

Syntax

Pseudopotential value

command keyword value keywords option meaning
Pseudopotential  
none  
none  
Perform all-electron calculation using no relativistic correction.  
ecp  
 
Use effective core potentials.  
vpsr  
 
Perform all-electron calculation using scalar relativity.  

Description

Effective core potentials simplify calculations by combining the effects of many core electrons into a single analytical representation. This can provide a significant speedup without loss of accuracy. At present, ECPs are available for elements Sc through Lr. ECPs also include relativistic effects which are important for heavier elements.

The vpsr option allows the user to include relativistic effects in all-electron calculations, providing more accurate results, but at greater computational cost.

Scalar_Relativity

Purpose

The Scalar_Relativity keyword allows you to use relativistic pseudopotentials. Currently, DMol3 applies scalar relativistic effects, such as Darwin and mass-velocity, in all electron calculations. The properties of these "relativistic" atoms are then reproduced using an essentially nonrelativistic Hamiltonian including pseudopotentials representing scalar relativistic effects.

Syntax

Scalar_Relativity value

command keyword value keywords default meaning
Scalar_Relativity  
off  
 
No scalar-relativistic effects included.  
on  
 
Use scalar relativistic effects for all atoms in the model.  

Description

If Scalar_Relativity is on, then a VPSR file, including pseudopotential information, has to be read from the DMOL3_DATA directory. This option is equivalent to the Pseudopotential VSPR keyword, and is retained for compatibility with DMol 3.5.

Scan_option

Purpose

The Scan_option keyword specifies the type of calculation to be performed at each point of the scan_pes. At this time, only geometry optimizations are supported:

Syntax

SCAN_OPTION optimization

Scan_dim_1

Purpose

The scan_dim_1 keyword specifies the geometric parameters for the first dimension of the Scan_PES calculation. (At this time, only one dimensional scans are supported.)

Syntax

Scan_dim_1
coord_type atom1 atom2 atom3 atom4 start stop steps e

command keyword value keywords meaning
Scan_dim_1  
 
 
coord_type  
Distance  
Angle  
Dihedral  
X, Y or Z  
Vary distance specified by atom1-atom2  
Vary angle specified by atom1-atom2-atom3  
Vary torsion specified by atom1-2-3-4  
Vary Cartesian X (or Y or Z) coordinate of atom1  
atom1, atom2, atom3, atom4  
 
numbers of the atoms involved in the Cartesian or internal coordinates. Unused atoms (e.g., atom3 & atom4 in case of Dihedral) must be 0.  
start  
 
Initial value of the coordinate in Angstroms or degrees  
stop  
 
Final value of the coordinate  
steps  
 
Number of steps used to vary the coordinate from start value to stop value  

Description

When the value of Calculate is set to Scan_PES, the parameters specified for Scan_dim_1 tell DMol3 how to perform the scan. Use this keyword to specify what type of internal coordinate (Distance, Angle or Dihedral) or which Cartesian coordinate (X, Y, or Z) to scan. The scan will run from the start value to the stop value in steps equal increments. For example, to bend an angle involving atoms numbered 5, 6, and 7 systematically from 80° to 120° in 5 steps, the input would be:

Scan_dim_1
Angle 5 6 7 0 80.0 120.0 5

In this case, the scan will perform geometry optimization with the value of the angle frozen at 80°, 90°, 100°, 110°, and 120°.

SCF_Charge_Mixing

Purpose

The SCF_Charge_Mixing keyword specifies the mixing coefficient for the charge density.

Syntax

SCF_Charge_Mixing value1 value2

command keyword values default meaning
SCF_Charge_Mixing  
 
 
 
value 1  
real 0  
0.25  
Restricts maximum allowed change in charge density  
value 2  
real 0  
10.0  
Start DIIS if the SCF convergence falls below the threshold specified by value2  

Description

The mixing coefficient restricts the maximum allowed change in the charge density in the first iterations of the DFT self-consistent procedure, until DIIS becomes active. If old is the charge density from the previous iteration and curr is the density in the current iteration, then the new density is:

Eq. 23        

This results in smoother convergence.

For systems with a large number of low-lying excited states such as metal clusters, it is not unusual to have values of SCF_Charge_Mixing as small as 0.005.

When oscillatory behavior is observed rather than convergence during the DFT self-consistent procedure, the value of SCF_Charge_Mixing should be decreased.

Once the measure of the SCF convergence falls below the magnitude specified by value 2, the procedure will switch from simple mixing as described above to DIIS. When using conventional (Pulay) DIIS, mixing is turned off completely; when using Kresse's DIIS method, mixing is combined with the DIIS extrapolation. Details on specifying options for DIIS are described under the keyword SCF_DIIS.

To prevent DIIS from ever being used, specify a very small value for value2, for example:


SCF_CHARGE_MIXING 6 0.000001

SCF_Density_Convergence

Purpose

The SCF_Density_Convergence keyword specifies the density convergence threshold for SCF.

Syntax

SCF_Density_Convergence value

command keyword values default meaning
SCF_Density_Convergence  
real > 0  
1.0E-06  
SCF density convergence criterion.  

Description and example

The SCF_Density_Convergence keyword is used to specify the electron density convergence threshold for the SCF procedure, for example:


SCF_Density_Convergence   0.000001

The SCF electron density is considered converged when the difference between the norms of the electron density in two successive SCF iterations is less than the value of SCF_Density_Convergence. The density convergence criterion must be satisfied for SCF convergence to be achieved.

In most calculations, an SCF_Density_Convergence value of 10-5 is adequate.

SCF_DIIS

Purpose

The SCF_DIIS keyword specifies the maximum size of the subspace for the DIIS procedure in SCF calculations as well as the type of DIIS procedure to use.

Syntax

SCF_DIIS value1 value2

command keyword values default meaning
SCF_DIIS  
 
 
 
value1  
integer < 11  
6  
Use DIIS with this maximum subspace size.  
value2  
pulay  
 
 
kresse  
 
Use conventional DIIS scheme based on Pulay method (Chem. Phys. Lett. 73, 393 (1980)). This is the default for molecular systems  
Use damped-DIIS technique of Kresse and Furthmueller (Comp. Mat. Sci. 6, 15 (1996)). This is the default for periodic systems  

Description and example

This option can significantly improve SCF convergence. For metallic systems it may be necessary to use the SCF_DIIS keyword together with small values of the SCF_Charge_Mixing and SCF_Spin_Mixing parameters. It is not recommended that you use an SCF_DIIS value less than 4.

Normally, an SCF begins with simple mixing. Once the magnitude of the SCF convergence falls below the value specified by the SCF_Charge_Mixing keyword, DIIS is used.

Two different DIIS procedures are available. The pulay option uses the conventional DIIS technique and works well for molecular systems. The kresse technique appears to be a netter option for periodic systems. In the case of the kresse technique, SCF mixing and DIIS extrapolation can be used simultaneously.

SCF_Direct

Purpose

The SCF_Direct keyword is used to specify the direct SCF procedure.

Syntax

Direct value

command keyword values default meaning
SCF_Direct  
on  
on  
Use the direct scheme.  
off  
 
Use the conventional scheme.  

Description

The numeric integration requires evaluating quantities of the form:

Eq. 24        

This is usually accomplished by storing the value of each atomic orbital µ at each of the DMol integration grid points ri. This information is stored in the file .fwv and is read during each iteration of the SCF procedure. A medium-sized molecule may have about 300 atomic orbitals and 50000 grid points and would require 120 megabytes of disk space.

It is possible to construct these quantities only as needed rather than reading them from the disk. This is referred to as the direct procedure. It has the advantage of eliminating the .fwv file, thus significantly reducing disk requirements. However, some CPU overhead is associated with this procedure since it presently seems to take 25-50% longer than the conventional procedure. Despite this, the direct scheme is still advantageous if you are otherwise unable to run because of limited disk space.

SCF_Iterations

Purpose

The SCF_Iterations keyword is the maximum number of iterations.

Syntax

SCF_Iterations value

command keyword values default meaning
SCF_Iterations  
integer 0  
25  
Specify maximum number of iterations allowed in self-consistent solution of DFT equations.  

Description

Setting SCF_Iterations to larger values results in fuller convergence but added expense. The program exits when the number of iterations is exceeded or when the convergence criterion specified by SCF_Density_Convergence is met, whichever comes first.

A value of SCF_Iterations < 0 means that, regardless of the success of SCF convergence, the program continues after the maximum number of SCF cycles has occurred.

SCF_Number_Bad_Steps

Purpose

The SCF_Number_Bad_Steps keyword specifies the number of allowed bad (divergent) iterations before aborting a run.

Syntax

SCF_Number_Bad_Steps value

command keyword values default meaning
SCF_Number_Bad_Steps  
integer > 0  
13  
Limit number of divergent iterations.  

Description

During the self-consistent procedure, if the mixing factor is too large, the iterations might not converge. SCF_Number_Bad_Steps indicates how many bad steps in a row are permitted before the program aborts the self-consistent procedure. Values of 0 or 1 are not recommended, since the program often takes a single divergent step but recovers on the next iteration.

This option allows you to specify a very large number of iterations (large values of SCF_Iterations) without risking that DMol might simply oscillate for a great many iterations, wasting CPU time without converging. This option insures that the run aborts rather than continuing to waste time.

SCF_Restart

Purpose

The SCF_Restart keyword is used to restart an interrupted or unconverged calculation.

Syntax

SCF_Restart value

command keyword value keywords default meaning
SCF_Restart  
off  
off  
Use the density determined from superimposition of atomic densities.  
on  
 
Restart, using the potential from the file run_name.tpotl.  
file  
 
Restart, using the old analytic potential from the indicated.tpotl file, which is specified in the next line.  

Description

Because the .tpotl file contains the analytic representation of the Coulombic potential, restarting from it allows the SCF iterations to pick up where they left off. Alternatively, using an old .tpotl file at a different geometry may give the calculation a better starting guess than the default, the density from the superposition of atomic densities. If the integration grid, symmetry, or basis set is changed, the .tpotl file will no longer be compatible.

SCF_Spin_Mixing

Purpose

The SCF_Spin_Mixing keyword specifies the mixing coefficient for the spin density.

Syntax

SCF_Spin_Mixing value

command keyword values default meaning
SCF_Spin_Mixing  
real 0  
0.25  
Restricts maximum allowed change in spin density at the first iteration.  

Description

The mixing coefficient restricts the maximum allowed change in the spin density at the first iteration of the DFT self-consistent procedure. If old is the spin density from the previous iteration and curr is the density in the current iteration, then the new density is:

Eq. 25        

This results in smoother convergence.

For systems with many low-lying excited states, such as metal clusters, you may need values of SCF_Spin_Mixing as low as 0.005.

When oscillatory behavior is observed rather than convergence during the DFT self-consistent procedure, the value of SCF_Spin_Mixing should be decreased.

Spin

Purpose

The Spin keyword specifies twice the z-component of the wave function and is equal to the number of unpaired electrons.

Syntax

Spin value

command keyword value keywords default meaning
Spin  
integer > 0  
0  
Value of the spin.  

Description

If the spin is different than 0, then the calculation results in an excited state with the Spin value being the number of unpaired electrons.

Spin_Polarization

Purpose

The Spin_Polarization keyword controls spin-restricted/unrestricted wavefunctions.

Syntax

Spin_Polarization value

command keyword value keywords default meaning
Spin_Polarization  
restricted  
restricted  
Use spin-restricted wavefunctions.  
unrestricted  
 
Use spin-unrestricted wavefunctions.  

Description

For spin-restricted wavefunctions, the same orbitals are used for the alpha and beta electrons. For spin-unrestricted wavefunctions, different orbitals are used for different spins.

Closed-shell systems should usually be run with spin-restricted wavefunctions, and open-shell systems, with unrestricted wavefunctions.

Start_Spin_Populations

Purpose

The Start_Spin_Populations keyword allows you to input starting spin densities for selected atoms in the model. This option facilitates SCF convergence for ferromagnetic systems and allows for spin localization to occur during bond breaking.

Syntax

Start_Spin_Populations value
[atom_number initial_spin_density
...
blank line]

command keyword value keywords default meaning
Start_Spin_Populations  
off  
off  
No initial input spin densities.  
on  
 
Input the initial spin densities on following lines.  

Description

When Start_Spin_Populations is on, the input of initial spin densities follows in this format:


Start_Spin_Populations       on
atom_number initial_spin_density
...
<BLANK LINE>
Input should include all the atoms for which you want to input the initial spin density.

Using the Start_Spin_Population keyword turns on spin-unrestricted calculations.

Example

The dissociation of a Cr2 molecule can be successfully modeled by starting an SCF calculation with the following input:


Start_Spin_Populations  on
      1 0.5
      2 -0.5
The 0.5 is used to multiply the atomic spin densities. In this example, at the start of SCF, one of the Cr atoms has positive (up) spin density, and the other has the opposite (down) spin density. This allows for studying the dissociation of the Cr2 model into separate Cr atoms with 6 electrons with spin alpha on one atom and 6 electron of beta spin on the other atom.

If in this example, Start_Spin_Population were off, DMol3 would try to converge the Cr2 model to an excited state that has the alpha and beta electrons spread equally, so there is no localization of the spin density on any atom.

Symmetry

Purpose

The Symmetry keyword is used to input the point group symmetry for the molecule.

Note: DMol3 cannot use the Symmetry keyword in conjunction with the Frequency keyword. For Optimize_Frequency or TS_search_frequency calculations, however, DMol3 automatically performs an optimization or transition-state search with the desired symmetry and then a frequency calculation with C1 symmetry.

Syntax

Symmetry value_keyword [fix]

command keyword value keywords default meaning
Symmetry  
C1 or off  
C1  
No symmetry.  
CS CI C2 C2V C2H D2       D2H D2D C3V D3 D3H D3D C4V D4 D4H D4D C5V D5 D5H D6D C6V D6 D6H D5D TD O OH I IH  
 
Point groups.  
AUTO or on  
AUTO  
Automatic symmetry assignment.  
fix  
 
Use a subgroup of the point-group symmetry.  

Description

The coordinates for the model need to be oriented according to certain conventions. This can be done from the Cerius2 interface. When the AUTO (or on) keyword is used, DMol3 detects the symmetry and transforms the coordinates automatically.

A file with the suffix .symdec is created. The .symdec file contains information on how to assemble symmetry orbitals (SO) from the atomic basis set. For a detailed explanation of molecular symmetry as implemented here, see Cotton 1971.

The use of symmetry offers several computational advantages. First of all, the secular equation becomes block diagonal. This reduces the size of the matrix diagonalization and subsequently speeds up the calculation. In addition, orbital occupation may be specified for each irreducible representation--this allows the investigation of electronic states of different symmetry. Finally, fewer numerical integration points need to be generated by the program. The points are generated only for a unique region of space, and the full set of points is obtained by symmetry operations. This reduces the computation time and disk storage requirements.

For frequency calculations, you should use the keywords Symmetry on. However, C1 symmetry is used in the SCF calculation for every displacement of nuclei. Only the symmetry-inequivalent displacements are considered (which saves computational time).

At present, the following limitations are imposed on the use of symmetry:

Example

If you want to use a subgroup of the molecular point-group symmetry, use the fix keyword after the group name, for example for a water model:


symmetry   c2   fix

This allows you to do the calculation with C2 symmetry instead of C2v. DMol3 does not verify if the requested subgroup is indeed a valid choice for the model.

Upper_Energy_Limit

Purpose

The Upper_Energy_Limit keyword defines the upper bound of the transition energy range.

Syntax

Upper_Energy_Limit value [units]

command keyword values default meaning
Upper_Energy_Limit  
real  
 
Value of upper limit.  
units is one of:  
Ry or Rydberg  
Rydberg  
Use Rydberg units.  
au or a.u.  
 
Use atomic units.  
eV  
 
Use units of electron volts.  
cm-1 or cm(-1) or cm^-1 or cm^(-1)  
 
Use units of wave number.  
nm  
 
Use units of nanometers.  

Description

If Optical _Absorption is on, the Lower_Energy_Limit and Upper_Energy_Limit keywords control the range of energies within which electronic transitions are computed.

The Rydberg is a fundamental spectroscopic unit (the energy difference between the hydrogen atom 1s ground state level and the continuum is one Rydberg, or half a Hartree).

Vibration_Project

Purpose

The Vibration_Project keyword specifies to project out translations and rotations from the force-constant matrix.

Syntax

Vibration_Project value

command keyword value keywords default meaning
Vibration_Project  
off  
 
Do not perform the projection.  
on  
on  
Project space of translations and rotations from the force-constant matrix.  

Description

For molecular models, both translations and rotations are removed; for periodic models, only rotations are removed.

Normally, when vibrational frequencies are evaluated, there are 6 modes that have a value of zero, corresponding to the 3 translational and 3 rotational degrees of freedom. When a force-constant (second-derivative) matrix is not evaluated at the point of zero gradient, this is not necessarily true. However, it is possible to project the space of the translations and rotations from the force-constant matrix, forcing 6 zero eigenvalues. This has a slight effect on the remaining 3N - 6 vibrational frequencies.

Vibration_Restart

Purpose

The Vibration_Restart keyword restarts a frequency evaluation.

Syntax

Vibration_Restart value

command keyword value keywords default meaning
Vibration_Restart  
on  
 
Restart a frequency calculation.  
off  
off  
Do not restart a frequency calculation.  
file  
 
Read .hesswk file.  

Description

Evaluation of the Hessian by finite differences requires a separate calculation of the gradient for each atom perturbed in each direction x, y, and z. As each gradient is computed, it is stored in the .hesswk file.

If the calculation is interrupted, you can restart it, beginning with the next displacements, with the input:


      Vibration_Restart       on

thereby not wasting your previous results. DMol3 automatically searches the data in the .hesswk file, identifies the last atom and coordinate for which gradients are available, and restarts the calculation at the next finite displacement. If the .hesswk file contains all the gradients necessary to calculate the second derivatives, DMol3 uses the data in the .hesswk file to compute the vibrational frequencies and evaluate thermodynamic properties.

If the Hessian data are in a file with a name other than run_name.hesswk, say file1, you can ask DMol3 to read that file by specifying:


      Vibration_Restart     file
      file1

Vibration_Steps

Purpose

The Vibration_Steps keyword specifies number of finite differences of gradients used in frequency evaluation and the step size for finite differences.

Syntax

Vibration_Steps value1 value2

command keyword values default meaning
Vibration_Steps  
 
 
 
value1  
1  
 
Use single-point differencing to obtain second derivatives.  
2  
2  
Use two-point (or central) differencing to obtain second derivatives.  
value2  
real > 0  
0.01  
Step size in finite-difference evaluation of the Hessian (in Bohrs).  

Description

Harmonic vibrational frequencies are computed by diagonalizing the mass-weighted second-derivative matrix, F (Wilson et al. 1980). The elements of F are given by:

Eq. 26        

Here, qi and qj represent two Cartesian coordinates of atoms i and j, and mi and mj are the masses of the atoms. The square roots of the eigenvalues of F are the harmonic frequencies.

In DMol3, it is not possible to compute the second derivatives analytically, so they are computed by finite differences of first derivatives. Gradients are computed at displaced geometries and second derivatives are computed numerically.

A value of 1 for Vibration_Steps uses single-point differencing for this process. Displacements are taken in only one direction:

Eq. 27        

where the two terms represent the analytic derivatives at the equilibrium geometry and at a geometry with coordinate qj displaced by distance .

A value of 2 for Vibration_Steps uses two-point (or central) differencing to obtain the second derivatives:

Eq. 28        

This can reduce numerical rounding-off errors, but takes twice as much computer resources as single-point differencing.

For very flat potential energy surfaces, larger step sizes may be needed. Smaller values may be appropriate for steep surfaces.




Last updated December 06, 1998 at 11:51AM Pacific Standard Time.
Copyright © 1998, Molecular Simulations, Inc. All rights reserved.