Commit Graph

2125 Commits

Author SHA1 Message Date
ccavazzoni 491b47d6e6 - removing LA files
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12056 c92efa57-630b-4861-b058-cf58834340f0
2016-01-23 20:04:03 +00:00
giannozz 253e497c21 More explicit variable name and comments to clarify how to activate/deactivate
band parallelization inside h_psi and s_psi. Variable "use_bgrp_in_hpsi" 
should be actually moved in a more appropriate module, since it is related to
how h_psi behaves, not strictly to the parallelization over bands


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12052 c92efa57-630b-4861-b058-cf58834340f0
2016-01-23 11:53:56 +00:00
degironc 101e401714 iit was not a good idea... yet
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12031 c92efa57-630b-4861-b058-cf58834340f0
2016-01-20 13:02:44 +00:00
giannozz e193710eaa Routines invmat, invmat_complex, dinv_matrix, zinv_matrix merged into a small
module invmat. Should be harmless, but please check.



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12028 c92efa57-630b-4861-b058-cf58834340f0
2016-01-20 10:34:27 +00:00
giannozz 9d708045b5 Module gvecw moved to Modules/; variables for modified kinetic energy merged
with PW. There are several other variables that can be merged now, but these 
three were easier and required changes to a very small number of routines.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11983 c92efa57-630b-4861-b058-cf58834340f0
2016-01-13 18:33:08 +00:00
spigafi 53cb74130a Getting ready...
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11956 c92efa57-630b-4861-b058-cf58834340f0
2016-01-08 07:17:06 +00:00
giannozz f9c1971e7c Believe it or not, if a and b are supposedly equal numbers, (a > b) = .T.
for a serial executable, (a > b) = .F. for another serial executable 
on the same machine and compiler, differing only for the FFT used ...


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11939 c92efa57-630b-4861-b058-cf58834340f0
2016-01-05 18:41:58 +00:00
giannozz 995b8ecfeb Extrapolation machinery moved to a module, related variables removed from
control_flags; no other changes. A few updates to make.depend files.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11933 c92efa57-630b-4861-b058-cf58834340f0
2016-01-02 13:24:44 +00:00
giannozz ddea1369cd Comments clarified, added possibility to check file existence only
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11931 c92efa57-630b-4861-b058-cf58834340f0
2016-01-02 09:08:10 +00:00
ferretti 6c47957a2d cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11919 c92efa57-630b-4861-b058-cf58834340f0
2015-12-22 10:47:28 +00:00
ferretti d031d94761 * The local correlation energy of B3LYP hybrid functional wasn't the "true"
one for B3LYP. This caused discrepancies up to of a few tenths of eV
     in Kohn-Sham energies with respect to the "true" B3LYP. VWN is used
     to define the LDA correlation. B3LYP-V1R (B3LYP using VWN_1_RPA instead) 
     has also been added.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11913 c92efa57-630b-4861-b058-cf58834340f0
2015-12-16 22:29:30 +00:00
giannozz 80c8f196b0 A few make.depend files updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11912 c92efa57-630b-4861-b058-cf58834340f0
2015-12-16 21:23:39 +00:00
giannozz 948d5eeddc Routine "qexml_save_history" was activated by a preprocessing flag. Since it
doesn't compile, I deduce that nobody was using it. Since it is going to be 
made obsolete anyway soon, I removed it 


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11905 c92efa57-630b-4861-b058-cf58834340f0
2015-12-15 17:39:19 +00:00
giannozz 0aad3cc84c Removal of unused variables (mostly duplicated CP variables)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11904 c92efa57-630b-4861-b058-cf58834340f0
2015-12-15 17:34:57 +00:00
giannozz 0bf53781cc I find the default printout of local magnetic moments at each step very
irritating


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11882 c92efa57-630b-4861-b058-cf58834340f0
2015-12-01 17:49:12 +00:00
giannozz c11acfbb1d Minor cleanup: variables ldamped, llang, use_SMC merged into and replaced
by already existing variable "calc"


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11874 c92efa57-630b-4861-b058-cf58834340f0
2015-11-28 16:13:56 +00:00
giannozz d19969f005 Some more minor cleanup of the logic of "move_ions"
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11872 c92efa57-630b-4861-b058-cf58834340f0
2015-11-25 22:01:03 +00:00
giannozz 2e35dd89d7 "nstep" should (logically) be the number of electronic and ionic steps done
in the current run, not in all runs if restarting from an incomplete run. 
Fixed for bfgs, plus some comments added, minor simplification of the logic. 


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11866 c92efa57-630b-4861-b058-cf58834340f0
2015-11-23 21:49:46 +00:00
degironc 1e68dc9e4c linear algebra parallelization made independend of its parent communicator by
introducing ortho_parent_comm to be used when addressing the whole group.
linear algebra is now distributed (in PW) inside the pool group (in CPV is left unchanged... are there pools in CPV?). 
mp_global sets ortho_comm as a sub-communicator of intra_pool_comm (used to be intra_bgrp_comm). It can be reverted 
to previous choice by commenting/uncommenting one line

tested on PW/example02 co.rx.in case (both Gamma and K=(000)) with 
  -np 8 -nd 4 -nb 2
that is using 2 bgrp (procs 0123 and 4567) and diagonalizing on 4 procs (0246).
tested also on 
  -np 4 -nd 4 -nb 2
that is using 2 bgrp (procs 01 and 34) and diagonalizing on 4 procs (0123).

some bgrp parallelization added to a few routines. global variables (evc,..) are NOT distributed but some local ones
are and more could be done.




git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11863 c92efa57-630b-4861-b058-cf58834340f0
2015-11-23 00:50:43 +00:00
ccavazzoni adb2110747 - again dependencies
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11861 c92efa57-630b-4861-b058-cf58834340f0
2015-11-21 11:14:56 +00:00
ccavazzoni 0f6b93868d - fix dependencies
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11860 c92efa57-630b-4861-b058-cf58834340f0
2015-11-21 11:08:30 +00:00
ccavazzoni 095077e2e8 - wrong dependency
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11858 c92efa57-630b-4861-b058-cf58834340f0
2015-11-21 10:47:30 +00:00
ccavazzoni fdf7766648 - FFT Modules replaced by FFTXlib
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11857 c92efa57-630b-4861-b058-cf58834340f0
2015-11-21 10:37:48 +00:00
giannozz cafa35d1a5 Maybe I should commit the sources as well and not only the results (together
with make.depend and documentation updates and a correction of a misspell)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11854 c92efa57-630b-4861-b058-cf58834340f0
2015-11-19 17:09:35 +00:00
degironc 92912d8153 band group parallelization slightly modified to make it more flexible, and little
more efficient.

 subroutine init_index_over_band ( comm, nbnd ) that set ibnd_start and ibnd_end
variables requiring comm=inter_bgrp_comm is removed and replaced by
 subroutine set_bgrp_indices ( nbnd, ibnd_start, ibnd_end ) implementing the same
relationships between its arguments but:
 
 - forcing the use of inter_bgrp_comm from the same mp_bands module,

 - returning ibnd_start and ibnd_end as explicit outputs that are not anymore kept
in the module. In this way other quantities can be distributes if needed in any 
given routine without too many non-local effects.

 For compatibility with TDDFPT, that uses the bgrp parallelization and loads
ibnd_start/ibnd_end trhough mp_global module, these two variables are moved in 
a dedicated module mp_bands_TDDFPT included in Module/mp_bands.f90. This is done
to avoid too much invasive changes in a code i don't know well. In this way the 
needed changes are very localized and transparent, the code compiles correctly 
so I think it should work exactly as before. 
In my opinion the two variables should be moved somewhere inside TDDFPT.

 Band parallelization is extended to h_psi(lda,n,m,psi,hpsi) and s_psi routines 
(only when .not.exx_is_active because otherwise it is already used inside vexx)
for generic values of m (of course it gives a speedup only when m is not too small
compared to nbgrp but it works also if m < nbgrp ).

 Compatibility with task groups has not be explored but should not be conceptually
different from how it works in the exx case.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11835 c92efa57-630b-4861-b058-cf58834340f0
2015-11-07 00:06:40 +00:00
giannozz 14d8bd624d gfortran with debugging options doesn't like exp(-200), flagging it as
"erroneous arithmetic operation". Added a check preventing the calculation 
of exp(-x) for x>40, since 1+exp(-x) is not distinguishable from 1 anyway


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11832 c92efa57-630b-4861-b058-cf58834340f0
2015-11-06 16:11:27 +00:00
degironc c5b621f845 wrong communicator was used to collect data inside the band group
intra_pool_comm -> intra_bgrp_comm
they are the same when nbgrp=1



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11827 c92efa57-630b-4861-b058-cf58834340f0
2015-11-05 03:49:57 +00:00
ccavazzoni b861bd3f8a - DFTI "NOT_INPLACE" driver used for a not in place fft
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11815 c92efa57-630b-4861-b058-cf58834340f0
2015-10-29 15:00:47 +00:00
ccavazzoni 780f46c67f - separation of fft data type instances and scatter functions in different modules
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11813 c92efa57-630b-4861-b058-cf58834340f0
2015-10-29 09:08:16 +00:00
ccavazzoni 80cddcfa59 - subtle bug showing up on BGQ and related to task group solved!
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11802 c92efa57-630b-4861-b058-cf58834340f0
2015-10-22 16:07:03 +00:00
giannozz 29f5a76cf0 For some obscure reason, Fermi deson't seem to like mpi_init_thread with
option MPI_THREAD_MULTIPLE, while MPI_THREAD_FUNNELED seems to work ok.
Since the latter case is all we need, I think it is safer to stick to it


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11797 c92efa57-630b-4861-b058-cf58834340f0
2015-10-22 06:54:42 +00:00
giannozz 6b157e3161 Added the (undocumented) possibility to read the cutoff from pseudopotential
files. For future usage, with verified and certified pseudotentials


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11790 c92efa57-630b-4861-b058-cf58834340f0
2015-10-19 19:49:51 +00:00
giannozz bcbb3935f3 The warning on OpenMP FFTs was likely obsolete - please re-introduce it if not
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11785 c92efa57-630b-4861-b058-cf58834340f0
2015-10-12 16:17:11 +00:00
giannozz 7ed15ae287 NaN's in stress computed with nonlocal functionals (vdw-DF), due to division
by zero, typically when nr1x=nr1+1. 
Comment I deemed useful added to hinit1.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11783 c92efa57-630b-4861-b058-cf58834340f0
2015-10-10 15:26:05 +00:00
giannozz 3655cd2b70 Apparently the version number hasn't benn updated in the svn
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11778 c92efa57-630b-4861-b058-cf58834340f0
2015-10-08 20:57:59 +00:00
giannozz a7416c4185 Workaround for XML option -D__XSD with phonons (and likely for other cases
as well): variable "input_xml_schema_file" is by default set to an empty 
string; if not read in input by read_namelist, it is read from environment 
variable QEXML. Far from perfect, maybe "input_xml_schema_file" should be
written to and read from xml data file? 


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11776 c92efa57-630b-4861-b058-cf58834340f0
2015-10-06 12:32:41 +00:00
giannozz 87a4381865 Workaround for Intel 12.1 bug
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11771 c92efa57-630b-4861-b058-cf58834340f0
2015-10-01 13:29:50 +00:00
gborghi 3bcf7aeeec for XSD-XML output: introduced an INQUIRE to check whether the xml input file
to copy into the output exists; an error message is issues in case it doesn't


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11767 c92efa57-630b-4861-b058-cf58834340f0
2015-09-25 11:27:26 +00:00
giannozz 9d97c7ed17 The location of xml input file can be read from environment variable QEXML
(for testing: non need to modify all input files)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11766 c92efa57-630b-4861-b058-cf58834340f0
2015-09-25 08:04:21 +00:00
gborghi 97d862cdf5 -D __XSD protected commit: sample code for writing a file data-file-schema.xml according to the new xml format
defined in qes.xsd schema, collaboration with Schroedinger company


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11763 c92efa57-630b-4861-b058-cf58834340f0
2015-09-24 16:52:50 +00:00
giannozz 0c9876eea7 Preprocessing option __INTEL replaced by __INTEL_COMPILER that the compiler
automatically recognizes. Please verify if clib/stack.c always compile or not.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11761 c92efa57-630b-4861-b058-cf58834340f0
2015-09-24 13:10:28 +00:00
giannozz b5db8d6d76 Standard F2003 calls to: get_environment_variable, get_command_argument,
command_argument_count, flush, are used everywhere instead of wrappers.
Some old versions of compilers may no longer work.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11759 c92efa57-630b-4861-b058-cf58834340f0
2015-09-24 10:24:03 +00:00
spigafi bb0761a565 Fixes for NAG Fortran compiler -- courtesy of Samuel Poncé and Henry Lambert (Oxford)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11748 c92efa57-630b-4861-b058-cf58834340f0
2015-09-22 20:24:28 +00:00
thonhauser f45c44be43 svdW-DF reference added
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11746 c92efa57-630b-4861-b058-cf58834340f0
2015-09-22 14:53:26 +00:00
giannozz 9592f95ef4 Wrappers for iargc, getarg, getenv used everywhere. Next step: replace them
with standard calls if accepted by all relevant compilers


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11744 c92efa57-630b-4861-b058-cf58834340f0
2015-09-21 21:04:37 +00:00
giannozz c914890b4a More fixes for NAG compiler, activated by -D__NAG, for iargc, getarg intrinsic
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11742 c92efa57-630b-4861-b058-cf58834340f0
2015-09-20 09:10:55 +00:00
thonhauser 92b79ab76a xc_vdW_DF.f90: slightly improved check for division by zero
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11736 c92efa57-630b-4861-b058-cf58834340f0
2015-09-17 18:48:35 +00:00
thonhauser a97a3517cd svdW-DF arXiv reference added
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11735 c92efa57-630b-4861-b058-cf58834340f0
2015-09-17 15:55:22 +00:00
spigafi a87d88bf53 Fixes to compile with CRAY compiler.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11728 c92efa57-630b-4861-b058-cf58834340f0
2015-09-16 10:31:43 +00:00
giannozz 5b283141a0 Added check to prevent division by zero. The check is not very sophisticated
but I suspect that the problem arises only for points of the FFT array beyond 
the physical range, where the gradient of rho is exactly zero


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11721 c92efa57-630b-4861-b058-cf58834340f0
2015-09-13 07:58:23 +00:00