Now assume_isolated is a character variable with values 'none' (default), 'makov-payne', 'dcc', or 'martyna-tuckerman'.
do_ee and which_compensation variables no longer in the input.
Details in the INPUT_PW.* files.
cluster_example and tests/cluster?.in also updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5935 c92efa57-630b-4861-b058-cf58834340f0
2) it doesn't have the subtle bug that was present two versions ago.
dqvan2.f90 also modified to fix the subtle bug (no openMP version yet).
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5928 c92efa57-630b-4861-b058-cf58834340f0
add plugins dir (and related modif to Makefile) for "external applications"
add released wannier90 (from www.wannier90.org) in plugins
small modif exx example
small bug fixed in nscf calc save_in_cbands for compilation with -DEXX
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5927 c92efa57-630b-4861-b058-cf58834340f0
images in a cluster calculation. Still to be tested in parallel, it
has been tested for Gamma vs 0 0 0 and for nspin=1 and 2. Forces seem
to be ok. In the few cases considere there is no significant increase
of workload with respect to the periodic calculation.
plot_io.f90 moved from PP to flib because it may be needed
in PW/martyna_tuckeman.f90 for debugging and in this way circular
references are avoided. It only USE low-level modules like io_global,
kinds, and constants so it should be ok.
Module ws_base.f90 added in Modules. It deals with basic operations
associated to Wigner-Seitz cell. The implementation should be general;
it has been tested for SC and FCC only.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5911 c92efa57-630b-4861-b058-cf58834340f0
No advantage at this stage, but once these routines are moved into
CP/ and PW/ respectively, linking the autopilot module in PWscf
is no longer needed.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5908 c92efa57-630b-4861-b058-cf58834340f0
disk_io, I've put a check to prevent the user from doing it. Previously
the code would stop at second path iteration with very confusing
diagonalization errors.
LP
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5895 c92efa57-630b-4861-b058-cf58834340f0
the startup routine should be the same for PW and CP). By the way:
we are leaving the five initial characters of each column blank, for no
good reason. Maybe this dates back to the era of punched cards?
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5886 c92efa57-630b-4861-b058-cf58834340f0
Modules/vxccg.f90 split into atomic/vxcgc.f90 and flib/radial_gradients.f90
Modules/metagga.f90 moved to flib/metagga.f90
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5884 c92efa57-630b-4861-b058-cf58834340f0
saw-tooth potential for slab calculationo with E-field.
the "physical" dimensions of the R-space grid are nr1,nr2,nr3 NOT nrx1,nrx2,nrx3
stefano
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5862 c92efa57-630b-4861-b058-cf58834340f0
this is because some compiler (e.g. NEC compiler) was not able to properly
vectorize and parallelize the loop giving very bad performance.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5861 c92efa57-630b-4861-b058-cf58834340f0
fix clean_pw.f90 and wannier_clean (use_wannier part)
in new_occ.f90 : first_available_band set to INTEGER (else not compiling)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5825 c92efa57-630b-4861-b058-cf58834340f0
removed, a few REAL transformed into DBLE. Note that my previos statement
about REAL is overblown: REAl(C) is perfectly safe if C is a double precision
complex number. All changes should be safe.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5793 c92efa57-630b-4861-b058-cf58834340f0
occupations 'from_input', specify the occupations of the initial
atomic wavefunctions.
The bands are occupied according to their projections on the initial atomic
wavefunctions. Used to simulate isolated (possibly nonspherical) atoms.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5778 c92efa57-630b-4861-b058-cf58834340f0
(for wavefunctions) is not implemented for some exotic cases (scsl and
sunperf libraries, nec sx). This is now hidden into Modules/fft_scalar.f90
instead of appearing in cft3/cft3/fwfft/invfft interfaces called by codes.
It shouldn't make any difference for most common cases; it should just add
an intermediate call to a wrapper routine in the exotic cases. Tab removed.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5751 c92efa57-630b-4861-b058-cf58834340f0
if the number of processors are less or equal the number of atoms,
nothing is changed... atoms are distributed to processors
if the number of processors is greater than the number of atoms
the same atom can be assigned to more than one processor so that
the work for each atom can be shared.
All this is required for scalability of PAW simulation
- OMP parallelization
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5750 c92efa57-630b-4861-b058-cf58834340f0
if the number of processors are less or equal the number of atoms,
nothing is changed... atoms are distributed to processors
if the number of processors is greater than the number of atoms
the same atom can be assigned to more than one processor so that
the work for each atom can be shared.
All this is required for scalability of PAW simulation
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5749 c92efa57-630b-4861-b058-cf58834340f0
modules is provided by the Makefile in each subdirectory, rather than
by make.sys. No big advantage but neater solution than before
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5737 c92efa57-630b-4861-b058-cf58834340f0
changed.
The new signs agree with the tables of Koster, Dimmok, Wheeler, Statz,
Properties of the 32 point groups, and differ from those of
Koster, Space groups and their representations that were implemented so far.
In at least one example the former are correct. If somebody has evidence
that previous signs were correct, please provide an example.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5650 c92efa57-630b-4861-b058-cf58834340f0
by external libraries (e.g. recent ESSL). In order to prevent such problems,
erf has been renamed qe_erf and erfc qe_erfc
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5644 c92efa57-630b-4861-b058-cf58834340f0
one. There are cases in which the former works nicely and the latter
loses the symmetry: not great for a symmetry=preserving method.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5638 c92efa57-630b-4861-b058-cf58834340f0
and macroscopic field in a slab.
There is still a ~ 1.d-4 Ry difference in the total energy of the test example
to be investigated.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5630 c92efa57-630b-4861-b058-cf58834340f0
calculations using a unique saw(x) function (included in cell_base) in
all e-field related routines (energy, potential, forces, ..) and inclusion
of a macroscopic electronic dipole contribution in the mixing scheme.
This should solve charge sloshing problems that appeared with the prevous
version in metallic slabs.
Riccardo Sabatini and Stefano deGironcoli
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5627 c92efa57-630b-4861-b058-cf58834340f0
"outdir/" but in "outdir/prefix_#/". Furthermore, if using more than one
image, the processor ID nd_nmbr is repeated for each image.
As a consequence, at the end of the calculation, pw.x tries to delete the
restart files several time concurrently, crashing.
This is a temporary fix, as a way to delete the files properly should
be found. All the other file deletions are also wrong, but not harmful;
probably the entire stop_run is innapropriate for multi-image optimization
(i.e. it calls io_path_stop which has just been called directly by pwscf!).
LP
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5617 c92efa57-630b-4861-b058-cf58834340f0
By the way, it seems to me that a more straightforward approach would be:
'relax' and 'vc-relax': use bfgs, ignore ion_dynamics and cell_dynamics
'md', 'vc-md': use molecular dynamics, either free or damped
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5598 c92efa57-630b-4861-b058-cf58834340f0
1. added error handling for card_atomic_species
(ntyp too large produced funny but cryptic errors)
2. added visual feedback for parsing of costraints
(unless they are used for collective-variables constraints does give no
feedback during the entire calculation)
3. added a print of "waiting for input" just before actually reading it
(trying to reduce the number of "pw.x does nothing" requests for support)
LP
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5577 c92efa57-630b-4861-b058-cf58834340f0
to pwscf punch card).
Since the norm of the wfs change, knowing the level of approximation used
in the ground state calculation is crucial for post processing programs.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5516 c92efa57-630b-4861-b058-cf58834340f0
projectors in USPPs. Hopefully this will allow one to study larger systems.
The modifications are done primarily keeping TDDFPT code in mind
(a branch of QE, you may see detailed explanation in qe-forge which I am trying
to keep tightly integrated). Please do not modify/beautify/make more elegant
the corresponding subroutines without prior notice, due to their dependencies.
I have tested that the current modifications do not alter the behaviour of pw.x
other than designed with a number of small tests in HG1.
Some Pointers:
-All the new subroutines reside in PW/realus.f90
-A new flag real_space in &electrons control the implementation
-tqr flag is treated seperately.
-The implementation works only for (serial) gamma point single point calculations.
ToDo:
-I have written K point and task groups implementations of most of the corresponding routines, but did not have time to implement.
-Parallelism issues are still to be checked.
-The discrepancy in total energy is <0.002 eV for cutoff of 55Ry/550Ry however,
there are some strange force components. I do not know how this will effect
a possible optimization scheme.
Other:
Trying the compile CVS version in HG1 of sissa, using the "default" compiler
sets, I encountered a very strange compiler bug. Please have a look at
Modules/read_cards.f90 for details. Remove the stupid workaround to your liking.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5493 c92efa57-630b-4861-b058-cf58834340f0
Recent additions to parameters.f90 moved into the place where they
belong (in my opinion). I don't think it is such a great idea to put
parameters there, unless they are used throughout the distribution
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5431 c92efa57-630b-4861-b058-cf58834340f0
to prevent numerical trouble. Changed to set the output h*psi(G=0) to be real:
it should be equivalent and it is much more logical. Just in case, and in order
to have the same behavior, Im [psi(G=0)] is set to 0 before calls to h_psi
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5427 c92efa57-630b-4861-b058-cf58834340f0
For pseudopotentials not using analitical expression of aug.charge close to
nuclei (i.e. all those generated with ld1.x), random meaningless numbers
were feed to the spline interpolators for the points closer to the nucleus.
This caused unexpected "wrong charge" errors and low accuracy. Agreement
with G-space algorithm is now increased 10 times.
LP
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5404 c92efa57-630b-4861-b058-cf58834340f0
augmentation. Fixed an harmless but annoying bug that caused the coed to
access upf%qfcoef even when they were not used.
LP
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5403 c92efa57-630b-4861-b058-cf58834340f0
perform a DFT+DMFT calculation.
contributed by Dmtry Korotin, V.I. Anisimov, N. Binggeli et al.
The DMFT part will be loaded separately into QE-forge.
SdG
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5397 c92efa57-630b-4861-b058-cf58834340f0
those provided in input. I think that this is the correct behaviour and that
the previous one was a source of trouble and of useless additional work.
I cannot see any reason why one should perform a non scf calculation with
one set of atomic positions and the scf potential relative to a different one.
2) After a reshuffling of input.f90 (which has become a mess beyond control),
the check on starting_magnetization works again. input.f90 should be
rewritten like the corresponding routine of CP. 3) Dependencies updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5370 c92efa57-630b-4861-b058-cf58834340f0