been fully implemented: it is ~2 times faster than the quick-min optimisation scheme.
It does not make use of the input step ds (the step is automatically upgraded as in the
BFGS method). Still to be tested on difficoult cases (I ask some help from those
who have encountered convergence problems with the previous versions of NEB). C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1668 c92efa57-630b-4861-b058-cf58834340f0
The input keyword "potential_extrapolation" has been substituted by two separate keywords "pot_extrapolation" and "wfc_extrapolation".
Default values are still 'atomic' for the former and 'none' for the latter. Documentation updated.
C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1551 c92efa57-630b-4861-b058-cf58834340f0
1) cleanup of the output format (more informative)
2) some cleanup of internal routines
3) added a couple of input variables and changed the default value
of ds from 1.5 to 1.0.
BFGS optimization:
1) implemented a mixed BFGS + Murtag-Sargent update of the inverse
hessian which is generally faster than the pure BFGS
2) trust_radius_max increased to 0.8 bohr
3) some cleanup of internal routines
(C.S.)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1414 c92efa57-630b-4861-b058-cf58834340f0
Added a use_multistep input variable that allows fourier modes to be gradually included.
Added a langevin opt_scheme in which the string performs a langevin dynamics in the path space.
In the langevin scheme a canonical sampling of the initial and final configurations can also be done "on the fly" setting first_last_opt=.TRUE..
C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1373 c92efa57-630b-4861-b058-cf58834340f0
- input pressure in GPa ( both code )
- Output stress in GPa ( both code )
- Output layout made more similar:
energies, positions, forces, cell
displayed in the same way
- Zero velocities after a restart implemented in CP
- Nose and damped dynamics for cell implemented
in FPMD like in CP
carlo
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1260 c92efa57-630b-4861-b058-cf58834340f0
- initialization (both code uses the same ggen)
- now FPMD initializes the small-boxes too (required for untrasoft pseudo)
- print out
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1186 c92efa57-630b-4861-b058-cf58834340f0
are grouped into modules starting with "path_". The output has been slightly
restyled. In the pwscf code (only) has been implemented a version of the string
method (calculation='smd') in which the path is represented in Fourier components
and the optimization procedure is done on these components (still to be
optimized, but working).
C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1119 c92efa57-630b-4861-b058-cf58834340f0
( cell_move in Module/cell_base.f90 )
- More input parameters check in Module/read_namelists
- For CP, restart file is saved in working directory like in FPMD
and not in output_dir where MD data are saved, this is because
usually one keep MD trajectories in home dir.
- added pseudopotential for wannier dynamics example
- added Wannier postprocessing (from Manu Sharma )
- fixed a small bug for FPMD and 'diis' electron dynamics
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1083 c92efa57-630b-4861-b058-cf58834340f0
- varius fix for CP with wannier functions,
now I'm able to run Sharma examples,
but the code is still not fully tested
- fix in readpp for pseudo different from UPF
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1050 c92efa57-630b-4861-b058-cf58834340f0
The following variant of the DIIS Residual Minimization Method, based
on three steps, has been implemented :
1) At the first "scf" step of the first "ionic" step, the diagonalization
starts with an initialization procedure. Two (or more) sweeps on all
the bands are performed. A sweep consists in two (or more if required)
unconstrained trial steps (steepest descent steps) followed by a
subspace rotation. If convergence is not achieved in this phase a
final trial step is done.
In all the other cases the initialization procedure consists in a
subspace rotation followed by a trial step.
2) Diagonalization based on the DIIS algorithm is performed on the lowest
( nbnd - 2 ) bands. Orthogonalization of the eigenvectors is done at
each step. The possibility of orthogonalizing a given band only to
those inside an energy window is also implemented.
3) The topmost two bands are converged using a standard
conjugate-gradient procedure. This ensures that eventual holes
left by the DIIS algorithm can be identified and filled.
If two holes have been found this procedure is repeated on the
topmost two bands (previously optimized with the DIIS algorithm).
C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1014 c92efa57-630b-4861-b058-cf58834340f0
in one step with pw.
A new calculation is possible called 'dispersion'
in the phonon card new input parameters are:
nq1, nq2, nq3 : number of q points in the direction
tr2_ph : threshold for the phonon calculation (see also INPUT_PH)
Therefore tr2_ph has been moved from phcom.f90 to Module disp in pwcom.f90
UP TO NOW ONLY THE Q POINTS FOR THE DYN. MATRICES ARE CALCULATED AND PRINTED.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@944 c92efa57-630b-4861-b058-cf58834340f0
new module uspp_param, shared between PW and CP (in file Modules/uspp.f90)
The flag newpseudo is no longer used to decide whether states with oc=0 are
bound or not: for those states, and only for the old RRKJ format, oc is set
to a negative value, and this signals that they are not bound. Not elegant
but simpler than it used to be. The converter to UPF format did not include
those states anyway. Beware unexpected side effects!
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@914 c92efa57-630b-4861-b058-cf58834340f0
A new calculation called 'raman' is now available.
For each k point additional points at k+b will be generated and a nscf
calculation will be performed.
The b vectors are small vectors either in cartesian coordinates or along the
direction along to the nearest neighbours.
A new input card named raman is introduced.
New variables:
b_length: the length of the b vectors
lcart: if .true. cartesian direction (default)
if .false. in direction to the nearest neighbours
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@911 c92efa57-630b-4861-b058-cf58834340f0
directory.
2) velocities can be reset (reset_vel keyword) when restarting from file.
Cleanup of bfgs stuff.
C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@847 c92efa57-630b-4861-b058-cf58834340f0
- simplified ionic positions management in FPMD ( many staff moved to
Modules/ions_base.f90
- sort_gvec.f90 ( a part of ggen common to FPMD and CP )
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@794 c92efa57-630b-4861-b058-cf58834340f0
The +U part of the functional can be built using
for the projection on localized orbitals some simple
Wannier functions generated by the post-processing
code poormanwannier.f90 (pmw.x) from the LDA band
structure. (SdG)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@764 c92efa57-630b-4861-b058-cf58834340f0
This required a deep modification of the parallelism in PWscf:
there are two new communicators (intra_image_comm and inter_image_comm) and the
existing "pool" communicators (intra_pool_comm and inter_pool_comm) are now vectors
of length given by the number of parallel images. #ifdef __PARA is no longer
needed because all "parallel" variables are always initialized for a serial run
and all parallel routines are, in the case of a serial run, dummy routines.
The wrappers to MPI routines used only by PWscf are in the PW/para.f90 file.
The others (mp_***) are in the Modules/mp.f90. All explicit referencies to mpif.h
should be replaced by an "USE parallel_include" (in a serial run parallel_include
is simply a dummy module).
2) The extrapolation of both potential and wavefunctions has been rewritten in
order to be smarter than before: on the basis of the required extrapolation
order, on the basis of the history and on the basis of which files are really
present on the disk, the algorithm chooses the extrapolation order.
All the algorithms in which ions are moved can use the extrapolation.
These are both unstable features: I need the help of everybody to test them.
C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@742 c92efa57-630b-4861-b058-cf58834340f0
The same bug is present in the 2.0.1 version and in the patch-2-0p2.
This should be the ultimate fix for defaults-related problems.
C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@741 c92efa57-630b-4861-b058-cf58834340f0
when a calculation was restarted wfc were always read by file
(no matter whether the startingwfc keyword was set or not).
The same was true for the potential.
C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@714 c92efa57-630b-4861-b058-cf58834340f0
Molecular Dynamics based algorithm partially rewritten:
both standard and damped MD are performed with the velocity Verlet
scheme (with or without constrains).
Renata's subroutines are used only in the framework of variable
cell.
constrain.f90 file is no longer needed: cnstrains are set in the
input file (see CONSTRAINTS CARD) with the same input format used
in FPMD. An arbitrary number of constrains can be set.
In the case of constrained relaxation the damped MD
algorithm is used instead of BFGS.
When restart_mode = "from_scratch" many reastr files are removed
from the scratch directory.
Several other modifications here and there. (C.S.)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@675 c92efa57-630b-4861-b058-cf58834340f0
order to allow to specify how to fill starting ns occupation
matrices. Useful when the default choice take the wrong
(or not desired) path.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@598 c92efa57-630b-4861-b058-cf58834340f0
correct place (kinds); module "varie" replaced by "control_flags" (not
yet in pwcom, though) - many many files changed.
64-bit cpus (Opteron, maybe Itanium) should now work if __LINUX64 is defined
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@513 c92efa57-630b-4861-b058-cf58834340f0
This value of ethr is overwritten (with a warning message) in the case of a phonon calculation (lphonon flag added). If diago_thr_init is not specified in the input file it is automatically set in setup.f90 (for example in the case of a nscf calculation ethr = tr2 / nelec).
I hope this policy is appropriate for all kind of calculations.
C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@511 c92efa57-630b-4861-b058-cf58834340f0
NEB/ removed from makedeps.sh
plotrho: added possibility to have contour lines of various type
A few undefined variables defined (again)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@465 c92efa57-630b-4861-b058-cf58834340f0