Documentation for module cg_utils

Utilities for Geometry optimization using Conjugate Gradients

source: cg_utils.F
Loading...

public Subroutines/Functions:

Main driver for line minimization routines for CG
Computes the Conjugate direction for the next search

RECURSIVE SUBROUTINEcg_linmin(gopt_env, xvec, xi, g, opt_energy, output_unit, gopt_param, globenv)

Main driver for line minimization routines for CG

Arguments:
POINTER
:: gopt_env ...
REAL(dp),
POINTER
:: xvec(:) ...
REAL(dp),
POINTER
:: xi(:) ...
REAL(dp),
POINTER
:: g(:) ...
REAL(dp),
INTENT(inout)
:: opt_energy ...
INTEGER
:: output_unit ...
POINTER
:: gopt_param ...
POINTER
:: globenv ...

SUBROUTINEget_conjugate_direction(gopt_env, fletcher_reeves, g, xi, h)

Computes the Conjugate direction for the next search

Arguments:
POINTER
:: gopt_env ...
LOGICAL,
INTENT(in)
:: fletcher_reeves ...
REAL(dp),
POINTER
:: g(:) contains the theta of the previous step.. (norm 1.0 vector)
REAL(dp),
POINTER
:: xi(:) contains the -theta of the present step.. (norm 1.0 vector)
REAL(dp),
POINTER
:: h(:) contains the search direction of the previous step (must be orthogonal to nvec of the previous step (nvec_old))