Keywords

Summary of all keywords

Constraints
Type:Block
Description:The Constraints block allows geometry optimizations and potential energy surface scans with constraints. The constraints do not have to be satisfied at the start of the calculation.
Angle
Type:String
Recurring:True
Description:Fix the angle between three atoms. Three atom indices followed by an angle in degrees.
Atom
Type:Integer
Recurring:True
Description:Fix the position of an atom. Just one integer referring to the index of the atom in the [System%Atoms] block.
Block
Type:String
Recurring:True
Description:Name of the block to contstrain as specified in the atom tag within the System%Atoms block.
BlockAtoms
Type:Integer List
Recurring:True
Description:List of atom indices for a block constraint, where the internal degrees of freedom are frozen.
Coordinate
Type:String
Recurring:True
Description:Fix a particular coordinate of an atom. Atom index followed by (x|y|z).
Dihedral
Type:String
Recurring:True
Description:Fix the dihedral angle between four atoms. Four atom indices followed by an angle in degrees.
Distance
Type:String
Recurring:True
Description:Fix the distance between two atoms. Two atom indices followed by the distance in Angstrom.
ElasticTensor
Type:Block
Description:Options for numerical evaluation of the elastic tensor.
MaxGradientForGeoOpt
Type:Float
Default value:0.0001
Unit:Hartree/Angstrom
Description:Maximum nuclear gradient for the relaxation of the internal degrees of freedom of strained systems.
Parallel
Type:Block
Description:The evaluation of the elastic tensor via numerical differentiation is an embarrassingly parallel problem. Double parallelization allows to split the available processor cores into groups working through all the available tasks in parallel, resulting in a better parallel performance. The keys in this block determine how to split the available processor cores into parallelly working groups.
nCoresPerGroup
Type:Integer
Description:Number of cores in each parallelly working group.
nGroups
Type:Integer
Description:Total number of processor groups. This is the number of tasks that will be executed in parallel.
nNodesPerGroup
Type:Integer
Description:Number of nodes in each group. This option should only be used on homogeneous compute clusters, where all used compute nodes have the same number of processor cores.
StrainStepSize
Type:Float
Default value:0.001
Description:Step size (relative) of strain deformations used for computing the elastic tensor numerically.
Engine
Type:Block
Description:The input for the computational engine. The header of the block determines the type of the engine.
EngineDebugging
Type:Block
Description:This block contains some options useful for debugging the computational engines.
ForceContinousPES
Type:Bool
Default value:False
Description:If this option is set, the engine will always run in contiuous PES mode. For many engines this disables the use of symmetry, as this one always leads to a discontinuous PES around the symmetric points: Basically there is jump in the PES at the point where the symmetry detection starts classifying the system as symmetric. Normally the continuous PES mode of the engine (often disabling the symmetry) is only used when doing numerical derivatives, but this flag forces the engine to continously run in this mode.
IgnoreGradientsRequest
Type:Bool
Default value:False
Description:If this option is set, the engine will not do analytical gradients if asked for it, so that gradients will have to be evaluated numerically by AMS.
IgnoreStressTensorRequest
Type:Bool
Default value:False
Description:If this option is set, the engine will not calculate an analytical stress tensor if asked for it, so that the stress tensor will have to be evaluated numerically by AMS.
RandomFailureChance
Type:Float
Default value:0.0
Description:Makes the engine randomly report failures, even though the results are actually fine. Useful for testing error handling on the application level.
EngineRestart
Type:String
Description:The path to the file from which to restart the engine.
GeometryOptimization
Type:Block
Description:Configures details of the geometry optimization and transition state searches.
CalcPropertiesOnlyIfConverged
Type:Bool
Default value:True
Description:Compute the properties requested in the ‘Properties’ block, e.g. Frequencies or Phonons, only if the optimization (or transition state search) converged. If False, the properties will be computed even if the optimization did not converge.
ConjugateGradients
Type:Block
Description:Configures details of the conjugate gradients geometry optimizer.
Step
Type:Block
Description:
MinRadius
Type:Float
Default value:0.0
Description:
TrustRadius
Type:Float
Default value:0.2
Description:Initial value of the trust radius.
Convergence
Type:Block
Description:Convergence is monitored for two items: the energy and the Cartesian gradients. Convergence criteria can be specified separately for each of these items.
Energy
Type:Float
Default value:1e-05
Unit:Hartree
Description:The criterion for changes in the energy.
Gradients
Type:Float
Default value:0.001
Unit:Hartree/Angstrom
Description:The criterion for changes in the gradients.
Step
Type:Float
Default value:0.001
Unit:Angstrom
Description:The maximum Cartesian step allowed for a converged geometry.
CoordinateType
Type:Multiple Choice
Default value:Auto
Options:[Auto, Delocalized, Cartesian]
Description:Select the type of coordinates in which to perform the optimization. If ‘Auto’, delocalized coordinates will be used for molecular systems, while cartesian coordinates will be used for periodic systems. Optimization in delocalized coordinates [Delocalized] can only be used for geometry optimizations or transition state searches of molecular systems with the Quasi-Newton method. The experimental SCMGO optimizer supports [Delocalized] coordinates for both molecular and periodic systems.
FIRE
Type:Block
Description:This block configures the details of the FIRE optimizer. The keywords name correspond the the symbols used in the article describing the method, see PRL 97, 170201 (2006).
NMin
Type:Integer
Default value:5
Description:Number of steps after stopping before increasing the time step again.
alphaStart
Type:Float
Default value:0.1
Description:Steering coefficient.
dtMax
Type:Float
Default value:1.25
Unit:Femtoseconds
Description:Maximum time step used for the integration.
dtStart
Type:Float
Default value:0.25
Unit:Femtoseconds
Description:Initial time step for the integration.
fAlpha
Type:Float
Default value:0.99
Description:Reduction factor for the steering coefficient.
fDec
Type:Float
Default value:0.5
Description:Reduction factor for reducing the time step in case of uphill movement.
fInc
Type:Float
Default value:1.1
Description:Growth factor for the integration time step.
strainMass
Type:Float
Default value:0.5
Description:Ficticious relative mass of the lattice degrees of freedom. This controls the stiffness of the lattice degrees of freedom relative to the atomic degrees of freedom, with smaller values resulting in a more aggressive optimization of the lattice.
InitialHessian
Type:Block
Description:Options for initial model Hessian when optimizing systems with either the Quasi-Newton or the SCMGO method.
File
Type:String
Description:KF file containing the initial Hessian. This can be used to load a Hessian calculated in a previously with the [Properties%Hessian] keyword.
Type
Type:Multiple Choice
Default value:Auto
Options:[Auto, UnitMatrix, Swart, FromFile]
Description:Selects the type of the initial model Hessian, or load the Hessian from the results of a previous calulation.
KeepIntermediateResults
Type:Bool
Default value:False
Description:Whether the full engine result files of all intermediate steps are stored on disk. By default only the last step is kept, and only if the geometry optimization converged. This can easily lead to huge amounts of data being stored on disk, but it can sometimes be convenient to closely monitor a tricky optimization, e.g. excited state optimizations going through conical intersections, etc. ...
MaxIterations
Type:Integer
Description:The maximum number of geometry iterations allowed to converge to the desired structure.
Method
Type:Multiple Choice
Default value:Auto
Options:[Auto, Quasi-Newton, SCMGO, FIRE, ConjugateGradients]
Description:Select the optimization algorithm employed for the geometry relaxation. Currently supported are: the Hessian-based Quasi-Newton-type BFGS algorithm, the experimental SCMGO optimizer, the fast inertial relaxation method (FIRE), and the conjugate gradients method. The default is to choose an appropriate method automatically based on the engine’s speed, the system size and the supported optimization options.
OptimizeLattice
Type:Bool
Default value:False
Description:Whether to also optimize the lattice for periodic structures. This is currently only supported with the Quasi-Newton and SCMGO optimizers.
Pressure
Type:Float
Default value:0.0
Description:Optimize the structure under pressure (this will only have an effect if you are optimizing the lattice vectors). Currently only working in combination with the Quasi-Newton optimizer. For phase transitions you may consider disabling or breaking the symmetry.
PressureUnit
Type:Multiple Choice
Default value:GPa
Options:[a.u., Pascal, GPa, atm, bar, kbar]
Description:The unit for pressure to be used for optimizations under pressure
Quasi-Newton
Type:Block
Description:Configures details of the Quasi-Newton geometry optimizer.
MaxGDIISVectors
Type:Integer
Default value:0
Description:Sets the maximum number of GDIIS vectors. Setting this to a number >0 enables the GDIIS method.
Step
Type:Block
Description:
TrustRadius
Type:Float
Default value:0.2
Description:Initial value of the trust radius.
SCMGO
Type:Block
Description:Configures details SCMGO.
ContractPrimitives
Type:Bool
Default value:True
Description:Form non-redundant linear combinations of primitive coordinates sharing the same central atom
NumericalBMatrix
Type:Bool
Default value:False
Description:Calculation of the B-matrix, i.e. Jacobian of internal coordinates in terms of numerical differentiations
Step
Type:Block
Description:
TrustRadius
Type:Float
Default value:0.2
Description:Initial value of the trust radius.
VariableTrustRadius
Type:Bool
Default value:True
Description:Whether or not the trust radius can be updated during the optimization.
logSCMGO
Type:Bool
Default value:False
Description:Verbose output of SCMGO internal data
testSCMGO
Type:Bool
Default value:False
Description:Run SCMGO in test mode.
LoadEngine
Type:String
Description:The path to the file from which to load the engine configuration. Replaces the Engine block.
LoadSystem
Type:Block
Description:Block that controls reading the chemical system from a KF file instead of the [System] block.
File
Type:String
Description:The path of the KF file from which to load the system.
Section
Type:String
Default value:Molecule
Description:The section on the KF file from which to load the system.
MolecularDynamics
Type:Block
Description:Configures molecular dynamics (with the velocity-Verlet algorithm) with and without thermostats. This block allows to specify the details of the molecular dynamics calculation.
Barostat
Type:Block
Description:This block allows to specify the use of a barostat during the simulation.
BulkModulus
Type:Float
Default value:2200000000.0
Unit:Pascal
Description:An estimate of the bulk modulus (inverse compressibility) of the system for the Berendsen barostat. This is only used to make Tau correspond to the true observed relaxation time constant. Values are commonly on the order of 10-100 GPa (1e10 to 1e11) for solids and 1 GPa (1e9) for liquids (2.2e9 for water). Use 1e9 to match the behavior of standalone ReaxFF.
Duration
Type:Integer List
Description:Specifies how many steps should a transition from a particular pressure to the next one in sequence take.
Equal
Type:Multiple Choice
Default value:None
Options:[None, XYZ, XY, YZ, XZ]
Description:Enforce equal scaling of the selected set of dimensions. They will be barostatted as one dimension according to the average pressure over the components.
Pressure
Type:Float List
Unit:Pascal
Description:Specifies the target pressure.
Scale
Type:Multiple Choice
Default value:XYZ
Options:[XYZ, Shape, X, Y, Z, XY, YZ, XZ]
Description:Dimensions that should be scaled by the barostat to maintain pressure. Selecting Shape means that all three dimensions and also all the cell angles are allowed to change.
Tau
Type:Float
Unit:Femtoseconds
Description:Specifies the time constant of the barostat.
Type
Type:Multiple Choice
Default value:None
Options:[None, Berendsen, MTK]
Description:Selects the type of the barostat.
CalcPressure
Type:Bool
Default value:False
Description:Calculate the pressure in periodic systems. This may be computationally expensive for some engines that require numerical differentiation. Some other engines can calculate the pressure for negligible additional cost and will always do so, even if this option is disabled.
Checkpoint
Type:Block
Description:Sets the frequency for storing the entire MD state necessary for restarting the calculation.
Frequency
Type:Integer
Default value:1000
Description:Write the MD state and engine-specific data to the respective .rkf files once every N steps.
InitialVelocities
Type:Block
Description:Sets the frequency for printing to stdout and storing the molecular configuration on the .rkf file.
File
Type:String
Description:AMS RKF file containing the initial velocities.
Temperature
Type:Float
Unit:Kelvin
Description:Sets the temperature for the Maxwell-Boltzmann distribution when the type of the initial velocities is set to random, in which case specifying this key is mandatory. ADFinput will use the thermostat temperature as default.
Type
Type:Multiple Choice
Default value:Random
Options:[Zero, Random, FromFile, Input]
Description:Specifies the initial velocities to assign to the atoms. Three methods to assign velocities are available. Zero: All atom are at rest at the beginning of the calculation. Random: Initial atom velocities follow a Maxwell-Boltzmann distribution for the temperature given by the [MolecularDynamics%InitialVelocities%Temperature] keyword. FromFile: Load the velocities from a previous ams result file. Input: Atom’s velocities are set to the values specified in the [MolecularDynamics%InitialVelocities%Values] block, which can be accessed via the Expert AMS panel in ADFinput.
Values
Type:Non-standard block
Description:This block specifies the velocity of each atom when [MolecularDynamics%InitialVelocities%Type] is set to Input. Each row must contain three floating point values (corresponding to the x,y,z component of the velocity vector) and a number of rows equal to the number of atoms must be present, given in the same order as the [System%Atoms] block.
NSteps
Type:Integer
Default value:1000
Description:The number of steps to be taken in the MD simulation.
Preserve
Type:Block
Description:Periodically remove numerical drift accumulated during the simulation to preserve different whole-system parameters.
AngularMomentum
Type:Bool
Default value:True
Description:Remove overall angular momentum of the system. This option is ignored for 3D-periodic systems.
CenterOfMass
Type:Bool
Default value:False
Description:Translate the system to keep its center of mass at the coordinate origin. This option is not very useful for 3D-periodic systems.
Momentum
Type:Bool
Default value:True
Description:Remove overall (linear) momentum of the system.
Print
Type:Block
Description:This block controls the printing of additional information to stdout.
System
Type:Bool
Default value:False
Description:Print the chemical system before and after the simulation.
Velocities
Type:Bool
Default value:False
Description:Print the atomic velocities before and after the simulation.
Restart
Type:String
Description:The path to the ams.rkf file from which to restart the simulation.
Thermostat
Type:Block
Recurring:True
Description:This block allows to specify the use of a thermostat during the simulation. Depending on the selected thermostat type, different additional options may be needed to characterize the specific thermostat’ behavior.
BerendsenApply
Type:Multiple Choice
Default value:Global
Options:[Local, Global]
Description:Select how to apply the scaling correction for the Berendsen thermostat: - per-atom-velocity (Local) - on the molecular system as a whole (Global).
ChainLength
Type:Integer
Default value:10
Description:Number of individual thermostats forming the NHC thermostat
Duration
Type:Integer List
Description:Specifies how many steps should a transition from a particular temperature to the next one in sequence take.
FirstAtom
Type:Integer
Default value:1
Description:Index of the first atom to be thermostatted
LastAtom
Type:Integer
Default value:0
Description:Index of the last atom to be thermostatted. A value of zero means the last atom in the system.
Tau
Type:Float
Unit:Femtoseconds
Description:The time constant of the thermostat.
Temperature
Type:Float List
Unit:Kelvin
Description:The target temperature of the thermostat.
Type
Type:Multiple Choice
Default value:None
Options:[None, Berendsen, NHC]
Description:Selects the type of the thermostat.
TimeStep
Type:Float
Default value:0.25
Unit:Femtoseconds
Description:The time difference per step.
Trajectory
Type:Block
Description:Sets the frequency for printing to stdout and storing the molecular configuration on the .rkf file.
SamplingFreq
Type:Integer
Default value:100
Description:Write the the molecular geometry (and possibly other properties) to the .rkf file once every N steps.
NumericalDifferentiation
Type:Block
Description:Define options for numerical differentiations, that is the numerical calculation of gradients, Hessian and the stress tensor for periodic systems.
NuclearStepSize
Type:Float
Default value:0.0001
Unit:Bohr
Description:Step size for numerical nuclear gradient calculation.
Parallel
Type:Block
Description:Numerical differentiation is an embarrassingly parallel problem. Double parallelization allows to split the available processor cores into groups working through all the available tasks in parallel, resulting in a better parallel performance. The keys in this block determine how to split the available processor cores into parallelly working groups.
nCoresPerGroup
Type:Integer
Description:Number of cores in each parallelly working group.
nGroups
Type:Integer
Description:Total number of processor groups. This is the number of tasks that will be executed in parallel.
nNodesPerGroup
Type:Integer
Description:Number of nodes in each group. This option should only be used on homogeneous compute clusters, where all used compute nodes have the same number of processor cores.
StrainStepSize
Type:Float
Default value:0.001
Description:Step size (relative) for numerical stress tensor calculation.
NumericalPhonons
Type:Block
Description:Configures details of a numerical phonons calculation.
DoubleSided
Type:Bool
Default value:True
Description:By default a two-sided (or quadratic) numerical differentiation of the nuclear gradients is used. Using a single-sided (or linear) numerical differentiation is computationally faster but much less accurate. Note: In older versions of the program only the single-sided option was available.
Interpolation
Type:Integer
Default value:100
Description:Use interpolation to generate smooth phonon plots.
NDosEnergies
Type:Integer
Default value:1000
Description:Nr. of energies used to calculate the phonon DOS used to integrate thermodynamic properties. For fast compute engines this may become time limiting and smaller values can be tried.
Parallel
Type:Block
Description:Computing the phonons via numerical differentiation is an embarrassingly parallel problem. Double parallelization allows to split the available processor cores into groups working through all the available tasks in parallel, resulting in a better parallel performance. The keys in this block determine how to split the available processor cores into parallelly working groups. Keep in mind that the displacements for a phonon calculation are done on a super-cell system, so that every task requires more memory than the central point calculated using the primitive cell.
nCoresPerGroup
Type:Integer
Description:Number of cores in each parallelly working group.
nGroups
Type:Integer
Description:Total number of processor groups. This is the number of tasks that will be executed in parallel.
nNodesPerGroup
Type:Integer
Description:Number of nodes in each group. This option should only be used on homogeneous compute clusters, where all used compute nodes have the same number of processor cores.
StepSize
Type:Float
Default value:0.04
Unit:Angstrom
Description:Step size to be taken to obtain the force constants (second derivative) from the analytical gradients numerically.
SuperCell
Type:Non-standard block
Description:Used for the phonon run. The super lattice is expressed in the lattice vectors. Most people will find a diagonal matrix easiest to understand.
UseSymmetry
Type:Bool
Default value:True
Description:Whether or not to exploit the symmetry of the system in the phonon calculation.
PESScan
Type:Block
Description:Configures the details of the potential energy surface scanning task.
CalcPropertiesAtPESPoints
Type:Bool
Default value:False
Description:Whether to perform an additional calculation with properties on all the sampled points of the PES. If this option is enabled AMS will produce a separate engine output file for every sampled PES point.
FillUnconvergedGaps
Type:Bool
Default value:True
Description:After the initial pass over the PES, restart the unconverged points from converged neighbouring points.
ScanCoordinate
Type:Block
Recurring:True
Description:Specifies a coordinate along which the potential energy surface is scanned. If this block contains multiple entries, these coordinates will be varied and scanned together as if they were one.
Angle
Type:String
Recurring:True
Description:Scan the angle between three atoms. Three atom indices followed by two real numbers delimiting the transit range in degrees.
Coordinate
Type:String
Recurring:True
Description:Scan a particular coordinate of an atom. Atom index followed by (x|y|z) followed by two real numbers delimiting the transit range.
Dihedral
Type:String
Recurring:True
Description:Scan the dihedral angle between four atoms. Four atom indices followed by two real numbers delimiting the transit angle in degrees.
Distance
Type:String
Recurring:True
Description:Scan the distance between two atoms. Two atom indices followed by two real numbers delimiting the transit distance in Angstrom.
nPoints
Type:Integer
Default value:10
Description:The number of points along the scanned coordinate. Must be greater or equal 2.
Print
Type:Block
Description:This block controls the printing of additional information to stdout.
Timers
Type:Multiple Choice
Default value:None
Options:[None, Normal, Detail, TooMuchDetail]
Description:Printing timing details to see how much time is spend in which part of the code.
Properties
Type:Block
Description:Configures which AMS level properties to calculate for SinglePoint calculations or other important geometries (e.g. at the end of an optimization).
ElasticTensor
Type:Bool
Default value:False
Description:Whether or not to calculate the elastic tensor.
Gradients
Type:Bool
Default value:False
Description:Whether or not to calculate the gradients.
Hessian
Type:Bool
Default value:False
Description:Whether or not to calculate the Hessian.
NormalModes
Type:Bool
Default value:False
Description:Whether or not to calculate the normal modes of vibration (and of molecules the corresponding Ir intensities.)
Other
Type:Bool
Default value:True
Description:Other (engine specific) properties. Details are configured in the engine block.
Phonons
Type:Bool
Default value:False
Description:Whether or not to calculate the phonons for periodic systems.
SelectedAtomsForHessian
Type:Integer List
Description:Compute the Hessian matrix elements only for the atoms defined in this list (index). If not specified, the Hessian will be computed for all atoms.
StressTensor
Type:Bool
Default value:False
Description:Whether or not to calculate the stress tensor.
Symmetry
Type:Block
Description:Specifying details about the details of symmetry detection and usage.
Tolerance
Type:Float
Default value:1e-07
Description:Tolerance used to detect symmetry in the system.
System
Type:Block
Description:Specification of the chemical system.
AtomMasses
Type:Non-standard block
Description:User defined atomic masses.
Atoms
Type:Non-standard block
Description:The atom types and coordinates. Unit can be specified in the header. Default unit is Angstrom.
BondOrders
Type:Non-standard block
Description:Defined bond orders. May by used by MM engines.
Charge
Type:Float
Default value:0.0
Description:The system’s total charge in atomic units (only for non-periodic systems).
FractionalCoords
Type:Bool
Default value:False
Description:Whether the atomic coordinates in the Atoms block are given in fractional coordinates of the lattice vectors. Requires the presence of the Lattice block.
GeometryFile
Type:String
Description:Read geometry from an file instead of Atoms and Lattice and blocks. Supported formats: .xyz
Lattice
Type:Non-standard block
Description:Up to three lattice vectors. Unit can be specified in the header. Default unit is Angstrom.
LatticeStrain
Type:Float List
Description:Deform the input system by the specified strain. The strain elements are in Voigt notation, so one should specify 6 numbers for 3D periodic system (order: xx,yy,zz,yz,xz,xy), 3 numbers for 2D periodic systems (order: xx,yy,xy) or 1 number for 1D periodic systems.
RandomizeCoordinates
Type:Float
Default value:0.0
Unit:Angstrom
Description:Apply a random noise to the atomic coordinates. This can be useful if you want to deviate from an ideal symmetric geometry.
RandomizeStrain
Type:Float
Default value:0.0
Description:Apply a random strain to the system. This can be useful if you want to deviate from an ideal symmetric geometry, for example if you look for a phase change due to high pressure.
SuperCell
Type:Integer List
Description:Create a supercell of the input system (only possible for periodic systems). The integer numbers represent the diagonal elements of the supercell transformation; you should specify as many numbers as lattice vectors (i.e. 1 number for 1D, 2 numbers for 2D and 3 numbers for 3D periodic systems).
Task
Type:Multiple Choice
Options:[SinglePoint, GeometryOptimization, TransitionStateSearch, PESScan, MolecularDynamics]
Description:This key is used to specify the computational task to perform.
TransitionStateSearch
Type:Block
Description:Configures some details of the transition state search.
ModeToFollow
Type:Integer
Default value:1
Description:In case of Transition State Search, here you can specify the index of the normal mode to follow (1 is the mode with the lowest frequency).
UseSymmetry
Type:Bool
Default value:True
Description:Whether to use the system’s symmetry at the application level.