mirror of https://gitlab.com/QEF/q-e.git
![]() See https://stackoverflow.com/questions/50148175/what-does-cd-echo-0-sed-s-1-do-in-bash-script Note: some trailing blanks have been removed as well by the script I used. Use "git diff -b" to see only the true changes. |
||
---|---|---|
.. | ||
reference | ||
README | ||
run_example |
README
This example shows how to calculate the Density of States (DOS) projected onto molecular orbitals. A typical application is that of a molecule adsorbed on a surface, where one would like to identify contributions from HOMO/LUMO states to the electronic structure (DOS and bands). Here we take a chain of H atoms as a model surface, with a H2 molecule adsorbed, and we analyze the DOS and bands in terms of the H2 orbitals (sigma, sigma*). The calculation proceeds as follows (for the meaning of the cited input variables see the appropriate INPUT_* file) 1) make a self-consistent calculation for the full system, which here is made of a chain of H atoms and a H2 molecule. In this example, coordinates have been set to adjust energy levels to convenient values input=chainH2.scf.in, output=chainH2.scf.out). 2) make a self-consistent calculation for the molecular part, with the same cell / k-point parameters as for the full system. (input=H2.scf.in, output=H2.scf.out). 3) use projfwc.x to project the crystal wavefunctions on an orthogonalized basis set of atomic orbitals for the full system and the molecular part (input=chainH2.projwfc.in,H2.projwfc.in, output=chainH2.projwfc.out,H2.projwfc.out). The projections are saved in files atomic_proj.xml files to be copied from $TMP_DIR/. 4) identify which wavefunctions of the orthogonalized basis set ot atomic orbitals of the full system correspond to the same set as in the molecular part (i.e., identify the proper range which will be denoted as i_atmwfc_beg_full to i_atmwfc_end_full, see outputs of step 3). 5) run molecularpdos.x providing in input the location of the atomic_proj.xml files for the full system and of the molecular part, and the ranges of atomic orbitals to be used (input=chainH2_onto_H2.in, output=chainH2_onto_H2.out). 6) do k-resolved analysis. Perform bands calculation with pw.x for both the interacting system and the molecule. Then repeat steps 3-4 with projwfc.x option kresolveddos=.true. and step 5 with the same kresolveddos=.true. in molecularpdos.x 7) if gnuplot is available, results are plotted to file project_chainH2_onto_H2.ps which shows projection of the DOS of the combined system on sigma and sigma* orbitals of the H2 molecule.