Commit Graph

184 Commits

Author SHA1 Message Date
dalcorso e9f4d2a610 In a 'bands' calculation, reads the Fermi energy from data-file.xml before
deleting it.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3142 c92efa57-630b-4861-b058-cf58834340f0
2006-05-29 08:13:39 +00:00
sbraccia fe054738e7 Removed unused variable. C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3140 c92efa57-630b-4861-b058-cf58834340f0
2006-05-28 13:02:51 +00:00
giannozz 75d45a1c6f - CP: cleanup of dipole printout
- PW: do not try to remove the entire prefix.save directory, it doesn't work
  for many compilers. Remove the prefix.save/data-file.xml file instead when
  starting a calculation from_scratch to prevent restarting from inconsistent
  data. Notice that the original content of the prefix.save directory is
  destroyed (except for the charge density) in the case of a non-scf or band
  calculation as well.
- PW+CP : write rho in binary format; in the LSDA case write rhoup+rhodw in
  one file and rhoup-rhodw in 'polarization' file (or should it be called
  'magnetization' like in the noncolinear case?). Beware: you cannot read
  LSDA files produced by early versions.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3065 c92efa57-630b-4861-b058-cf58834340f0
2006-05-02 16:52:37 +00:00
sbraccia c6d1a11311 Added a specific card to set the collective variables used in meta-dynamics.
This allowes for the possibility of setting constraints that are not collective
variables. Example and documentation updated.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3059 c92efa57-630b-4861-b058-cf58834340f0
2006-05-01 01:07:57 +00:00
sbraccia ea0935fb5f Fixed a bug in the definition of the diagonalization thresholds for empty
states. This bug (introduced at the end of May 2005) was responsible for
somehow wrong results in the case of calculations with many k-points.
Cleanup of diagonalization thresholds: wg_set variable removed and btype array
is now set in sum_band.
Added a logical input variable (diago_full_acc) to decide if the empty states
(defined as states with occupation < 1%) have to be converged at full accuracy
or not. Defaul is .FALSE. (I am not sure this is the best choice, comments
appreciated).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3040 c92efa57-630b-4861-b058-cf58834340f0
2006-04-24 17:32:08 +00:00
sbraccia 463d1d0f03 Cleanup of NEB code. Climbing image implemented also for the string method.
Mariginal improvement of the broyden optimisation algorithm. The reference
output of example17 not yet regenerated.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3033 c92efa57-630b-4861-b058-cf58834340f0
2006-04-21 03:44:20 +00:00
sbraccia f19764fd29 The "save" file is removed at the beginning of the calculation when starting
from scratch. C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2996 c92efa57-630b-4861-b058-cf58834340f0
2006-04-03 14:39:29 +00:00
giannozz 052216b669 More static allocations replaced by dynamic ones (nbndxx)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2975 c92efa57-630b-4861-b058-cf58834340f0
2006-03-28 19:43:35 +00:00
sbraccia 9a2dc6cddf Added an input variable to refold the ionic coordinates into the supercell at
each step. Fixed a serious bug in overdamped Langevin dynamics.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2967 c92efa57-630b-4861-b058-cf58834340f0
2006-03-27 21:40:10 +00:00
giannozz 0f1182cb72 calculations='bands' now does exactly what it is expected to do
LDA+U yields normalized values for projections even if the
atomic wavefunctions are not correctly normalized (Matteo C)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2942 c92efa57-630b-4861-b058-cf58834340f0
2006-03-22 18:58:38 +00:00
giannozz ca10d9a79f calculation='bands' introduced (but not finished)
leftover stuff from calculation='raman' removed


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2932 c92efa57-630b-4861-b058-cf58834340f0
2006-03-20 22:44:35 +00:00
sbraccia ef651ea048 Added the possibility of performing over-damped Langevin dynamics (PW only).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2903 c92efa57-630b-4861-b058-cf58834340f0
2006-03-10 22:31:18 +00:00
dalcorso 2649830a03 Mixing "local-TF" seems to work in the noncollinear/spin-orbit cases.
Check removed.
Bug fix in the LSDA case.
The exponential of zero is not computed.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2866 c92efa57-630b-4861-b058-cf58834340f0
2006-03-03 15:02:58 +00:00
giannozz 86c64d934a Replaced several allocations with fixed dimensions with dimensions
calculated at run-time (should save some memory.
DIIS diagonalization disabled


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2865 c92efa57-630b-4861-b058-cf58834340f0
2006-03-03 14:19:17 +00:00
sbraccia da14a044fe Cleanup of NEB related stuff: unused variables and algorithms have been
removed. C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2858 c92efa57-630b-4861-b058-cf58834340f0
2006-03-01 19:57:03 +00:00
dalcorso 0a92be43a1 The code stops in the noncollinear case if wfc_order > 0.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2828 c92efa57-630b-4861-b058-cf58834340f0
2006-02-16 13:38:28 +00:00
degironc 5298324b44 EXX: improved treatrmet of q+G=0 term
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2789 c92efa57-630b-4861-b058-cf58834340f0
2006-02-08 15:46:21 +00:00
giannozz 8eda231bbb - Variable cell: use Cesar Da Silva's version of the damping algorithm
(he claims it is more tested); documentation updated (sort of)
- routines find_free_unit, delete_if_present, moved from 'parser'
  to 'io_files' (it is a more natural place)
- routines int_to_char moved from 'parser' to flib/ (it is quite
  unrelated with the rest of the module)
- routine trimcheck moved from flib/ to 'io_files' (more natural place)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2753 c92efa57-630b-4861-b058-cf58834340f0
2006-02-01 17:56:16 +00:00
giannozz 0d6fa99b88 Added check on the presence of a slash at the end of outdir everywhere.
Since it is done in 100 places, I added a small function 'trimcheck'


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2749 c92efa57-630b-4861-b058-cf58834340f0
2006-01-31 17:22:28 +00:00
sbraccia 07fe6e0fa4 New denomination of constraint types (now an identification string is used instead of
an index). Removed the two cases constrained_verlet and constrained_damp: a constrained
dynamics is automatically done if the CONSTRAINTS card is present. Added a keyword to
monitor the value of the constraints during the simulation. In this case the constraints are
not imposed.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2740 c92efa57-630b-4861-b058-cf58834340f0
2006-01-28 22:35:48 +00:00
sbraccia 0155b790f7 Added an input variable to specify the convergence threshold for variable-cell relaxations.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2729 c92efa57-630b-4861-b058-cf58834340f0
2006-01-25 13:33:56 +00:00
sbraccia 5297687e74 Routines and variables used for molecular dynamics in PWscf merged into a single module.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2703 c92efa57-630b-4861-b058-cf58834340f0
2006-01-13 17:25:42 +00:00
silviu a09a59d8f6 variable tot_charge added to the input of pw.x [silviu]
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2673 c92efa57-630b-4861-b058-cf58834340f0
2006-01-01 09:17:24 +00:00
giannozz bce07fb8de Electron-phonon calculation using Malgorzata's technique
Still preliminary and undocumented


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2653 c92efa57-630b-4861-b058-cf58834340f0
2005-12-28 10:49:03 +00:00
degironc a907073891 EXX should now work in parallel also for (nqx1,nqx2,nqx3) /= (1,1,1)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2607 c92efa57-630b-4861-b058-cf58834340f0
2005-12-19 13:00:38 +00:00
sbraccia f40212be05 Cleanp. C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2605 c92efa57-630b-4861-b058-cf58834340f0
2005-12-17 21:21:54 +00:00
sbraccia 2ad9db50c5 Stop by user request (prefix.EXIT) was not working for CP. Fixed and reorganised.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2602 c92efa57-630b-4861-b058-cf58834340f0
2005-12-17 17:40:37 +00:00
sbraccia bd5151b0a9 Extensive clean-up and reorganisation of meta-dynamics. The algorithm
implemented is the one described in PRL 92, 17061 (2004) and, at present, only
works at zero temperature.
The restart files are now written in xml format and are saved ina sub-directory
of the main "save" directory.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2562 c92efa57-630b-4861-b058-cf58834340f0
2005-12-07 04:22:30 +00:00
degironc e28966f45a Fixed problem with ibrav=0 in the chain ph.x -> q2r.x -> matdyn.x
If ibrav=0 ph.x write also  at(3,3) and symm_type and so do q2.x and matdyn.x
It could actually be simpler to always write/read at(3,3) and symm_type and
forget about ibrav and celldm ...

latgen modified so that it deals properly with ibrav=0 case.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2543 c92efa57-630b-4861-b058-cf58834340f0
2005-12-02 14:51:57 +00:00
degironc c8653b45fe PWscf: defining variable tqr=.true. in system namelist, Augmentations
charges are computed in real space only in spheres around the atoms and
these patches are added to rho on the dense fft grid.

Affected routines: addusdens and newd.

Should scale linearly with system size, as opposed to the quadratic
scaling of the G-space implentation.

Experimental version:
 - no forces nor stress yet.
 - parallel version to be tested
 - not to mention phonon and the other codes ...

DISCLAIMER

There are accuracy issues to be understood better, we may need properly
modifies pseudopotentials in order to avoid (or reduce) errors when
ecutrho is still insufficient to describe all Fourier components of the
augmentation charge.
In this case (that is nearly always) also the usal G-space has errors
(negative charges for molecules and surfaces, for instance) but they are
usually small and we are used to live with them.
Some experience is needed to understand the relevance of the error related
to R-space augmentation charges.
CP has R-space augmentation with small-boxes.
They also produce some different, usually small, errors.
I think (I may be wrong) this is the origin of the fact that sometime PWscf
and CP total energies are not exactly the same.

SdG and Antonio Suriano


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2531 c92efa57-630b-4861-b058-cf58834340f0
2005-11-30 15:49:59 +00:00
degironc 91433749f9 More small changes to funct module, some clean up of the EXX part.
stefano


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2420 c92efa57-630b-4861-b058-cf58834340f0
2005-11-04 11:47:42 +00:00
degironc c209f8233b Modules/functionals.f90 modified.
The idea is that module funct contains data defining the DFT functional in use
and a number of functions and subroutines to manage them.
Data are PRIVATE and are (shuold be) accessed and set only by function calls.
Basic drivers to compute XC quantities are also included.

It should be the main place where definitions for and calculation of xc
functionals are centralized.

In CPV printout [A.U.] replaced by [HARTREE A.U.] in many places.

stefano


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2411 c92efa57-630b-4861-b058-cf58834340f0
2005-11-02 15:42:06 +00:00
umari e826f9465b lconstrain was defined twice
alpha refused to compile
P.U.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2396 c92efa57-630b-4861-b058-cf58834340f0
2005-10-31 23:56:00 +00:00
umari 34222d795d Changed nberrycic--->nberrycyc
Added summary of electric field stuff
Better output in c_phase_field
P.U.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2371 c92efa57-630b-4861-b058-cf58834340f0
2005-10-25 23:17:05 +00:00
sbraccia ee01c4b10f cleanup. C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2348 c92efa57-630b-4861-b058-cf58834340f0
2005-10-22 22:37:48 +00:00
kkudin 9e74e9e881 Renamed input 'nodedir' to 'wfcdir'
Fixed cases that do not know about 'wfcdir'
 Kostya


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2324 c92efa57-630b-4861-b058-cf58834340f0
2005-10-20 20:35:52 +00:00
sbraccia ba4d2bef4b Several bug-fix and clean-up.
NEB: removed unused variables; removed allocatable input arrays from input_parameters (to be
consistent with the rest of the input stuff) and replaced by static arrays.
XML: unit 99 used to read/write wfc's replaced by a call to iotk_free_unit.
constraints: the static array "fion" is passed as an array-section to constraint subroutines.
metadyn: fe_step must be defined as an array of "time-steps" (one for each deg-of-freedom).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2322 c92efa57-630b-4861-b058-cf58834340f0
2005-10-20 15:22:12 +00:00
kkudin 9ad446ea9e Added an input variable to PWSCF called 'nodedir'
If absent, it defaults to 'outdir'
Whatever files opened in openfil.f90 will be opened in 'nodedir' (wfc, igk, ...)
Everything else is unaffected
The idea is to make it easier to store large *.wfc files on nodes while keeping
the other files in a central location
The patch is minimally intrusive and only replaces temporarily a variable
in openfil.f90 ( this is an ugly but "clean" hack for now )
Please test if it does what is claimed
 Kostya


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2305 c92efa57-630b-4861-b058-cf58834340f0
2005-10-19 00:54:48 +00:00
sbraccia 14cacbea0c Small modifications in the metadynamics algorithm. Doc updated.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2291 c92efa57-630b-4861-b058-cf58834340f0
2005-10-15 23:27:47 +00:00
sbraccia d5a72cf887 Some fix for metadynamics. C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2271 c92efa57-630b-4861-b058-cf58834340f0
2005-10-07 02:37:11 +00:00
sbraccia bd245ca656 New damped-dynamics based on the quick-min: H^-1|f> is used instead of |f> and H^1 is
updated with the BFGS algorithm. The performance is similar to the quasi-newton method,
but the algorithm is much simpler. Moreover it works also with constrained dynamics.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2264 c92efa57-630b-4861-b058-cf58834340f0
2005-10-06 13:32:45 +00:00
giannozz 80733b35dd yet another fix, hopefully the last, for mass conversion ...
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2241 c92efa57-630b-4861-b058-cf58834340f0
2005-09-27 16:40:57 +00:00
giannozz 947b5b9d0f Better fix for unit conversion problem with variable cell dynamics
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2240 c92efa57-630b-4861-b058-cf58834340f0
2005-09-27 16:34:11 +00:00
giannozz 1ee47c8935 Conversion to atomic unit for "amass" was performed twice
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2239 c92efa57-630b-4861-b058-cf58834340f0
2005-09-27 15:45:25 +00:00
sbraccia ed912ce5e4 old bfgs algorithm removed. C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2236 c92efa57-630b-4861-b058-cf58834340f0
2005-09-27 06:43:44 +00:00
sbraccia 5e399e3a0b First experimental version of the Laio-Parrinello metadynamics. This implementation
is compatible with both PWscf and CP. Examples and documentation will follow.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2199 c92efa57-630b-4861-b058-cf58834340f0
2005-09-20 15:17:18 +00:00
sbraccia 4e29b12a08 Fixed some errors in the BFGS relaxations that were mkaing the algorithm to
fail for some nasty system.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2185 c92efa57-630b-4861-b058-cf58834340f0
2005-09-17 02:14:39 +00:00
giannozz 1e42e05f69 error (..., -1) => infomsg
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2142 c92efa57-630b-4861-b058-cf58834340f0
2005-08-30 16:27:58 +00:00
giannozz f533b052d5 dbl => DP (defined as previously dbl was)
syntax for declarations: real(DP), without "kind="


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2135 c92efa57-630b-4861-b058-cf58834340f0
2005-08-28 14:09:42 +00:00
umari c8ea6e46dc Added electric field (berry phase style)
support in pw.

in call ro routines ccgdiagg cegterg cinitcgg
added ik (integer) k-point considerd

h_epsi_her calculates V_el|Psi>
c_phase_field.f90 calculates berry phase
during a scf calculation

P.U.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2098 c92efa57-630b-4861-b058-cf58834340f0
2005-08-16 12:04:34 +00:00