Learn R Programming

retistruct (version 0.6.3)

fire: The FIRE algorithm

Description

This is an implementation of the FIRE algorithm for structural relaxation put forward by Bitzek et al. (2006)

Usage

fire(
  r,
  force,
  restraint,
  m = 1,
  dt = 0.1,
  maxmove = 100,
  dtmax = 1,
  Nmin = 5,
  finc = 1.1,
  fdec = 0.5,
  astart = 0.1,
  fa = 0.99,
  a = 0.1,
  nstep = 100,
  tol = 1e-05,
  verbose = FALSE,
  report = message
)

Arguments

r

Initial locations of particles

force

Force function

restraint

Restraint function

m

Masses of points

dt

Initial time step

maxmove

Maximum distance to move in any time step

dtmax

Maximum time step

Nmin

Number of steps after which to start increasing dt

finc

Fractional increase in dt per time step

fdec

Fractional decrease in dt after a stop

astart

Starting value of a after a stop

fa

Fraction of a to retain after each step

a

Initial value of a

nstep

Maximum number of steps

tol

Tolerance - if RMS force is below this value, stop and report convergence

verbose

If TRUE report progress verbosely

report

Function to report progress when verbose is TRUE

Value

List containing x, the positions of the points, conv, which is 0 if convergence as occurred and 1 otherwise, and frms, the root mean square of the forces on the particles.

References

Bitzek, E., Koskinen, P., G\"ahler, F., Moseler, M., and Gumbsch, P. (2006). Structural relaxation made simple. Phys. Rev. Lett., 97:170201.