Commit Graph

11 Commits

Author SHA1 Message Date
giannozz f910b0a7dd Obscure bug leading to NaNs in PAW calculations fixed (or in any event,
neutralized)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5675 c92efa57-630b-4861-b058-cf58834340f0
2009-07-13 13:59:47 +00:00
paulatto cf72423040 nullify_pseudo_upf: modified according to advice from Nathalie, plus added a few missing "nullify"
fixed a few overflows in atomic (atomic/atomic_paw.f90, atomic/partial_wave_expansion.f90)
fixed a few wrong format specifiers (Modules/write_upf_v2.f90)
try to make error messages from self-consistency in atomic easier to interpret and fix
    (atomic/ascheqps.f90)
added a mechanism to save the configuration used to generate it in the INFO section of
a pseudopotential.

LP


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4836 c92efa57-630b-4861-b058-cf58834340f0
2008-04-24 15:26:26 +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
giannozz 0ced6054f9 More PGI weirdness from Andrea Ferretti - initialization of derived-type
variables should be avoided: it is not supported by all compilers.
Please test for unexpected side effects of removal of initial values!


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4695 c92efa57-630b-4861-b058-cf58834340f0
2008-02-13 15:52:51 +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
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
dalcorso b10755de25 ndmx reported to the previous value. It was changed by mistake in the previous
commit.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4300 c92efa57-630b-4861-b058-cf58834340f0
2007-10-03 09:54:37 +00:00
giannozz 75a35c3282 All pseudopotentials of pwscf are read into the "upf" structure and
then copied into the internal modules. This is a first step towards
1) elimination of fixed-dimension atomic pseudopotential arrays,
2) reduction of memory usage by pseudopotentials,
3) cleanup of the pseudopotential mess.
Next steps: 1) the same in CP, 2) replacement of variables in "uspp"
module with an array of "upf" structures.

Beware: calculations using old formats should work as before, but
don't count on it


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4299 c92efa57-630b-4861-b058-cf58834340f0
2007-10-02 16:54:13 +00:00
dalcorso 9021a4b921 Increased ndmx.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4246 c92efa57-630b-4861-b058-cf58834340f0
2007-09-14 16:19:50 +00:00
giannozz 58cc9c49bc Removed a few static arrays with dimension ndmx
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4214 c92efa57-630b-4861-b058-cf58834340f0
2007-09-05 11:00:15 +00:00
degironc a4fe536fa2 missing file, sorry.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4132 c92efa57-630b-4861-b058-cf58834340f0
2007-08-13 16:49:35 +00:00