Commit Graph

117 Commits

Author SHA1 Message Date
giannozz ab864207ac a) a module displaced from Modules/ to CPV/
b) the fix I introduced some time ago to avoid keeping a large and non
distributed array mill_g wasn't very smart and likely electric fields in
CP were no longer working in CP
c) Misc. cleanup in view of some more CP-PW merge in G-vectors


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7379 c92efa57-630b-4861-b058-cf58834340f0
2011-01-04 18:45:48 +00:00
giannozz f4c60249fe More CP cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7361 c92efa57-630b-4861-b058-cf58834340f0
2010-12-28 20:25:38 +00:00
marsamos 602cd50081 added plugin_arguments and plugin_flags file in modules
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7263 c92efa57-630b-4861-b058-cf58834340f0
2010-11-29 15:59:30 +00:00
giannozz 83e4b9e1c0 More removal of unused stuff
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7217 c92efa57-630b-4861-b058-cf58834340f0
2010-11-15 11:04:15 +00:00
giannozz 730e03dad8 NEB in CP removed - should be re-added following the same logic as for
the PW case


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7216 c92efa57-630b-4861-b058-cf58834340f0
2010-11-15 10:37:32 +00:00
marsamos 33695abf83 added to Modules a module interf and 2 subroutines for
opening and closing the input file including get arg -xmlinput


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7103 c92efa57-630b-4861-b058-cf58834340f0
2010-09-28 14:27:15 +00:00
marsamos f7d76b7315 input xml added to Modules dir. From Simone Ziraldo.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7058 c92efa57-630b-4861-b058-cf58834340f0
2010-09-01 14:24:41 +00:00
marsamos 49a80d0d7f path routines deleted
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7032 c92efa57-630b-4861-b058-cf58834340f0
2010-08-30 12:02:01 +00:00
giannozz f1fbb3f952 Several occurences of real(8) etc converted to real(dp) etc. Routines and
interfaces for fwftt, invfft moved from CPV/ to/ Modules/fft_interfaces.f90.
This will be used soon everywhere in place of calls to cft3, cft3s


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7018 c92efa57-630b-4861-b058-cf58834340f0
2010-08-26 04:23:46 +00:00
marsamos c673310ef8 io part of parallelization on images moved to image_io_routines. First step
for NEB cleaning.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6974 c92efa57-630b-4861-b058-cf58834340f0
2010-08-17 15:39:53 +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 0fdbee1ab6 First attempt towards a simplification of Makefiles. May or may not work in
all cases, but it looks promising


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6371 c92efa57-630b-4861-b058-cf58834340f0
2010-02-08 19:48:43 +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 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
marsamos d212b0c605 add module coulomb_vcut for EXX div (G. Bussi, A. Ferretti, L. Martin-S)
add plugins dir (and related modif to Makefile) for "external applications"
add released wannier90 (from www.wannier90.org) in plugins
small modif exx example
small bug fixed in nscf calc save_in_cbands for compilation with -DEXX


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5927 c92efa57-630b-4861-b058-cf58834340f0
2009-09-13 16:48:24 +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 a13cd1f18b Misplaced routines re-placed, Makefiles updated:
Modules/vxccg.f90 split into atomic/vxcgc.f90 and flib/radial_gradients.f90
Modules/metagga.f90 moved to flib/metagga.f90


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5884 c92efa57-630b-4861-b058-cf58834340f0
2009-09-04 13:40:13 +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 86186c5c7d Small change to the installation mechanism: the list of locations for
modules is provided by the Makefile in each subdirectory, rather than
by make.sys. No big advantage but neater solution than before


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5737 c92efa57-630b-4861-b058-cf58834340f0
2009-07-22 17:18:42 +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 a9b90b1714 The makefile for dft-d wasn't really doing what was expected
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5606 c92efa57-630b-4861-b058-cf58834340f0
2009-06-15 08:19:47 +00:00
obm 5ea11712d8 The "compiler bug" I have mentioned is gone now. Tried both with Intel compiler
10.1 and 11.0. Removing modifications.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5514 c92efa57-630b-4861-b058-cf58834340f0
2009-04-06 11:54:56 +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
obm d5d9929aa8 This is the first iteration in trying to implement a real space treatment of
projectors in USPPs. Hopefully this will allow one to study larger systems.
The modifications are done primarily keeping TDDFPT code in mind
(a branch of QE, you may see detailed explanation in qe-forge which I am trying
to keep tightly integrated). Please do not modify/beautify/make more elegant
 the corresponding subroutines without prior notice, due to their dependencies.
I have tested that the current modifications do not alter the behaviour of pw.x
other than designed with a number of small tests in HG1.
Some Pointers:
-All the new subroutines reside in PW/realus.f90
-A new flag real_space in &electrons control the implementation
-tqr flag is treated seperately.
-The implementation works only for (serial) gamma point single point calculations.
ToDo:
-I have written K point and task groups implementations of most of the corresponding routines, but did not have time to implement.
-Parallelism issues are still to be checked.
-The discrepancy in total energy is <0.002 eV for cutoff of 55Ry/550Ry however,
there are some strange force components. I do not know how this will effect
a possible optimization scheme.

Other:
Trying the compile CVS version in HG1 of sissa, using the "default" compiler
sets, I encountered a very strange compiler bug. Please have a look at
Modules/read_cards.f90 for details. Remove the stupid workaround to your liking.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5493 c92efa57-630b-4861-b058-cf58834340f0
2009-04-02 16:05:09 +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
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 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 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 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
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 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
giannozz 8df6e5b3a5 More removal of static arrays: chi, nchi, lchi, jchi, oc, nchix
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4362 c92efa57-630b-4861-b058-cf58834340f0
2007-10-23 19:47: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
paulatto 08fedbe2f0 SCF with Projector-Augmented Wave Pseudopotential (PAW) routines added.
This means that a lot of routines have been modified and a few files have
been added. During the year several people have contributed to this code,
mainly Guido Fratesi, Ricardo Mazzarello, Stefano de Gironcoli, Andrea Dal
Corso and me (Lorenzo Paulatto).

A brief report of modified or added files follows, further down you will
find a loger report of modifications that was necessary to merge develop_PAW
branch with the current CVS version.

Current version is not 100% functional, but it doesn't brake anything else and
can be used to generate and test PAW pseudopotential.

      *************************************
      *** Brief report of modifications ***
      *************************************
Modified files:
PW/clean_pw.f90
PW/electrons.f90
PW/print_clock_pw.f90
PW/hinit0.f90
PW/potinit.f90
PW/newd.f90
PW/summary.f90
PW/setup.f90
PW/read_pseudo.f90
PW/init_us_1.f90
PW/init_run.f90
PW/mix_rho.f90
atomic/atomic_paw.f90
atomic/write_paw_recon.f90
atomic/ld1_writeout.f90
atomic/write_resultsps.f90
atomic/ld1inc.f90
atomic/ld1_readin.f90
atomic/gener_pseudo.f90
atomic/parameters.f900
atomic/run_pseudo.f900
atomic/set_rho_core.f90
atomic/pseudovloc.f90
Modules/read_upf.f90
Modules/uspp.f90
Modules/pseudo_types.f90
Modules/parameters.f90

Added files:
PW/grid_paw_routines.f90
PW/rad_paw_routines.f90
Modules/grid_paw_variables.f90
Modules/read_paw.f90

Added files that will be removed:
PW/rad_paw_trash.f90
PW/paw_xc.f90

Examples:
examples/PAWexample contains a full test of PAW pseudopotential
for Oxygen. The test consist in these tasks:
 - 2 norm conserving, 2 US and 4 PAW pseudopotentials are
   generated and tested in ld1
 - pw test for an isolated O atom at different cutoffs
 - pw test for an O2 molecule at different O-O distance
please read examples/PAWexample/README for (a few) details.

NOTES:
1. new modifications to atomic_paw (and related) from ADC have been rolled
   back, as they were breaking a lot of things, I will reintroduce them
   later when I am sure that everything works properly.
2. the files PW/paw_xc.f90 and Modules/rad_paw_trash.f90 will be removed in
   the next few weeks.

TODO:
1. use new ld1 XC code as much as possible, and remove legacy XC routines
   from rad_paw_routines
2. full self-consistency with radial energies
3. make new Harris-Foulkes estimate paw-aware
4. provide some kind error estimate
5. FORCES and stress!! (require symmetrization of becsums)
6. cleanup

    ************************
    *** merge of PW code ***
    ************************
Versions notation:
OLD=version from 2 years ago used as reference to generate the patches
NEW=CURRENT=current trunk version
PAW=current develop_PAW version

Note: pseudo-potential input and allocation routines changed
      a lot in the last years, this is a diagram:
OLD:PW/readin ~~> PAW:PW/read_pseudo --> disappears
pops out --> PAW:PW/readin ~~> NEW:PW/read_pseudo

added files:
Modules/read_paw.f90    (contains module read_paw_module with subroutines
                         paw_io nullify_pseudo_paw, allocate_pseudo_paw and
                         deallocate_pseudo_paw previously in removed file
                         Modules/readpseudo.f90. Also contains module
                         paw_to_internal with subroutine set_pseudo_paw,
                         previously in upf_to_internal.f90)
PW/paw_xc.f90           (contains OLD=PAW xc and gcxc routines as adapting paw
                         grid code to use new routines was very error prone and
                         quite worthless, as it has to be removed anyway)

Conflicts reported by CVS during merge:
DONE */Makefiles                    (all replaced with new, redone by hand)

DONE  flib/functionals.f90          (nothing to do)

DONE Modules/functionals.f90        (RNV == replaced with NEW version)
DONE Modules/atom.f90               (trivial: duped rgrid)
DONE Modules/autopilot.f90          (trivial)
DONE Modules/bfgs_module.f90        (RNV)
DONE Modules/cell_base.f90          (RNV)
DONE Modules/check_stop.f90         (RNV)
DONE Modules/constants.f90          (RNV)
DONE Modules/constraints_module.f90 (RNV)
DONE Modules/energies.f90           (RNV)
DONE Modules/input_parameters.f90   (RNV)
DONE Modules/ions_base.f90          (RNV, has 3 new subs)
DONE Modules/ions_nose.f90          (RNV)
DONE Modules/parameters.f90         (actually RNV)
DONE Modules/path_base.f90          (RNV)
DONE Modules/path_opt_routines.f90  (RNV)
DONE Modules/path_reparametrisation.f90 (RNV)
DONE Modules/path_variables.f90     (RNV)
DONE Modules/pseudo_types.f90       (cleaned double def of paw_t)
DONE Modules/read_cards.f90         (RNV)
DONE Modules/read_namelists.f90     (checked and RNV)
DONE Modules/uspp.f90               (trivial)
DONE Modules/xml_io_base.f90        (RNV)

DONE PW/read_pseudo.f90             (merged by hand with PAW PW/readin)

DONE PW/bp_calc_btq.f90             (trivial)
DONE PW/c_bands.f90                 (actually RNV)
DONE PW/ccgdiagg.f90                (RNV)
DONE PW/cegterg.f90                 (RNV)
DONE PW/cft3s.f90                   (RNV)
DONE PW/cinitcgg.f90                (RNV)
DONE PW/c_phase_field.f90           (RNV)
DONE PW/divide_et_impera.f90        (nothing to do?)
DONE PW/exx.f90                     (RNV)
DONE PW/hinit0.f90                  (easy)
DONE PW/h_psi.f90                   (RNV)
DONE PW/init_run.f90                (easy)
DONE PW/kpoint_grid.f90             (nothing to do?)
DONE PW/newd.f90                    (required mod in newd_paw_grid, CHECK!!)
DONE PW/openfil.f90                 (actually RNV)
DONE PW/paw.f90                     (actually RNV)
DONE PW/punch.f90                   (RNV)
DONE PW/pwscf.f90                   (quite RNV)
DONE PW/set_kup_and_kdw.f90         (RNV)
DONE PW/setup.f90                   (RNV + 2 line merged by hand)
DONE PW/sgama.f9                    (actually RNV)
DONE PW/sgam_at_mag.f90             (actually RNV)
DONE PW/stop_run.f90                (actually RNV)
DONE PW/stres_gradcorr.f90          (actually RNV)
DONE PW/symrho_mag.f90              (nothing to do)
DONE PW/v_of_rho.f90                (RNV)

DONE PW/compute_fes_grads.f90       (RNV)
DONE PW/gradcorr.f90                (RNV)
DONE PW/input.f90                   (RNV)
DONE PW/pw_restart.f90              (RNV)
DONE PW/read_ncpp.f90               (actually RNV)
DONE PW/summary.f90                 (RNV + inserted new PP type)
DONE PW/wfcinit.f90                 (RNV)

the hard ones:
DONE PW/electrons.f90   (adapted code to new syntaxes, a lot of cleanup, removed
                         some PAW junk that can be readded later, removed parts
                         that were applyed twice, or had been removed in trunk,
                         the rhog allocations and usage may need fixes)
DONE PW/mix_rho.f90     (merged tauk and paw additions, a bit of cleanup and smarter
                         variables names)
DONE PW/init_us_1.f90   (qtot redefined with "triangular" index nb,mb-->ijv)

modified for compiling:
Modules/io_files.f90    (depatched)
PW/pwcom.f90            (depatched)
Modules/parameters.f90  (temporary readded cp_lmax = lmaxx+1)
PW/newd.f90             (merge was wrong, redone mostly by hand)
PW/read_ncpp.f90        (depatched)
PW/read_pseudo          (small fixes)
PW/sgam_at_mag.f90      (depatched)
PW/sgama.f90            (depatched)
PW/stres_gradcorr.f90   (depatched)

modified for running:
PW/clean_pw.f90         (added call to deallocate_paw_internals)

Modifications to PAW routines:
1. compute_onecenter_charges and compute_onecenter_charges modified to
   comply with new structure of v_xc (in v_of_rho.f90), requiring new
   g-space densities to be saved and computed --> using old xc routines
   as this code will be removed.
2. qrad size has changed, prad and ptrad had to be changed accordingly.
3. several minor modifications to use new radial grid structure.
4. infomsg arguments changed, very funny bug followed.
5. added new routine deallocate_paw_internals, called by PW/clean_pw.f90
   required to run pp.x with more than one q-point(and good programming
   practice)


    *************************
    *** merge of LD1 code ***
    *************************
2nd try: atomic code replaced with current version, then merge by hand
the files that are used by paw subsystem:
* atomic_paw.f90        (replaced with most recent version from develop_PAW
                         routine us2paw and paw2us taken from newer trunk
                         version, a lot of minor changes.)
* gener_pseudo.f90      (fixes)
* ld1inc.f90            (PAW variables added)
* ld1_readin.f90        (PAW variables added, I am not sure if lpaw should go
                         in input or inputp namelist)
* ld1_writeout.f90      (it was only necessary to add a few lines)
* pseudovloc.f90        (nothing to do)
* run_pseudo.f90        (almost nothing to do)
* set_rho_core.f90      (readded a few lines for lnc2paw)
* write_paw_recon.f90   (nothing to do)
* write_resultsps.f90   (nothing to do: trunk version is more
                         PAW-aware than PAW version)

Main problems were found in subroutines run_pseudo and gen_pseudo,
a little code had to be rewritten to comply with new variable names
and fix with merge.

TODO: fix atomic_paw routines to use minimal allocated arrays insetad
of ndmx sized ones; try to use the pawet as much as possible. Remove
test lines and other garbage. Find a fix for PAW2.

The first week of september Andrea Dal Corso uploaded a few modifications to
the atomic_paw routines. I had to rollback them as the structure of atomic_paw
has changed a lot and reimplementing them is probably easier and definitely
safer than fixing everything. I will do it soon, I swear!

LP


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4257 c92efa57-630b-4861-b058-cf58834340f0
2007-09-18 10:05:46 +00:00
degironc 6da8252f73 a radial_grid_type is introduced in Modules and used in atomic-related part
many changes but results are identical before and after.
sdg


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4127 c92efa57-630b-4861-b058-cf58834340f0
2007-08-12 00:08:53 +00:00
cavazzon 0887dbd282 - changes required to block-like parallelization diagonalization
- dspev and zhpev parallel driver moved to independend module,
  ptoolkit has grown too much!
- new subroutine in ptoolkit for parallel block-like cholesky decomposition
  and triangular matrix inversion (now only for hermitian matrixes)
- new subroutine in ptoolkit for compex matrix multiplication


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4103 c92efa57-630b-4861-b058-cf58834340f0
2007-08-09 20:38:11 +00:00
giannozz 054e721960 Misc pseudopotential cleanup: upf_to_internal merged between CP and PW;
PAW-related stuff extracted and put into the paw module; various checks
moved to more appropriate places; initialization of obsolete variables
lloc and lmax moved elsewhere; variable zp moved to uspp_param.
All PP-reading subroutines (too many) read zp, not zv; zv is set later.
Summary for pseudopotentials unified and purged of printout of
obsolete/unused/unset variables.
PW/readin.f90 renamed to something more suggestive of what it does
(PW/read_pseudo.f90). Module PW/upf_to_internal.f90 moved to Modules/,
routine upf2internal removed from CPV/read_pseudo.f90.
Harmless error in berry phase + a few bad formats in GIPAW fixed.
Dependencies and Makefiles updated.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3851 c92efa57-630b-4861-b058-cf58834340f0
2007-03-18 19:24:56 +00:00
cavazzon 2627a2a3fb - new module that will be used to dump the input
parameters and input layout to an XML file.
  This is useful for building interfaces (especially web-based) to QE


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3816 c92efa57-630b-4861-b058-cf58834340f0
2007-02-26 14:40:33 +00:00
giannozz 8ff3787b51 Dependencies + minor things updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3786 c92efa57-630b-4861-b058-cf58834340f0
2007-02-15 11:53:18 +00:00
degironc 42a12efcc8 The Meta-GGA available on cp.x has been ported to pw.x: scf and forces,
while stress must still be done. So far, NC PP only.
SdG + Koichiro Umemoto


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3779 c92efa57-630b-4861-b058-cf58834340f0
2007-02-13 21:39:20 +00:00
giannozz 783c0d42e1 Variables read in module pres_ai_mod have been added to input_parameters:
the data is read into input_parameters and copied to module pres_ai_mod,
like for all the other input variables. This allows a better separation
between reading and initialization phases, removes many dependencies upon
upon pres_ai_mod. Module pres_ai_mod moved to CPV where it belongs.
Makefiles and dependency files updated. UNTESTED: it may or may not work..


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3597 c92efa57-630b-4861-b058-cf58834340f0
2006-12-12 15:35:11 +00:00
cococ 0ac9a76b68 These modifications are part of the implementation of the finite pressure and
surface tension calculations for isolated systems
----------------------------------------------------------------------
Modified Files:
	Makefile control_flags.f90 input_parameters.f90 make.depend
	read_namelists.f90
Added Files:
	pres_ai_mod.f90
----------------------------------------------------------------------


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3552 c92efa57-630b-4861-b058-cf58834340f0
2006-11-20 20:11:43 +00:00
giannozz f905843c79 reverted to previous version: putting all modules into a library
and loading the library doesn't seem to work


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3444 c92efa57-630b-4861-b058-cf58834340f0
2006-10-09 16:45:50 +00:00
giannozz 61652e343c Objects in PW, PH, CPV are stored into libraries (libpw.a, libph.a,
libcp.a respectively), used to load the executables. This removes
the need to specify all needed objects in many different makefiles.
Works with 95, ifort, xlf. Please let me know if there are problems
with more exotic or lousy compilers.

A few minor things fixed as well.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3428 c92efa57-630b-4861-b058-cf58834340f0
2006-10-03 19:26:15 +00:00
giannozz 3733ffdb94 Old file format and related files deleted, makefiles updated accordingly
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2949 c92efa57-630b-4861-b058-cf58834340f0
2006-03-23 11:00:52 +00:00
degironc bdaafaec2a pw2wannier90 changed so as to conform to new definition of wannier.nnkp file.
Radial part of the projectors still need to be fixed


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2938 c92efa57-630b-4861-b058-cf58834340f0
2006-03-22 17:13:21 +00:00
giannozz dda5f85506 More USPP cleanup (or maybe mess-up) and memory reduction
Only CP compiles right now, the rest is coming soon


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2872 c92efa57-630b-4861-b058-cf58834340f0
2006-03-07 13:26:52 +00:00
giannozz aa7aa03999 - memory usage of arrays qradb, dqrad reduced whenever the maximum number
of beta functions is smaller than the fixed maimum nbrx
- routines for herman-skillman integration moved together to other
  integration routines in flib/ . We should one day decide which one of
  these routines should be used: they all do basically the same thing
- routine reading ultrasoft PP in the old Vanderbilt format moved to
  Modules/. More USPP cleanup coming soon.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2868 c92efa57-630b-4861-b058-cf58834340f0
2006-03-06 10:39:38 +00:00
cavazzon c7bd96d697 - changes needed for blue gene porting
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2867 c92efa57-630b-4861-b058-cf58834340f0
2006-03-05 23:02:36 +00:00