Commit Graph

37 Commits

Author SHA1 Message Date
giannozz 7980bfd169 I forgot one directory in previous commit
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7342 c92efa57-630b-4861-b058-cf58834340f0
2010-12-22 21:45:34 +00:00
giannozz db729d60c5 Forgotten in previous commit
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7168 c92efa57-630b-4861-b058-cf58834340f0
2010-10-26 08:29:11 +00:00
giannozz b41ba40564 Harmonization of FFT grid variables with CP:
nrx1, nrx2, nrx3 => nr1x, nr2x, nr3x
  nrx1s,nrx2s,nrx3s=> nr1sx,nr2sx nr3sx


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7091 c92efa57-630b-4861-b058-cf58834340f0
2010-09-18 16:48:39 +00:00
giannozz be2f483311 More cft/cft3s => fwfft/invfft conversion. May or may not work.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7020 c92efa57-630b-4861-b058-cf58834340f0
2010-08-27 08:34:27 +00:00
giannozz c60df7459d Added k-resolved dos (GuidoF) + source "normalization"
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6840 c92efa57-630b-4861-b058-cf58834340f0
2010-06-14 13:45:31 +00:00
giannozz 93745edf3b Wrappers for real-space symmetrization removed. STM seems to work;
no warranty for ELF and local_dos.f90


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6269 c92efa57-630b-4861-b058-cf58834340f0
2010-01-07 17:20:31 +00:00
giannozz bd651b108c Better (?) algorithm for G-space symmetrization
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6264 c92efa57-630b-4861-b058-cf58834340f0
2010-01-06 16:54:57 +00:00
giannozz 315487eef5 Parallel distributed reciprocal-space symmetrization. Not a big deal
(large system have seldom symmetries) and not a big effort either (but
the variable-cell case was really nasty, due to the loss of G-vector
ordering). Currently the new routines are hidden into module symme and
called by wrappers that make it simple to revert to the old algorithm.
It works for all examples in tests/ in both serial and parallel execution,
but needs real-life testing. In the noncolinear case the results seem to
be invariant with respect to usage of S or S^-1 to rotate the magnetization,
so more testing (or a more reliable theory) is needed.

For the time being, it works only for PW and (untested) PP. PHonon etc
still use the old-fashioned real-space symmetrization.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6261 c92efa57-630b-4861-b058-cf58834340f0
2009-12-22 17:01:28 +00:00
giannozz c0356e87a8 All remains of obsolete stm_wfc_matching option removed, documentation updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6242 c92efa57-630b-4861-b058-cf58834340f0
2009-12-12 09:50:13 +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 a2b5ab5e50 Minor partial cleanup. Many routines declared unused variables. Many others
could be cleaned.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5445 c92efa57-630b-4861-b058-cf58834340f0
2009-02-25 15:58:53 +00:00
cavazzon 33f8d16684 - celanup, poolreduce replaced by mp_sum(...,inter_pool_comm)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4644 c92efa57-630b-4861-b058-cf58834340f0
2008-01-23 17:10:45 +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
degironc fab8c49e9c scf_mod again..
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4382 c92efa57-630b-4861-b058-cf58834340f0
2007-11-01 11:19:31 +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
giannozz c8472f5984 Calculation of planar averages of wavefunctions moved out of pp.x
into a separate code (plan_avg.x). Output file should be the same.
Completely untested: it compiles, no warranty that it works!


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2714 c92efa57-630b-4861-b058-cf58834340f0
2006-01-19 17:59:10 +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
giannozz e9bf912bcf write cpu time in a form that can be easily parsed out
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2052 c92efa57-630b-4861-b058-cf58834340f0
2005-07-28 09:03:28 +00:00
giannozz ace8b915bb Misc small changes
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1174 c92efa57-630b-4861-b058-cf58834340f0
2004-08-26 09:33:01 +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
giannozz 68b075c1ae Cleanup: pwcom no longer used in PP/
qgm is now a local variable as it should be


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@867 c92efa57-630b-4861-b058-cf58834340f0
2004-05-08 10:24:24 +00:00
degironc bc65724ba0 stm images can be obtained from a calculation at "gamma".
gamma_only variable is written/read by saveall.
contributed by Guido Fratesi


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@505 c92efa57-630b-4861-b058-cf58834340f0
2004-01-22 12:48:52 +00:00
giannozz cd8242ad9a Some cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@486 c92efa57-630b-4861-b058-cf58834340f0
2004-01-15 15:50:19 +00:00
giannozz 183a01bc5e Check on undefined variables, out-of-bound arrays
Several implicit none re-added, pwcom modules split


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@466 c92efa57-630b-4861-b058-cf58834340f0
2004-01-06 10:53:30 +00:00
cavazzon 9ce7263953 - bug (alpha compiler) reported by Sergey has been fixed
- module filnam in pwcom moved to io_files module
- module units in pwcom moved to io_file

From now on, all file names and their unit and attributes (i.e. reclen)
should be defined in Modules/io_files.f90


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@382 c92efa57-630b-4861-b058-cf58834340f0
2003-11-09 18:30:08 +00:00
cavazzon c5d8ff2f66 - unit 6 replaced by stdout in CPV
- ^M removed from pseudo files
- wavefunctions arrais moved to module
  wavefunctions_module, common to all codes
  this is required to reduce duplicated subroutine
- new lapack subroutine, called from PWCOND,
  added to lib/lapack.f lib/lapack_ibm.f


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@381 c92efa57-630b-4861-b058-cf58834340f0
2003-11-09 10:42:50 +00:00
sbraccia b33c2e1f64 Unit stdout (set in Modules/io_global.f90) is used to write on standard output
instead of 6 or *.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@375 c92efa57-630b-4861-b058-cf58834340f0
2003-11-06 09:41:13 +00:00
cavazzon 1d34b5c0a8 non collinear spin version of PW,
contributed by Adriano Mosca Conte,
added to the repository.
The non collinear code has required
a new module "wavefunctions" containing
"psic" and "evc", that no longer belong
to pwcom.

use: cvs update -d

there's a new example (example13), that is not
yet complete, I'm waiting for the appropriate
pseudopotential from Adriano


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@322 c92efa57-630b-4861-b058-cf58834340f0
2003-10-03 14:01:11 +00:00
giannozz 0cd76c7b27 *** empty log message ***
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@280 c92efa57-630b-4861-b058-cf58834340f0
2003-07-29 17:38:08 +00:00
giannozz 401f236aca clean_pw cleaned
symmetries are always applied in non-scf calculations
(with the exception of Berry-phase calculation):
use nosym=.true. to prevent generation of additional points
Example for STM added


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@274 c92efa57-630b-4861-b058-cf58834340f0
2003-07-23 12:18:52 +00:00
giannozz b8c13f2a90 Minor corrections
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@238 c92efa57-630b-4861-b058-cf58834340f0
2003-06-16 08:57:45 +00:00
giannozz ab5b6af5e5 D3/Makefile : missing add_efield added
cegterg, regterg: use GEMM instead of GEMV, do not require
any longer evc, et to be dimensioned nbndx (et is now
dimensioned (nbnd,nkstot)) - misc. cleanup

Il calcolo di (H-eS)*psi ('update') nella diagonalizzazione iterativa
prendeva un tempo esagerato. L'ho modificata in modo da usare prodotti
matrice-matrice su tutti gli psi invece che matrice-vettore su ogni
psi, se piu' di 1/4 dei vettori non e' a convergenza. La cosa e' fatta
a naso e richiede ulteriori di prove, ma mi sembra che apporti dei
miglioramenti.

In TODO ho messo una lista di cose da fare.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@145 c92efa57-630b-4861-b058-cf58834340f0
2003-04-07 12:55:29 +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