Example: Numerical Frequencies: NH3

Download Freq_NH3.run

#! /bin/sh

# Summary:
# - Frequencies with symmetric displacements
# - Frequencies with Cartesian displacements
# - Isotope effects in the frequencies


# == Frequencies with symmetric displacements ==

# Computation of frequencies by symmetric displacements. The assumed equilibrium
# input structure should be given in Cartesian coordinates.

# The symmetry is determined automatically by the program as C(3v), from the
# input coordinates. During the calculation first symmetric atomic displacements
# are constructed. The number of such displacements in each irreducible
# representation corresponds to the number of frequencies with the corresponding
# symmetry. All displaced geometries within one representation have the same
# symmetry, which enables us to use it to speed up the computation
# significantly. 

$ADFBIN/adf <<eor
title NH3 frequencies in symmetric displacements

atoms
   N               0.0000    0.0000    0.0000
   H               0.4729    0.8190    0.3821
   H              -0.9457    0.0000    0.3821
   H               0.4729   -0.8190    0.3821
end

Basis
 Type TZP
 Core Small
End

geometry
  frequencies Symm=True
end

thermo  TMin=300 TMax=400

BeckeGrid
 quality good
End

eor

mv TAPE21 NH3_symm.t21


# == Frequencies with Cartesian displacements ==

# Computation of frequencies by Cartesian displacements. The assumed equilibrium
# input structure is given in internal coordinates. A dummy atom is used for a
# convenient definition of the Z-matrix such that it reflects the pointgroup
# symmetry C(3v).


$ADFBIN/adf <<eor
title NH3 frequencies

atoms   Z-matrix
  XX   0 0 0
  N    1 0 0   1.0
  H    2 1 0   1.02   112.
  H    2 1 3   1.02   112.   120.
  H    2 1 4   1.02   112.   120.
end

Fragments
 N t21.N
 H t21.H
End

geometry
  optim  cartesian
  frequencies
  End
end

thermo  TMin=300 TMax=400

BeckeGrid
 quality good
End

eor


# The symmetry is determined automatically by the program as C(3v), from the
# input coordinates. In a Frequencies calculation the symmetry (specified on
# input or computed internally) is used for analysis and in some cases to speed
# up the calculation.

# The equilibrium coordinate values are supplied as identifiers that are
# associated with values in the define block.

# Unlike using the geovar key, applying the define key does not mean anything in
# the sense that the various coordinates that refer to the same identifier would
# be forced to remain equal; it is just a way to display (to the human reader)
# symmetry in the equilibrium values, to avoid typing errors and to allow an
# easy adjustment of starting coordinates for another calculation.

# Since the atomic coordinates are input in Z-matrix format, the program would
# by default carry out displacements in internal coordinates to scan the energy
# surface and hence compute force constants and frequencies. This is overridden
# by specifying in the geometry block optim cartesian: carry out cartesian
# displacements.

# The key thermo addresses the thermodynamical analysis (only available in a
# Frequencies calculation, otherwise ignored). The specification 'T=300,400'
# means that the thermodynamic properties are printed for the temperature range
# 300-400K, in steps of 10K (default) and for a pressure of 1.0 atmosphere
# (default).

# Frequencies calculations suffer easily from numerical inaccuracies. Therefore,
# the default numerical integration precision in a Frequencies calculation is
# much higher than in an ordinary single-point or minimization run.


# == Isotope effects in the frequencies ==

# Rename the TAPE21 result file of the previous calculation so we can restart
# with other masses. Calculate a different isotope of H, in this case deuterium.
# It will differ from the original one only in the mass of the nucleus. Repeat
# the frequency calculation with different fragments. It is important to
# preserve symmetry at this step so we replace fragment files for ALL H atoms.
# If you want to replace only one fragment then the original calculation must be
# performed the same way, with different fragment names.

mv TAPE21 restart.t21

#  Calculate a different isotope of H. It will differ from the 
#  original one only in the mass of the nucleus.

$ADFBIN/adf <<eor
create H M=2.014101779 $ADFRESOURCES/TZP/H
eor

mv TAPE21 t21.D

$ADFBIN/adf <<eor
title NH3 frequencies

atoms   Z-matrix
  XX   0 0 0
  N    1 0 0   1.0
  H    2 1 0   1.02   112.          
  H    2 1 3   1.02   112.   120.    
  H    2 1 4   1.02   112.   120.    
end

Fragments
  N t21.N
! The different isotope mass sits in the next line.
  H t21.D
End

geometry
  optim cartesian
  frequencies
  End
end

! Restart the frequency calculation. 
! In fact ADF should perform only one geometry cycle
restart 
  File restart.t21
End

thermo  TMin=300 TMax=400

BeckeGrid
 quality good
End

eor

mv TAPE21 NH3.t21