GWW examples added to the repository

git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5835 c92efa57-630b-4861-b058-cf58834340f0
This commit is contained in:
marsamos 2009-08-07 12:15:03 +00:00
parent 6fc5478b94
commit 9edaaa1387
4 changed files with 823 additions and 0 deletions

View File

@ -0,0 +1,13 @@
to run examples do
./run_example
from the following directories:
example01 computes the GW quasi-particle energies in C6H6 (Benzene molecule)
example02 computes the GW quasi-particle energies in bulk Si (extended system)
example03 computes the orbital decomposition of the total GWW density of states in C6H6 (Benzene molecule)
Joe, 05/08/2009

View File

@ -0,0 +1,197 @@
#!/bin/sh
###
### Initial file from QE modified by
### G. Stenuit (06/08/2009)
###
# run from directory where this script is
cd `echo $0 | sed 's/\(.*\)\/.*/\1/'` # extract pathname
EXAMPLE_DIR=`pwd`
# check whether ECHO has the -e option
if test "`echo -e`" = "-e" ; then ECHO=echo ; else ECHO="echo -e" ; fi
# function to test the exit status of a job
. ../../check_failure.sh
$ECHO
$ECHO "$EXAMPLE_DIR : starting"
$ECHO
$ECHO "This example shows how to use pw.x, pw4gww.x and gww.x to compute"
$ECHO "the quasi-particle energies in C6H6 (benzene) molecule"
# set the needed environment variables
. ../../environment_variables
# required executables and pseudopotentials
BIN_LIST="pw.x pw4gww.x gww.x"
PSEUDO_LIST="C.pbe-rrkjus.UPF H.pbe-rrkjus.UPF"
$ECHO
$ECHO " executables directory: $BIN_DIR"
$ECHO " pseudo directory: $PSEUDO_DIR"
$ECHO " temporary directory: $TMP_DIR"
$ECHO
$ECHO " checking that needed directories and files exist...\c"
# check for directories
for DIR in "$BIN_DIR" "$PSEUDO_DIR" ; do
if test ! -d $DIR ; then
$ECHO
$ECHO "ERROR: $DIR not existent or not a directory"
$ECHO "Aborting"
exit 1
fi
done
for DIR in "$TMP_DIR" "$EXAMPLE_DIR/results" ; do
if test ! -d $DIR ; then
mkdir $DIR
fi
done
cd $EXAMPLE_DIR/results
# check for executables
for FILE in $BIN_LIST ; do
if test ! -x $BIN_DIR/$FILE ; then
$ECHO
$ECHO "ERROR: $BIN_DIR/$FILE not existent or not executable"
$ECHO "Aborting"
exit 1
fi
done
# check for pseudopotentials
for FILE in $PSEUDO_LIST ; do
if test ! -r $PSEUDO_DIR/$FILE ; then
$ECHO
$ECHO "ERROR: $PSEUDO_DIR/$FILE not existent or not readable"
$ECHO "Aborting"
exit 1
fi
done
$ECHO " done"
# how to run executables
PW_COMMAND="$PARA_PREFIX $BIN_DIR/pw.x $PARA_POSTFIX"
PW4GWW_COMMAND="$PARA_PREFIX $BIN_DIR/pw4gww.x $PARA_POSTFIX"
GWW_COMMAND="$PARA_PREFIX $BIN_DIR/gww.x $PARA_POSTFIX"
$ECHO
$ECHO " running pw.x as: $PW_COMMAND"
$ECHO " running pw4gww.x as: $PW4GWW_COMMAND"
$ECHO " running gww.x as: $GWW_COMMAND"
$ECHO
# clean TMP_DIR
$ECHO " cleaning $TMP_DIR...\c"
rm -rf $TMP_DIR/*
$ECHO " done"
# self-consistent calculation at Gamma
cat > benzene.scf.in << EOF
&control
calculation='scf'
restart_mode='from_scratch',
pseudo_dir = '$PSEUDO_DIR/',
prefix='benzene'
outdir='$TMP_DIR/'
/
&system
ibrav= 8, celldm(1)= 20,celldm(2)= 1, celldm(3)=1,
nat= 12, ntyp= 2,
ecutwfc = 25.0, nosym=.true., nbnd = 115
ecutrho= 200.d0
/
&electrons
diagonalization='cg',
conv_thr = 1.0d-10,
mixing_beta = 0.5,
startingwfc='random',
/
ATOMIC_SPECIES
C 1. C.pbe-rrkjus.UPF
H 1. H.pbe-rrkjus.UPF
ATOMIC_POSITIONS {bohr}
C 1.321864 2.289536 0.000
C -1.321864 2.289536 0.000
C -2.643728 0.000000 0.000
C -1.321865 -2.289535 0.000
C 1.321864 -2.289536 0.000
C 2.643728 -0.000001 0.000
H 2.362159 4.091379 0.000
H -2.362158 4.091379 0.000
H -4.724317 0.000001 0.000
H -2.362160 -4.091378 0.000
H 2.362158 -4.091379 0.000
H 4.724317 -0.000001 0.000
EOF
$ECHO " running the scf calculation for benzene molecule...\c"
$PW_COMMAND < benzene.scf.in > benzene.scf.out
check_failure $?
$ECHO " done"
# pw4gww calculation at Gamma
cat > benzene.pw4gww.in << EOF
&inputpw4gww
prefix='benzene'
outdir='$TMP_DIR/',
lwannier=.true.,
cutoff_wpr_vc = 0.1d0
num_nbnd_first = 50
num_nbndv=15
num_nbnds=20
l_truncated_coulomb=.true.
truncation_radius=10d0
restart_gww=-1
numw_prod=1
cprim_first=1
cprim_last=20
cutoff_products=0.1
l_polarization_analysis=.true.
cutoff_polarization=0.1
/
EOF
$ECHO " running the pw4gww calculation at Gamma for C6H6...\c"
$PW4GWW_COMMAND < benzene.pw4gww.in > benzene.pw4gww.out
$ECHO " done"
# GWW calculation
cat > inputgww << EOF
&inputgww
ggwin%n=79,
ggwin%n_fit=120,
ggwin%tau=10.,
ggwin%max_i=20,
ggwin%prefix='benzene'
ggwin%num_rows=50
ggwin%starting_point=1
ggwin%ending_point=7
ggwin%fit_maxiter=1000
ggwin%n_max_minpack=10000
ggwin%lnonorthogonal=.false.
ggwin%lconduction=.true.
ggwin%grid_time=2
ggwin%grid_freq=2
ggwin%omega=20
ggwin%omega_fit=20
ggwin%n_grid_fit=240
ggwin%i_min=1
ggwin%i_max=20
ggwin%l_head_epsilon=.false.
ggwin%w_divergence=0
ggwin%l_wing_epsilon=.false.
/
EOF
$ECHO " running the GWW calculation for C6H6...\c"
$GWW_COMMAND < inputgww
#check_failure $?
$ECHO " done"
# clean TMP_DIR
$ECHO " cleaning $TMP_DIR...\c"
rm -rf $TMP_DIR/*
$ECHO " done"
$ECHO
$ECHO "$EXAMPLE_DIR: done"

View File

@ -0,0 +1,403 @@
#!/bin/sh
###
### Initial file from QE modified by
### G. Stenuit (06/08/2009)
###
# run from directory where this script is
cd `echo $0 | sed 's/\(.*\)\/.*/\1/'` # extract pathname
EXAMPLE_DIR=`pwd`
# check whether ECHO has the -e option
if test "`echo -e`" = "-e" ; then ECHO=echo ; else ECHO="echo -e" ; fi
# function to test the exit status of a job
. ../../check_failure.sh
$ECHO
$ECHO "$EXAMPLE_DIR : starting"
$ECHO
$ECHO "This example shows how to use pw.x, head.x, pw4gww.x and gww.x to compute"
$ECHO "the quasi-particle energies in an extended system such as bulk Si"
# set the needed environment variables
. ../../environment_variables
# required executables and pseudopotentials
BIN_LIST="pw.x head.x pw4gww.x gww.x"
PSEUDO_LIST="Si.pz-rrkj.UPF"
$ECHO
$ECHO " executables directory: $BIN_DIR"
$ECHO " pseudo directory: $PSEUDO_DIR"
$ECHO " temporary directory: $TMP_DIR"
$ECHO
$ECHO " checking that needed directories and files exist...\c"
# check for directories
for DIR in "$BIN_DIR" "$PSEUDO_DIR" ; do
if test ! -d $DIR ; then
$ECHO
$ECHO "ERROR: $DIR not existent or not a directory"
$ECHO "Aborting"
exit 1
fi
done
for DIR in "$TMP_DIR" ; do
if test ! -d $DIR ; then
mkdir $DIR
fi
done
# check for executables
for FILE in $BIN_LIST ; do
if test ! -x $BIN_DIR/$FILE ; then
$ECHO
$ECHO "ERROR: $BIN_DIR/$FILE not existent or not executable"
$ECHO "Aborting"
exit 1
fi
done
# check for pseudopotentials
for FILE in $PSEUDO_LIST ; do
if test ! -r $PSEUDO_DIR/$FILE ; then
$ECHO
$ECHO "ERROR: $PSEUDO_DIR/$FILE not existent or not readable"
$ECHO "Aborting"
exit 1
fi
done
$ECHO " done"
# how to run executables
PW_COMMAND="$PARA_PREFIX $BIN_DIR/pw.x $PARA_POSTFIX"
HEAD_COMMAND="$PARA_PREFIX $BIN_DIR/head.x $PARA_POSTFIX"
PW4GWW_COMMAND="$PARA_PREFIX $BIN_DIR/pw4gww.x $PARA_POSTFIX"
GWW_COMMAND="$PARA_PREFIX $BIN_DIR/gww.x $PARA_POSTFIX"
$ECHO
$ECHO " running pw.x as: $PW_COMMAND"
$ECHO " running pw4gww.x as: $PW4GWW_COMMAND"
$ECHO " running gww.x as: $GWW_COMMAND"
$ECHO
# clean TMP_DIR
$ECHO " cleaning $TMP_DIR , $EXAMPLE_DIR/HEAD , $EXAMPLE_DIR/EXCHANGE, $EXAMPLE_DIR/WANNIER \c"
rm -rf $TMP_DIR/*
rm -rf $EXAMPLE_DIR/HEAD
rm -rf $EXAMPLE_DIR/EXCHANGE
rm -rf $EXAMPLE_DIR/WANNIER
$ECHO " done"
### HEAD part...
for DIR in "$EXAMPLE_DIR/HEAD" ; do
if test ! -d $DIR ; then
mkdir $DIR
fi
done
cd $EXAMPLE_DIR/HEAD
# self-consistent calculation at Gamma
cat > si8_scf_head.in << EOF
&control
calculation='scf'
restart_mode='from_scratch',
pseudo_dir = '$PSEUDO_DIR/',
prefix='si'
outdir='$TMP_DIR/'
/
&system
ibrav= 8, celldm(1)= 10.26,celldm(2)= 1, celldm(3)=1,
nat= 8, ntyp= 1,
ecutwfc = 18.0, nosym=.false.
/
&electrons
diagonalization='david',
conv_thr = 1.0d-10,
mixing_beta = 0.5,
startingwfc='random',
/
ATOMIC_SPECIES
Si 1. Si.pz-rrkj.UPF
ATOMIC_POSITIONS (crystal)
Si 0.00000 0.00000 0.00000
Si 0.50000 0.50000 0.00000
Si 0.00000 0.50000 0.50000
Si 0.50000 0.00000 0.50000
Si 0.25000 0.25000 0.25000
Si 0.75000 0.75000 0.25000
Si 0.75000 0.25000 0.75000
Si 0.25000 0.75000 0.75000
K_POINTS (automatic)
4 4 4 1 1 1
EOF
$ECHO " running the scf calculation for bulk Si (HEAD part)...\c"
$PW_COMMAND < si8_scf_head.in > si8_scf_head.out
check_failure $?
$ECHO " done"
# ph calculation at Gamma
cat > si8_ph_head.in << EOF
phonons of Si at Gamma
&inputph
tr2_ph=1.d-4,
prefix='si',
outdir='$TMP_DIR/',
epsil=.false.,
amass(1)=28.08,
fildyn='si.dynG',
recover=.false.
trans=.false.
l_head=.true.
omega_gauss=20.
n_gauss=79
grid_type=2
niter_ph=1
/
0.0 0.0 0.0
EOF
$ECHO " running the phonon calculation at Gamma for computating the head of bulk Si...\c"
$HEAD_COMMAND < si8_ph_head.in > si8_ph_head.out
$ECHO " done"
cd $EXAMPLE_DIR
### HEAD part...
for DIR in "$EXAMPLE_DIR/EXCHANGE" ; do
if test ! -d $DIR ; then
mkdir $DIR
fi
done
cd $EXAMPLE_DIR/EXCHANGE
# self-consistent calculation at Gamma
cat > si8_scf_exchange.in << EOF
&control
calculation='scf'
restart_mode='from_scratch',
pseudo_dir='$PSEUDO_DIR/',
prefix='si'
outdir='$TMP_DIR/'
/
&system
ibrav= 8, celldm(1)=10.26, celldm(2)= 1, celldm(3)=1,
nat= 8, ntyp= 1,
ecutwfc = 18.0, nbnd = 200, nosym=.true.
/
&electrons
diagonalization='cg',
conv_thr = 1.0d-8,
mixing_beta = 0.5,
startingwfc='random',
/
ATOMIC_SPECIES
Si 1. Si.pz-rrkj.UPF
ATOMIC_POSITIONS (crystal)
Si 0.00000 0.00000 0.00000
Si 0.50000 0.50000 0.00000
Si 0.00000 0.50000 0.50000
Si 0.50000 0.00000 0.50000
Si 0.25000 0.25000 0.25000
Si 0.75000 0.75000 0.25000
Si 0.75000 0.25000 0.75000
Si 0.25000 0.75000 0.75000
K_POINTS (automatic)
4 4 4 0 0 0
EOF
$ECHO " running the scf calculation for bulk Si (EXCHANGE part)...\c"
$PW_COMMAND < si8_scf_exchange.in > si8_scf_exchange.out
check_failure $?
$ECHO " done"
# pw4gww calculation at Gamma for computing the exchange energies
cat > si8_exchange.in << EOF
&inputpw4gww
prefix='si'
outdir='$TMP_DIR/',
lwannier=.false.
l_exchange=.true.
num_nbndv=16
num_nbnds=20
l_truncated_coulomb=.true.
truncation_radius=20.52
omega_gauss=20.
tau_gauss=10.d0
n_gauss=79
grid_type=2
restart_gww=-1
/
EOF
$ECHO " running the pw4gww calculation at Gamma for computating the exchange energies of bulk Si...\c"
$PW4GWW_COMMAND < si8_exchange.in > si8_exchange.out
$ECHO " done"
cd $EXAMPLE_DIR
### HEAD part...
for DIR in "$EXAMPLE_DIR/WANNIER" ; do
if test ! -d $DIR ; then
mkdir $DIR
fi
done
cd $EXAMPLE_DIR/WANNIER
# self-consistent calculation with kpoints
cat > si8_scf_kpt_wannier.in << EOF
&control
calculation='scf'
restart_mode='from_scratch',
pseudo_dir='$PSEUDO_DIR/',
prefix='si'
outdir='$TMP_DIR/'
/
&system
ibrav= 8, celldm(1)=10.26, celldm(2)= 1, celldm(3)=1,
nat= 8, ntyp= 1,
ecutwfc = 18.0, nosym=.true.
/
&electrons
diagonalization='cg',
conv_thr = 1.0d-8,
mixing_beta = 0.5,
startingwfc='random',
/
ATOMIC_SPECIES
Si 1. Si.pz-rrkj.UPF
ATOMIC_POSITIONS (crystal)
Si 0.00000 0.00000 0.00000
Si 0.50000 0.50000 0.00000
Si 0.00000 0.50000 0.50000
Si 0.50000 0.00000 0.50000
Si 0.25000 0.25000 0.25000
Si 0.75000 0.75000 0.25000
Si 0.75000 0.25000 0.75000
Si 0.25000 0.75000 0.75000
K_POINTS (automatic)
4 4 4 1 1 1
EOF
$ECHO " running the scf calculation with kpoints for bulk Si (WANNIER part)...\c"
$PW_COMMAND < si8_scf_kpt_wannier.in > si8_scf_kpt_wannier.out
check_failure $?
$ECHO " done"
# non self-consistent calculation at GAMMA
cat > si8_nscf_gamma_wannier.in << EOF
&control
calculation='nscf'
restart_mode='restart',
pseudo_dir='$PSEUDO_DIR/',
prefix='si'
outdir='$TMP_DIR/'
/
&system
ibrav= 8, celldm(1)=10.26, celldm(2)= 1, celldm(3)=1,
nat= 8, ntyp= 1,
ecutwfc = 18.0, nbnd = 200, nosym=.true.
/
&electrons
diagonalization='cg',
conv_thr = 1.0d-8,
mixing_beta = 0.5,
/
ATOMIC_SPECIES
Si 1. Si.pz-rrkj.UPF
ATOMIC_POSITIONS (crystal)
Si 0.00000 0.00000 0.00000
Si 0.50000 0.50000 0.00000
Si 0.00000 0.50000 0.50000
Si 0.50000 0.00000 0.50000
Si 0.25000 0.25000 0.25000
Si 0.75000 0.75000 0.25000
Si 0.75000 0.25000 0.75000
Si 0.25000 0.75000 0.75000
K_POINTS (gamma)
EOF
$ECHO " running the nscf calculation at GAMMA for bulk Si (WANNIER part)...\c"
$PW_COMMAND < si8_nscf_gamma_wannier.in > si8_nscf_gamma_wannier.out
check_failure $?
$ECHO " done"
# copy the wing info from HEAD calculations:
$ECHO " "
$ECHO " copy ../HEAD/si.e_head into the current directory ."
cp ../HEAD/si.e_head .
# wannier calculations...
cat > si8_wannier.in << EOF
&inputpw4gww
prefix='si'
outdir='$TMP_DIR/'
lwannier=.true.,
cutoff_wpr_vc = 0.1d0
num_nbnd_first = 50
num_nbndv=16
num_nbnds=20
l_truncated_coulomb=.false.
remainder=-1
restart_gww=-1
numw_prod=1
n_gauss=79
omega_gauss=20.d0
tau_gauss=10.d0
l_zero=.true.
l_wing=.true.
cprim_first=1
cprim_last=20
cutoff_products=0.01d0
l_polarization_analysis=.true.
cutoff_polarization=0.01d0
/
EOF
$ECHO " running the pw4gww calculation for bulk Si (WANNIER part)...\c"
$PW4GWW_COMMAND < si8_wannier.in > si8_wannier.out
check_failure $?
$ECHO " done"
# copy the wing info from HEAD calculations:
$ECHO " "
$ECHO " copy ../HEAD/si.e_head, ../HEAD/si.head, ../EXCHANGE/si.exchange and ../EXCHANGE/si.gv_time"
$ECHO " into the current directory ."
cp ../HEAD/si.e_head .
cp ../HEAD/si.head .
cp ../EXCHANGE/si.exchange .
cp ../EXCHANGE/si.gv_time .
# GWW calculation
cat > inputgww << EOF
&inputgww
ggwin%n=79,
ggwin%n_fit=120,
ggwin%tau=10.,
ggwin%max_i=20,
ggwin%prefix='si'
ggwin%num_rows=200
ggwin%starting_point=1
ggwin%ending_point=7
ggwin%lnonorthogonal=.false.
ggwin%lconduction=.true.
ggwin%grid_time=2
ggwin%grid_freq=2
ggwin%omega=20
ggwin%omega_fit=20
ggwin%n_grid_fit=240
ggwin%i_min=1
ggwin%i_max=20
ggwin%l_head_epsilon=.true.
ggwin%w_divergence=2
ggwin%l_wing_epsilon=.true.
/
EOF
$ECHO " running the GWW calculation for bulk Si...\c"
$GWW_COMMAND < inputgww
#check_failure $?
$ECHO " done"
# clean TMP_DIR
$ECHO " cleaning $TMP_DIR...\c"
rm -rf $TMP_DIR/*
$ECHO " done"
$ECHO
$ECHO "$EXAMPLE_DIR: done"

View File

@ -0,0 +1,210 @@
#!/bin/sh
###
### Initial file from QE modified by
### G. Stenuit (06/08/2009)
###
# run from directory where this script is
cd `echo $0 | sed 's/\(.*\)\/.*/\1/'` # extract pathname
EXAMPLE_DIR=`pwd`
# check whether ECHO has the -e option
if test "`echo -e`" = "-e" ; then ECHO=echo ; else ECHO="echo -e" ; fi
# function to test the exit status of a job
. ../../check_failure.sh
$ECHO
$ECHO "$EXAMPLE_DIR : starting"
$ECHO
$ECHO "This example shows how to use projwfc.x to compute"
$ECHO "the orbital decomposition of the total DOS from GWA energies"
# set the needed environment variables
. ../../environment_variables
# required executables and pseudopotentials
BIN_LIST="pw.x projwfc.x"
PSEUDO_LIST="C.pbe-rrkjus.UPF H.pbe-rrkjus.UPF"
$ECHO
$ECHO " executables directory: $BIN_DIR"
$ECHO " pseudo directory: $PSEUDO_DIR"
$ECHO " temporary directory: $TMP_DIR"
$ECHO
$ECHO " checking that needed directories and files exist...\c"
# check for directories
for DIR in "$BIN_DIR" "$PSEUDO_DIR" ; do
if test ! -d $DIR ; then
$ECHO
$ECHO "ERROR: $DIR not existent or not a directory"
$ECHO "Aborting"
exit 1
fi
done
for DIR in "$TMP_DIR" "$EXAMPLE_DIR/results" ; do
if test ! -d $DIR ; then
mkdir $DIR
fi
done
cd $EXAMPLE_DIR/results
# check for executables
for FILE in $BIN_LIST ; do
if test ! -x $BIN_DIR/$FILE ; then
$ECHO
$ECHO "ERROR: $BIN_DIR/$FILE not existent or not executable"
$ECHO "Aborting"
exit 1
fi
done
# check for pseudopotentials
for FILE in $PSEUDO_LIST ; do
if test ! -r $PSEUDO_DIR/$FILE ; then
$ECHO
$ECHO "ERROR: $PSEUDO_DIR/$FILE not existent or not readable"
$ECHO "Aborting"
exit 1
fi
done
$ECHO " done"
# check if bands.dat exist !
if test ! -r ../../example01/results/bands.dat ; then
$ECHO
$ECHO "ERROR: ../../example01/results/bands.dat not existent or not readable"
$ECHO "Please run example01 FIRST !!"
$ECHO "Aborting"
exit 1
fi
$ECHO " done"
# how to run executables
PW_COMMAND="$PARA_PREFIX $BIN_DIR/pw.x $PARA_POSTFIX"
PROJWFC_COMMAND="$PARA_PREFIX $BIN_DIR/projwfc.x $PARA_POSTFIX"
$ECHO
$ECHO " running pw.x as: $PW_COMMAND"
$ECHO " running projwfc.x as: $PROJWFC_COMMAND"
$ECHO
# clean TMP_DIR
$ECHO " cleaning $TMP_DIR...\c"
rm -rf $TMP_DIR/*
$ECHO " done"
# self-consistent calculation at Gamma
cat > benzene.scf.in << EOF
&control
calculation='scf'
restart_mode='from_scratch',
pseudo_dir = '$PSEUDO_DIR/',
prefix='benzene'
outdir='$TMP_DIR/'
/
&system
ibrav= 8, celldm(1)= 20,celldm(2)= 1, celldm(3)=1,
nat= 12, ntyp= 2,
ecutwfc = 25.0, nosym=.true.
ecutrho= 200.d0
/
&electrons
diagonalization='cg',
conv_thr = 1.0d-10,
mixing_beta = 0.5,
startingwfc='random',
/
ATOMIC_SPECIES
C 1. C.pbe-rrkjus.UPF
H 1. H.pbe-rrkjus.UPF
ATOMIC_POSITIONS {bohr}
C 1.321864 2.289536 0.000
C -1.321864 2.289536 0.000
C -2.643728 0.000000 0.000
C -1.321865 -2.289535 0.000
C 1.321864 -2.289536 0.000
C 2.643728 -0.000001 0.000
H 2.362159 4.091379 0.000
H -2.362158 4.091379 0.000
H -4.724317 0.000001 0.000
H -2.362160 -4.091378 0.000
H 2.362158 -4.091379 0.000
H 4.724317 -0.000001 0.000
EOF
$ECHO " running the scf calculation for benzene molecule...\c"
$PW_COMMAND < benzene.scf.in > benzene.scf.out
check_failure $?
$ECHO " done"
# non self-consistent calculation at Gamma
cat > benzene.nscf.in << EOF
&control
calculation='nscf'
restart_mode='from_scratch',
pseudo_dir = '$PSEUDO_DIR/',
prefix='benzene'
outdir='$TMP_DIR/'
/
&system
ibrav= 8, celldm(1)= 20,celldm(2)= 1, celldm(3)=1,
nat= 12, ntyp= 2,
ecutwfc = 25.0, nosym=.true., nbnd = 20
ecutrho= 200.d0
/
&electrons
diagonalization='cg',
conv_thr = 1.0d-10,
mixing_beta = 0.5,
/
ATOMIC_SPECIES
C 1. C.pbe-rrkjus.UPF
H 1. H.pbe-rrkjus.UPF
ATOMIC_POSITIONS {bohr}
C 1.321864 2.289536 0.000
C -1.321864 2.289536 0.000
C -2.643728 0.000000 0.000
C -1.321865 -2.289535 0.000
C 1.321864 -2.289536 0.000
C 2.643728 -0.000001 0.000
H 2.362159 4.091379 0.000
H -2.362158 4.091379 0.000
H -4.724317 0.000001 0.000
H -2.362160 -4.091378 0.000
H 2.362158 -4.091379 0.000
H 4.724317 -0.000001 0.000
EOF
$ECHO " running the non scf calculation for benzene molecule...\c"
$PW_COMMAND < benzene.nscf.in > benzene.nscf.out
check_failure $?
$ECHO " done"
# copy the bands.dat file from example01
$ECHO "Copy the bands.dat file generated in example01 ...\c"
cp ../../example01/results/bands.dat .
# projwfc calculation at Gamma
cat > benzene.pdos_pp.in << EOF
&inputpp
outdir='$TMP_DIR/'
prefix='benzene'
lgww=.true.
Emin=-30.0, Emax=5.0, DeltaE=0.05,
ngauss=0, degauss=0.01559
/
EOF
$ECHO " running the projwfc calculation at Gamma for C6H6...\c"
$PROJWFC_COMMAND < benzene.pdos_pp.in > benzene.pdos_pp.out
check_failure $?
$ECHO " done"
# clean TMP_DIR
$ECHO " cleaning $TMP_DIR...\c"
rm -rf $TMP_DIR/*
$ECHO " done"
$ECHO
$ECHO "$EXAMPLE_DIR: done"