Commit Graph

602 Commits

Author SHA1 Message Date
Paolo Giannozzi d59300e883 make.depend files and related script updated 2020-08-17 19:04:40 +02:00
Paolo Giannozzi e5cff91a5d Incorrect detection of inversion symmetry in phonons fixed (Phil Wang, JHU).
I think a better fix would be to move the detection of the inversion symmetry
into function "copy_sym" (not making assumptions on which operation is the
inversion, and transforming the function into a subroutine) but this must be
done with care and far from a release. The current fix seem to be 100% safe.
2020-08-03 19:20:31 +02:00
Oscar Baseggio b23986d7c1 update the references for sternheimer algorithm 2020-07-29 15:13:55 +02:00
Oscar Baseggio d7a34f1f56 fix noncolinear case
remove error message
clean some routines
2020-07-29 15:13:55 +02:00
Oscar Baseggio 5b1498d9ad fix incdrhoscf_nc call and lr_dvpsi_eels.f90 2020-07-17 12:10:41 +02:00
Oscar Baseggio 9542b0b894 add error message for noncolinear case 2020-07-17 12:10:41 +02:00
Oscar Baseggio 6c6a39cbd7 fix noncolin bug 2020-07-17 12:10:41 +02:00
giannozz aa272a9444 *.pdf, html, txt files updated 2020-07-17 10:44:05 +02:00
giannozz 32a6dbab24 VERSION=git changed to VERSION=6.6 in Makefiles. The documentation machinery
is completely crazy: one has to change the version number in 1001 places
2020-07-17 10:32:01 +02:00
Iurii Timrov 8c1b270e27 Improved documentation and output format of the TDDFPT codes 2020-07-17 07:13:14 +00:00
Oscar Baseggio 00c3664c1a fix the example 2020-07-15 18:10:33 +02:00
Oscar Baseggio c1ade9aaba fix consistency with turbo_spectrum 2020-07-15 18:10:33 +02:00
Oscar Baseggio 5a4c7a8900 correct input description 2020-07-15 18:10:33 +02:00
Oscar Baseggio 9782fb97c4 change sternheimer input 2020-07-15 18:10:33 +02:00
Paolo Giannozzi 11b30f49d7 Module modes brought back to where it belong. Dependencies updated 2020-07-15 07:27:17 +00:00
Iurii Timrov 2616c8a01f 1. Introduced a variable 'calculator' which controls
which algorithm must be used for the calculation of EELS
(Lanczos or Sternheimer). Removed the old logical variable
'sternheimer'.
2. Adapted the output of the Sternheimer calculation to be
as close as possibloe to the output of the Lanczos calculation.
3. Changes in the Doc and README files
4. Updated the Sternheimer example
2020-07-14 17:47:31 +00:00
Oscar 855844dad1 solve make.depend conflict
remove _tpw routines
2020-07-13 16:33:51 +00:00
Iurii Timrov 37f0c34ff4 1) DFT+U+V: moved sc_size to Modules/parameters.f90.
Now, just by changing sc_size it is possible to control the
size of the virtual supercell that is used in DFT+U+V to
generate couples Hubbard_V(i,j). By default, sc_size=1 which
corresponds to 3x3x3. By setting sc_size=2 the supercell
will be 5x5x5. The supercell is determiend as:
(2*sc_size+1) x (2*sc_size+1) x (2*sc_size+1).
Now, the size of Hubbard_V arrays is automatically adjusted
if sc_size is changed in Modules/parameters.f90
2) Other small miscellaneous changes
2020-07-08 19:05:00 +00:00
Paolo Giannozzi 4879e28738 TDDFPT and qrad interpolation
Small problem in TDDFPT, coming from recently introduced changes in the way
q-G are interpolated: there was a missing factor 2pi/a in qmod(1)
2020-07-06 12:47:48 +02:00
Iurii Timrov d6252e8633 Bug fixes:
1) Hubbard force and stress was crashing with gfortran
2) PHonon and TDDFPT was crashing in the noncollinear case
2020-07-03 17:40:46 +00:00
Paolo Giannozzi 6147076521 Cleanup of symmetrization in real space:
- subroutine "ruotaijk" deleted and replaced by "rotate_grid_point", that does
  quite the same thing but requires on input the symmetry operation in "scaled"
  form, that is, suitable for directly transforming FFT grid point indices.
- subroutine "scale_sym_ops" added: trasforms rotation matrices and fractional
  translations into "scaled" form, checking their consistency with the FFT grid.

Advantages: slightly cleaner, definitely safer, faster.

Usage: define local variables ftau, s_scaled as (for instance):
  integer :: ftau(3,nsym), s_scaled(3,3,nsym)
Initialize ftau and s_scaled (nr1,nr2,nr3 for the chosen FFT grid):
  call scale_sym_ops (nsym, s, ft, nr1, nr2, nr3, s_scaled, ftau)
Then for sym.op. "isym", the rotated (ri,rj,rk) of grid point (i,j,k) is
       call rotate_grid_point( s_scaled(1,1,isym), ftau(1,isym), &
                               i, j, k, nr1, nr2, nr3, ri, rj, rk )
BEWARE: should be safe but it is untested for sym_band and pw2wannier
2020-06-09 15:03:34 +02:00
giannozz 1b072fbc4f First compiling version of QE with initial "pseudolib" in upflib/.
Most of the changes consist in small updates to Makefile and make.depend and
in the replacement of module "parameters" with "upf_params" whenever variables
lmaxx and lqmax are USEd. Routine "read_pseudo" moved back to Modules/;
"simpsn" moved to upflib/; a copy of "matches" temporarily added to upflib/

Note that everything compiles (except EPW) but nothing has been tested yet!
2020-04-25 19:13:15 +00:00
Stefano de Gironcoli 5297840020 make box0, box_s,box_e public to be used also outside the module, for instance in lr_apply_liouvillian 2020-04-24 11:37:17 +02:00
Paolo Giannozzi 21fe34060c Interpolation table in G space
Currently the interpolation table for USPP Q functions computes q_i=Q(|G_i|) on
a grid of equally spaced |G_i| ***in units of 2\pi/a0***. As a consequence, the
number of points of the grid for a given cutoff depends upon the size of the
cell (noticed by Anton Kozhevnikov). This does not make sense: the Q functions
are atomic-like quantities and the maximum |G| depends upon the cutoff.
I moved the interpolation table from 2\pi/a0 units to atomic units, as it is
done everywhere else in QE. I am less and less convinced that storing k-points
and G-vectors in 2\pi/a0 units is a good idea, by the way.

BEWARE: this patch changes the behavior of routines init_us_1 and qvan2,
has the potential to break external codes that use QE routines.
2020-03-12 22:05:47 +01:00
Paolo Giannozzi 617f964bc7 Script for dependencies and make.depend updated 2020-03-12 14:14:13 +00:00
giannozz 1937b0a378 Cleanup: removal of usnused reference to node number (nd_nmbr)
Added a simple way to test what happens with non-parallel file systems
2020-03-04 18:00:00 +01:00
Paolo Giannozzi ba463ee4b0 Forgot one call to incdrhoscf_nc 2020-02-29 19:53:04 +01:00
Carlo Cavazzoni 2af0e629ab Revert "Merge branch 'revert-c25e9f31' into 'develop'"
This reverts merge request !775
2020-02-01 09:14:20 +00:00
Carlo Cavazzoni a91d32bc5f Revert "Merge branch 'develop' of gitlab.com:QEF/q-e into develop"
This reverts commit c25e9f3126
2020-02-01 08:58:44 +00:00
Paolo Giannozzi ffd53eb4da Dependencies updated
Two routines in KS_Solvers/PPCG aligned to latest LAXlib changes
2020-01-28 14:58:32 +00:00
Pietro Delugas 667feee01b Merge branch 'laxlib' into 'develop'
Laxlib

See merge request QEF/q-e!558
2020-01-28 13:49:50 +00:00
Paolo Giannozzi 4076b8003b More zdotc removal (TD-DFPT) 2020-01-26 17:33:25 +00:00
carcava 45522b457e Merge branch 'develop' into laxlib
Conflicts:
	CPV/src/cglib.f90
	CPV/src/cplib.f90
	CPV/src/ldaU.f90
	CPV/src/ldaUpen.f90
	CPV/src/nl_base.f90
	CPV/src/ortho.f90
	CPV/src/wave.f90
2020-01-25 11:01:23 +01:00
Paolo Giannozzi 49ceb8cbc0 More cleanp of unused variables 2020-01-13 14:49:31 +00:00
Paolo Giannozzi 3a5b0df082 More removal of unused references to DDOT 2020-01-09 15:33:14 +00:00
Paolo Giannozzi 1684cad3b9 make.depend updated 2020-01-05 08:56:38 +01:00
carcava 04d9f24e9c Merge branch 'develop' into laxlib
Conflicts:
	PP/src/projwfc.f90
	PW/src/pwscf.f90
2020-01-03 23:24:22 +01:00
Paolo Giannozzi a260109070 See comments in https://gitlab.com/QEF/q-e/merge_requests/721 2019-12-29 20:39:59 +01:00
Eisuke Kawashima f56b70bfc9
Unset executable flag [ci skip] 2019-11-20 15:51:54 +09:00
Carlo Cavazzoni 2013cbf5ed Merge branch 'develop' of gitlab.com:QEF/q-e into develop
Conflicts:
	LAXlib/make.depend
2019-08-10 18:54:58 +02:00
Carlo Cavazzoni 27adf6d690 - more disentanglement with LAXlib, quite some change inside LAXlib, still few outside.
Next we have to deal with the removal of the use descriptors stuff
2019-08-10 18:49:26 +02:00
Paolo Giannozzi ebbb788aa8 No need to add a new variable "isolveph" containing information on the
diagonalization for the phonon code: existing variable "isolve" does the job.
make.depend updated
2019-08-07 19:46:20 +02:00
Carlo Cavazzoni 5fbc6ecc9c - LAXlib made independent from other module 2019-08-07 14:27:02 +02:00
Oscar Baseggio 48ddc7c47e clean TDDFPT/src/lr_readin.f90
change name:
ph_lanczos_iter.f90 -> LR_Modules/lanczos_pseudohermitian.f90
bo_lanczos_iter.f90 -> LR_Modules/lanczos_nonhermitian.f90
2019-08-05 09:36:46 +02:00
Oscar Baseggio 941f69fb1d create ph_lanczos_iter.f90 and bo_lanczos_iter.f90;
and move lr_dot.f90 from TDDFPT/src to LR_Modules
2019-08-02 16:48:10 +02:00
Oscar Baseggio 1848bcb906 solve nosym problem in gamma_only case 2019-07-30 16:19:53 +02:00
Oscar Baseggio 0ae593a4d3 now 'nosym' is define from symm_base (before from input_parameter). So
in gamma examples is necessary insert nosym = .true.
2019-07-29 15:29:20 +02:00
Oscar Baseggio 6873ae8500 Fixed a bug in TDDFPT code. now wfcdir is initialized 2019-07-29 15:29:20 +02:00
Paolo Giannozzi d115c07456 References to input_parameters removed 2019-07-14 10:57:37 +02:00
Paolo Giannozzi 0c73b496bc Removal of USE input_parameters
Module input_parameters should be used ONLY to read input variables.
Once variables are read, they must be copied into QE modules and
input_parameters should be no longer used. Morever, input_parameters
is initialized ONLY when input is read, NOT when the data file is read.
2019-07-13 21:23:32 +02:00