Skip to content

fire

Optimize the given structure using the FIRE algorithm as found in the reference paper.

fire(
  structure(molecule = water)
  xtb(model = gfn0)
)

This command is useful for energy methods that are extremely fast, or for very large systems.

Additional forces can be added using the harmonic_spring subcommand:

fire(
  structure(molecule = water)
  xtb(model = gfn0)
  harmonic_spring(
    force_constant = 1.0 au
    distance(atoms = [[1], [2]] value = 1.5 angstrom)
  )
)
This command can appear in the global context.

Subcommands

Options

energy_change

Convergence threshold for change in energy.

  • The type is quantity
  • The default is 1e-6 au
  • The value must be nonnegative
force_max

Convergence threshold for maximum absolute element of the forces.

  • The type is real
  • The default is 1e-5
  • The value must be nonnegative
force_mixing_decrease

Factor applied to the force-mixing ratio (\(\alpha\)) when the number of steps since an uphill move has exceed min_n_downhill_steps.

  • The type is real
  • The default is 0.99
force_mixing_initial

The mixing ratio (\(\alpha\)) of forces to velocites as used in:

\[ \mathbf{v}_{n+1} = (1-\alpha) * \mathbf{v}_n + \alpha \mathbf{F}_n |\mathbf{v}_n| \]
  • The type is real
  • The default is 0.1
max_steps

Maximum number of steps.

  • The type is int
  • The default is 1000
  • The value must be nonnegative
min_n_downhill_steps

Number of successive downhill steps required before increasing the time step (\(t\)) and decreasing the force-mixing ratio (\(\alpha\)).

  • The type is int
  • The default is 5
output_coordinates

Filename to write coordinates at each step.

  • The type is string
  • There is no default value.
time_step_decrease

Multiplication factor that decreases the time step (\(t\)) if an uphill step is made or if \( \mathbf{F} \cdot \mathbf{v} \le 0 \).

  • The type is real
  • The default is 0.5
time_step_increase

Multiplication factor to increase the time step (\(t\)) if min_downhill_steps has been exceeded.

  • The type is real
  • The default is 1.1
time_step_initial

Initial value for the time step (\(t\)).

  • The type is quantity
  • The default is 1 fs
  • The value must be positive
time_step_max

Maximum value for the time step (\(t\)).

  • The type is real
  • The default is 5 fs
  • The value must be positive