Commit Graph

77 Commits

Author SHA1 Message Date
obm 4dd624b92f Missing dependency in bfgs module
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6600 c92efa57-630b-4861-b058-cf58834340f0
2010-04-08 10:33:50 +00:00
nn245 4463142589 Rename Modules/functionals.f90 to Modules/funct.f90 to avoid basename clash with flib/functionals.f90 (N. Nemec)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6505 c92efa57-630b-4861-b058-cf58834340f0
2010-03-17 12:01:22 +00:00
giannozz 4934b395ba Added signal processing by RdM. Disabled by default, enabled by option
-D__TRAP_SIGUSR1 or using "./configure --enable-signals"


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6370 c92efa57-630b-4861-b058-cf58834340f0
2010-02-08 19:25:34 +00:00
giannozz f1ce1e4b26 More minor cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6166 c92efa57-630b-4861-b058-cf58834340f0
2009-11-17 13:41:14 +00:00
giannozz 805b860d62 Merge of initial printout between CP and PW: CPV/environment.f90 moved
to Modules/environment.f90 and generalized to PW and other codes.
PW/startup.f90 is kept as a wraper for now. The initial message in CP
looks now like the one in PW (please check if it satisfactory). The
compilation date has disappeared from info printed by CP: was it useful?
Makefiles and make.depends updated. ld1 does not depend any longer upon
files in PW/ . Miscellaneous cleanup.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6111 c92efa57-630b-4861-b058-cf58834340f0
2009-11-06 17:28:19 +00:00
giannozz 9dcdcb6172 ortho_para removed from input variables (it has been declared obsoclescent
since a long time)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6047 c92efa57-630b-4861-b058-cf58834340f0
2009-10-19 19:56:33 +00:00
giannozz 521bebd841 Removed unused module
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5912 c92efa57-630b-4861-b058-cf58834340f0
2009-09-09 13:17:28 +00:00
degironc ea12898a5d first implementation of Martyna-Tuckerman method to decouple periodic
images in a cluster calculation.  Still to be tested in parallel, it
 has been tested for Gamma vs 0 0 0 and for nspin=1 and 2. Forces seem
 to be ok. In the few cases considere there is no significant increase
 of workload with respect to the periodic calculation.

 plot_io.f90 moved from PP to flib because it may be needed
 in PW/martyna_tuckeman.f90 for debugging and in this way circular
 references are avoided. It only USE low-level modules like io_global,
 kinds, and constants so it should be ok.

 Module ws_base.f90 added in Modules. It deals with basic operations
 associated to Wigner-Seitz cell. The implementation should be general;
 it has been tested for SC and FCC only.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5911 c92efa57-630b-4861-b058-cf58834340f0
2009-09-09 12:59:40 +00:00
giannozz f43149e546 Subroutine read_card split into read_cards_cp and read_cards_pw.
No advantage at this stage, but once these routines are moved into
CP/ and  PW/ respectively, linking the autopilot module in PWscf
is no longer needed.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5908 c92efa57-630b-4861-b058-cf58834340f0
2009-09-08 19:22:49 +00:00
giannozz 54d31284f8 Removed SHMEM, Makefiloes and make.depend updated; lenght => length ; misc
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5814 c92efa57-630b-4861-b058-cf58834340f0
2009-08-04 14:34:32 +00:00
giannozz a3a39fc998 Cleanup: uniform spelling for "Quantum ESPRESSO", removal of f_defs.h,
CMPLX is explicitly typed, blas/lapack are lowercase (consistently with
the convention: FORTRAN COMMANDS = uppercase, all the rest lowercase)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5789 c92efa57-630b-4861-b058-cf58834340f0
2009-08-01 14:26:46 +00:00
ccavazzoni 14caacb2bf - XC driver exc_t and vxc_t moved to functionals.f90
vector versions exc_t_vec and vxc_t_vec added


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5731 c92efa57-630b-4861-b058-cf58834340f0
2009-07-22 14:34:30 +00:00
giannozz 4541ba4cbd Added DFT-D, i.e. plus semiempirical dispersions (courtesy of Daniel Forrer)
Example and documentation still missing, coming soon


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5599 c92efa57-630b-4861-b058-cf58834340f0
2009-06-14 19:05:55 +00:00
ccavazzoni a9fd37e117 - wrappers module containing wrapper subroutines/functions
used to call C functions with char arguments consistently


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5501 c92efa57-630b-4861-b058-cf58834340f0
2009-04-05 07:45:39 +00:00
giannozz e68f2c9d6f Cleanup of fixed parameters - only a few remains in parameters.f90.
The others have been either removed or moved to where they belong


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5436 c92efa57-630b-4861-b058-cf58834340f0
2009-02-19 09:49:49 +00:00
giannozz 4e7626d2d8 Tabulators replaced by white spaces (they confuse some compilers).
Recent additions to parameters.f90 moved into the place where they
belong (in my opinion). I don't think it is such a great idea to put
parameters there, unless they are used throughout the distribution


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5431 c92efa57-630b-4861-b058-cf58834340f0
2009-02-17 14:51:24 +00:00
degironc 83f2bfae65 new files and modifications needed to extract a TB hamiltonian in order to
perform a DFT+DMFT calculation.
contributed by Dmtry Korotin, V.I. Anisimov, N. Binggeli et al.
The DMFT part will be loaded separately into QE-forge.

SdG


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5397 c92efa57-630b-4861-b058-cf58834340f0
2009-02-12 08:07:11 +00:00
cavazzon cbcf8b76fd - cleanup of scalapack and other linear algebra subroutines
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5331 c92efa57-630b-4861-b058-cf58834340f0
2008-12-08 12:55:54 +00:00
giannozz d2632a6cdd Some minor phonon cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5158 c92efa57-630b-4861-b058-cf58834340f0
2008-09-01 16:37:50 +00:00
giannozz fd26dc3c65 Oops, USE kind => USE kinds
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4989 c92efa57-630b-4861-b058-cf58834340f0
2008-06-16 16:49:30 +00:00
giannozz 23241af911 Make.depend updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4844 c92efa57-630b-4861-b058-cf58834340f0
2008-04-29 11:24:35 +00:00
paulatto 9e54c7448f Some more bugfixes and updates in UPF file formats, now it should be almost
finished.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4787 c92efa57-630b-4861-b058-cf58834340f0
2008-04-09 14:51:58 +00:00
giannozz f577757c85 Changes by Andrea Ferretti to make the qexml format more rational:
version number added to the file, so that we have a way to deal with
incompatible changes in the future; miscellaneous tags put into a
CONTROL files; field IONS made uniform with the rest of the file;
rationalization of the names of tag STARTING_MAG (now MAGNETIZATION_INIT),
uniform tag structure (as for IONS above). Some of these changes are
incompatible with the previous format, but it will still possible to
read files from previous versions, though. Only third-party software
reading the qexml format may be affected, but it is unlikely that there
is any (in addition to those by AF)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4774 c92efa57-630b-4861-b058-cf58834340f0
2008-04-04 14:34:52 +00:00
paulatto ba4e005094 This is a quite complex check-in, but actually not very much is done. Changelog follows.
LP

UPF file format updated completely, UPFv2 introduced:
* ld1.x can still produce old format, with the switch upf_v1_format=.true. in inputp
  this is disabled by default, but we can discuss if it should be the opposite.
* pw.x cp.x and all utilities should notice no difference
* some utilities in upftools still need to be updated, anyway conversion UPFv1 to UPFv2
  is very easy, so this should be no big issue
* starting from now to produce an UPF file you need to fill the pseudo_upf derivedd type
  and feed it to write_upf woutine in upf_module (Modules/upf.f90)
* extensive use of iotk

I have tried to make the new format as self contained as possible, e.g. there should be
minimal need for post-processing after the data is read, no more reconstruction of known
quantities, and no more odd syntax to save negligible quantity of space. Also the human
readable section is a bit richer, all the rest is more machine readable.

I hope this will not cause any throuble, and tried really hard to, all examples and all
tests works as fine as before and gives (what really looks like) the same results.

Other changes that I needed to make:
* radial grids are now allocatable, they management is a bit less of a hack too
* paw and uspp augmentation are stored in the same place
* paw print total all-electron energy if all atoms are paw, not very useful, but nice
* most of the pseudopotential-writing reading files have been renamed to  some more
  logical name, I spare you the list. E.g. read_oldpseudo -> read_pseudo_rrkj3
* paw_t derived type was only used in atomic, so I have put it there (as the pseudo_type
  module take ages to recompile it was awkward to leave it there).

PAW tests inserted in test/ there are 6 of them, as a consequence I have also put 5 paw
pseudopotentials in the pseudo/ directory.

I will update the PAW scf examples soon, by deleting them (as running a pw with a PAW
pseudopotential requires no option at all). PAW generation examples should be updated.

A lot of small bugfixes here & there mostly uninitialized variables or unallocated
pointers used as subrotuine arguments.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4769 c92efa57-630b-4861-b058-cf58834340f0
2008-04-03 15:50: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 231f4e72cc "error" moved from flib/ to Modules/, as suggested by Axel, into
Modules/error_handler.f90 . Not really an elegant solution, since
the module in error_handler is never used and subroutine "errore"
is not in the module, but better than it used to be. All makefiles
and make.depend updated (fixes yesterday's linking error as well).
Minor changes here and there as well.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4591 c92efa57-630b-4861-b058-cf58834340f0
2008-01-03 09:02:32 +00:00
cavazzon 1422b8038f - cleanup and new subroutine for gathering data within the group
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4585 c92efa57-630b-4861-b058-cf58834340f0
2008-01-02 11:39:10 +00:00
cavazzon 47fbba4499 - cleanup
- fft 3D parallel driver generalized to include standard and task groups fft


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4569 c92efa57-630b-4861-b058-cf58834340f0
2007-12-29 10:09:28 +00:00
cavazzon c465220073 - cleanup, information on processor groups moved from task_group to
mp_global, in order to have a single place containing all info
  about the parallelization


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4567 c92efa57-630b-4861-b058-cf58834340f0
2007-12-28 14:08:17 +00:00
cavazzon 8a3a5c20b8 - new module fft_parallel for CP/PW common fft drivers using data structures
- Now contains only the common driver for task group fft


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4556 c92efa57-630b-4861-b058-cf58834340f0
2007-12-27 10:22:43 +00:00
paulatto 3f4cc01569 Trying to simplify paw self-consistency I have put becsum into the scf type, this requires a bit of a hack.
Symmetrization of becsum simplified a bit introducing mapping to "triangular" composite index.
Read upf now uses default (*) format for paw part.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4529 c92efa57-630b-4861-b058-cf58834340f0
2007-12-14 14:22:10 +00:00
degironc 0141bb6d0c update of several PAW routines.
global auxiliary variable saved%v removed and replace by a smaller local array.
ddd_PAW has now the same indexing structure as becsum.

miscellaneous:
- defined undefined variable ze2=0 in ascheqps
- ibnd_up/dw initialized in print_ks_energies.f90


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4517 c92efa57-630b-4861-b058-cf58834340f0
2007-12-11 22:46:03 +00:00
giannozz f0b1c48ff4 Old parallel subspace diagonalization (with matrix not distributed) removed
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4464 c92efa57-630b-4861-b058-cf58834340f0
2007-11-21 20:45:16 +00:00
paulatto 2239472597 Fixes: ld1 test of upf types was not working anymore (same as reason as CP).
Mods: removed read_paw module and .PAW temporary format support. Makefiles and
make.depend updated accordingly.
Fixes in ld1: test of upf types was not working anymore (same as reason as CP),
added deallocation of pawsetup. As testing of PAW without generation may not
work yet I have put a big error for it.
Other: simpson_cp90 was pretending to be simpson in error messages


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4461 c92efa57-630b-4861-b058-cf58834340f0
2007-11-21 10:39:48 +00:00
giannozz b59b2b3e58 Obsolete variable tvanp removed
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4454 c92efa57-630b-4861-b058-cf58834340f0
2007-11-20 10:14:36 +00:00
paulatto 68bd232899 A lot of little improvements and little new features have been added to PAW
routines, actually results should be the same, and execution time should be
a lot shorter.
 * each atom type now integrated to a different max(l)
 * max(l) tuned in order to exclude the non local channel of pseudo-
   potential, if it's empty
 * several implementation optimization
 * all occurences of ALLOCATABLE changed to POINTER inside derived types
 * added original Bloechl shape for augmentation charge, at the moment it
   is not useful but if someone wants to implement analylitical correction
   to overlaps...
 * PAW now uses UPF format, the format is still being tested: it will
   probably change a bit in the near future
 * as a consequence radial grids are now pointed from upf type and can be
   updated directly in read_upf, upf_to_internal don't have to set the grid
   anymore (at the moment only for pseudos read from upf files)
 * added a non-destructive check for abs(zeta)>1. in vxc_t
LP


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4449 c92efa57-630b-4861-b058-cf58834340f0
2007-11-19 16:20:26 +00:00
giannozz 28b4e9ba19 Minor cleanup; max number of species brought back to 10
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4447 c92efa57-630b-4861-b058-cf58834340f0
2007-11-19 14:51:15 +00:00
cavazzon bf74ac09d1 - new file mp_base.f90 containing mpi wrapper for block communications,
like in it was in reduce sub of PW. This is to avoid large temporary
  array allocations in module mp.f90 (mp.f90 calls subs in mp_base.f90).
  On the other hands mp.f90 provide the general interfaces for different
  kind of data and data size checking.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4441 c92efa57-630b-4861-b058-cf58834340f0
2007-11-17 14:32:10 +00:00
paulatto 4e96b9de36 All pseudopotential data required for PAW is now dynamically allocated inside the upf structure. Parameters ndmx and nbrx are no more ne
cessary for PAW, the latter has been moved to GIPAW/gipaw_module.f90, as it is only used there.

Added a little trick to free some memory after the initialization is completed (only for parallel .and. PAW, but similar method could be
 used for US too; is it worth the hassle?)

Minor changes in paw_symmetrize (added parallel) and paw_newd.

LP


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4431 c92efa57-630b-4861-b058-cf58834340f0
2007-11-13 15:15:28 +00:00
paulatto cf203a3a31 Step many of many: removed a log time unused array, there are still a few static arrays but they are much less memory greedy then the on
es I have removed today.

read_paw has been cleaned up a lot. The various option to cut-off atomic functions has been removed as current one works well enough.

make.depend updated again for some reason.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4427 c92efa57-630b-4861-b058-cf58834340f0
2007-11-12 17:31:27 +00:00
paulatto dce5f820da Paw code moved around and unused functions removed; old grid_paw code removed.
This is the first step of code cleanup. Actually nothing should change.

rad_paw_routines -> paw_onecenter (2 functions went to paw_init)
grid_paw_variables -> paw_variables (with some additions from rad_paw_routines)
grid_paw_routines -> paw_init (merged with 2 init functions from rad_paw)

Probably there are a few random fixes around.

Next step: remove ndmx and ntpx.

LP


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4422 c92efa57-630b-4861-b058-cf58834340f0
2007-11-12 14:49:09 +00:00
degironc 79f0fd08c0 more scf_mod changes
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4398 c92efa57-630b-4861-b058-cf58834340f0
2007-11-06 10:26:07 +00:00
giannozz 8370a4d99b more smd removal
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4388 c92efa57-630b-4861-b058-cf58834340f0
2007-11-02 14:38: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
degironc 93c72b5f3b make.depend again and a corrected scf_mod.f90
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4381 c92efa57-630b-4861-b058-cf58834340f0
2007-10-31 23:02:23 +00:00
degironc 33a9eac8b4 make.depend updates + a couple of small additions in PW/rad_paw_routines and atomic/c6_tfvw
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4378 c92efa57-630b-4861-b058-cf58834340f0
2007-10-31 10:31:55 +00:00
giannozz 9683c28102 make.depend files updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4363 c92efa57-630b-4861-b058-cf58834340f0
2007-10-23 20:06:04 +00:00
paulatto d858b4a51b New PAW version, now completely working on radial grid. Code on FFT grid can still be compiled using __GRID_PAW flag (but may not work a
nymore). Other things working: parallel, gamma-only.

Files vxc_t, exc_t and vxcgc moved from atomic to Modules (to prevent cyclic dependencies).

Other random fixes: a kind in init_vloc, a call to infomsg in ./PH/add_for_charges.f90.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4358 c92efa57-630b-4861-b058-cf58834340f0
2007-10-22 14:54:29 +00:00
giannozz e0378cf043 Various compilation problems after last changes fixed.
There is one left in PWCOND, related to arrays betar*
Misc small changes here and there


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4317 c92efa57-630b-4861-b058-cf58834340f0
2007-10-06 13:50:02 +00:00
giannozz 216c32ccd3 The following pseudopotential-related variables in module uspp_param:
zp, psd, dion, betar, jjj, qqq, qfunc, qfcoef, vloc_at, rinner,
   nbeta, kkbeta, nqf, nqlc, lll, tvanp
have been replaced by the corresponding variables in structure 'upf'.
There shouldn't be any side effects, but who knows. There is still a
copy of the above variables that will be removed sooner or later.
Basically : variable([i,j,k,..,]n) => upf(n)%variable [(i,j,k,..)]
Note that upf%qfunc has for the time being three indices instead of two,
and that upf%kkbeta is the analogous of kkbeta and not what it used to be.
The logic of this operation will be clearer when it will be completed


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4308 c92efa57-630b-4861-b058-cf58834340f0
2007-10-05 09:26:23 +00:00