Commit Graph

22 Commits

Author SHA1 Message Date
giannozz 022b4ecc24 More cft3/cft3s => fwfft/invfft conversion
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7026 c92efa57-630b-4861-b058-cf58834340f0
2010-08-28 13:48:36 +00:00
dalcorso 0a81ea40cd A major reorganization of the phonon recover logic.
Main advantages:
1) Some initialization parts are not calculated.
2) It should be possible to recover after reaching self-consistency
   without doing additional iterations.
It will require some tuning. So please report any anomalous behaviour.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6155 c92efa57-630b-4861-b058-cf58834340f0
2009-11-16 17:04:25 +00:00
dalcorso 81d2b3fb9b becp_type used more extensively in the phonon code.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6062 c92efa57-630b-4861-b058-cf58834340f0
2009-10-21 06:34:59 +00:00
degironc 1883640eb7 additional bec_type-related changes
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5959 c92efa57-630b-4861-b058-cf58834340f0
2009-09-21 13:38:34 +00:00
giannozz afec752184 End of this set of not-so-fundamental changes. Summary:
1) no more f_defs.h file to be included in fortran files
2) all CMPLX explicitly defined as CMPLX(...,KIND=dp)
3) blas/lapack names in lowercase (not all of them, actually)
4) documentation accordingly updated (plus unrelated changes to user_guide)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5805 c92efa57-630b-4861-b058-cf58834340f0
2009-08-03 09:19:02 +00:00
dalcorso 24d7bff4cf Cleanup of the spin-orbit part of the code. Shortening of a few routines.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5781 c92efa57-630b-4861-b058-cf58834340f0
2009-07-31 12:57:51 +00:00
dalcorso c2bdfb0086 Further cleanup of the phonon code. The indeces of k and k+q are no more
recalculated in every routine.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5371 c92efa57-630b-4861-b058-cf58834340f0
2009-02-04 10:25:03 +00:00
dalcorso 1d2ceae531 Minor cleanup of the phonon code (part 2). USE phcom and USE pwcom
substituted by multiple USE statements.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5368 c92efa57-630b-4861-b058-cf58834340f0
2009-02-04 08:28:27 +00:00
giannozz 1404b5f8cd More pwcom splitting into modules
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5211 c92efa57-630b-4861-b058-cf58834340f0
2008-09-24 11:50:31 +00:00
giannozz be76efc343 More cleanup (?): modules "uspp" and "symme" extracted from "pwcom"
everywhere. I didn't like the previous half-baked state.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5128 c92efa57-630b-4861-b058-cf58834340f0
2008-08-23 17:55:06 +00:00
cavazzon ee2066351a - reduce replaced by mp_sum
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4822 c92efa57-630b-4861-b058-cf58834340f0
2008-04-18 17:05:56 +00:00
dalcorso 7c129ee46c Phonon in the noncollinear and spin-orbit case. Routines with more complex
changes.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3768 c92efa57-630b-4861-b058-cf58834340f0
2007-02-08 13:40:53 +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
sbraccia 0caeadbd7b Machine-dependent definitions are now contained in two different files (both in /include):
1) f_defs.h  for definitions to be included in FORTRAN files ONLY
   2) c_defs.h  for definitions to be included in C       files ONLY

C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1012 c92efa57-630b-4861-b058-cf58834340f0
2004-06-25 17:25:37 +00:00
sbraccia d1579c66ec Removed references (not yet everywhere) to module basis for those variables already in module ions_base.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@953 c92efa57-630b-4861-b058-cf58834340f0
2004-06-12 13:44:18 +00:00
giannozz 47c5de62f8 More USPP_related variables moved to Modules/uspp.f90
Note that lqx => lmaxq for consistency with other names
(those ending in x are static dimensioning)
Beware unexpected side effects (PG)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@933 c92efa57-630b-4861-b058-cf58834340f0
2004-05-31 17:55:33 +00:00
giannozz 509459fc93 Cleanup in PH/ and D3/, setv removed (please verify collateral damages!)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@698 c92efa57-630b-4861-b058-cf58834340f0
2004-03-07 13:47:42 +00:00
giannozz 0b1a5c9fd8 Extensive module cleanup: DP moved from wrong place (parameters) to the
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
2004-01-23 15:08:03 +00:00
giannozz 9e3a2de758 Support for lahey compiler added: "error" renamed to "errore", "rnd" to "rndx"
bug in io_base fixed
PARA => __PARA
cinterpolate moved into interpolate


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@86 c92efa57-630b-4861-b058-cf58834340f0
2003-02-21 14:57:00 +00:00
giannozz d852392cab module allocate, calls to mallocate, mfree removed
pointers replaced by allocatable whenever possible


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@56 c92efa57-630b-4861-b058-cf58834340f0
2003-02-07 16:04:36 +00:00
giannozz ac9f2144c0 O-sesame
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2 c92efa57-630b-4861-b058-cf58834340f0
2003-01-19 21:58:50 +00:00