next_inactive up previous


A tiny introduction to Q-E

Gabriele Sclauzero (SISSA)

(gently stolen from P.Giannozzi, S. de Gironcoli, and others...)

Introducing Q-E

The fundamental questions (and answers)!

Q. What is Quantum ESPRESSO (Q-E)?

R. Quantum ESPRESSO is an integrated suite of computer codes for electronic-structure calculations and materials modeling at the nanoscale. It is based on density-functional theory, plane waves, and pseudopotentials (both norm-conserving, ultrasoft, and PAW).

Q. What does Quantum ESPRESSO stand for?

R. Quantum ESPRESSO stands for opEn Source Package for Research in Electronic Structure, Simulation, and Optimization. It is freely available to researchers around the world under the terms of the GNU General Public License.

Q. Who are the developers?

R. Quantum ESPRESSO is an initiative of the DEMOCRITOS National Simulation Center (Udine - Trieste) and of its partners, in collaboration with the CINECA National Supercomputing Center in Bologna, the Ecole Polytechnique Federale de Lausanne, Princeton University, and the Massachusetts Institute of Technology.

Since end 2008 the Q-E project is hosted on a new development platform called QEforge, with a feature-rich web portal (http://qe-forge.org) based on the Gforge engine. The website is also currently hosting other projects, more or less bounded to the Q-E project:

Q. What can QE do?

Check out http://www.quantum-espresso.org/whatcanqedo.php for the full list!

Ground-state calculations (within density-functional theory):

Response properties (density-functional perturbation theory):

Ab-initio molecular dynamics:

Structural Optimization:


...on many different hardware and software configurations.

Main structure of the Q-E suite

The Q-E suite is made up of a number of distinct, interoperating programs, each of them with a specific task. The source tree of Q-E is organized in a set of directories which contain:

Every single executable file will be automatically linked in the bin/ directory.

What should I do in order to start using Q-E?

First, get the executables

Possibilities:

  1. Compile from source (preferred solution when good performance is a must)
  2. QE-live CD (available from QEforge): gadget of this school
  3. Precompiled versions (not yet available, maybe coming soon)

To compile the source files you need at least: a Unix-like working environment (Linux, OS-X, AIX, Cygwin on MS Windows, ...), a good (non-buggy) F90 compiler and a working C compiler; some free space on your hard-disk. To get fast executables you need: a well performing compiler (e.g. ifort on Intel machines, xlf on IBM, ...), libraries optimized for your machine (e.g. MKL on Intel, ACML on AMD, ESSL on IBM,...), good hardware (of course ...) and properly set up OS and system libraries.

  1. Download the latest version (presently 4.1, just released) from http://www.quantum-espresso.org/download.php. If you need to use advanced features which are available only in the develompment version:
  2. Unpack the gzipped tar archive (e.g. tar zxvf espresso-x.x.x.tar.gz). Use a partition with enough space, since after compilation the size of the whole can reach several hundreds of MBytes.
  3. Run the configure script (cd espresso-x.x.x; ./configure): lots and lots of output on the screen...
  4. If everything goes smoothly, type make to get a list of the targets (subsets of executables) that can be built and then build them with make [target1] [target2] ... (be prepared to see tons of output from the compiler ...)
  5. If something fails, try to figure out why by looking at the troubleshooting section of the Q-E manual, the FAQs on the Q-E Wikipage, or by asking to the PWscf Forum (see below for reference links).

How to learn usage/features of Q-E?

There are several places where you can get helpful information:

Basics to start the tutorials of this School

Brief input description for PWscf

It uses namelists (aka list-directed I/O, a standard F90 construct) and input cards (Q-E-specific construct).

How to feed (your input to) pw.x

Instructions for these tutorials

Unpack the archive with all the stuff (there is a copy of it in each PC under the /tmp directory):

[myname@esbtl-xx:~]$ tar zxvf /tmp/QE-school.tgz

Enter the directory and source the setup script

[myname@esbtl-xx:~]$ cd QE-school
[myname@esbtl-xx:~/QE-school]$ source qe-setup.sh

You're done! If everything went fine, you should now be able to run pw.x and the other Q-E executables from the command line.

[myname@esbtl-xx:~]$ pw.x

     Program PWSCF     v.4.1CVS  starts ...
     Today is 20Jul2009 at 15:12: 8 

     Parallel version (MPI)

     Number of processors in use:       1

     For Norm-Conserving or Ultrasoft (Vanderbilt) Pseudopotentials or PAW

     Current dimensions of program pwscf are:
     Max number of different atomic species (ntypx) = 10
     Max number of k-points (npk) =  40000
     Max angular momentum in pseudopotentials (lmaxx) =  3
     Waiting for input...

All you need for the first day exercises (input files or scripts plus instructions) is already in week1/day1/. For each of the next days an archive with input files and instructions will be uploaded to the Q-E wiki page (reference will be given time after time). For the next days, you will download the archive Wxdx.tgz, put it in your QE-school folder and unpack it with tar zxvf Wxdx.tgz (all files will go in their place).

You also have the source tree of Q-E in QE-school/espresso-4.1.tar.gz, packed as you can find it on the Q-E website. We have not the time to go through the compilation steps right now, but we will assist you if you would like to dedicate to it some of your spare time in the next days. Or you can even unpack it simply because you want to have a look at the source code, when you are curious ...

Have fun with Q-E!!!

next_inactive up previous

Gabriele Sclauzero 2009-07-20