C C $Id: bndang.F,v 1.2 1998/07/16 16:39:25 jjv5 Exp arjan $ C C------------------------------------------------------------------------ SUBROUTINE BNDANG(XYZ,I,IA,IB,ANGLE) C C COMPUTES THE ANGLE IN RADIANS FORMED BY ATOMS I-IA-IB. RETURNED C IN ANGLE. C IMPLICIT DOUBLE PRECISION (A-H,O-Z) DIMENSION XYZ(3,*) C C FORM THE BOND VECTORS WITH VERTEX IA. C X1 = XYZ(1,I) - XYZ(1,IA) Y1 = XYZ(2,I) - XYZ(2,IA) Z1 = XYZ(3,I) - XYZ(3,IA) X2 = XYZ(1,IB) - XYZ(1,IA) Y2 = XYZ(2,IB) - XYZ(2,IA) Z2 = XYZ(3,IB) - XYZ(3,IA) VNORM1 = DSQRT(X1*X1 + Y1*Y1 + Z1*Z1) VNORM2 = DSQRT(X2*X2 + Y2*Y2 + Z2*Z2) COSINE = (X1*X2 + Y1*Y2 + Z1*Z2)/(VNORM1*VNORM2) IF(ABS(COSINE).GT.1.0D0) COSINE = SIGN(1.0D0,COSINE) ANGLE = ACOS(COSINE) RETURN END