Frequently Asked Questions
**************************

* General questions, licensing

  * Do I need to pay for Quantum ESPRESSO?

  * Are all Quantum ESPRESSO features supported?

  * How do I convert my old Quantum ESPRESSO inputs to the new AMS2024
    format?

  * Can I run Quantum ESPRESSO with GPU acceleration?

  * Where is Quantum ESPRESSO installed? Where can I find pw.x etc.?

  * How do I run standalone Quantum ESPRESSO without going through the
    AMS interface?

  * How do I calculate the band structure with hybrid functionals?

  * How do I use functionals from libxc?

  * The program is always running in serial (using 1 core) ?

* Warnings and notes

  * Windows Security: Do you want to allow public and private networks
    to access this app?

  * Note: a single QE.Label is assigned to atoms of different species

  * using ibrav=0 with symmetry is DISCOURAGED, use correct ibrav
    instead

* SCF convergence tips

  * Decrease Electrons%mixing_beta

* Errors

  * pw.x: error while loading shared libraries:
    libmkl_scalapack_lp64.so.1: cannot open shared object file: No
    such file or directory

  * Error in routine bands (1): The bands code with constrained
    magnetization has not been tested

  * Error in routine c_bands (1): too many bands are not converged

  * Error in routine offset_atom_wfc (1): Mismatch between the
    requested and available manifolds

  * Error in routine phq_readin (1): The phonon code with Grimme's
    DFT-D3 is not yet available

  * Error in routine projwave (1): Cannot project on zero atomic
    wavefunctions!

  * Error in routine set_occupations (1): smearing requires a vaklue
    for gaussian broadening (degauss)

  * Error in routine setup (1): forces for hybrid functionals + US/PAW
    not implemented

  * Error in routine sym_rho_init_shell (2): lone vector

  * Error in routine system_checkin (12): ntyp too large, increase NSX

  * ERROR: 'EngineRestart' option to restart a calculation from a
    previous wave function requires the .save directory

  * I get a different error


General questions, licensing
============================


Do I need to pay for Quantum ESPRESSO?
--------------------------------------

Starting with AMS2024, you need to acquire a license from SCM to use
Quantum ESPRESSO through AMS. This license also lets you use the SCM-
developed periodic DFT code BAND.

Quantum ESPRESSO itself is free and open-source software that is not
developed by SCM. See https://www.quantum-espresso.org. You can access
the source code, including minor modifications by SCM, on the page
Manual compilation and installation.

The benefits of using Quantum ESPRESSO through AMS include:

* Easy installation through the AMS package manager on all common
  platforms

* Several pseudopotential libraries are included

* Access to all AMS Driver features

* Python support through PLAMS

* Use the graphical user interface AMSinput to set up calculations

* Use the graphical user interfaces AMSmovie (trajectories), AMSview
  (densities/potentials on grids, isosurfaces, ...), AMSbands
  (electron and phonon band structure) and AMSdos (DOS and PDOS) to
  analyze results

* A single style of input, output, Python support, and GUI common to
  Quantum ESPRESSO, DFTB, ReaxFF, ... which makes it easy to switch
  between different levels of theory.

* Technical (non-scientific) support

The license check happens inside the AMS engine, not inside the
externally developed Quantum ESPRESSO code.


Are all Quantum ESPRESSO features supported?
--------------------------------------------

No, only some common features as detailed in this manual are supported
by the AMS interface.

Programs **supported** by AMS engine interface (support may not be
complete):

* average.x

* bands.x

* dos.x

* dynmat.x

* matdyn.x

* ph.x

* pp.x

* projwfc.x

* pw.x

* q2r.x

Programs **supported** by the AMSview GUI module (support may not be
complete):

* pp.x

Programs **not supported** by the AMS engine interface nor GUI, but
included with the Quantum ESPRESSO package:

abcoeff_to_eps.x , all_currents.x , alpha2f.x , bands_unfold.x ,
bse_main.x , casino2upf.x , cell2ibrav.x , cppp.x , cp.x , disca.x ,
dos_sp.x , dvscf_q2r.x , ef.x , epa.x , epsilon_Gaus.x , epsilon.x ,
epw_pp.py , epw.x , ev.x , fd_ef.x , fd_ifc.x , fd.x , fermi_int_0.x ,
fermi_int_1.x , fermi_proj.x , fermi_velocity.x , fqha.x , fs.x ,
graph.x , gww_fit.x , gww.x , head.x , hgh2qe.x , hp.x , ibrav2cell.x
, initial_state.x , kcwpp_interp.x , kcwpp_sh.x , kcw.x , kpoints.x ,
lambda.x , ld1.x , manycp.x , memory_pw4gww.x , molecularnexafs.x ,
molecularpdos.x , neb.x , open_grid.x , path_interpolation.x ,
pawplot.x , phcg.x , plan_avg.x , plotband.x , plotproj.x , plotrho.x
, pmw.x , postahc.x , postw90.x , ppacf.x , pp_disca.x , pprism.x ,
pp_spctrlfn.x , pw2bgw.x , pw2critic.x , pw2gt.x , pw2gw.x ,
pw2wannier90.x , pw4gww.x , pwcond.x , pwi2xsf.x , q2qstar.x ,
qe_xc_infos.x , scan_ibrav.x , simple_bse.x , simple_ip.x , simple.x ,
spectra_correction.x , sumpdos.x , turbo_davidson.x , turbo_eels.x ,
turbo_lanczos.x , turbo_magnon.x , turbo_spectrum.x , upfconv.x ,
virtual_v2.x , w90chk2chk.x , wannier90.x , wannier_ham.x ,
wannier_plot.x , wfck2r.x , wfdd.x , xspectra.x , ZG.x


How do I convert my old Quantum ESPRESSO inputs to the new AMS2024 format?
--------------------------------------------------------------------------

AMSinput attempts to convert some of the input options, but there is
no guarantee that it does so correctly. Double-check the input options
carefully.

If you prefer to use the GUI to standalone Quantum ESPRESSO, you need
to use AMS2018-AMS2023.


Can I run Quantum ESPRESSO with GPU acceleration?
-------------------------------------------------

The Quantum ESPRESSO package that is included with AMS does **not**
have any GPU support.

You may be able to compile Quantum ESPRESSO yourself such that it both
runs on the GPU and supports the AMS interface.


Where is Quantum ESPRESSO installed? Where can I find pw.x etc.?
----------------------------------------------------------------

First make sure that you have installed Quantum ESPRESSO through the
AMS package manager.

Run this command:

   "$AMSBIN/amspackages" loc qe

See the AMSpackages documentation for more details.

If you uninstall AMS, you can also delete this directory.


How do I run standalone Quantum ESPRESSO without going through the AMS interface?
---------------------------------------------------------------------------------

To run Quantum ESPRESSO as a standalone program without going through
AMS, you need to set the correct environment variables with the
"$AMSBIN/startqe" shell script (note the leading dot):

   . "$AMSBIN/startqe"

Alternatively, you can just launch Quantum ESPRESSO as follows:

   "$AMSBIN/startqe" pw.x

In a similar way, you can launch "ph.x", "pp.x", etc.

See also: Quick reference (migration guide)


How do I calculate the band structure with hybrid functionals?
--------------------------------------------------------------

The AMS interface to Quantum ESPRESSO does not support this.

Instead, use BAND, see for example this tutorial for calculating
effective masses.


How do I use functionals from libxc?
------------------------------------

The QE package that is installable from the AMS package manager is not
linked against libxc. It is therefore not possible to use functionals
from libxc.

You may be able to compile QE yourself and couple it to the AMS
Driver.


The program is always running in serial (using 1 core) ?
--------------------------------------------------------

When running Quantum ESPRESSO through AMS, you need to set the
environment variable "SCM_DISABLE_MPI=1". This causes AMS to launch in
serial and you will see a line like this at the top:

   AMS 2024.101  RunTime: Apr10-2024 06:40:44  ShM Nodes: 1  Procs: 1

This is expected and intended. This line does **not** mean that
Quantum ESPRESSO is running in serial.

Further down in the standard output, at least for single-point
calculations, you will find information about how QE is parallelized:

   Starting QuantumEspresso worker ...
   Command: "$AMSBIN/startqe" pw.x -in "/path/qeworker_1124704473.qein" --amspipe

        Program PWSCF v.7.1 starts on 10Apr2024 at  6:40:46
           Git branch: HEAD
           Last git commit: af50f724259d49e570aeba1e2adb5da6c31b8e69
           Last git commit date: Fri Mar 15 14:41:38 2024 +0100
           Last git commit subject: Link libamspipe statically on Windows

        This program is part of the open-source Quantum ESPRESSO suite
        for quantum simulation of materials; please cite
            "P. Giannozzi et al., J. Phys.:Condens. Matter 21 395502 (2009);
            "P. Giannozzi et al., J. Phys.:Condens. Matter 29 465901 (2017);
            "P. Giannozzi et al., J. Chem. Phys. 152 154105 (2020);
             URL https://www.quantum-espresso.org",
        in publications or presentations arising from this work. More details at
        https://www.quantum-espresso.org/quote

        Parallel version (MPI & OpenMP), running on       8 processor cores
        Number of MPI processes:                 8
        Threads/MPI process:                     1

        MPI processes distributed on     1 nodes
        2022 MiB available memory on the printing compute node when the environment starts

In this case, we see that QE is actually running on 8 processor cores.

You can also monitor the CPU usage using "top" or other utilities.


Warnings and notes
==================


Windows Security: Do you want to allow public and private networks to access this app?
--------------------------------------------------------------------------------------

"Windows Firewall has blocked some features of pw.x.exe on all public
and private networks".

This warning can appear when launching pw.x (or bands.x, dos.x, etc.)
for the first time on Windows.

This is a spurious warning that has no effect when running QE on a
single machine. You do not need to allow any network access, and can
just click "Cancel" in the dialog window.


Note: a single QE.Label is assigned to atoms of different species
-----------------------------------------------------------------

This message can appear when you have regions. For example, if one C
atoms is in region1 and another C atom is in region2.

The message can safely be ignored.


using ibrav=0 with symmetry is DISCOURAGED, use correct ibrav instead
---------------------------------------------------------------------

This message appears in all calculations using the AMS interface to
Quantum ESPRESSO. The AMS engine sets ibrav=0.

The message can be ignored. It is not possible to set ibrav to nonzero
values through the AMS interface.

When it is extra important to have a continuous potential energy
surface (for example for the numerical calculation of phonons), AMS
will automatically disable the symmetry detection in QE, so that the
symmetric and non-symmetric points on the PES have the exact same
k-point grids etc.


SCF convergence tips
====================


Decrease Electrons%mixing_beta
------------------------------

You can try to decrease "Electrons%mixing_beta", or vary other
settings in the "Electrons" block (on the Details → SCF panel in
AMSinput).


Errors
======


pw.x: error while loading shared libraries: libmkl_scalapack_lp64.so.1: cannot open shared object file: No such file or directory
---------------------------------------------------------------------------------------------------------------------------------

You may get this error if you try to directly launch the pw.x (or
other Quantum ESPRESSO) binaries without going through AMS.

See How do I run standalone Quantum ESPRESSO without going through the
AMS interface?.


Error in routine bands (1): The bands code with constrained magnetization has not been tested
---------------------------------------------------------------------------------------------

Run the SCF calculation without constrained magnetization before
calculating the band structure.


Error in routine c_bands (1): too many bands are not converged
--------------------------------------------------------------

See SCF convergence tips


Error in routine offset_atom_wfc (1): Mismatch between the requested and available manifolds
--------------------------------------------------------------------------------------------

This message can appear when you run Hubbard DFT+U calculations, for
example with the mt_fhi pseudopotentials. Try a different set of
pseudopotentials.

You may also be able to manually modify the pseudopotential files to
contain the correct information. See the Quantum ESPRESSO
documentation and mailing list for details.


Error in routine phq_readin (1): The phonon code with Grimme's DFT-D3 is not yet available
------------------------------------------------------------------------------------------

This error appears in the output when using analytical phonons with
Grimme's D3 dispersion correction.

By default, AMS will then perform a numerical calculation of phonons
instead.


Error in routine projwave (1): Cannot project on zero atomic wavefunctions!
---------------------------------------------------------------------------

This error might appear if you try to calculate the PDOS. Do not use
ONCV pseudopotentials (e.g. from the SG15 family of pseudopotentials)


Error in routine set_occupations (1): smearing requires a vaklue for gaussian broadening (degauss)
--------------------------------------------------------------------------------------------------

You have to set a smearing larger than 0.


Error in routine setup (1): forces for hybrid functionals + US/PAW not implemented
----------------------------------------------------------------------------------

Use norm-conserving pseudopotentials, for example from the PseudoDojo
or SG15 library.


Error in routine sym_rho_init_shell (2): lone vector
----------------------------------------------------

You may get this error at the end of lattice optimizations with norm-
conserving pseudopotentials (e.g., SG15, Dojo) if the energy cutoff is
not large enough. This might result in in unrealistic structures.
Increase the energy cutoff (and make sure "ecutrho" = "4*ecutwfc",
which is the default). Note that you may need to increase "ecutwfc" to
values *higher* than the minimum recommended values in this table


Error in routine system_checkin (12): ntyp too large, increase NSX
------------------------------------------------------------------

You may only have up to 10 atom types (chemical elements or unique
values for "QE.Label") in the system.


ERROR: 'EngineRestart' option to restart a calculation from a previous wave function requires the .save directory
-----------------------------------------------------------------------------------------------------------------

You may get this error if

* the "quantumespresso.save" directory does not exist in the same
  directory as the "quantumespresso.rkf" file used for the
  EngineRestart, or

* you try to run the EngineRestart calculation on a different machine
  (for example, a different compute cluster) compared to the original
  calculation. The graphical user interface does not copy the
  "quantumespresso.save" directory, only the "quantumespresso.rkf"
  file to the remote machine.


I get a different error
-----------------------

If the error is reported by Quantum ESPRESSO, see the Quantum ESPRESSO
troubleshooting guide. Errors reported by Quantum ESPRESSO are
typically prefixed by "QuantumEspresso" in the .log file and in
AMSjobs:

[image]

You can also ask questions on the Quantum ESPRESSO mailing list, but
please note that

* You **should not** attach the AMS .run/.in/.ams file, but instead

* **Find** the file ending in ".qein" in the results directory,

* **Reproduce** the error by (1) copying the "filename.qein" file into
  an empty directory or a directory containing all needed input files,
  and (2) running "$AMSBIN/startqe pw.x < filename.qein". (or replace
  "pw.x" with "dos.x", "bands.x", etc., depending on which program
  should be executed)

* **Ask** your question on the mailing list using the input/output
  from the step above

* If you receive any help, you will need to try to **convert** the
  information into AMS input yourself

If the error is reported by the AMS Driver, see the AMS Driver
documentation
