Requirement: Gaussian 09 or 16
We recommend using conda to create virtual environment.
git clone https://github.com/moule-group/ElPh.git
conda create -n elph
cd Elph
pip install .
Environment variables in .bashrc
export PATH="your_path/catnip/build/":$PATH
export GAUSS_EXEDIR="your_path/g16"
export GAUSS_SCRDIR="$your_path/GaussianScratch"
export PATH="$GAUSS_EXEDIR:$PATH"
export PATH="$GAUSS_SCRDIR:$PATH"
For installing Catnip (ChArge TraNsfer Integral Package), please refer to https://joshuasbrown.github.io/docs/CATNIP/catnip_downloads.html
First step: Input the number of molecules (defaults to 3) to be extracted. The code will generate monomer and dimer structure files.
Second step: Prepare input files in the folder: POSCAR (VASP structure format) ; FORCE_SETS from Phonopy simulation; phonopy_disp.yaml from Phonopy simulation.
Note: We consider 2D plane (high mobility plane of organic semiconductors) and only pick 3 nearest neighbors in this 2D plane. The 3 numbering monomers will be pair A (monomer 1 and 2); pair B (monomer 1 and 3); pair C (monomer 2 and 3), pair A and pair B will be transversed pairs and pair C will be parallel pairs (the shorter lattice parameter in 2D plane).
elph -w 1
Prerequisite: Finish transfer integral simulation first.
elph -w 2
Prepare mobility.json as the input, then run:
elph -w 3
-w --workflow: Workflow selection (1: non local electron phonon coupling 2: SVD phonon mode projection 3: TLT mobility)
-q --mesh: Defining a mesh grid. (Defaults to [8,8,8])
-n --nmol: The number of molecules will be extracted (Defaults to 3)
-b --basis: Gaussian basis sets (Defaults to ['6-311G*','6-311G**']) for local and non-local simulation
-f --functional: Gaussian functional (Defaults to['b3lyp','b3lyp']) for local and non-local simulation
-s --supercell: The supercell matrix (Defaults to [2,2,2])
-homo --homo: P-type semiconductors: HOMO; N-type semiconductors: LUMO. (Defaults to True)
-o --output: Mobility calculation output name (Defaults to tlt_mobility.json)
-svd --svdqpts: Number of qpoints that SVD projection will apply (Defaults to 1)
In order to run mobility calculation, there are variables need to be specified. Please see the example here. View Example File
This will divide into 3 parts. First part is transfer integral J, the second part is electron phonon coupling parameter g and the last part is transient localization theory.
The method we use is called dimer projection method (DIPRO) (Note: Some people call it Fragment orbital Method (FO)), it is proposed by D. Andrienko group in 2010 research paper.
Transfer integral between 2 molecules i and j:
Effective Transfer Integral:
In order to use DIPRO to calculate transfer integral, we have to run 3 quantum-chemical simulations (2 monomers and 1 dimer), there are 9 quantum-chemical simulations in total.
It can be further written as
In order to efficiently calculate the electron-phonon coupling parameter
Using chain rule, we get
where
, where A is the amplitude (Defaults to 0.01 Angstrom),
To evaluate
The mobility equation is shown below:
where