Commit Graph

540 Commits

Author SHA1 Message Date
timrov 80fcd1842c TDDFPT: In previous commit I forgot to change the sign in one routine, since "orthogonalize" applies -P_c^+, but I needed +P_c^+.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12226 c92efa57-630b-4861-b058-cf58834340f0
2016-03-19 19:25:02 +00:00
timrov 613ee5577a Several changes:
1) Added a flag dpsi_computed in the subroutine orthogonalize.f90 in LR_Modules. The meaning of this flag is described in the header of that routine. It was needed to generalize this subroutine. In short, this flag controls whether S*evq was already computed before or it must be computed inside of orthogonalize. If this idea does not look good for someone, then a better strategy should be found. I decided to introduce this new flag in order to make minimal changes in the PHonon code. 
2) TDDFPT: The use of lr_ortho (which is a modified version of orthogonalize.f90) was replaced in several places by orthogonalize. Still in several places of the turboDavidson code there are calls to lr_ortho, which should be replaced by orthogonalize if possible. In the future lr_ortho should be removed and orthogonalize should be used instead. This is done for the sake of unification of the linear response codes in QE.
3) TDDFPT: The orthogonalization to the valence states manifold (orthogonalize) has been moved from lr_lanczos to lr_apply_liouvillian, which is now in correspondance with the definition of the Liouvillian superoperator implemented in lr_apply_liouvillian. USPP is a special case, and hence the property S^-1 P_c^+ = P_c S^-1 has been used to make such a move of the call to orthogonalize (old call to lr_ortho).


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12225 c92efa57-630b-4861-b058-cf58834340f0
2016-03-19 19:04:05 +00:00
timrov f8ef304503 - revert usage of INTENT(IN) for FFT data type in TDDFPT
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12210 c92efa57-630b-4861-b058-cf58834340f0
2016-03-13 16:56:30 +00:00
timrov 0ed5e28a85 TDDFPT was not compiling after recent changes in FFTXlib. Now it compiles.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12208 c92efa57-630b-4861-b058-cf58834340f0
2016-03-13 13:52:06 +00:00
timrov 01bf571bd4 The TDDFPT module is no longer dependent on PHonon. All the dependencies were moved to LR_Modules.
Further reunification of TDDFPT with the routines in LR_Modules can and should be done.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12183 c92efa57-630b-4861-b058-cf58834340f0
2016-02-28 15:47:13 +00:00
timrov f68259ade0 Deleting the old copy of setqmod.f90 from PHonon
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12182 c92efa57-630b-4861-b058-cf58834340f0
2016-02-28 14:07:43 +00:00
timrov 2673f7b421 Remove the dependence from the PHonon variable
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12179 c92efa57-630b-4861-b058-cf58834340f0
2016-02-28 13:59:38 +00:00
timrov f1be423d66 Moved the variables dpqq and dpqq_so from "phus" to "lrus".
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12175 c92efa57-630b-4861-b058-cf58834340f0
2016-02-28 13:04:42 +00:00
timrov a6e3e92c08 Update make.depend
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12174 c92efa57-630b-4861-b058-cf58834340f0
2016-02-28 11:58:14 +00:00
timrov c21589f60e Removed some other dependencies of TDDFPT on PHonon variables (namely, units_ph -> lrwfc, iuwfc).
While doing this, adapted the turboEELS code to use get_buffer instead of davcio.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12173 c92efa57-630b-4861-b058-cf58834340f0
2016-02-28 11:56:59 +00:00
timrov 1b8c581d5f Moved parts of the PHonon code, which compute nbnd_occ and alpha_pv,
from phq_setup.f90 to separate subroutines setup_nbnd_occ.f90 
and setup_alpha_pv.f90 in LR_Modules. The reason for this is always the same:
these parts of PH were duplicated eslewhere (in TDDFPT) and now it is
time to merge them and move to LR_Modules.
Also some small changes in TDDFPT: removing the dependencies on PH variables.



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12172 c92efa57-630b-4861-b058-cf58834340f0
2016-02-28 10:58:15 +00:00
timrov 0bc6bc576f Remove the dependence of TDDFPT on the PH variable 'tmp_dir_phq'
by creating a new variable 'tmp_dir_lr' in TDDFPT.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12169 c92efa57-630b-4861-b058-cf58834340f0
2016-02-27 17:06:59 +00:00
timrov 157e732d14 Update make.depend
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12168 c92efa57-630b-4861-b058-cf58834340f0
2016-02-27 16:35:42 +00:00
timrov 51c86d33ad Moved a part of the PHonon code (which computes the derivative of the XC potential)
from the routine PHonon/PH/phq_setup.f90 to a new routine "setup_dmuxc.f90"
in LR_Modules. The reason for this action is that the same duplicated part of the
code was present in TDDFPT. Now both PHonon and TDDFPT use the same routine in
LR_Modules/setup_dmuxc.f90. 


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12167 c92efa57-630b-4861-b058-cf58834340f0
2016-02-27 16:33:33 +00:00
timrov a289e4337e Update Makefile, make.depend and remove old copies of setup_dgc.f90 and compute_vsgga.f90 from PHonon/PH
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12166 c92efa57-630b-4861-b058-cf58834340f0
2016-02-27 15:41:03 +00:00
timrov a82139b05a Minor changes
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12163 c92efa57-630b-4861-b058-cf58834340f0
2016-02-27 15:24:59 +00:00
timrov 3c64d13f11 Deleting the routine lr_sm1_psi from TDDFPT and updating the Makefiles.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12158 c92efa57-630b-4861-b058-cf58834340f0
2016-02-21 17:04:59 +00:00
timrov 8882c58dcd Restructured the lr_sm1_psi routine (which applies the S^-1 operator to psi) and splited it into two (for q=0 and q/=0).
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12156 c92efa57-630b-4861-b058-cf58834340f0
2016-02-21 16:25:56 +00:00
timrov 495cc700c9 The phonon "mode" is no longer needed in the input for dv_of_drho. Some documentation.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12155 c92efa57-630b-4861-b058-cf58834340f0
2016-02-21 11:29:59 +00:00
timrov 48fdd07972 Moved the call to the routine "addcore" out from the routine "dv_of_drho",
in order to make dv_of_drho independent from the PHonon-specific routines.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12151 c92efa57-630b-4861-b058-cf58834340f0
2016-02-20 18:39:27 +00:00
timrov 96e5da1539 Moved the "lrpa" variable from the module "control_ph" to the module "control_lr".
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12149 c92efa57-630b-4861-b058-cf58834340f0
2016-02-20 17:34:35 +00:00
timrov 7effe72502 Merged the "nlcc_any" of the "nlcc_ph" module with the "nlcc_any" of the "uspp" module.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12148 c92efa57-630b-4861-b058-cf58834340f0
2016-02-20 17:16:16 +00:00
timrov 5444a4fcf0 Update several other examples of TDDFPT
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12131 c92efa57-630b-4861-b058-cf58834340f0
2016-02-14 17:20:02 +00:00
timrov c3069f51f9 Update the example of CH4 with time-dependent Hartree-Fock
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12130 c92efa57-630b-4861-b058-cf58834340f0
2016-02-14 16:52:58 +00:00
timrov dc6637d5e4 Update the Examples of TDDFPT
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12129 c92efa57-630b-4861-b058-cf58834340f0
2016-02-14 16:40:56 +00:00
timrov e229d98f56 Removed the routine "lr_dv_of_drho_eels", which was a modified duplicate of the PHonon routine "dv_of_drho.f90". Now the turboEELS code uses the original PHonon routine. Also removed the obsolete variables "eps" and "clfe". Slightly improved the readability of the routine "dv_of_drho.f90".
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12126 c92efa57-630b-4861-b058-cf58834340f0
2016-02-14 14:27:41 +00:00
timrov c6747c3d2f Removed the option lr_periodic=.true. (i.e. when the perturbation has such a q that it is equal to G), which is not useful (two Lanczos chains are needed, which not at all a gain wrt to the implementation of perturbations with generic q). It was useful only at the early stages of the implementation of EELS in TDDFPT for testing purposes. Removed the routine "lr_read_wf_eels_periodic.f90", which was needed only when lr_periodic=.true. Also removed a very obsolete routine "lr_diagonalise.f90".
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12125 c92efa57-630b-4861-b058-cf58834340f0
2016-02-14 13:50:34 +00:00
timrov 707e58243f TDDFPT routines, which compute the response density, now use the original PH routines, which allows us to delete the duplicated parts of the code. Some documentation of the PH routines.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12120 c92efa57-630b-4861-b058-cf58834340f0
2016-02-14 12:41:19 +00:00
timrov 9849311bf5 In the previous commit I made a typo in the comment: "npw_k" indices were replaced by "ngk" (and not "nkg"). In the code the correct name was used.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12108 c92efa57-630b-4861-b058-cf58834340f0
2016-02-09 14:45:31 +00:00
timrov 2d3a709671 Update of the TDDFPT codes: 1) Since the variable npw_k(:) was merged into nkg(:) in PW,
the same is done in TDDFPT, 2) The indices igk are no longer written to the file 
(unit iunigk), but kept in memory in igk_k, as was done in PW 3) removal of variables 
which are not used.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12107 c92efa57-630b-4861-b058-cf58834340f0
2016-02-09 14:31:51 +00:00
timrov 5fedf6b605 Update make.depend
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12105 c92efa57-630b-4861-b058-cf58834340f0
2016-02-07 15:41:20 +00:00
timrov 6937dd5d57 Moved the debugging subroutines to a more logical place.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12104 c92efa57-630b-4861-b058-cf58834340f0
2016-02-07 15:10:04 +00:00
giannozz f10901cc4a Indices of k+G for all k-points (igk_k) moved from module "realus" to a less
illogical place: module "klist" containing information on k-points. Number 
of plane waves npw_k merged into pre-existing variable ngk. 
Important notes:
- in PWscf only the real-space calculation of <beta|psi> used those variables.
  It should still work but I haven't tested it
- in all other QE packages, only TDDFPT was using those variables. I made them
  pointing to the new ones. It seems to work, but please check
- any other code using those variables should be updated accordingly
- the file with indices (unit iunigk) is still written and it is still used, 
  but it is going to disappear soon: there is no longer any valid reason 
  not to store indices in memory


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12101 c92efa57-630b-4861-b058-cf58834340f0
2016-02-05 16:56:27 +00:00
giannozz 13c8d6d5fb Missing comma in format
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12091 c92efa57-630b-4861-b058-cf58834340f0
2016-02-03 10:01:23 +00:00
giannozz 1fea499fae Since we are in the process of moving stuff around, I think it is a good
moment to get rid of flib/, whose usefulness is far from obvious. The content
of flib/ is now in Modules/. Many makefiles updated and little more. 

Packages using QE routines should just remove links to flib/flib.a.



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12072 c92efa57-630b-4861-b058-cf58834340f0
2016-01-26 12:51:02 +00:00
ccavazzoni b9da770dff - Changes for LAXlib
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12062 c92efa57-630b-4861-b058-cf58834340f0
2016-01-23 20:10:10 +00:00
degironc f997c42b5a set_dbecsum_nc and set_int3_nc extracted from PHonon/PH/set_int12_nc.f90 and moved to LR_Modules as separated files
transform_dbecsum_so.f90 and transform_dbecsum_nc.f90 appendened to set_dbecsum_nc.f90 that calls them
transform_int3_so extracted from PHonon/PH/transform_int_so.f90 and appended to set_int3_nc.f90 that calls it
transform_int3_nc extracted from PHonon/PH/transform_int_nc.f90 and appended to set_int3_nc.f90 that calls it
dependencies updated



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12047 c92efa57-630b-4861-b058-cf58834340f0
2016-01-22 03:00:30 +00:00
degironc 521686bbd6 becp1 variable moved form phus -> lrus
addvscf.f90 moved in LR_Modules (done in previous commit)
updated dependencies and USE statements 



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12046 c92efa57-630b-4861-b058-cf58834340f0
2016-01-22 01:50:14 +00:00
degironc a29d278e13 git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12043 c92efa57-630b-4861-b058-cf58834340f0 2016-01-21 00:57:35 +00:00
degironc 701d3932d5 index of the perturbation moved as las index in int3
now it is

  int3(nhm,nhm,nat,nspin,npert) =  \int Delta V_Hxc Q d^3r

  and similarly for int3_nc, int3_paw
  


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12041 c92efa57-630b-4861-b058-cf58834340f0
2016-01-20 23:42:39 +00:00
degironc 3030e37f01 cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12039 c92efa57-630b-4861-b058-cf58834340f0
2016-01-20 22:17:19 +00:00
degironc 2d4e3fda5a module modes in phcom.f90 split in modes + lr_symm_base in LR_Modules/lrcom.f90
dependencies updated



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12033 c92efa57-630b-4861-b058-cf58834340f0
2016-01-20 14:53:42 +00:00
degironc 6e2d87da8f cg_ph renamed cg_lr and moved to LR_Modules/lrcom.f90
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12029 c92efa57-630b-4861-b058-cf58834340f0
2016-01-20 11:09:35 +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
degironc 57f4c6a4fa ch_psi_all.f90 moved to LR_Modules,
lgamma moved from control_ph -> control_lr
"make all" compiles w/o complaining



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12019 c92efa57-630b-4861-b058-cf58834340f0
2016-01-20 08:13:57 +00:00
degironc 78622ed13a compilation ok with orthogonalize.f90 moved to LR_Modules
module control_ph split into PH/control_ph + a minimal LR_Modules/control_lr 


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12015 c92efa57-630b-4861-b058-cf58834340f0
2016-01-19 22:39:03 +00:00
degironc c436762fe4 dependencies and Makefiles updated so that "make all" compiles
PH/phcom.f90 split in PH/phcom.f90 + LR_Modules/lrcom.f90 that contains
qpoint module 
A number of routines using these variables needed to be modified to explicitely
load qpoint (in addition to phcom)



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12005 c92efa57-630b-4861-b058-cf58834340f0
2016-01-18 22:48:44 +00:00
giannozz 77b40b0552 Unused variables removed
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11995 c92efa57-630b-4861-b058-cf58834340f0
2016-01-15 15:50:07 +00:00
giannozz 6c39109188 More removal of unused variables
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11994 c92efa57-630b-4861-b058-cf58834340f0
2016-01-14 21:02:21 +00:00
giannozz 6b605aa15b TDDFPT aligned to recent commit
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11989 c92efa57-630b-4861-b058-cf58834340f0
2016-01-14 16:45:17 +00:00
spigafi 2f7b0365b4 bin directory removed if distclean invoked
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11938 c92efa57-630b-4861-b058-cf58834340f0
2016-01-05 17:46:53 +00:00
giannozz 5fe04f758e Last occurrence of $ in a write format replaced by advance='no' option
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11908 c92efa57-630b-4861-b058-cf58834340f0
2015-12-16 08:09:14 +00:00
timrov ab338905de TDDFPT: Removing of an obsolete example of Si with USPP. Instead, a new and more demonstrative example of Ag with USPP was already added.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11894 c92efa57-630b-4861-b058-cf58834340f0
2015-12-02 11:55:09 +00:00
timrov 458cc4b3ea Misspelling in the previous commit.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11879 c92efa57-630b-4861-b058-cf58834340f0
2015-11-30 15:50:33 +00:00
timrov 9efd0eddab Misspelling in the previous commit.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11878 c92efa57-630b-4861-b058-cf58834340f0
2015-11-30 15:48:50 +00:00
timrov 20f3830a9b Bugs fixes in the turboEELS code of TDDFPT:
1) The code was not working correctly with only one k point;
2) In the case of metals the weights wk(ikk) must be used instead 
of wg(ikk,ibnd) in sums over k points (courtesy of Tommaso Gorni);
The effect of this bug was small when small smearing was used. 
3) The code was not working correctly with ultrasoft pseudopotentials, 
because there was a missing term in the external potential due to the 
augmentation part (I thank Andrea Dal Corso for helping to solve this problem!). 
This problem was not detected before, because I tested the code on Si and Al, 
which have small augmentation part, whereas Ag is a good benchmark system. 
To this end, I removed the example of Si with USPP and added an example of Ag with USPP. 


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11877 c92efa57-630b-4861-b058-cf58834340f0
2015-11-30 15:38:45 +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
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
timrov 28dc2be693 Reducing memory footprint of TDDFPT: sevc1 array + missing related deallocation (courtesy of Marton Voros).
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11830 c92efa57-630b-4861-b058-cf58834340f0
2015-11-06 09:56:33 +00:00
timrov 2bb4cd089c Fixed a bug in TDDFPT: the keaword 'lrpa' (Random Phase Approximation) was missing in the namelist lr_control for the turbo_lanczos.x code (courtesy of Marton Voros).
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11814 c92efa57-630b-4861-b058-cf58834340f0
2015-10-29 09:33:45 +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
giannozz 7f0c8479a5 Miscellaneous cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11803 c92efa57-630b-4861-b058-cf58834340f0
2015-10-22 16:17:15 +00:00
giannozz aa6b88e518 More missing continuation characters
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11801 c92efa57-630b-4861-b058-cf58834340f0
2015-10-22 16:04:00 +00:00
ustcscgyer a98cd045ff Small change to the memory requirement report.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11800 c92efa57-630b-4861-b058-cf58834340f0
2015-10-22 13:37:04 +00:00
timrov 57402b5430 Updated a reference and an example for turboEELS.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11777 c92efa57-630b-4861-b058-cf58834340f0
2015-10-06 15:44:26 +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
giannozz c0e6474334 Misspell
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11725 c92efa57-630b-4861-b058-cf58834340f0
2015-09-14 17:02:12 +00:00
obm 053cd7cd57 1) A minor issue that broke functionality in TDDFPT is fixed: EELS code was writing more variables to Liouvillian matrix save file the response charge, and chemistry style valence-virtual analysis codes can handle. I modified the corresponding -readers- to compansate for the new variables. The small automated test in Examples directory is designed to warn about such issues. Please use it.
2) I am implementing a method for extracting dielectric function from various sum rules to be used in the real space/ real time FEM/FET code I recently wrote. At the moment it is not working. It should not break anything, but feel free to remove it if it does. 


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11717 c92efa57-630b-4861-b058-cf58834340f0
2015-09-03 01:00:53 +00:00
timrov cd438ceeef Added "make doc" and "make doc_clean" options in the Makefile of TDDFPT. Small fix in INPUT_Lanczos.def
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11667 c92efa57-630b-4861-b058-cf58834340f0
2015-08-04 13:28:39 +00:00
timrov e7ba0deda9 Minor changes
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11580 c92efa57-630b-4861-b058-cf58834340f0
2015-06-17 10:19:29 +00:00
spigafi feaa0c91ed Proper cleaning.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11579 c92efa57-630b-4861-b058-cf58834340f0
2015-06-16 14:28:07 +00:00
giannozz e1738f62e3 Removed distinction between forwards and backward communicators for FFTs on
reduced-cutoff grids. Noew there is a single communicator for the two cases


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11569 c92efa57-630b-4861-b058-cf58834340f0
2015-06-11 15:44:43 +00:00
giannozz 0a72e3ca4a Misspells + removal of unused routine
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11548 c92efa57-630b-4861-b058-cf58834340f0
2015-05-20 16:56:36 +00:00
giannozz 3d01263af6 Routines grid_scatter, cscatter_sym, cscatter_smooth, cscatter_custom, all
replaced by a single interface routine scatter_grid. Should be harmless, but 
it was tested a bit only in PW


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11530 c92efa57-630b-4861-b058-cf58834340f0
2015-05-07 20:34:19 +00:00
giannozz c712255b03 Cleanup of the too many gather/scatter routines, first step:
a single interface "gather_grid" replaces "grid_gather", "gather_smooth",
"cgather_smooth", "cgather_custom". The FFT descriptor is always passed 
as argument. Should be safe but beware: I tested only PW.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11526 c92efa57-630b-4861-b058-cf58834340f0
2015-05-06 16:45:50 +00:00
giannozz ef57da5ef6 Removal of __STD_F95 preprocessing option: compilers that do not accept
allocatable arrays in derived-type structures are obsolete, and moreover,
there is some new code that wouldn't compile


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11514 c92efa57-630b-4861-b058-cf58834340f0
2015-05-05 21:11:38 +00:00
degironc 6f774d6f94 for my peace of mind I renamed
fft_orbital_gamma  -> invfft_orbital_gamma (since it uses invfft!)
bfft_orbital_gamma -> fwfft_orbital_gamma  (since it uses fwfft!)  
fft_orbital_k      -> invfft_orbital_k     (since it uses invfft!)  
bfft_orbital_k     -> fwfft_orbital_k      (since it uses fwfft!)  

I replaced all the istances I could find in the trunk.
Apologies if I missed any.

Stefano dG



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11489 c92efa57-630b-4861-b058-cf58834340f0
2015-04-24 14:21:35 +00:00
giannozz d2f3fb66e3 Cleanup: removal of replicated code and of useless and confusing wrappers.
Everything (including real-space q(r) in TDDFPT, CUDA version) should work 
as before, no warranty though. 


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11484 c92efa57-630b-4861-b058-cf58834340f0
2015-04-22 19:37:51 +00:00
timrov 1e856ab81b Minor changes in TDDFPT
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11457 c92efa57-630b-4861-b058-cf58834340f0
2015-03-24 11:14:46 +00:00
timrov 1ab046733e Implementation of the turboEELS code in the TDDFPT module for calculations of the electron energy loss and inelastic X-ray scattering spectra (see I. Timrov, N. Vast, R. Gebauer, and S. Baroni, Phys. Rev. B 88, 064301 (2013)).
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11454 c92efa57-630b-4861-b058-cf58834340f0
2015-03-23 13:31:01 +00:00
ustcscgyer 6d5d97d194 git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11441 c92efa57-630b-4861-b058-cf58834340f0 2015-03-17 17:39:25 +00:00
ustcscgyer 5f64f996d2 Tiny unimportant changes.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11423 c92efa57-630b-4861-b058-cf58834340f0
2015-03-04 16:52:58 +00:00
ustcscgyer 2d438b216d Fix the compiling problem for the previous update.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11422 c92efa57-630b-4861-b058-cf58834340f0
2015-03-04 15:13:15 +00:00
ustcscgyer 56ee3a9664 A previous bug regarding the discharge with USPP is fixed.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11420 c92efa57-630b-4861-b058-cf58834340f0
2015-03-03 15:17:22 +00:00
timrov d0e1e1c33a Modified the Makefile in TDDFPT/Doc in order to create *.txt, *.xml, and *.html documentation files for the turbo_davidson.x code.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11406 c92efa57-630b-4861-b058-cf58834340f0
2015-02-23 10:58:36 +00:00
timrov 81c663736f Replaced the INPUT_Davidson.txt free-style documentation by the upgraded and improved documentation file INPUT_Davidson.def which respects the standard format of documentation in QE.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11336 c92efa57-630b-4861-b058-cf58834340f0
2015-01-30 11:01:05 +00:00
timrov 83d908e0e1 Update and improvement of the documentation of TDDFPT. Changed some default input parameters from single precision to double precision as they should be.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11335 c92efa57-630b-4861-b058-cf58834340f0
2015-01-30 10:55:48 +00:00
timrov 3bac974825 Bug fix: turbo-Lanczos + hybrids was not working correctly when d0psi_rs = .true.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11331 c92efa57-630b-4861-b058-cf58834340f0
2015-01-29 08:46:48 +00:00
giannozz 09de1510cf make.depend.updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11269 c92efa57-630b-4861-b058-cf58834340f0
2014-11-14 09:51:30 +00:00
ustcscgyer 96be4a1ab5 Makefile is added.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11259 c92efa57-630b-4861-b058-cf58834340f0
2014-11-10 16:15:18 +00:00
ustcscgyer 51ae3b5a28 small fix to the previous update
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11234 c92efa57-630b-4861-b058-cf58834340f0
2014-10-18 15:32:09 +00:00
ustcscgyer a96ffebf22 Add the plotting drho function to Davidson algorithm and a example H2O-PLOTRHO.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11233 c92efa57-630b-4861-b058-cf58834340f0
2014-10-18 15:27:06 +00:00
timrov 13a360d4ab turboTDDFPT now can be used with the Martyna-Tuckerman correction scheme
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11143 c92efa57-630b-4861-b058-cf58834340f0
2014-08-22 14:42:11 +00:00
spigafi 2a3cab08ea GCC complains, logicals must be compared with .eqv. instead of ==
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11136 c92efa57-630b-4861-b058-cf58834340f0
2014-08-07 13:42:08 +00:00
giannozz ab5fe5bc55 make.depend updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11132 c92efa57-630b-4861-b058-cf58834340f0
2014-08-04 16:26:03 +00:00
giannozz 820374c16e Corrected various badly spelled "Angstrom"
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11128 c92efa57-630b-4861-b058-cf58834340f0
2014-08-04 10:15:48 +00:00
ustcscgyer 0d837e32a0 Fix the bug of previous inplementation of shift_d0psi
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11120 c92efa57-630b-4861-b058-cf58834340f0
2014-08-01 17:13:02 +00:00
ustcscgyer 0c1874e948 When calculate d0psi in r-space for hybridfunction, one used to put the molecule in the center of the cell.
Now this is not any more necessary because the shift_cell routine does a trick to shift the wavefunction to the center to calculate d0psi.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11117 c92efa57-630b-4861-b058-cf58834340f0
2014-07-31 23:47:54 +00:00
spigafi 95b10b3afb Removing F90 files generated by PGI preprocess step
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11111 c92efa57-630b-4861-b058-cf58834340f0
2014-07-31 10:47:49 +00:00
timrov 7551661994 Added an example how to use turboDavidson with the Environ module.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11080 c92efa57-630b-4861-b058-cf58834340f0
2014-07-12 12:30:19 +00:00
timrov 2a6938b543 Minor changes in TDDFPT. The turboDavidson code works properly with the Environ module (tested).
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11079 c92efa57-630b-4861-b058-cf58834340f0
2014-07-12 12:28:41 +00:00
giannozz c1b72fa44f Added TB09 functional, from libxc, courtesy of Eric Germaneau.
Added two small files from libxc. Compile with -D__LIBXC, link with libxc:
-L/dir/where/libxc/is -lxcf90 -lxc
User guides updated with a reshuffling of names: contributors to all of QE
(in particular, most functionals) are listed in the user guide of QE and
not in the one of PW. make.depend updated

This is just to avoid that the work done is lost. It should be a first step 
towards better organization of XC functionals. We should seriously consider
one of the following options:
1. move to libxc, getting rid of all duplicated functionals, keeping only
   those that are not available in libxc;
2. add the possibility to use any functional from libxc (currently only a few
   can be used). This may require serious restructuring work in our XC
   functional (il-)logic, that has become clumsy, obscure and redundant


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11075 c92efa57-630b-4861-b058-cf58834340f0
2014-07-08 10:57:02 +00:00
giannozz 44685d2bce Incorrect file name
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11054 c92efa57-630b-4861-b058-cf58834340f0
2014-06-20 21:03:39 +00:00
ustcscgyer 4d32d2c4a4 git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11053 c92efa57-630b-4861-b058-cf58834340f0 2014-06-18 14:48:54 +00:00
ustcscgyer 767f841b23 git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11052 c92efa57-630b-4861-b058-cf58834340f0 2014-06-18 00:50:59 +00:00
ustcscgyer df496d7dec Improved discharging
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11051 c92efa57-630b-4861-b058-cf58834340f0
2014-06-18 00:48:24 +00:00
ustcscgyer c05bf7e3d2 Improved the discharging
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11050 c92efa57-630b-4861-b058-cf58834340f0
2014-06-18 00:33:39 +00:00
ustcscgyer 74dc13d0ef Correct an error for parallel compiler in the previouse version.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11049 c92efa57-630b-4861-b058-cf58834340f0
2014-06-17 23:36:41 +00:00
ustcscgyer b7b4c95538 A very nice new feature "discharging" is added. Now a rather small num_basis_tot can be used.
I believe that with slight increase of calculation cost, the new feather can dramatically 
decrease the memory requirement.



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11048 c92efa57-630b-4861-b058-cf58834340f0
2014-06-17 21:34:16 +00:00
ustcscgyer 3cafea962f git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11045 c92efa57-630b-4861-b058-cf58834340f0 2014-06-14 21:44:38 +00:00
ustcscgyer b22fe12690 A guide for recompiling is added
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11044 c92efa57-630b-4861-b058-cf58834340f0
2014-06-14 21:43:37 +00:00
giannozz 2b20ce53d4 Removed some tabulators
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11039 c92efa57-630b-4861-b058-cf58834340f0
2014-06-10 08:06:17 +00:00
giannozz d99d0c0b2b Removed duplicated routine write_header in Modules/xml_io_base.f90
make.depend and release-notes updated


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11030 c92efa57-630b-4861-b058-cf58834340f0
2014-06-06 12:54:01 +00:00
timrov 226af80db4 Implemented a general k-points option in the routine compute_d0psi_rs, and made cleaner the implementation of the gamma_only case. Also added some comments.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11028 c92efa57-630b-4861-b058-cf58834340f0
2014-06-06 09:10:01 +00:00
timrov 302faf97c2 Modified example in TDDFPT when Environ is used
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11023 c92efa57-630b-4861-b058-cf58834340f0
2014-06-04 12:34:49 +00:00
timrov e37910d228 Removed allocation of Environ arrays in TDDFPT, because it is done in Environ routines
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11022 c92efa57-630b-4861-b058-cf58834340f0
2014-06-04 12:32:43 +00:00
timrov cee26566a0 Implemented a restart option in turbo_Davidson of TDDFPT
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11018 c92efa57-630b-4861-b058-cf58834340f0
2014-05-30 15:45:16 +00:00
timrov 949888cc96 Modified the example for turbo_Davidson of TDDFPT
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11017 c92efa57-630b-4861-b058-cf58834340f0
2014-05-30 15:34:50 +00:00
timrov 662072b144 Fixed a bug: the TDDFPT code was crashing in the parallel execution due to modifications of the Environ part.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11009 c92efa57-630b-4861-b058-cf58834340f0
2014-05-28 13:08:02 +00:00
oliviero 2a98ecc1fa since do_environ is no longer used, no need to pass use_environ
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10978 c92efa57-630b-4861-b058-cf58834340f0
2014-05-16 15:57:29 +00:00
timrov 47dda0593b Modification of the example how to run turboTDDFT with Environ
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10975 c92efa57-630b-4861-b058-cf58834340f0
2014-05-16 13:04:37 +00:00
marsamos 8b66b68deb change do_environ by use_environ
added USE stat. for plugin_flags
added call stat for plugin_arguments
and plugin_arguments_bcast in lr_readin



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10971 c92efa57-630b-4861-b058-cf58834340f0
2014-05-16 10:02:36 +00:00
giannozz c8bb567040 Convert all zdotc to lowercase - may be useful in case preprocessing of zdotc
is needed


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10968 c92efa57-630b-4861-b058-cf58834340f0
2014-05-15 18:16:12 +00:00
oliviero dee37f7dda cleaned Environ input handling, according to the new private input policy
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10953 c92efa57-630b-4861-b058-cf58834340f0
2014-05-09 14:34:46 +00:00
giannozz e1451f6d75 Files make.depend updated
Script generating make.depend temporarily modified so that it doesn't produce 
invalid make.depend files due to references to (missing unless installed)
environ modules
Version number updated to 5.0.99 (got the message?)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10844 c92efa57-630b-4861-b058-cf58834340f0
2014-04-04 09:36:29 +00:00
giannozz 7cbbf88644 A routine reading a few variables from the data file, used only in TDDFPT,
moved there. make.depend updated to prevent compilation errors due to
missing environ-related modules


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10801 c92efa57-630b-4861-b058-cf58834340f0
2014-03-14 12:42:55 +00:00
timrov b02439b842 Calls to Environ routines from TDDFPT routines are now correct (in view of recent changes in the Environ module).
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10799 c92efa57-630b-4861-b058-cf58834340f0
2014-03-13 15:51:29 +00:00
timrov cf767a45db Update of some TDDFPT routines due to changes in the Environ module
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10779 c92efa57-630b-4861-b058-cf58834340f0
2014-02-27 16:47:07 +00:00
timrov 1157578325 Some cleanup due to change in calling the routine PH/commutator_Hx_psi.f90
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10744 c92efa57-630b-4861-b058-cf58834340f0
2014-02-08 19:17:18 +00:00
timrov 2e223afbf9 Adding an example how to run turboTDDFT using the Environ module
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10743 c92efa57-630b-4861-b058-cf58834340f0
2014-02-08 18:33:10 +00:00
timrov 34680997b4 Implementation of dielectric embedding for TDDFPT: now the Environ module can be used with the turboTDDFT code
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10742 c92efa57-630b-4861-b058-cf58834340f0
2014-02-08 18:30:52 +00:00
giannozz 5929f1508d MPI initialization and closing made uniform: all codes start mpi by calling
"mpi_startup" (and this was already true), stop mpi by calling "mp_global_end"


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10646 c92efa57-630b-4861-b058-cf58834340f0
2013-12-23 14:12:05 +00:00
giannozz 7c01062ba0 Final (?) set of changes to the build system, especially for Windows (Axel)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10590 c92efa57-630b-4861-b058-cf58834340f0
2013-11-07 21:06:06 +00:00
giannozz 54aa35ab00 More changes to the build system for MinGW by Axel, more Makefile cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10586 c92efa57-630b-4861-b058-cf58834340f0
2013-11-06 20:45:58 +00:00
giannozz b8ed151b94 Patch from Axel for Windows (mingw) build, plus other minor fixes here and
there, plus more mp_global replaced by specific modules. Xspectra added to
"make all".


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10576 c92efa57-630b-4861-b058-cf58834340f0
2013-11-05 08:32:42 +00:00
giannozz c1f947ba6e make.depend updated + minor format fix
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10568 c92efa57-630b-4861-b058-cf58834340f0
2013-11-03 20:19:48 +00:00
giannozz 95600c8582 More cleanup of parallel modules: mp_global no longer contains references to
variables for the "world" MPI communicator. The latter are to be found in 
world_comm instead. mp_global should be used only to start and to end the
various parallelization levels. Many small but harmless changes: a few 
variables removed or moved to another module in most cases.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10558 c92efa57-630b-4861-b058-cf58834340f0
2013-10-27 09:09:10 +00:00
giannozz 4c269ac75b All references to world_comm removed: all parallelism in QE takes place
inside a single communicator, passed at the very beginning of the calculation


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10550 c92efa57-630b-4861-b058-cf58834340f0
2013-10-23 06:35:17 +00:00
giannozz 475d6b3d0a Two minor fixes by Axel
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10545 c92efa57-630b-4861-b058-cf58834340f0
2013-10-22 07:23:11 +00:00
ustcscgyer afc437db9a git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10536 c92efa57-630b-4861-b058-cf58834340f0 2013-10-16 15:43:03 +00:00
ustcscgyer 31a5cf91e9 d0psi_rs is implemented which calculates d0psi in the real space. This is to temporaryly compromise the problem of calculating this vector with hybrid functionals. It does not promise to give the exact oscillator strength, specially for those high energy transition peaks. Use it only for test purpose !!
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10535 c92efa57-630b-4861-b058-cf58834340f0
2013-10-15 15:18:56 +00:00
ccavazzoni 3667d17bd3 - optional communicator completely removed
- PWCOND was not compiling any more after last branch merging,
  I fix it mapping old to new variables (realus), but I need someone checking it 


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10532 c92efa57-630b-4861-b058-cf58834340f0
2013-10-12 21:32:01 +00:00
giannozz 41c8b628f1 Minor fixes by Axel to reduce the number of compiler warnings - harmless but
too many of them may hide serious warnings


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10524 c92efa57-630b-4861-b058-cf58834340f0
2013-10-10 12:46:35 +00:00
ccavazzoni 288ebfcc42 - more implicit world communicator clean-up
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10522 c92efa57-630b-4861-b058-cf58834340f0
2013-10-09 08:17:40 +00:00
marsamos 6e0553f4e7 irrelevant modif to Makefile for testing merge from tddfpt/TDDFPT
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10521 c92efa57-630b-4861-b058-cf58834340f0
2013-10-08 13:51:15 +00:00
marsamos e8576d8ca9 added ### to TDDFPT/README testing merge from diff repo
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10520 c92efa57-630b-4861-b058-cf58834340f0
2013-10-08 12:33:19 +00:00
marsamos 5225a2c88d testing copy from two diff repo
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10518 c92efa57-630b-4861-b058-cf58834340f0
2013-10-08 09:45:31 +00:00
ccavazzoni 34781504de - more implicit world communicator clean-up
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10511 c92efa57-630b-4861-b058-cf58834340f0
2013-10-06 19:09:46 +00:00
giannozz 041d970f65 More minor MPI changes by Axel:
- adapt mp_abort() to have a mandatory communicator
- remove the unused err_msg string variable
- fix a compilation issue
- update dependencies



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10501 c92efa57-630b-4861-b058-cf58834340f0
2013-10-01 20:04:21 +00:00
ccavazzoni 8e3c312346 - more implicit communicator clean-up
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10500 c92efa57-630b-4861-b058-cf58834340f0
2013-09-30 11:35:20 +00:00
ccavazzoni b1fabb0fd9 - more clean-up about mp call without communicator
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10498 c92efa57-630b-4861-b058-cf58834340f0
2013-09-28 23:32:46 +00:00
ccavazzoni 8b9c1a54d0 - more Axel patches for LAMMPS and QE integration
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10493 c92efa57-630b-4861-b058-cf58834340f0
2013-09-27 14:37:51 +00:00
ccavazzoni 8b8c194ef7 adding explicit communicator in "mp" cals
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10487 c92efa57-630b-4861-b058-cf58834340f0
2013-09-26 20:49:59 +00:00
ustcscgyer c009e5660e Setting if_dft_spectrum=.true. one could calculate the dft spectrum, or somehow called KS spectrum which is defined as:
1. Transition energy is exactly the energy difference between two KS orbitals
2. Transition strength is |<c|r|v>|**2 * \omega

How to use?
1. run turbo_davidson.x with if_dft_spectrum=.true. . you will have a file called ${prefix}-dft.eign
2. run turbo_spectrum.x with td='david', and eign_file="${prefix}-dft.eigen"

This calculation should be very fast. The dorminant calculation cost is lr_calc_R. 



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10444 c92efa57-630b-4861-b058-cf58834340f0
2013-08-22 14:44:22 +00:00
giannozz 3577502a1e make.depend updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10414 c92efa57-630b-4861-b058-cf58834340f0
2013-08-01 16:09:37 +00:00
ustcscgyer d61d070788 git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10405 c92efa57-630b-4861-b058-cf58834340f0 2013-07-30 07:56:55 +00:00
ustcscgyer da7399af27 git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10396 c92efa57-630b-4861-b058-cf58834340f0 2013-07-19 10:45:03 +00:00
ustcscgyer 411a2de744 git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10395 c92efa57-630b-4861-b058-cf58834340f0 2013-07-19 09:21:10 +00:00
ustcscgyer 588399c12a Improve time report
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10387 c92efa57-630b-4861-b058-cf58834340f0
2013-07-16 15:04:31 +00:00
ustcscgyer 8675ac474a Improve the time report
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10386 c92efa57-630b-4861-b058-cf58834340f0
2013-07-16 14:17:05 +00:00
ustcscgyer d06c840413 Improve the time report
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10385 c92efa57-630b-4861-b058-cf58834340f0
2013-07-16 13:28:46 +00:00
ustcscgyer 768a049771 Improve the time report
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10380 c92efa57-630b-4861-b058-cf58834340f0
2013-07-12 11:12:36 +00:00
ustcscgyer 356f54ae64 Improve the time report
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10378 c92efa57-630b-4861-b058-cf58834340f0
2013-07-12 10:07:48 +00:00
ustcscgyer 4d6b563551 git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10374 c92efa57-630b-4861-b058-cf58834340f0 2013-07-11 11:14:45 +00:00
ustcscgyer ada760349f git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10342 c92efa57-630b-4861-b058-cf58834340f0 2013-07-02 10:52:00 +00:00
ustcscgyer 39378cd295 In the turbo_davidson:
Since right now we have little knowledge about how to choose a proper
threshold for the convergence, when the converge arrives 10*conv_thr 
a quasi-converged output is printed out, so user could compare the 
quasi-converged plot with the later converged one in order to decide 
if he can use a larger threshold for the next calculation. 



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10341 c92efa57-630b-4861-b058-cf58834340f0
2013-07-01 16:44:13 +00:00
ustcscgyer 17a880264b Add time report during the iteration to turbo_davidson.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10340 c92efa57-630b-4861-b058-cf58834340f0
2013-07-01 12:02:24 +00:00
ccavazzoni a24db0aa2e - syntax error fix (missing variable dffts)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10336 c92efa57-630b-4861-b058-cf58834340f0
2013-06-25 22:42:46 +00:00
spigafi 49002298d3 - fix for task groups
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10334 c92efa57-630b-4861-b058-cf58834340f0
2013-06-24 13:15:20 +00:00
ustcscgyer b93677aeab Changes to make davidson input less confusingw
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10333 c92efa57-630b-4861-b058-cf58834340f0
2013-06-24 09:45:35 +00:00
ustcscgyer 3700ab0b75 1. Another choice of incresing the calculation speed by burning more memeory is available by using the parameter poor_of_ram2
2. It is now possible to discharge the basis set when it arrives its maximum size, at this  moment discharging involves 4*num_eign times
of lr_apply_lanczos which is not slow, but may not be so satisfying for some very time consuming calculation, for instatnce hybrid
functionals for big systems. A better way of doing it may be considered in the future.

3. Turbo_spectrum is now camparable with Turbo_davidson.



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10321 c92efa57-630b-4861-b058-cf58834340f0
2013-06-17 11:06:08 +00:00
ustcscgyer 96c0db928d There's some machine related syntax error in the last update.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10320 c92efa57-630b-4861-b058-cf58834340f0
2013-06-14 12:46:31 +00:00
ustcscgyer db54c7e51e An update has been done to turbo_spectrum so now it can
take the output from turbo_davidson and re-calculate the spectrum 
with different broadenings. 



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10319 c92efa57-630b-4861-b058-cf58834340f0
2013-06-14 12:16:18 +00:00
ustcscgyer 185fe520d1 A text mistake happened in the last update.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10318 c92efa57-630b-4861-b058-cf58834340f0
2013-06-14 09:27:54 +00:00
ustcscgyer 8d2653971a A document about the INPUT of davidson is added.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10317 c92efa57-630b-4861-b058-cf58834340f0
2013-06-13 11:50:29 +00:00
ustcscgyer 48a47195cc A significant optimization of the RAM use has been done for turbo_davison.
For NCPP, memory requirement is reduced to 1/3 ;
while for USPP, it's reduced to 2/3.

There's another option to reduce the ram use of USPP by another factor of 2 by
setting poor_of_ram=.true., so it requires the same ram as NCPP. The price that
one has to pay is to increase the time of calculation because one has to calculate
s*basis every time one needs it instead of storing all the s*basis vectors. The
induced calcualtion can be neglectable when the size of subspace is small,
but it increases rapidly when the size of subspace is big. For example, when the
size of subspace is about 200, the cal_bec and s_psi calculation will spend more 
than half of the whole calculation time. So think it three times before deciding 
how to choose.



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10316 c92efa57-630b-4861-b058-cf58834340f0
2013-06-13 11:49:46 +00:00
ustcscgyer 167ac6bce3 Report possible RAM use in order to help users to modify the input.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10307 c92efa57-630b-4861-b058-cf58834340f0
2013-06-10 11:18:49 +00:00
ustcscgyer b1dbea44fe Example of davidson was not successfully added in the last version
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10268 c92efa57-630b-4861-b058-cf58834340f0
2013-05-23 08:52:23 +00:00
ustcscgyer fab5140843 An example of Davidson is added to the TD directory
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10265 c92efa57-630b-4861-b058-cf58834340f0
2013-05-22 16:53:00 +00:00
ustcscgyer 347511999b Replacing routine DGEEV with DGEEVX for solving matrice. This is because DGEEV has
problems of compatibility in LAPACK and ESSL while DGEEVX doesn't (hopefully) have 
this problem.



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10264 c92efa57-630b-4861-b058-cf58834340f0
2013-05-22 12:25:33 +00:00
ustcscgyer 8df8f10080 Print out info for Lanczos
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10262 c92efa57-630b-4861-b058-cf58834340f0
2013-05-20 13:00:30 +00:00
giannozz 0485eefb87 make.depend in TD-DFPT updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10259 c92efa57-630b-4861-b058-cf58834340f0
2013-05-19 10:34:57 +00:00
ustcscgyer 799993e0b4 In this version quite big changes are made and many new features are added:
1. Two main big features Pseudo-Hermitian and Davidson-like diagonalization are implemented.
2. Due to the implementation of new features some changes are made regarding reading in and parameter settings, some new files are also created.
3. Among all the changes a quite big one is in the Lanczos.f90 . In the past the first iteration is treated alone and then the iteration starts from
the second iteration. This brings many troubles to Pseudo-Hermitian algorithm. In order to make two methods coexist and look neat in the code, some
changes are made in the iteration structure. Please read the code carefully in order to adapt the new structure before editting Lanczos.f90 .
4. In order to make the code more readable, the code to convert one super vector to its S* is sealed in a routine called lr_apply_s. 
5. Some bugs related to virt read are fixed. 
6. Due to the new structure of the iteration, the charge_response and project calculation may be not reliable. Some work needs to be done in order to 
adapt them with the new structure. At this moment, if these calculations are needed, please use previous version of the code, or use turbo_davidson
in this version instead. By the way, now we have Davidson method, why would you want to calculate the property of a single excitation with Lanczos ? 

  


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10258 c92efa57-630b-4861-b058-cf58834340f0
2013-05-17 14:29:24 +00:00
giannozz 1034059579 Re-adding exx_restart, used in TDDFPT: initialization of exx stuff is
more complex than expected


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10213 c92efa57-630b-4861-b058-cf58834340f0
2013-05-01 12:23:05 +00:00
giannozz 3a55c515ca exx_restart no longer existing
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10212 c92efa57-630b-4861-b058-cf58834340f0
2013-05-01 10:53:06 +00:00
giannozz d6f0c24900 Variable "swfcatom" moved out of module "ldaU" into module "basis". The
latter moved to a separate file called "atomic_wfc_mod.f90". It is slightly 
confusing right now but it will be cleaned up later. No real changes.
More OpenMP parallelization of Hubbard force calculation.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10209 c92efa57-630b-4861-b058-cf58834340f0
2013-04-30 18:09:31 +00:00
giannozz e8a703c6cd There was a name conflict in the previous commit
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10190 c92efa57-630b-4861-b058-cf58834340f0
2013-04-26 15:16:41 +00:00
giannozz bd1f333e47 LDA+U initialization moved out from routine setup.f90 into the lda+U module,
together with lda+U variables extracted from pwcom.f90; stored in a separate 
ldaU.f90 file. Added a yet unused variable "is_hubbard". make.depend update. 
Lot of noise but nothing substantial. 


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10169 c92efa57-630b-4861-b058-cf58834340f0
2013-04-19 14:14:42 +00:00
giannozz b1e79695a1 There is (since a long time) a dangerous confusion in the definition of
"nwordwfc". In PW/ it is "the number of complex words in wavefunctions";
in PP it is twice that much. The first definition is the one used in the
"buffer" stuff for I/O; the second definition is the "historic" one, used
for the old diropn/davcio stuff. One of these days I'll align everybody to
the first definition. Meanwhile, TDDFPT aligned to the new definition.
Please check for collateral damages.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10064 c92efa57-630b-4861-b058-cf58834340f0
2013-03-18 16:23:02 +00:00
obm ab9648a7c2 io_level (which is used for EXX related open_buffer file reading scheme) was
not declared properly.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10057 c92efa57-630b-4861-b058-cf58834340f0
2013-03-14 09:37:08 +00:00
giannozz 2a4b284d07 Changed the "open_buffer" call. It is no longer needed to specify the
maximum number of record. Better to specify with a flag if writing to a
RAM buffer than using tricks such as negative units. BEWARE: may break 
things *but it shouldn't)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10056 c92efa57-630b-4861-b058-cf58834340f0
2013-03-13 21:17:31 +00:00
giannozz 2f1d6fe097 Numeric constant given a name (ry_to_ghz) and moved to constants.f90;
make.depend updated; misc. minor things


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10015 c92efa57-630b-4861-b058-cf58834340f0
2013-02-26 10:03:47 +00:00
giannozz c44dd0535d Further attempt of a I/O cleanup. BEWARE: it may break a number of things.
1) wfc_dir is always set to something sensible: either its value or tmp_dir
2) files containing wavefunctions and the like in pw.x are stored in wfc_dir,
   always; no need to save, modify, reset tmp_dir
3) with the exception of TDDFPT, all other codes do not read wfc_dir. Thus,
   wfc_dir is set to tmp_dir by read_file(), since in any case it is where 
   it is looking for wavefunctions
4) TDDFPT reads and uses wfc_dir; for the time being, wfc_dir is set to
   either its value or to "undefined", in order to keep compatibility with 
   its usage in TDDFPT. The setting is done AFTER read_file is called
May or may not work. I hope it does.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@9965 c92efa57-630b-4861-b058-cf58834340f0
2013-02-12 16:42:54 +00:00
sbinnie efdc49101d Modification required to check_pw.tcl, after the slight change to PWscf output in recent commits. Also an erroneously comitted test output meant the CH4-BOND test was never fully completed (a supplied output was compared to a supplied reference and funnily enough they were always the same...)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@9948 c92efa57-630b-4861-b058-cf58834340f0
2013-02-06 15:20:47 +00:00
sbinnie 97e9ae7e89 Big clean and refactor of lr_main.f90 and lr_charg_resp.f90. Hopefully lr_main should be easier to follow now along with lr_charge_resp. More cleaning of redundant variables to come. Also added in up-to-date GPL headers where they were wrong/missing.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@9938 c92efa57-630b-4861-b058-cf58834340f0
2013-02-05 15:30:16 +00:00
sbinnie 32f1e16c45 Merged espresso-BANDS into trunk. All the changes are the introduction of EXX into turboTDDFT. Some files in trunk seemed to have gained erroneous (and blank) svn:merginfo tags. These have been removed.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@9910 c92efa57-630b-4861-b058-cf58834340f0
2013-01-31 16:03:51 +00:00
sbinnie b9bc157089 turboTDDFPT Documentation updated and converted to QE standard format.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@9903 c92efa57-630b-4861-b058-cf58834340f0
2013-01-30 15:28:28 +00:00
giannozz 13da1bb8f4 Added check to input as suggested - untested
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@9672 c92efa57-630b-4861-b058-cf58834340f0
2012-11-27 10:13:37 +00:00
giannozz 6f7c3830d7 make.depend and scrpt generating them updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@9573 c92efa57-630b-4861-b058-cf58834340f0
2012-10-24 14:31:17 +00:00
sbinnie 3366b68ccd Task groups enabled for turbo_tddfpt. Some limitations still exist. Only availible when using gamma tricks. Also not availible if the groundstate wavefunction includes virtual states.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@9500 c92efa57-630b-4861-b058-cf58834340f0
2012-10-09 16:38:19 +00:00