TABLE OF CONTENTS
INTRODUCTION
&INPUTMOPDOS
xmlfile_full  xmlfile_part  i_atmwfc_beg_full  i_atmwfc_end_full  i_atmwfc_beg_part  i_atmwfc_end_part  i_bnd_beg_full  i_bnd_end_full  i_bnd_beg_part  i_bnd_end_part  fileout  ngauss  degauss  Emin  Emax  DeltaE  kresolveddos
Notes
Format of output files
Important notices
INTRODUCTION
Purpose of molecularpdos.x:
Takes the projections onto orthogonalized atomic wavefunctions
as computed by projwfc.x (see outdir/prefix.save/atomic_proj.xml)
to build an LCAOlike representation of the eigenvalues of a system
"full" and "part" of it (each should provide its own atomic_proj.xml file).
Then the eigenvectors of the full system are projected onto the ones
of the part. For example, to decompose the PDOS of an adsorbed molecule
into its molecular orbital, as determined by a gasphase calculation.
Reference:
An explanation of the keywords and the implementation
is provided in Scientific Reports  6:24603 (2016)
DOI: 10.1038/srep24603 (Supp. Info).
Structure of the input data:
============================
&INPUTMOPDOS
...
/
Namelist: &INPUTMOPDOS

xmlfile_full, xmlfile_part 
CHARACTER 
xml files with atomic projections (produced by projwfc.x)
for the full system and its molecular part

i_atmwfc_beg_full 
INTEGER 
Default: 
1

first atomic wavefunction of the full system
considered for the projection

i_atmwfc_end_full 
INTEGER 
Default: 
0, i.e., all atomic wavefunctions

last atomic wavefunction of the full system
considered for the projection

i_atmwfc_beg_part 
INTEGER 
Default: 
1

first atomic wavefunction of the molecular part
considered for the projection

i_atmwfc_end_part 
INTEGER 
Default: 
0, i.e., all atomic wavefunctions

first atomic wavefunction of the molecular part
considered for the projection

i_bnd_beg_full 
INTEGER 
Default: 
1

first eigenstate of the full system to be taken
into account for the projection

i_bnd_end_full 
INTEGER 
Default: 
0, i.e., all eigenstates

last eigenstate of the full system to be taken
into account for the projection

i_bnd_beg_part 
INTEGER 
Default: 
1

first eigenstate of the molecular part to be taken
into account for the projection

i_bnd_end_part 
INTEGER 
Default: 
0, i.e., all eigenstates

last eigenstate of the molecular part to be taken
into account for the projection

fileout 
CHARACTER 
Default: 
'molecularpdos'

prefix for output files containing molecular PDOS(E)

ngauss 
INTEGER 
Default: 
0

Type of gaussian broadening:
0 ... Simple Gaussian (default)
1 ... MethfesselPaxton of order 1
1 ... "cold smearing" (MarzariVanderbiltDeVitaPayne)
99 ... FermiDirac function

degauss 
REAL 
Default: 
0.0

gaussian broadening, Ry (not eV!)

Emin, Emax 
REAL 
Default: 
(band extrema)

min & max energy (eV) for DOS plot

DeltaE 
REAL 
Default: 
0.01

energy grid step (eV)

kresolveddos 
LOGICAL 
Default: 
.false.

if .true. the kresolved DOS is computed: not summed over
all kpoints but written as a function of the kpoint index.
In this case all kpoint weights are set to unity



Notes
Format of output files
Projections are written to standard output.
The molecular projected DOS is written to the file "fileout".mopdos.
* The format for the spinunpolarized case is:
index_of_molecular_orbital E MOPDOS(E)
...
* The format for the collinear, spinpolarized case is:
index_of_molecular_orbital E MOPDOSup(E) MOPDOSdw(E)
...
The file "fileout".mopdos_tot contains the sum
over the molecular orbitals.
* The format for the spinunpolarized case is:
E MOPDOS(E)
...
* The format for the collinear, spinpolarized case is:
E MOPDOSup(E) MOPDOSdw(E)
...
All DOS(E) are in states/eV plotted vs E in eV
Important notices
* The atomic wavefunctions identified by the ranges
i_atmwfc_beg_full:i_atmwfc_end_full (full system) and
i_atmwfc_beg_part:i_atmwfc_end_part (molecular part)
should correspond to the same atomic states. See the
header of the output of projwfc.x for more information.
* If using kpoints, the same unit cell and the same
kpoints should be used in computing the molecular part,
unless you really know what you are doing.
* The tetrahedron method is presently not implemented.
* Gaussian broadening is used in all cases
(with ngauss and degauss values from input).
