Header Ads Widget

Ab initio Calculations Using Wien2k Code

Last Posts

10/recent/ticker-posts

MINI (Geometry minimization)

This program is usually called from the script min_lapw and performs movements of the atomic positions according to the calculated forces (please read Sec. 5.3.2). It generates a new case.struct file which can be used in the next geometry/time step. Depending on the input options, mini helps to find the equilibrium positions of the atoms or performs a molecular dynamics simulation (which might take very long time). 

For finding the equilibrium positions different methods are available. We recommend PORT, a ``reverse-communication trust-region Quasi-Newton method'' from the Port library (http://www.bell-labs.com/project/PORT/doc/port3doc.tar.gz, Gay 1983), which was implemented by L.D.Marks (L-marks@northwestern.edu, http://www.numis.northwestern.edu). It minimizes the total energy and NOT the forces (using the forces as derivative of E vs. atomic positions). In cases when energy and forces are not "compatible", eg. because of numerical noise due to limited scf convergence, small RKmax or crude k-mesh, PORT may fail. An interesting alternative is a sophisticated modified steepest-descent method (NEW1), which minimizes the forces (does not use the total energy). Eventually a damped Newton dynamics is also available. 

The forces are read from a file case.finM, while the ``history'' of the geometry optimization or MD is stored in case.tmpM
One can constrain individual positions in case.inM or define linear constrains for several positions using case.constraint (thanks to B.Yanchitsky (Kiev, yan@imag.kiev.ua); for details see comments in the SRC_templates/case.constraint file). In case of calculations with linear constrains one should use NEW1 (in case.inM). When constraining individual positions and using PORT, one should after modifications in case.inM rerun x pairhess -copy (which copies .minpair to .minrestart and .min_hess).


1 Execution

The program mini is executed by invoking the command:
mini mini.def or x mini


2 Dimensioning parameters

The following dimensioning parameters are collected in the file param.inc:
MAXIT maximum number of geometry steps
NRAD number of radial mesh points
NCOM number of LM terms in density
NNN number of neighboring atoms for nn
NSYM order of pointgroup


3 Input

Two examples are given below; one for a PORT geometry optimization, and one for molecular dynamics using a NOSE thermostat:

1 Input for geometry optimization:

---------------- top of file: xxx.inM --------------------
PORT 2.0  0.25         (PORT/NEWT   tolf step0 (a4,2f5.2))
1.0 1.0 1.0 3.0        ( 1..3:delta, 4:BO/eta(1=friction zero))
1.0 1.0 1.0 6.0        ( 1..3=0 constraint)
------------------- bottom of file ------------------------
Interpretive comments on this file are as follows.
line 1:
format(a4,2f5.2)
MINMOD   Modus of the calculation
  PORT Geometry optimization with reverse-communication trust-region Quasi-Newton routine from the Port library. Recommended option.
  NEW1 Performs geometry optimization with "sophisticated" steepest-descent method with automatic adaptation of stepsize (still experimental, but when PORT fails, an interesting alternative)
  NEWT Performs geometry optimization with damped Newton scheme according to
    $R^{\tau+1}_m = R^\tau_m + \eta_m (R^\tau_m -
R^{\tau-1}_m) + \delta_m F^\tau_m $
    where $R^\tau_m$ and $F^\tau_m$ are the coordinate and force at time step $\tau$. When the force has changed its direction from the last to the present timestep (or is within the tolerance TOLF), $\eta_m$ will be set to $1-\eta_m$. Please see also the comments in Sect. 5.3.2
  BFGS Performs geometry optimization with the variable metric method of BFGS. This option works only when a quadratic approximation is a good approximation to the specific potential surface. Obsolete.
TOLF   Force tolerance, geometry optimization will stop when all forces are below TOLF.
STEP0   Initial "Trust-region radius". Determines size of first geometry step.
line 2:
free format
DELTA(1-3)   For PORT (and BFGS): Precondition parameters: rescales the gradient and thus determines the size of the geometry steps
    For NEWT/NEW1: x,y,z-delta parameters. Determines speed of motion. Good values must be found for each individual system. They depend on the atomic mass, the vibrational frequencies and the starting point (see Sect. 5.3.2).
    DELTA(i) = 0 constrains the corresponding i-th coordinate (for PORT: after setting a DELTA(i)=0, also rerun pairhess to set a proper Hessian). The delta-x,y,z correspond to the global coordinates (the same as the positions in case.struct and the forces :FGL from case.scf).
    Whenever you change these DELTA(i) you must remove file case.tmpM !
ETA   For NEWT: damping (friction) parameter. ETA=1 means no friction, ETA=0 means no speed from previous time steps
    PORT: changes the strength of the bonds when running pairhess and ZWEIGHT is negative (see the pairhess description), otherwise not used
    NEW1: ETA is not used
$»>$ line 2:
must be repeated for every atom

2 Input for Molecular dynamics:

---------------- top of file: nbc.inM --------------------
NOSE                      (NOSE/MOLD (a4))
58.9332 400. 1273. 5.0    (Masse, delta t, T, nose-frequency) 
58.9332 400. 1273. 5.0    
58.9332 400. 1273. 5.0    
58.9332 400. 1273. 5.0
58.9332 400. 1273. 5.0
58.9332 400. 1273. 5.0
------------------- bottom of file ------------------------
Interpretive comments on this file are as follows.
line 1:
format(a4,f5.2)
MINMOD   Modus of the calculation
  MOLD Performs next molecular dynamics timestep
  NOSE Performs next molecular dynamics timestep using a NOSE thermostat
line 2:
free format
MASS   Atomic mass of $i^{th}$ atom
TIMESTEP   Time step of MD (in atomic units, depends on highest vibrational frequencies)
TEMP   Simulation Temperature (K)
NOSF   Nose-frequency
$»>$line 2:
must be repeated for every atom


Post a Comment

0 Comments