The polymodal pdf for a geometric feature (, distance, angle,
dihedral angle) is
![]() |
(7.42) |
The first derivatives with respect to feature are:
When any of the normalized deviations
is
large, there are numerical instabilities in calculating the derivatives
because
are arguments to the exp function. Robustness is
ensured as follows.
The `effective' normalized deviation is used in all the equations
above when the magnitude of normalized violation
is larger than
cutoff rgauss1 (10 for double precision). This scheme works up
to rgauss2 (200 for double precision); violations larger than
that are ignored. This trick is equivalent
to increasing the standard deviation
. A slight disadvantage
is that there is a discontinuity in the first derivatives at rgauss1.
However, if continuity were imposed,
the range would not be extended (this is equivalent to linearizing the
Gaussian, but since it is already linear for large deviations, a
linearization with derivatives smoothness would not introduce much
change at all).
![]() |
![]() |
![]() |
(7.44) |
![]() |
![]() |
![]() |
(7.45) |
![]() |
![]() |
![]() |
(7.46) |
![]() |
![]() |
![]() |
(7.47) |
![]() |
![]() |
![]() |
(7.48) |
![]() |
![]() |
![]() |
(7.49) |
Now, Eqs. 5.41-5.43 are used with instead
of
. For single precision,
, rgauss1 = 4, rgauss2 = 100.