|
C Jan Labanowski, Aug 13, 1992
C This "program" calculates geometrical parameters of the amino group
C suitable for constructing Z-matrix
C The experimental data from microwave spectroscopy for something-C-NH2
C are frequently given as a N--H bond lenth, C--N--H angle and H--N--H
C angle. Depending where you start, you need some dummy atoms to build
C the molecule. This programs gives you a few parameters you might use.
C
C Input:
C d = N--H bond length, thCNH angle C--N--H, thHNH angle H--N--H
C
C Output:
C a = distance H....H (the base of the H--N--H isosceles)
C v = the height of the H--N--H isosceles (i.e., v is the bisector of
C the H--N--H angle). It starts at C and ends at point Y. Point Y
C is located half way between H atoms.
C l = distance N--X (X is the projection of Y on the line passing through
C C--N). l is a projection of v on the C--N line.
C h = is the distance from Y to X. (h and l are perpendicular,
C h is a bisector of the H--X--H angle).
C b = H--X distance, i.e. distance of the point half way between H atoms
C and C--N line
C alpha = C--N--Y angle (angle between C--N bond and v).
C beta = half of H--X--H angle, i.e. half of the dihedral angle between
C two CNH planes, i.e., H--X--Y angle.
PROGRAM AMINO
DOUBLE PRECISION d, thCNH, thHNH, alpha, h, l, a, v, deg, beta
WRITE(*,*)
1 ' Enter N--H bond length, C--N--H angle, H--N--H angle (in deg):'
READ(*,*)d,thCNH,thHNH
WRITE(*,*)
deg = 3.1415926536D0/180.0D0
a = 2.0D0*d*dsin(0.5D0*thHNH*deg)
C v = d*dcos(0.5D0*thHNH*deg)
v = dsqrt(d*d - a*a/4.0D0)
b = d*dsin((180.0D0-thCNH)*deg)
h = dsqrt(b*b - a*a/4.0D0)
l = dsqrt(v*v - h*h)
alpha = 180.0D0 - dasin(h/v)/deg
beta = acos(h/b)/deg
100 FORMAT(1X,A,F10.5)
WRITE(*,100) 'N--H bond length = ', d
WRITE(*,100) 'C--N--H angle = ', thCNH
WRITE(*,100) 'H--N--H angle = ', thHNH
WRITE(*,100) 'Height of the H--N--H isosceles =', v
WRITE(*,100) 'H...H distance = ', a
WRITE(*,100)
1 'Projection of H--N--H bisector on the C--N line = ', l
WRITE(*,100)
1 'Distance between H...H midpoint and C--N line = ', h
WRITE(*,100)
1 'Angle between C--N bond and bisector of H--N--H = ', alpha
WRITE(*,100)
1 'Half of dihedral angle between C--N--H planes = ',beta
WRITE(*,100)
1 'Distance between H atom and C--N line = ', b
STOP
END
|