These are instructions on how to run the examples for HP package.
To run the examples, you should follow this procedure:

1) Edit the "environment_variables" file from the main 
   ESPRESSO directory, 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

2) If you want to test the parallel version of ESPRESSO, you will 
   usually have to specify a driver program (such as "poe" or "mpirun")
   and the number of processors. This can be done by editing PARA_PREFIX
   and PARA_POSTFIX variables (in the "environment_variables" file).
   Parallel executables will be run by a command like this:

     $PARA_PREFIX hp.x $PARA_POSTFIX < file.in > file.out

   For example, if the command line is like this:

     mpirun -np 8 hp.x -npool 4 < file.in > file.out

   you should set PARA_PREFIX="mpirun -np 8", PARA_POSTFIX="-npool 4".

   See section "Running on parallel machines" of the user guide for details.
   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

   This will create a subdirectory "results", containing the input and
   output files generated by the calculation.

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.

-----------------------------------------------------------------------

Note : In the PWscf input in the ATOMIC_POSITIONS card you must first
       specify atoms which have Hubbard_U \= 0 (or Hubbard_V \=0), and 
       then all other atoms. Otherwise the HP code will stop.


                   LIST AND CONTENT OF THE EXAMPLES

example01:
    This example shows how to calculate the Hubbard U parameter 
    for Co 3d states in LiCoO2 (nonmagnetic insulator) starting 
    from the GGA ground state. This example uses ultrasoft
    pseudopotentials and the GGA-PBEsol functional.

example02:
    This example shows how to calculate the Hubbard U parameter
    for Ni 3d states in NiO (antiferromagnetic insulator) starting 
    from the GGA-sigma ground state. This example uses ultrasoft
    pseudopotentials and the GGA-PBEsol functional. See also 
    the README file inside of this example. 

example03:
    This example shows how to calculate the Hubbard U parameter
    for Cr 3d states in CrI3 (ferromagnetic insulator) starting 
    from the GGA-sigma ground state.  This example uses PAW
    pseudopotentials and the GGA-PBEsol functional. See also 
    the README file inside of example02.

example04:
    This example shows how to calculate the Hubbard U parameter
    for Ni 3d states in bulk Ni (ferromagnetic metal) starting 
    from the GGA-sigma ground state. This example uses an ultrasoft
    pseudopotential and the GGA-PBEsol functional.

example05:
    This example shows how to calculate the Hubbard U parameter
    for Co 3d states in LiCoO2 (nonmagnetic insulator) starting 
    from the GGA+U ground state, where U has a finite value.
    This example uses ultrasoft pseudopotentials and 
    the GGA-PBEsol functional.

example06:
    This example shows how to calculate Hubbard U parameters
    for Ni 3d states and Mn 3d states in Ni2MnGa (ferromagnetic metal) 
    starting from the GGA ground state, and by splitting the whole 
    calculation on 4 parts: 
    1) The PWscf self-consistent calculation;
    2) The linear-response calculation with a perturbation of Ni;
    3) The linear-response calculation with a perturbation of Mn;
    4) The final collection of the results (chi0 and chi1) and 
       the postprocessing calculation of U.
    This example uses ultrasoft pseudopotentials and the GGA-PBEsol functional.

example07:
    This example shows how to calculate Hubbard U parameters
    for Ni 3d states and Mn 3d states in Ni2MnGa (ferromagnetic metal) 
    starting from the GGA ground state, and by splitting the whole
    calculation over perturbed atoms and q points using the keywords 
    start_q and last_q. This example uses ultrasoft pseudopotentials
    and the GGA-PBEsol functional.

example08:
    This example shows how to calculate the Hubbard U parameter
    for Ni 3d states in NiO2 (2D system, nonmagnetic insulator) 
    starting from the GGA ground state and using a non-uniform q-mesh. 
    This example uses ultrasoft pseudopotentials and the GGA-PBE functional.

example09:
    This example shows how to calculate the Hubbard U parameter
    for Co 3d states in CoO2 (2D system, ferromagnetic metal) starting
    from the GGA ground state and using a non-uniform q-mesh.
    This example uses PAW pseudopotentials and the GGA-PBE functional.

example10:
    This example shows how to calculate the on-site U and inter-site V 
    Hubbard parameters in LiCoO2 (non-magnetic insulator) starting from 
    the GGA ground state. This example uses ultrasoft pseudopotentials 
    and the GGA-PBEsol functional.
