Commit Graph

42 Commits

Author SHA1 Message Date
giannozz da3f938442 More symmetry cleanup (sort of). Symmetry-related variables, together with
routines that find the symmetry of a system, are in module symm_base;
module symme contains only routines for symmetrization of the various
quantities.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6403 c92efa57-630b-4861-b058-cf58834340f0
2010-02-12 20:57:55 +00:00
giannozz 548f4a2f2f Metadynamics: first set of routines and variables removed
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6362 c92efa57-630b-4861-b058-cf58834340f0
2010-02-05 17:17:26 +00:00
marsamos 347a6682f4 continuing porting of HSE
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6297 c92efa57-630b-4861-b058-cf58834340f0
2010-01-15 10:22:34 +00:00
giannozz 6947ed7f6d Error message issued when ecutrho > 4*ecutwfc for non-US or non-PAW
calculations


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6144 c92efa57-630b-4861-b058-cf58834340f0
2009-11-13 07:19:38 +00:00
giannozz bc5f8817c9 mpime not used in several places, minor updates. I also removed the "!"
in "no symmetry" because it makes unnecessary confusion with the "!"
marking the converged scf energy


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5992 c92efa57-630b-4861-b058-cf58834340f0
2009-10-01 19:31:20 +00:00
marsamos 0fd9aba5ac subroutine exx_grid_init cut --> exx_grid_init and exx_div_check
for maintain coherence with GWW


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5954 c92efa57-630b-4861-b058-cf58834340f0
2009-09-18 16:10:10 +00:00
marsamos d212b0c605 add module coulomb_vcut for EXX div (G. Bussi, A. Ferretti, L. Martin-S)
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
2009-09-13 16:48:24 +00:00
giannozz 3cd50d0257 More cleanup: spelling of Quantum ESPRESSO, CMPLX explicitly cast, f_defs.h
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
2009-08-01 17:48:59 +00:00
varini 381d44f720 Parallelization of EXX by images replica (the q mesh are distributed over images).
Nicola Varini


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5053 c92efa57-630b-4861-b058-cf58834340f0
2008-07-11 12:05:06 +00:00
varini fc5102aca7 minor change in exx.f90
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5051 c92efa57-630b-4861-b058-cf58834340f0
2008-07-09 08:10:56 +00:00
varini 3c6fc39d69 introducing exxbuff in order to using a buffer instead io routine.
Nicola Varini


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5013 c92efa57-630b-4861-b058-cf58834340f0
2008-06-20 15:00:59 +00:00
degironc f0859ef5f9 Added some "restart" capability in the EXX part
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4969 c92efa57-630b-4861-b058-cf58834340f0
2008-06-10 14:03:23 +00:00
cavazzon 6e6630adbe - reduce replaced by mp_sum
- sub. reduce, removed from para!


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4826 c92efa57-630b-4861-b058-cf58834340f0
2008-04-20 21:23:37 +00:00
cavazzon 259fe1b6e7 - celanup, poolreduce replaced by mp_sum(...,inter_pool_comm)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4643 c92efa57-630b-4861-b058-cf58834340f0
2008-01-23 16:53:17 +00:00
giannozz bea61e7dc2 Support for Solaris PC with Sun compiler added
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4631 c92efa57-630b-4861-b058-cf58834340f0
2008-01-16 15:23:43 +00:00
cavazzon 636712cef9 - scatter/gather like subroutines that act on fft grids,
moved from PW/para.f90 to Modules/fft_base.f90


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4614 c92efa57-630b-4861-b058-cf58834340f0
2008-01-08 09:19:31 +00:00
giannozz bdae2b6cb1 Cleanup of wavefunction initialization. Since I wasted two hours hunting
for a bug, before I realized that there were two copies of "gamma_only",
I wasted two more hours to iuse a single value of "gamma_only" (the one
oin control_flags).


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4468 c92efa57-630b-4861-b058-cf58834340f0
2007-11-22 14:23:04 +00:00
ceresoli 94dd1ce6d2 io_files repeated in ONLY list (D.C.)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3801 c92efa57-630b-4861-b058-cf58834340f0
2007-02-21 14:42:24 +00:00
giannozz 0a862b7402 Added possibility (not yet activated) of keeping wavefunctions in memory.
File buffers.f90 contains replacements - with different names and syntax -
for diropn (open_buffer) and davcio (get_buffer, save_buffer). If you have
better names, please go ahead. Works for a single buffer right now.

Pitfalls: nwordwfc is now defined as the number of complex words, no longer
of real words, but only in PW/, so mixing routines from PW with routines from
other codes may run into trouble (although I didn't see any side effect).
Restart may no longer work in some specific cases.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3800 c92efa57-630b-4861-b058-cf58834340f0
2007-02-21 13:01:31 +00:00
giannozz 1414be8bc9 Pool/k-points minor cleanup:
"nkstot" is always the total number of k-points, summed on all pools;
"nks" is defined only after pools are initialized and is the number of
k-points on the current pool. Previously there was some confusion due
to the redefinition of nks. It seems to work with no side effects, but
- it is untested for EXX
- the X phonon in Ni (example 2) does not work, but it doesn't seem
  to be related with this change

The commented lines in h_psi_meta made compilation fail on sp5.
How this was happening I don't know: it must be related to the
pre-processing of CMPLX (see include/f_defs,h). Maybe we should
get rid of it. In the meantime I removed the offending lines.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3787 c92efa57-630b-4861-b058-cf58834340f0
2007-02-15 15:05:01 +00:00
giannozz 6428be9581 There is no reason to write to file the number of planewaves per k-point:
it is stored in memory anyway


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3705 c92efa57-630b-4861-b058-cf58834340f0
2007-01-22 16:38:47 +00:00
giannozz 3a98e2d9d4 More patches from Axel:
- correct an unquoted string (iosys) in PW/input.f90:483
(this was the cause of tonight compilation failere)
- correct a few incorrect format strings
- make more use of the constants module and thus
  provide more consistent units. NOTE, this has some
  numerical changes in the outputs, as in some places
  rather low precision and inconsistent numbers were
  used for unit conversion.
- convert all(?) single precision constants to double
  using the attached little perl program.
  exceptions: efermi.f90 (as it is supposed to be rewritten
  anyways), plotbands.f90 (it uses single precision everywhere,
  which may result in saving a significant amount of memory,
  so i converted the two double precision constants to single).
Unused routine 'set_fft_grid' removed


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3602 c92efa57-630b-4861-b058-cf58834340f0
2006-12-14 08:53:47 +00:00
degironc 56210fe18a mispelled variable... sorry
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2793 c92efa57-630b-4861-b058-cf58834340f0
2006-02-09 08:44:04 +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
degironc 6fc5e4e8bc EXX minor cleanup and parallel implementation
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2573 c92efa57-630b-4861-b058-cf58834340f0
2005-12-09 13:08:33 +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
giannozz aab7e495d7 Bad call to reduce
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2312 c92efa57-630b-4861-b058-cf58834340f0
2005-10-20 08:28:00 +00:00
giannozz 305e02a222 The current index of k-point, used in exact-exchange and electric-field
calculations, is saved in variable current_k


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2310 c92efa57-630b-4861-b058-cf58834340f0
2005-10-20 07:34:39 +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
giannozz bf4bfe222f General cleanup of intrinsic functions:
conversion to real    => DBLE
(including real part of a complex number)
conversion to complex => CMPLX
complex conjugate     => CONJG
imaginary part        => AIMAG

All functions are uppercase.
CMPLX is preprocessed by f_defs.h and performs an explicit cast:
#define CMPLX(a,b)  cmplx(a,b,kind=DP)
This implies that 1) f_defs.h must be included whenever a CMPLX is present,
2) CMPLX should stay in a single line, 3) DP must be defined.

All occurrences of real, float, dreal, dfloat, dconjg, dimag, dcmplx
removed - please do not reintroduce any of them.
Tested only with ifc7 and g95 - beware unintended side effects

Maybe not the best solution (explicit casts everywhere would be better)
but it can be easily changed with a script if the need arises.
The following code might be used to test for possible trouble:

program test_intrinsic

  implicit none
  integer, parameter :: dp = selected_real_kind(14,200)
  real (kind=dp) :: a = 0.123456789012345_dp
  real (kind=dp) :: b = 0.987654321098765_dp
  complex (kind=dp) :: c = ( 0.123456789012345_dp, 0.987654321098765_dp)

  print *, '      A = ', a
  print *, ' DBLE(A)= ', DBLE(a)
  print *, '      C = ', c
  print *, 'CONJG(C)= ', CONJG(c)
  print *, 'DBLE(c),AIMAG(C)  = ', DBLE(c), AIMAG(c)
  print *, 'CMPLX(A,B,kind=dp)= ', CMPLX( a, b, kind=dp)

end program test_intrinsic

Note that CMPLX and REAL without a cast yield single precision numbers on
ifc7 and g95 !!!


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2133 c92efa57-630b-4861-b058-cf58834340f0
2005-08-26 17:44:42 +00:00
degironc dd49eab404 EXX: Gamma-specific part implemented,
kind of parallel implementation (untested)

SdG


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2101 c92efa57-630b-4861-b058-cf58834340f0
2005-08-17 08:43:37 +00:00
degironc 092b0b00a5 more changes to the EXX part
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2092 c92efa57-630b-4861-b058-cf58834340f0
2005-08-08 14:56:35 +00:00
degironc 4fc2b86181 some bugs in EXX corrected
SdG


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1996 c92efa57-630b-4861-b058-cf58834340f0
2005-07-04 10:57:49 +00:00
degironc 03592615e1 more EXX experimental stuff
stefano


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1978 c92efa57-630b-4861-b058-cf58834340f0
2005-06-27 13:11:33 +00:00
suriano 52b67be1c7 EXX: now divergency works also with more than one k point.
Antonio Suriano


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1957 c92efa57-630b-4861-b058-cf58834340f0
2005-06-13 14:08:48 +00:00
suriano 4649d8f47f EXX: bug in divergency. Now only first time the factor is computed.
Antonio Suriano


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1956 c92efa57-630b-4861-b058-cf58834340f0
2005-06-13 12:52:01 +00:00
suriano bd65c3826d Separate subroutine to calculate factor for divergency.
Antonio Suriano


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1944 c92efa57-630b-4861-b058-cf58834340f0
2005-06-08 11:15:22 +00:00
suriano f59a6f96e8 Exx.f90: now it compiles.
Antonio Suriano


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1935 c92efa57-630b-4861-b058-cf58834340f0
2005-06-07 09:45:35 +00:00
suriano a9cea689e8 Exx module: added some code to treat qq=0 divergence.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1932 c92efa57-630b-4861-b058-cf58834340f0
2005-06-06 14:32:49 +00:00
degironc 617b5dd8e6 more EXX stuff
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1890 c92efa57-630b-4861-b058-cf58834340f0
2005-05-23 08:03:57 +00:00
degironc 46b416ad12 forgotten file for HF exchange
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1884 c92efa57-630b-4861-b058-cf58834340f0
2005-05-19 15:04:35 +00:00