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