Commit Graph

150 Commits

Author SHA1 Message Date
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
dalcorso 71c38d9494 Changed symmetrization in the non-collinear case.
(A. Smogunov and ADC)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2326 c92efa57-630b-4861-b058-cf58834340f0
2005-10-21 13:01:42 +00:00
ballabio 670f4b64d5 now configure checks separately for serial and parallel compilers [Gerardo]
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2258 c92efa57-630b-4861-b058-cf58834340f0
2005-10-05 18:11:25 +00:00
ballabio 235d96d71e separated LDFLAGS and LIBS [Gerardo]
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2247 c92efa57-630b-4861-b058-cf58834340f0
2005-09-29 13:17:39 +00:00
giannozz f0dfab27a1 Minor changes to error messages
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2217 c92efa57-630b-4861-b058-cf58834340f0
2005-09-24 10:07:57 +00:00
sbraccia 3f4d0ff92b Some cleanup of the xml punch file: now the pseudopotential is properly
written and read. Added some consistency checks. Postprocessing programs
not yet working (at least not all of them).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2144 c92efa57-630b-4861-b058-cf58834340f0
2005-08-30 21:10:04 +00:00
sbraccia e0e17e962b More merge between xml routines used by cp/fpmd and pwscf. Many fixes in the
pwscf set of drivers that read the xml punch file.
Now the postprocessing codes that use the read_file routine to read the punch
file should work (please check).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2138 c92efa57-630b-4861-b058-cf58834340f0
2005-08-29 20:29:22 +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
dalcorso e3b06fa54d Merging of gradcorr.f90 and gradcorr_nc.f90.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2128 c92efa57-630b-4861-b058-cf58834340f0
2005-08-24 16:47:19 +00:00
ballabio 89c79b7302 compilation fix [Gerardo]
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2103 c92efa57-630b-4861-b058-cf58834340f0
2005-08-17 12:05:15 +00:00
degironc e4ed1c4bff unused PW/dndtau.f90 removed, makefile updated accordingly
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2096 c92efa57-630b-4861-b058-cf58834340f0
2005-08-09 16:58:38 +00:00
degironc ac7906dc29 - makefile update after yesterday changes
- variable "ishybrid" added to Modules/funct.f90 to manage hybrid functionals
- duplicated subroutines in upftools/nclib.f90 removed


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2095 c92efa57-630b-4861-b058-cf58834340f0
2005-08-09 07:34:23 +00:00
giannozz e0d3021cc5 Updated Makefile with better dependencies (AK)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2089 c92efa57-630b-4861-b058-cf58834340f0
2005-08-03 17:00:07 +00:00
giannozz 0d58af2191 write cpu times in such a way that they do no confuse check_example
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2048 c92efa57-630b-4861-b058-cf58834340f0
2005-07-27 08:30:32 +00:00
sbraccia a066a10dc8 Fixed dependencies from metagga.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2029 c92efa57-630b-4861-b058-cf58834340f0
2005-07-15 13:21:32 +00:00
degironc 285119fa34 seqopn.f90 and diropn.f90 modified in such a way that the name of
all files open by seqopn.f90 and diropn.f90 in the TMP_DIR have the
general form "prefix"."extension" where extension is the only part of
the filename passed as an argument. This should avoid conflicts between
different jobs running at the same time and sharing the same TMP_DIR
(provided they have different prefixes ...)

All examples (from 1 to 26) give the same output as before on my pc.
Please let me know if you notice unexpected behaviours.

stefano

PS: example26 apparently does nothing (even giving the command run_example 7)..
As it uses cp.x which does not use seqopn/diropn routines this behaviour
cannot be due to the present changes.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1963 c92efa57-630b-4861-b058-cf58834340f0
2005-06-17 13:27:38 +00:00
giannozz 62f3c20514 Several bugs in third-order derivatives fixed (courtesy of Nicolas
Mounet and MIchele Lazzeri)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1938 c92efa57-630b-4861-b058-cf58834340f0
2005-06-07 14:09:45 +00:00
giannozz 1045299ff0 Makefiles updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1929 c92efa57-630b-4861-b058-cf58834340f0
2005-06-02 20:06:41 +00:00
sbraccia 8d44a2a8fd The new subroutine flush_unit() is used everywhere. C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1904 c92efa57-630b-4861-b058-cf58834340f0
2005-05-25 02:58:35 +00:00
degironc a82b80548a Experimental version with some (incomplete and probably wrong) exact
exchange stuff.
These features can be obtained by compiling with -DEXX added to DFLAGS
in make.sys
***** DO NOT USE FOR ANY PRODUCTION RUN. *****

Stefano and Antonio


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1883 c92efa57-630b-4861-b058-cf58834340f0
2005-05-19 12:25:25 +00:00
giannozz def35656c0 Some cleanup (delta_e does only what is useful and where it is useful)
minor fixes here and there


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1815 c92efa57-630b-4861-b058-cf58834340f0
2005-04-19 14:18:34 +00:00
sbraccia 71ff0f5039 cinitcgg_nc removed. Fixed a couple of bugs in the cg diagonalisation.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1808 c92efa57-630b-4861-b058-cf58834340f0
2005-04-15 16:17:35 +00:00
sbraccia e29f425ea9 Added missing dependencies and removed those unnecessary. C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1774 c92efa57-630b-4861-b058-cf58834340f0
2005-03-30 16:08:40 +00:00
dalcorso 6b91568ab1 V_of_rho and v_of_rho_nc merged.
Constraints on the magnetization moved to the routine add_bfield.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1766 c92efa57-630b-4861-b058-cf58834340f0
2005-03-29 09:05:42 +00:00
cavazzon 908e1f314e - a dependency from module timestep.o was missing
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1713 c92efa57-630b-4861-b058-cf58834340f0
2005-03-15 15:48:01 +00:00
ballabio 765729b8b3 merged make.sys and make.rules together
there was no reason they should be two different files
everybody must rerun configure
[Gerardo]


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1690 c92efa57-630b-4861-b058-cf58834340f0
2005-03-08 18:44:10 +00:00
giannozz e97cd12276 Changes related to the new Raman code
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1678 c92efa57-630b-4861-b058-cf58834340f0
2005-03-04 17:48:02 +00:00
giannozz f6c7dd48e0 Added optimized support for ALTIX machines - contributed by Martin Hilgeman
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1545 c92efa57-630b-4861-b058-cf58834340f0
2005-01-07 12:57:41 +00:00
dalcorso dadadae120 Merging of PWNC and PW. pw.x should now work for collinear,
noncolinear and spin-orbit cases. pwnc.x is no more needed and the
directory PWNC and all its files will be removed.
Step one: added to PW the noncolinear routines that have not been
merged, changes on all the Makefiles.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1537 c92efa57-630b-4861-b058-cf58834340f0
2005-01-05 16:26:09 +00:00
dalcorso 646b629563 The noncolinear version is not working in these programs. Added a call errore
in these cases.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1536 c92efa57-630b-4861-b058-cf58834340f0
2005-01-05 15:22:56 +00:00
cavazzon e32ce9b074 - common xc and gga functionals subroutines for all code PW/CP/FPMD
- Few more functionals has been added to file more_functionals.f90
  since in PW BLYP/LSDA were not implemented .
  In the same file, temporary, are stored old CP90 subroutines
  for testing purpose ( in CP functionals were vectorized!! ).
  The small program PP/xctest.f90 can be used to make a comparative
  test between new and old routines, in case someone suspect a problem
  there.
- buon anno!


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1533 c92efa57-630b-4861-b058-cf58834340f0
2004-12-31 11:14:32 +00:00
cazzato a6ad18850a iswitch flag removed; appropriate flags (as lscf, lmd, lphonon, etc.) should be used
in particular (modenum.ne.0) stands for iswitch = -4 now: is it OK?
unused show_memory routine also removed
documentation updated


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1503 c92efa57-630b-4861-b058-cf58834340f0
2004-12-10 15:20:46 +00:00
degironc a46d223957 make.depend files are gererated by configure and are therefore always seen
as Modified by CVS. I think they should not be part of the CVS tree (SdG).


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1501 c92efa57-630b-4861-b058-cf58834340f0
2004-12-10 12:12:40 +00:00
cavazzon 89ab8f3e55 - FPMD files added to CPV directory
- FPMD directory is no more needed


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1479 c92efa57-630b-4861-b058-cf58834340f0
2004-11-25 14:51:47 +00:00
cavazzon 4d205dc09b - updated dependencies and Makefiles
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1475 c92efa57-630b-4861-b058-cf58834340f0
2004-11-24 16:13:26 +00:00
cavazzon 155f29dd8c - cpmplete experimental common CP/FPMD XML-like restart .
CP and FPMD are now linked to a common XML-like
  restart subroutine (see Module/cp_restart.f90 ).


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1469 c92efa57-630b-4861-b058-cf58834340f0
2004-11-24 10:56:23 +00:00
ballabio 196e5a093f use "sort -d" to obtain machine-independent results, update
dependencies [Gerardo]


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1462 c92efa57-630b-4861-b058-cf58834340f0
2004-11-22 14:38:36 +00:00
cavazzon 3b22ff0108 - FPMD/CP more merging
- new module for merged FPMD/CP restart subroutines
- starting work on XML restart/punch  (cp_restart.f90)
carlo


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1443 c92efa57-630b-4861-b058-cf58834340f0
2004-11-15 12:13:22 +00:00
ballabio 8a6525f4fe renamed .dependencies to make.depend, added them to CVS [Gerardo]
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1434 c92efa57-630b-4861-b058-cf58834340f0
2004-11-09 10:53:55 +00:00
sbraccia e6aa41ea47 Again on the old parallel variables.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1424 c92efa57-630b-4861-b058-cf58834340f0
2004-11-04 13:35:00 +00:00
sbraccia 6bceadf589 Old parallel variables (such as me mypool) removed from D3.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1421 c92efa57-630b-4861-b058-cf58834340f0
2004-11-04 12:09:48 +00:00
giannozz b2f1252ed0 Electron-phonon coefficient calculation should work also after a restart
(to be tested). Makefile and ChangeLog cleanup

Per favore scrivete qualcosa nel ChangeLog quando fate qualcosa
e verificate che tutto compile quando aggiungete roba - PG


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1413 c92efa57-630b-4861-b058-cf58834340f0
2004-11-01 17:48:04 +00:00
giannozz 1648ab6bf2 Patches from Axel Kohlmayer:
- iotk_scan in iotk_module had a mixed up 'intent' statement.
- sun ultra fire 3 compiler warnings
- cleanup in filename length (brought to 256)
- cleanup in include files


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1399 c92efa57-630b-4861-b058-cf58834340f0
2004-10-26 09:32:48 +00:00
ballabio 7bece4b4eb cleanup and some reorganization [Gerardo]
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1217 c92efa57-630b-4861-b058-cf58834340f0
2004-09-02 17:07:31 +00:00
deinzer 73c24c3351 small modifications in saving fildrho
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1177 c92efa57-630b-4861-b058-cf58834340f0
2004-08-26 14:20:10 +00:00
giannozz d06f20ea1b Makefiles and examples updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1169 c92efa57-630b-4861-b058-cf58834340f0
2004-08-25 09:54:04 +00:00
giannozz 9b2ddc028c More compilation problems
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1124 c92efa57-630b-4861-b058-cf58834340f0
2004-08-18 16:22:16 +00:00
giannozz cf4129b4d2 Misc. cleanup; a few redundant routines moved to flib;
added example for phonon DOS; version number updated to 2.1 (PG)

Please start testing and debugging the next version, i.e., this one.
Note that reference data have to be updated for all examples.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1039 c92efa57-630b-4861-b058-cf58834340f0
2004-07-02 16:24:48 +00:00
deinzer 3ac7daa2ee Calculation of the dynamical matrices for the dispersion
is now within ph.x possible.
New input variables:
lnscf: if .true. the nscf and phonon run are done in one single run

ldisp: if .true. calculation of dyn. matrices for dispersion
nq1, nq2, nq3: q-point mesh


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1017 c92efa57-630b-4861-b058-cf58834340f0
2004-06-28 10:08:53 +00:00