Commit Graph

76 Commits

Author SHA1 Message Date
ccavazzoni 9cf1e7be53 - removing the dependency of "fft" modules from mp_global,
now all the variables required for fft communication are contained
  in the fft data structure


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7489 c92efa57-630b-4861-b058-cf58834340f0
2011-02-13 10:55:31 +00:00
giannozz b9e599a2a9 Some more smallbox cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7472 c92efa57-630b-4861-b058-cf58834340f0
2011-02-03 17:14:47 +00:00
giannozz 4de2134c36 Cleanup of "small boxes": most of the small-box stuff is contained in a few
modules and in a few files smallbox*.f90


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7471 c92efa57-630b-4861-b058-cf58834340f0
2011-02-03 16:29:37 +00:00
giannozz ac8efea275 Same logic for small box lattice vectors as for the lattice
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7470 c92efa57-630b-4861-b058-cf58834340f0
2011-02-03 07:12:38 +00:00
giannozz 5603993133 Primitive lattice vectors made uniform with PW: now they are stored, divided
by alat, into global variable at(3,3). Local auxiliary vectors a1, a2, a3 are
introduced when convenient in order to reduce the number of changes. Beware
unexpected side effects.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7457 c92efa57-630b-4861-b058-cf58834340f0
2011-01-31 14:47:40 +00:00
ccavazzoni b21befe7aa - task groups variables moved inside fft_type
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7439 c92efa57-630b-4861-b058-cf58834340f0
2011-01-23 18:12:50 +00:00
ccavazzoni cdd884bf1c - eliminated module task groups (subroutines moved to fft modules)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7434 c92efa57-630b-4861-b058-cf58834340f0
2011-01-22 18:58:53 +00:00
ccavazzoni 2184b5e29f - communicator passed as input to gvec init subs
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7403 c92efa57-630b-4861-b058-cf58834340f0
2011-01-16 08:47:47 +00:00
giannozz 59617dd793 Almost final merge of G-vector generation between PW and CP:
- Grid dimensions for both dense and smooth grids are in Modules/griddim.f90
- Variables describing  G vectors and their mapping onto FFT grids (both
  dense and smooth) are in Modules/recvec.f90
- FFT descriptors are defined in Modules/fft_types.f90
- Variables describing G-vector distribution across processors are
  contained in Modules/stick_base.f90
- Distribution across processors of G vectors in sticks and planes
  is performed in Modules/stick_set.f90, routine pstickset, which
  also initializes FFT descriptors
- G vectors and their mapping onto FFT grids are calculated in
  Modules/recvec_subs.f90 (routine ggen: a modified version of PW one,
  replacing the CP one ggencp)
Testing is very limited but given the kind of modifications there should
be no major problem, I hope.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7384 c92efa57-630b-4861-b058-cf58834340f0
2011-01-05 16:04:54 +00:00
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 7dc11a6829 More minor CP-PW harmonization
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7370 c92efa57-630b-4861-b058-cf58834340f0
2010-12-29 20:36:15 +00:00
ccavazzoni 39e0a921cd - more band parallelization
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7364 c92efa57-630b-4861-b058-cf58834340f0
2010-12-29 00:18:33 +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
giannozz aacc332b00 Simplification of FFT grid setup - beware unintended side effects
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7358 c92efa57-630b-4861-b058-cf58834340f0
2010-12-28 11:45:56 +00:00
ccavazzoni 03d0ae80a4 - starting parallelization over bands
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7357 c92efa57-630b-4861-b058-cf58834340f0
2010-12-28 00:18:50 +00:00
giannozz 75da20b5f6 Minor simplification and cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7354 c92efa57-630b-4861-b058-cf58834340f0
2010-12-27 21:10:02 +00:00
giannozz 82c310050a Variables related to "small boxes" moved out of general modules into a
specific module CPV/boxgrid.f90. Some misc cleanup.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7352 c92efa57-630b-4861-b058-cf58834340f0
2010-12-27 17:33:53 +00:00
giannozz 3ee0e520b6 More variable unification: module gvecs and gsmooth merged (new name: gvecs),
module gvect, gvecp, reciprocal_vectors merged (new name: gvect)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7348 c92efa57-630b-4861-b058-cf58834340f0
2010-12-24 10:19:22 +00:00
giannozz e03f9c39e5 More CP-PW merge of variables: ei[123] (CP) replaced by eigts[123] PW.
The latter are in module reciprocal_vectors. Old unused vdw code removed.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7347 c92efa57-630b-4861-b058-cf58834340f0
2010-12-23 17:35:05 +00:00
giannozz 639c8952ba MOre minor cleanup: ngwt => ngw_g
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7319 c92efa57-630b-4861-b058-cf58834340f0
2010-12-17 16:05:21 +00:00
giannozz 030c007bed Removal of several variable redirections
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7257 c92efa57-630b-4861-b058-cf58834340f0
2010-11-26 18:12:57 +00:00
giannozz a1b6a09a6d MOre harmonization of variable names
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7250 c92efa57-630b-4861-b058-cf58834340f0
2010-11-23 20:22:57 +00:00
giannozz 60b15869c2 More variable name harmonization
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7249 c92efa57-630b-4861-b058-cf58834340f0
2010-11-23 17:03:37 +00:00
giannozz 9423a35d01 More PW-CP variable-name unification:
nnr/nnrx (CP) => nrxx ; nnrs/nnrsx (CP) => nrxxs
(the other way round would have been preferrable but it was too much work)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7143 c92efa57-630b-4861-b058-cf58834340f0
2010-10-13 18:28:46 +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
giannozz 27b3847371 Do not call initialization for openmp FFT for small boxes if not implemented
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7013 c92efa57-630b-4861-b058-cf58834340f0
2010-08-23 16:51:06 +00:00
ccavazzoni 77dc7c5fd5 - An ad-hoc initialization is required for the OpenMP version of the
fft on the small box


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6982 c92efa57-630b-4861-b058-cf58834340f0
2010-08-17 21:14:39 +00:00
ccavazzoni 00e67046df - Module "ldau" already used in PW, renamed to ldau_cp
in order to avoid problem.
  It would be better to merge the two similar modules,
  and move them into Modules directory.
- Added the possibility to save wave functions as separate
  files (one per task) like in PW.
  This is required by very large simulations were the
  wave functions collect process could take sever minutes.
- Since CP now uses "diropen" and "davcio", CP depends
  from PW, in other words compilation of CP implies
  compilation of PW


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6819 c92efa57-630b-4861-b058-cf58834340f0
2010-06-08 15:18:05 +00:00
giannozz 4efb86a744 mill_g deallocated, reallocated and calculated when needed - may or may not
work, please check


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6420 c92efa57-630b-4861-b058-cf58834340f0
2010-02-16 17:24:57 +00:00
ccavazzoni 0fb135c52b - more cleanups of old fpmd stuff
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6193 c92efa57-630b-4861-b058-cf58834340f0
2009-11-22 08:26:59 +00:00
giannozz 6713dfa674 Internal name of variable outdir in CP is now tmp_dir like in PWscf.
Just a very minor first step towards a cleanup of the current file
and directory mess.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6141 c92efa57-630b-4861-b058-cf58834340f0
2009-11-11 19:10:53 +00:00
giannozz 976fdf6f4e More minor cleanup (this time "harmless", not "harmful"!)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6123 c92efa57-630b-4861-b058-cf58834340f0
2009-11-09 18:53:05 +00:00
giannozz 90a501d84e variables ortho_para and use_task_group moved from control_flags to
mp_global, which seems to me a more appropriate place. Many changes
but little stuff. Hopefully harmful, but no guarantee: please check!


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6122 c92efa57-630b-4861-b058-cf58834340f0
2009-11-09 16:07:19 +00:00
cavazzon 1424a3adc4 - FPMD/CP merging of ions dynamics
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5109 c92efa57-630b-4861-b058-cf58834340f0
2008-08-03 19:04:09 +00:00
cavazzon 7efa25636b - minor changes
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5088 c92efa57-630b-4861-b058-cf58834340f0
2008-07-29 15:32:43 +00:00
umari 1e93168339 *** empty log message ***
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4937 c92efa57-630b-4861-b058-cf58834340f0
2008-05-15 15:06:05 +00:00
cavazzon 9f8ce427b3 - BUG FIX, for norm-conserving pp with non local core corrections.
nlcc_any flag now is computed in readpp together with okvan flag


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4620 c92efa57-630b-4861-b058-cf58834340f0
2008-01-12 14:32:28 +00:00
cavazzon 5136857d1c - cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4568 c92efa57-630b-4861-b058-cf58834340f0
2007-12-28 14:10:02 +00:00
giannozz 7b8c1ad33e Default value for nr1b, nr2b, nr3b is set to 0. The nr*b MUST be provided
for US PP, are completely ignored (box grid is not initialized) for NC PP.
This prevents nasty errors in US PP calculations if nr*b are forgotten


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4045 c92efa57-630b-4861-b058-cf58834340f0
2007-07-18 10:23:06 +00:00
cavazzon 42e937f196 - unused subroutine removed
- more interfaces
- cp/fpmd "from_restart" merged
- cp/fpmd "movecell" merged
- clean-ups


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3836 c92efa57-630b-4861-b058-cf58834340f0
2007-03-05 10:16:05 +00:00
cavazzon 3e4873d52b - fix for LDA+U contribution to the forces
- clean-ups in init and restart


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3826 c92efa57-630b-4861-b058-cf58834340f0
2007-02-28 17:54:38 +00:00
cavazzon 5d3881262a - Task Groups parallelization strategy for CP
generalized to all architectures


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3608 c92efa57-630b-4861-b058-cf58834340f0
2006-12-16 17:27:33 +00:00
giannozz 19b7ba4744 Symmetric indices of variable qfunc, holding the Q(r) functions in
Ultrasoft PPs, merged into a single index. The logic of the index
should be the same as for the other USPP_related variables. Tested
for UPF format, should work for old van and rrkjus formats as well,
but I haven't tested it (tests very welcome).

Why? with default static dimensions, qfunc took 40Mb. Some compilers
(e.g. g95) store a copy of statically dimensioned arrays in objects
and executables, so 'make all' produced *.x for 1Gb or so ...
Apart from this, wasting nonscalable memory should be avoided anyway
in massively parallel machines.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3506 c92efa57-630b-4861-b058-cf58834340f0
2006-11-03 12:21:28 +00:00
cavazzon a31b50db3e - confusing scradir substituted everywhere with outdir,
that for CP now indicates the directory containing
   all outputs


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3326 c92efa57-630b-4861-b058-cf58834340f0
2006-08-12 12:27:56 +00:00
cavazzon c7898d6453 - empty states calculation implemented also for CP
- some more merging
- some dependency removed
- clean-ups


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3190 c92efa57-630b-4861-b058-cf58834340f0
2006-06-22 10:05:15 +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 c021112ee3 - Cray XD1 workaround for large communication
- BGL porting of CP almost complete. New command
  line argument "-ntask_groups" to specify the
  number of task group used in parallelization.
  to generate an executable with BGL extensions,
  in the file make.sys the macro __BGL should
  be specified.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3069 c92efa57-630b-4861-b058-cf58834340f0
2006-05-03 14:19:57 +00:00
cavazzon 6a3a3538c7 - more BGL porting
- some fixes for self interaction correction


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3018 c92efa57-630b-4861-b058-cf58834340f0
2006-04-13 21:38:16 +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 e92ac1f08a - static array substituted with dynamic array, to reduce
memory requirements


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2951 c92efa57-630b-4861-b058-cf58834340f0
2006-03-23 18:00:12 +00:00