mirror of https://gitlab.com/QEF/q-e.git
273 lines
10 KiB
Plaintext
273 lines
10 KiB
Plaintext
These are instructions on how to run some or all of the examples
|
|
contained within the "examples" directory of the ESPRESSO
|
|
distribution (the one where this file should be). Those examples try
|
|
to exercise all the programs and features of the ESPRESSO package: for
|
|
details, see the "README" file in each example's directory.
|
|
If you find that any relevant feature isn't being tested, please
|
|
contact us (or even better, write and send us a new example
|
|
yourself!).
|
|
|
|
If you haven't downloaded the full ESPRESSO distribution and don't
|
|
have the examples, you can get them from the Test and Examples Page of
|
|
the ESPRESSO web site (http://www.pwscf.org/tests.htm). The necessary
|
|
pseudopotentials are included.
|
|
|
|
To run the examples, you should follow this procedure:
|
|
|
|
1) Go to the "examples" directory and edit the "environment_variables"
|
|
file, setting the following variables as needed:
|
|
|
|
BIN_DIR = directory where ESPRESSO executables reside
|
|
PSEUDO_DIR = directory where pseudopotential files reside
|
|
TMP_DIR = directory to be used as temporary storage area
|
|
|
|
If you have downloaded the full ESPRESSO distribution, you may set
|
|
BIN_DIR=$TOPDIR/bin and PSEUDO_DIR=$TOPDIR/pseudo, where $TOPDIR is
|
|
the root of the ESPRESSO source tree.
|
|
|
|
The PSEUDO_DIR directory must contain the following files:
|
|
|
|
Al.vbc.UPF, As.gon.UPF, C.pz-rrkjus.UPF, Cu.pz-d-rrkjus.UPF,
|
|
Fe.pz-nd-rrkjus.UPF, H.fpmd.UPF, H.vbc.UPF, N.BLYP.UPF,
|
|
Ni.pbe-nd-rrkjus.UPF, NiUS.RRKJ3.UPF, O.BLYP.UPF,
|
|
O.LDA.US.RRKJ3.UPF, O.pbe-rrkjus.UPF, O.vdb.UPF, OPBE_nc.UPF,
|
|
Pb.vdb.UPF, Ptrel.RRKJ3.UPF, Si.vbc.UPF, SiPBE_nc.UPF, Ti.vdb.UPF
|
|
Si.pbe-rrkjus.UPF
|
|
|
|
If any of these are missing, you may not be able to run some of the
|
|
examples. You can download them from the Pseudopotentials Page of
|
|
the ESPRESSO web site (http://www.pwscf.org/pseudo.htm).
|
|
|
|
TMP_DIR must be a directory you have read and write access to, with
|
|
enough available space to host the temporary files produced by the
|
|
example runs, and possibly offering high I/O performance (i.e.,
|
|
don't use an NFS-mounted directory).
|
|
|
|
2) If you have compiled the parallel version of ESPRESSO (that is the
|
|
default), you'll usually have to specify a driver program (such as
|
|
"poe" or "mpiexec") and the number of processors: see the section
|
|
``Running on parallel machines'' of the ESPRESSO manual for
|
|
details.
|
|
|
|
In order to do that, edit again the "environment_variables" file
|
|
and set the PARA_PREFIX and PARA_POSTFIX variables as needed.
|
|
Parallel executables will be run by a command like this:
|
|
|
|
$PARA_PREFIX pw.x $PARA_POSTFIX < file.in > file.out
|
|
|
|
For example, if the command line is like this (as for an IBM SP4):
|
|
|
|
poe pw.x -procs 4 < file.in > file.out
|
|
|
|
you should set PARA_PREFIX="poe", PARA_POSTFIX="-procs 4".
|
|
|
|
Furthermore, if your machine does not support interactive use, you
|
|
must run the commands specified below through the batch queueing
|
|
system installed on that machine. Ask your system administrator
|
|
for instructions.
|
|
|
|
3) To run a single example, go to the corresponding directory (for
|
|
instance, "example/example01") and execute:
|
|
|
|
./run_example
|
|
|
|
(for examples 21 and 26, see their description below)
|
|
This will create a subdirectory "results", containing the input and
|
|
output files generated by the calculation.
|
|
|
|
Some examples take only a few seconds to run, while others may
|
|
require several minutes depending on your system.
|
|
|
|
To run all the examples in one go, execute:
|
|
|
|
./run_all_examples
|
|
|
|
from the "examples" directory. On a single-processor machine, this
|
|
typically takes one to three hours.
|
|
|
|
The "make_clean" script cleans the examples tree, by removing all
|
|
the "results" subdirectories. However, if additional
|
|
subdirectories have been created, they aren't deleted.
|
|
|
|
4) In each example's directory, the "reference" subdirectory contains
|
|
verified output files, that you can check your results against.
|
|
|
|
The reference results were generated on a Linux PC with Intel compiler.
|
|
On different architectures the precise numbers could be slightly
|
|
different, in particular if different FFT dimensions are
|
|
automatically selected. For this reason, a plain "diff" of your
|
|
results against the reference data doesn't work, or at least, it
|
|
requires human inspection of the results.
|
|
|
|
Instead, you can run the "check_example" script in the "examples"
|
|
directory:
|
|
|
|
./check_example example_dir
|
|
|
|
where "example_dir" is the directory of the example that you want
|
|
to check (e.g., "./check_example example01"). You can specify
|
|
multiple directories.
|
|
|
|
Note: at the moment "check_example" is in early development and
|
|
(should be) guaranteed to work only on examples 01 to 04.
|
|
|
|
-----------------------------------------------------------------------
|
|
|
|
LIST AND CONTENT OF THE EXAMPLES
|
|
|
|
example01:
|
|
This example shows how to use pw.x to calculate the total energy
|
|
and the band structure of four simple systems: Si, Al, Cu, Ni.
|
|
|
|
example02:
|
|
This example shows how to use pw.x and ph.x to calculate phonon
|
|
frequencies at Gamma and X for Si and C in the diamond structure and
|
|
for fcc-Ni.
|
|
|
|
example03:
|
|
This example shows how to use pw.x to compute the equilibrium
|
|
geometry of a simple molecule, CO, and of an Al (001) slab.
|
|
In the latter case the relaxation is performed in two ways:
|
|
1) using the quasi-Newton BFGS algorithm
|
|
2) using a damped dynamics algorithm.
|
|
|
|
example04:
|
|
This example shows how to use pw.x to perform molecular dynamics
|
|
for 2- and 8-atom cells of Si starting with compressed bonds along
|
|
(111).
|
|
|
|
example05:
|
|
This example shows how to use pw.x and postprocessing codes to
|
|
make a contour plot in the [110] plane of the charge density for
|
|
Si, and to plot the band structure of Si.
|
|
|
|
example06:
|
|
This example shows how to calculate interatomic force constants in
|
|
real space for AlAs in zincblende structure.
|
|
|
|
example07:
|
|
This example shows how to calculate electron-phonon interaction
|
|
coefficients at X for fcc Al.
|
|
|
|
example08:
|
|
This example shows how to use pw.x to calculate the DOS of Ni
|
|
and how to plot the Fermi Surface using XCrysDen
|
|
|
|
example09:
|
|
This example shows how to use pw.x and phcg.x to calculate the
|
|
normal modes of a molecule (SiH4) at Gamma.
|
|
|
|
example10:
|
|
This example shows how to calculate the polarization via Berry
|
|
Phase in PBTiO3 (contributed by the Vanderbilt Group in Rutgers
|
|
University).
|
|
|
|
example11:
|
|
This example shows how to calculate the total energy of an
|
|
isolated atom in a supercell with fixed occupations.
|
|
Two examples: LDA energy of Al and sigma-GGA energy of O.
|
|
|
|
example12:
|
|
This example shows how to use pw.x and pwcond.x to calculate the
|
|
complex bands and the transmission coefficient of an open quantum
|
|
system.
|
|
|
|
example13:
|
|
This example shows how to use pw.x to calculate the total energy
|
|
and the band structure of four simple systems in the non-collinear
|
|
case: Fe, Cu, Ni, O.
|
|
|
|
example14:
|
|
This example shows how to use pw.x, ph.x and d3.x to calculate the
|
|
third-order expansion coefficients of the total energy of Si.
|
|
|
|
example15:
|
|
This example shows how to use pw.x, ph.x, and ram.x to calculate
|
|
the Raman tensor for AlAs.
|
|
|
|
example16:
|
|
This example shows a calculation of STM maps.
|
|
|
|
example17:
|
|
This example shows how to use pw.x to calculate the minimum energy
|
|
path (MEP) in the collinear proton transfer reaction H2+H => H+H2.
|
|
|
|
example18:
|
|
This example shows how to use cp.x to perform molecular dynamics
|
|
simulation of SiO2.
|
|
|
|
example19:
|
|
This example shows how to use fpmd.x to perform molecular dynamics
|
|
simulation of H2O.
|
|
|
|
example20:
|
|
This example shows how to use fpmd.x to perform molecular dynamics
|
|
simulation of NH3.
|
|
|
|
example21:
|
|
This example shows how to use fpmd.x to perform molecular dynamics
|
|
simulation of medium to large systems.
|
|
This example consists in calculations with 32, 64, 128, 256 water
|
|
molecules and takes a long time to execute. To run a calculation
|
|
with up to N molecules, use:
|
|
./run_example N
|
|
Note that "./run_example" alone does nothing.
|
|
|
|
example22:
|
|
This example shows how to use pw.x to calculate the total energy
|
|
and the band structure of fcc-Pt with a fully relativistic US-PP
|
|
which includes spin-orbit effects.
|
|
|
|
example23:
|
|
This example shows how to use cp.x to calculate Wannier functions
|
|
and to perform dynamics with an external electric field.
|
|
(contributed by Manu Sharma)
|
|
|
|
example24:
|
|
This example shows how to use efg.x to calculate the electric field
|
|
gradient, and to obtain the quadrupolar parameters of an NMR experiment.
|
|
The solid in example is quartz.
|
|
|
|
example25:
|
|
This example shows how to use pw.x to perform LDA+U calculations.
|
|
|
|
example26:
|
|
This example shows how to use cp.x to do String method (SMD) to find
|
|
the minimum energy path (MEP) (contributed by Yosuke Kanai).
|
|
This example consists in 7 calculations and takes a long time.
|
|
In order to run calculations from the N-th to the M-th, use:
|
|
./run_example N M
|
|
Note that "./run_example" alone does nothing.
|
|
|
|
example27:
|
|
This example shows how to use cp.x to perform TPSS metaGGA calculations
|
|
for C4H6
|
|
|
|
example28:
|
|
This example shows how to use pw.x and cp.x to run a meta-dynamics
|
|
simulation to explore different conformations of the Si4H6 molecule.
|
|
|
|
example29:
|
|
This example shows how to perform Born-Oppenheimer molecular dynamics
|
|
with conjugate gradient algorithm for the electronic states and
|
|
ensemble-DFT for treating metallic systems.
|
|
It is a simple Si dimer.
|
|
|
|
example30:
|
|
This example shows how to use cp.x to perform molecular dynamics
|
|
in the presence of an electric field described through the
|
|
modern theory of the polarization. The example shows how to
|
|
calculate high-frequency and static dielectric constants and
|
|
Born effective charges.
|
|
|
|
example31:
|
|
This example shows how to use pw.x to perform electronic structure
|
|
calculations in the presence of a finite electric field described
|
|
through the modern theory of the polarization. The example shows how to
|
|
calculate the dielectric constant of silicon.
|
|
|
|
example32:
|
|
This example shows how to use the cpvib.x to calculate the normal modes,
|
|
Born charge tensors and infrared cross-sction, of a water molecule in
|
|
vacuum.
|