User Tools

Site Tools


exercises:2016_ethz_mmm:infra_red

Infrared spectroscopy with molecular dynamics

In this exercise, we will compare the vibrational spectrum of two molecules (methanol and benzene) computed with a static method (diagonalization of the dynamical matrix) and with molecular dynamics. The spectra for methanol are available in this paper 10.1039/c3cp44302g. As in the last lectures, to make this exercise computationally feasible, we will use for MD the efficient Density Functional based Tight Binding (DFTB) method. It requires only a minimal basis but delivers nevertheless reasonable results due to an empirical correction term called repulsion potential.

You should run these calculations on 16 processors with bsub -n 16, particularly the vibrational spectrum. Download, as usual, the commented files from the wiki exercise-10.1.tar.gz. Please use command tar xvf exercise-10.1.tar.gz to extract files.

1. Task: Computing vibrational spectra for methanol and benzene

$ bsub -n 2 mpirun cp2k.popt -i mdmet.inp -o mdmet.out

To compute the vibrational spectra, we first need to find a minimum energy structure for the systems. The files optc6h6.xyz and optmet.xyz, present in exercise-10.1.tar.gz, contain minimum energy structures. Geometry optc6h6.xyz will be the input for the vibc6h6.inp and optmet.xyz will be the input for the vibmet.inp. The following important section (present in the input files) computes the vibrational spectra.

&VIBRATIONAL_ANALYSIS
 INTENSITIES
 NPROC_REP 16
 DX 0.001
   &PRINT
     &PROGRAM_RUN_INFO ON
     &END
   &END
&END
The .mol file for c6h6 is already there since the job is quite long. However, if you plan to run it (maybe after the methanol case) remember to add the option to ask for more wallclock time -W HH:MM to bsub.
NPROC_REP has to be the same number of processors as in the bsub!! Edit the input!!
$ bsub -n 16 mpirun cp2k.popt -i vibmet.inp -o vibmet.out

For the intensities, the derivative of the dipole along the normal modes is necessary (see lecture). So the moments are computed in the standard non-periodic fashion:

 &DFT
    BASIS_SET_FILE_NAME ./BASIS_MOLOPT
    POTENTIAL_FILE_NAME ./GTH_POTENTIALS
    &PRINT
      &MOMENTS
       PERIODIC FALSE
      &END
    &END

This code will generate frequencies and intensities of the IR spectrum in the files C6H6-VIBRATIONS.mol and MET-VIBRATIONS.mol . This file can be read by the visualization program molden.

  • $ module load courses mmm
  • $ mmm-init
  • $ molden C6H6-VIBRATIONS.mol
  • Use the “normal mode” check in the graphical interface. The spectrum appears.
  1. Compare the one of methanol with experiments (see paper) and the one of benzene with literature on the internet.
  2. Which kind of modes will correspond to stretching of CH and CC bonds?
  3. Try to animate some frequencies, and report the kind of mode corresponding to all peaks.

Additional Files

Download the following file into your project directory:

You can unpack it with the following command:

$ tar -xvzf dftb_params.tgz

2. Task: Computing vibrational spectra using DFTB molecular dynamics

You will find a fortran program in the repository, called dipole_correlation.f90 Compile it (module load gcc; gfortran -o dipole.x dipole_correlation.f90 ). This program computes the correlation function of the (derivative of) the dipole moment and performs the Fourier transform.

Run cp2k with the md*.inp input files (for the two molecules). Note that the dipole moment and derivatives are extracted from simulation and saved in a file dip*traj (check the input). Run first 5000 steps, then edit the file dipole.in and run dipole.x < dipole.in . This will generate the autocorrelation function of the dipole derivative (why?) and its Fourier transform (frequency domain).

- Check the result. Is it satisfactory with respect to the DFT static calculation and literature? Why?
  1. Run 40000 more steps. Check the new results. Discuss what you obtained. Discuss the behavior of the autocorrelation in the time domain.
exercises/2016_ethz_mmm/infra_red.txt · Last modified: 2020/08/21 10:15 by 127.0.0.1