Welcome to Phonon_Dynamics's documentation!

This code simulates the time-evolutions of phonons in contact with (non-equilibrium) charge carriers (electrons/holes). This is accomplished by solving the Boltzmann transport equation for the coupled electron-, hole- and phonon-subsystems using a direct time-stepping technique. The code can currently model this dynamics in the presence of mode-dependent 3-phonon phonon-phonon interactions and first-order electron-phonon interactions using Fermi Golden Rule. The code is interfaced with EPW and Quantum Espresso.

The code is divided into multiple steps:

Running the code is achieved through running the bash file Phonon_Dynamics_1.sh and Phonon_Dynamics_2.sh. The code can run dynamics for holes, electrons, or both.

The code offers these other functionalities as well

* Graphing the compound's bandstructure
* Graphing the temperature decay of electrons and holes as well as the thermalization of phonons
* Graphing phonon thermalization as a function of modes

Files Name and Role

omegaq.freq: Phonon frequencies (in cm-1) read by the find_scattering_events code (no negative/imaginary frequency can be present in this file) phband.freq: Phonon frequencies (in meV) for plotting/analysis purpose

Running the Code

Upon approval and activation of a CNM user Proposal , the code can be found in the shared directory /home/share/cnmProposalNumber/. The code can be run on Carbon using the PBS scheduling system. An example script for running on Carbon:

#!/bin/bash
#PBS -l nodes=1:ppn=16:gen4
#PBS -l walltime=50:00:00
#PBS -N ...
#PBS -A cnm50326
cd $PBS_O_WORKDIR
export OMP_NUM_THREADS=16
module load gcc/4.9/4.9.3-1
g++ -fopenmp ph_dynamics2.cpp
./a.out > filout

Running the same code on Argonne LCRC:

#!/bin/bash
#SBATCH -N 1
#SBATCH --ntasks-per-node=36
#SBATCH --job-name=sil_dynamics_vb
#SBATCH --time=12:00:00
#SBATCH -A ...
#SBATCH -p bdwall
export OMP_NUM_THREADS=36
g++ -fopenmp ph_dynamics2.cpp
./a.out > filout