ABINIT/calc_b_matrix [ Functions ]

calculate values of derivatives of internal coordinates as a function of
cartesian ones = B matrix

INPUTS

angs= number of angles
bonds(2,2,nbond)=for a bond between iatom and jatom
bonds(1,1,nbond) = iatom
bonds(2,1,nbond) = icenter
bonds(1,2,nbond) = jatom
bonds(2,2,nbond) = irshift
carts(2,ncart)= index of total primitive internal, and atom (carts(2,:))
dihedrals(2,4,ndihed)=indexes to characterize dihedrals
nang(2,3,nang)=indexes to characterize angles
nbond=number of bonds
ncart=number of auxiliary cartesian atom coordinates (used for constraints)
ndihed= number of dihedrals
ninternal=nbond+nang+ndihed+ncart: number of internal coordinates
nrshift= dimension of rshift
rprimd(3,3)=dimensional real space primitive translations (bohr)
rshift(3,nrshift)=shift in xred that must be done to find all neighbors of
a given atom within a given number of neighboring shells
xcart(3,natom)=cartesian coordinates of atoms (bohr)

ABINIT/deloc2xcart [ Functions ]

Determine the cartesian coordinates which correspond to the
given values of the delocalized coordinates. The relationship
is non-linear, so use an iterative scheme, as in Baker
JCP .105. 192 (1996).
Older reference: Pulay and co. JACS 101 2550 (1979)

ABINIT/pred_delocint [ Functions ]

Ionmov predictors (10) BFGS with delocalized internal coordinates
IONMOV 10:
Given a starting point xred that is a vector of length 3*(natom-1)
(reduced nuclei coordinates),
and unit cell parameters (acell and rprimd) the
Broyden-Fletcher-Goldfarb-Shanno minimization is performed on the
total energy function, using its gradient (atomic forces and stresses)
while the optimization of unit cell
parameters is only performed if optcell/=0.
The convergence requirement on
the atomic forces, 'tolmxf', allows an early exit.
Otherwise no more than 'ntime' steps are performed.
Returned quantities are xred, and eventually acell and rprimd (new ones!).
Could see Numerical Recipes (Fortran), 1986, page 307.
Implements the delocalized internal coordinate scheme
of Andzelm et al. in CPL .335. 321 (2001) \
and Baker et al. JCP .105. 192 (1996)
B matrix is derivative of delocalized internals wrt cartesian coordinates
U matrix is eigenvectors of G = B*B^{T}
S matrix is eigenvectors of F = B^{T}B

INPUTS

ab_mover <type(abimover)> : Datatype with all the information needed by the preditor
itime : Index of the present iteration
ntime : Maximal number of iterations
ionmov : (10 or 11) Specific kind of BFGS
zDEBUG : if true print some debugging information