Angle is defined by points
,
, and
, and spanned by vectors
and
:
| (7.18) |
The first derivatives of
with respect to Cartesian coordinates are:
![]() |
(7.19) | ||
![]() |
(7.20) | ||
![]() |
(7.21) |
These equations for the derivatives have a numerical instability when
the angle goes to 0 or to 180
.
Presently, the problem is `solved' by testing for the size
of the angle; if it is too small, the derivatives are set to 0
in the hope that other restraints will eventually pull the angle
towards well behaved regions. Thus, angle restraints of 0 or
180
should not be used in the conjugate gradients or molecular dynamics
optimizations.