Commit Graph

20 Commits

Author SHA1 Message Date
cavazzon 08c786d8a2 - cleanup, module cell_module substituted by cell_base + interfaces
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3439 c92efa57-630b-4861-b058-cf58834340f0
2006-10-06 17:21:32 +00:00
cavazzon 7601c0b617 - more subroutines taken out from modules
- enhanced restart procedure, with disk_io='high'
  more stuff is saved to restart dir, this is required
  for post-processing and pw.x codes.
- wave functions are read following the iotk link, without
  explicitly open the file, this increases the possibility
  for interoperability and backward compatibility.
- added input parameter saverho (to control the saving of charge density),
  disk_io has a more general meaning
- merging of the subroutine that computes dekin stress component
- atomic wave function occupations factors ( "oc" ) now
  are copied to internal "atom" module.
- various cleanups


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3322 c92efa57-630b-4861-b058-cf58834340f0
2006-08-11 08:29:52 +00:00
cavazzon 2f2b88494a - same eletronic occupations array between FPMD/CPV
- lot of subroutines taken out from modules and
   corresponding interface added


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3305 c92efa57-630b-4861-b058-cf58834340f0
2006-08-03 17:47:35 +00:00
cavazzon 430daca75c - removed the spin dimension from wave function in fpmd routines.
Now wave functions array have only 2 indices everywhere, the first
  for the plane waves, and the second for the electronic states.
  When a spin calculation is performed the "spin up" states
  are stored in the first "nupdwn(1)" columns of the wave functions
  array, and the "spin down" states are stored in the second "nupdwn(2)"
  columns of the same array.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3274 c92efa57-630b-4861-b058-cf58834340f0
2006-07-17 09:15:34 +00:00
cavazzon f44cd08e1b - cleanups of unused features/source lines/modules
- blue gene fix (suggested by C. Bekas)
- CP postprocessing documentation
- small changes to restart file to allow CP restart from
  PW run (at gamma).


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3149 c92efa57-630b-4861-b058-cf58834340f0
2006-06-01 10:51:33 +00:00
cavazzon cff1f9680c - static arrays dimensioned with natx removed
- nproc substituted with nproc_image
- mpime substituted with me_image
- roor substituted with root_image
- some clean-ups


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2960 c92efa57-630b-4861-b058-cf58834340f0
2006-03-24 18:51:06 +00:00
cavazzon dd93c6ad14 - group communicator variable substituted with intra_image_comm,
first step needed to parallelize neb over images also for CP.
  Next we need to add the right communicator to all communications
- subroutine reduce substituted everywhere with mp_sum
- mp_sum for array with 4dims added in mp.f90
- workaround for xlf compiler, it has problems compiling file with
  initialization of large array in the definition line,
  see Modules/input_parameters.f90 , initialization moved to
  Modules/read_cards.f90 .


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2946 c92efa57-630b-4861-b058-cf58834340f0
2006-03-23 09:19:43 +00:00
cavazzon 0b6de7a082 - call to diagonalize
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2777 c92efa57-630b-4861-b058-cf58834340f0
2006-02-07 13:49:06 +00:00
cavazzon 79df35d971 - cdiagonalize updated to work with arrays with a leading
dimension different from "n"
- copy of h and v in cdiagh eliminated
- some other clean ups


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2771 c92efa57-630b-4861-b058-cf58834340f0
2006-02-05 17:25:03 +00:00
cavazzon 3c8bbee2b2 *** empty log message ***
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2743 c92efa57-630b-4861-b058-cf58834340f0
2006-01-29 16:43:06 +00:00
cavazzon 1a6b00bbb6 - FPMD/CP ortho subroutines merged as much as possible.
- Many ortho auxiliary functions (tauset, rhoset, sigset, calphi, updatc)
  are now in common between FPMD/CP, and moved to module ortho_base.f90
- In FPMD, three index vectors, related to real space like charge and potential
  have been substituted with single index vector like in CP, for compatibility
  and efficiency.
- Bug fix in pwtools/matdyn.f90 a logical variable was used in place of a
  character variable


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2694 c92efa57-630b-4861-b058-cf58834340f0
2006-01-10 14:04:13 +00:00
cavazzon b0a174982d - bug fix: Lapack DSPEV was used even when ESSL were used
- Same gram subroutine both for CP and FPMD subroutines
- simpson_fpmd everywhere substituted with simpson_cp90


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2572 c92efa57-630b-4861-b058-cf58834340f0
2005-12-09 11:13:40 +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
cavazzon 260828432d - FPMD: pseudopotential variable wsg, wnl, fnl substituted with
dion, beta, bec everyware.
- subroutines formfn, compute_beta, nlsm1, nlsm2, ecc ... now are common
  between FPMD and CPV, a lot of clean ups!
- Changes in stdout: relevant physical quantities ( positions velocities an cell )
  are now printed with the seme format of the corresponding input card,
  like in PW, as was suggested by SdG.
- exemple23 updated to reflect the new input namelist "wannier"
- Subroutine init_run now is used in FPMD too.
- WARNING in the stress computed with CP, for a pseudo with core-corrections,
  a contribution is missing! Not yet fixed, I need to talk with PG for the
  box staff.
- WARNING the examples reference are not updated, I'm on the IBM sp, and
  I prefer to update them from a linux machine.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2110 c92efa57-630b-4861-b058-cf58834340f0
2005-08-22 14:14:13 +00:00
cavazzon dbf279e1c3 - restart tags now using those suggested by CS
- flags for core cor. (nlcc, nlcc_any) used in FPMD too
- fixed a bug in read_pseudo.f90 ( related to nlcc )
- other merging anc clean-ups


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1971 c92efa57-630b-4861-b058-cf58834340f0
2005-06-22 08:28:08 +00:00
ballabio cc9d7d7b52 end subroutine --> end subroutine name [Gerardo]
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1871 c92efa57-630b-4861-b058-cf58834340f0
2005-05-18 08:49:38 +00:00
sbraccia a00aac0e25 header containing the GPL license added where missing and made omogeneous.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1865 c92efa57-630b-4861-b058-cf58834340f0
2005-05-16 19:19:04 +00:00
cavazzon 193516156e - clean-ups, comments and merging
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1829 c92efa57-630b-4861-b058-cf58834340f0
2005-04-22 15:23:19 +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