Dear Oliviero,
Thank you very much for the detailed explanation. I am stating 'relax'
calculation with optimized structure in vacuum so I revised my
environ.in as,
&ENVIRON
verbose = 0 ,
environ_restart = .true. ,
environ_thr = 0.5 ,
environ_type = input ,
env_static_permittivity = 78.3 ,
tolrhopol = 1.d-12 ,
mixrhopol = 0.5 ,
/
I am using the following command to run pw.x with Environ plugin,
rolly@node06:~/QE530-CPU/espresso-5.3.0/bin> mpirun -np 24 ./pw.x
--environ -inp ~/rolly/file.in |tee ~/rolly/file.out
It works but I have to place the environ.in at the same directory as
pw.x, that is ~/QE530-CPU/espresso-5.3.0/bin
How can I place environ.in at the same directory as file.in? What
command should I use to instruct pw.x to look for the environ.in?
rolly@node06:~/QE530-CPU/espresso-5.3.0/bin> mpirun -np 24 ./pw.x
-environ ~/rolly/environ.in -inp ~/rolly/file.in |tee ~/rolly/file.out
Thanks for your patient.
Best,
Rolly
On 10/04/2016 06:25 PM, Oliviero Andreussi wrote:
> Dear Rolly,
>
> There may be "physical" reason or "numerical" reasons that explain why your
> calculation explodes. The latter are easier to solve, by tuning some of the
> parameters in environ.in, the former are a bit more tricky and I would leave
> them to a second analysis.
>
> Roughly speaking, in a calculation with environ you need to include some
> extra terms to the Kohn-Sham potential of the system in vacuum. These terms
> depend on the electronic density itself, in particular due to the fact that
> the interface between the system and the environment is defined in terms of
> the electronic density. Moreover, to compute one of these terms (probably the
> most important, the electrostatic interaction with the dielectric continuum)
> Environ uses an iterative approach, so every time you need to add the environ
> potential in an SCF step, Environ performs an additional iterative procedure
> to compute it: let's call this the polarisation iteration, in contrast to the
> SCF iteration.
>
> Having said this, there are two environ parameters which are crucial to help
> convergence of the total SCF calculation:
>
> tolrhopol: this parameter controls the convergence of the polarisation
> iteration. If you decrease it, the extra term coming from the interaction
> with the dielectric will be computed more accurately, but it will require
> more time to be computed. On the other hand, if you don't compute it
> accurately enough, the SCF accuracy will probably not go down as fast as it
> should and you may end up with an SCF accuracy that oscillates above the
> selected threshold (so that pw.x spends lots of time without converging).
> Since a single polarisation step only costs as much as a few FFTs, while a
> single SCF step costs more, it is generally better to INCREASE THE ACCURACY
> OF THE POLARISATION CALCULATION (I.E. DECREASE TOLRHOPOL) until you have a
> steep convergence of the SCF.
>
> environ_thr: since the extra terms depend in a delicate way on the electronic
> density (the shape of the environment depends on it), it is advisable not to
> add these terms at the very beginning of the SCF, which in pw.x usually
> initialise the electronic density in a random fashion. Thus, to enforce that
> the environment potentials are only added when the electronic density has a
> sensible shape, Environ only acts if the SCF accuracy is below a certain
> threshold, defined by environ_thr. On the other hand, you don't want to wait
> too long to add these extra terms, because it makes no sense to converge the
> density in vacuum and then add a very strong unexpected potential: the SCF
> accuracy will go banana and you need to redo all the SCF again. The net
> result is the one that you see in your output, you spend quite a lot SCF
> iterations to achieve the required SCF accuracy, then environ adds its
> additional potential and the SCF accuracy goes up again, with an oscillating
> down and up trend which may eventually explode. Thus, if you see poor
> convergence of the SCF the way to go is to INCREASE ENVIRON_THR, NOT TO
> DECREASE IT. As a side problem, SCF accuracy is an extensive quantity (it
> becomes larger for bigger systems), so that it is not possible to fix a
> default hardcoded value for this parameter. Nonetheless, as a rule of thumb,
> environ_thr should be set so as to skip only a few (three, four, five) SCF
> steps, so you may want to set environ_thr to the value of the SCF_accuracy at
> the third/fourth/fifth SCF step in vacuum. In your case a value of 0.3-0.5
> could work better than the 0.0001 that you set up. NOTE: if your SCF starts
> from a previous run in vacuum and the electronic density has an already well
> defined shape, you may want to start adding Environ potentials from the very
> beginning: you can do this by setting environ_restart = .true. inside the
> environ.in input file.
>
> Apart from these two numerical parameters, you may want to simplify a bit the
> physics of your problem. In particular, since in most applications the most
> important effects of the environment are the electrostatic ones, you may want
> to switch off all the other terms. You may do this by using environ_type =
> 'input' instead of the default ones (environ_type = 'water') and then by only
> specifying the dielectric constant of the environment env_static_permittivity
> = 78.3 for water at room temperature. Since by default all environ
> contributions are turned off, by doing this you are only including the
> dielectric continuum in your environ calculation. This is analogous to what
> is done in example02 and example03 in the Environ/examples directory.
>
> Moreover, sine you are simulating a 2D system, convergence of the
> polarisation potential may be made more difficult by the artificial finite
> electric field coming from periodic boundary conditions. To avoid this, it
> would be better to use a PBC correction, in particular for slabs in Environ
> it is implemented a simple parabolic correction, which corrects most of the
> artefacts and helps converging the polarisation iterations. You can set it up
> by setting assume_isolated = 'slabz' in the &SYSTEM namelist in your pw input
> file (NOT the environ.in input file). Note that you can use the same
> correction also for a calculation in vacuum, you still need to run pw.x
> --environ and set environ_type = 'vacuum' inside environ.in (similarly to
> what is done in example03).
>
> Eventually, one reason of poor convergence of an Environ calculation may
> arise if your system's interface with the environment has a strange/irregular
> shape. This problem can be solved, but is a bit more cumbersome and I would
> only analyse it if the other things don't work.
>
> Please let me know if the explanation above is not clear or if you have any
> other question.
>
> Best regards,
>
> Oliviero
> --
> Senior Postdoctoral Researcher
> École Polytechnique Fédérale de Lausanne (EPFL) and
> Università della Svizzera Italiana (USI) of Lugano
> USI Campus, Via G. Buffi 17, 6904 Lugano, Switzerland
> Emails: oliviero.andreussi @ epfl.ch -or- usi.ch
> Tel: +41-(0)58-666-4810 / Skype: olivieroandreussi
> Web: https://sites.google.com/site/olivieroandreussi
>
>
> ________________________________________
> From: [email protected] [[email protected]] on behalf of
> Rolly Ng [[email protected]]
> Sent: Sunday, September 25, 2016 7:42 AM
> To: PWSCF Forum
> Subject: [Pw_forum] Environ failed with graphene
>
> Dear Oliviero,
>
> I am trying to relax a gold-doped graphene supercell with 72 atoms in
> water using Environ.
>
> My input/output files are attached, but I observed that the solvation
> energy became positive (which may be true?) but the optimization failed
> with following message.
>
>
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> Error in routine cdiaghg (310):
> problems computing cholesky
>
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>
> stopping ...
>
> How can I solve the problem? Is the environ.in correct?
>
> Thanks,
> Rolly
>
> --
> PhD. Research Fellow,
> Dept. of Physics & Materials Science,
> City University of Hong Kong
> Tel: +852 3442 4000
> Fax: +852 3442 0538
>
> _______________________________________________
> Pw_forum mailing list
> [email protected]
> http://pwscf.org/mailman/listinfo/pw_forum
--
PhD. Research Fellow,
Dept. of Physics & Materials Science,
City University of Hong Kong
Tel: +852 3442 4000
Fax: +852 3442 0538
_______________________________________________
Pw_forum mailing list
[email protected]
http://pwscf.org/mailman/listinfo/pw_forum