Commit Graph

4288 Commits

Author SHA1 Message Date
dalcorso 0748ba7e42 The pseudopotential file is always copied in the punch directory.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4198 c92efa57-630b-4861-b058-cf58834340f0
2007-09-03 06:43:00 +00:00
dalcorso 8459fd6a86 Added the possibility to pseudize the core charge with two bessel function.
(Experimental)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4197 c92efa57-630b-4861-b058-cf58834340f0
2007-09-03 06:40:21 +00:00
dalcorso c6a6955031 Clean up and small change. Now compute_phi stops if the wavefunction has
nodes before r_c.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4196 c92efa57-630b-4861-b058-cf58834340f0
2007-09-03 06:32:31 +00:00
dalcorso c16b2b7c10 Makefile update. make tar and make upf were not working.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4195 c92efa57-630b-4861-b058-cf58834340f0
2007-09-03 06:28:49 +00:00
cavazzon 7e0c0c57e0 - found a call to an MPI sub. without ierr argument, IBM MPI dumps a core,
but not other MPIs!


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4194 c92efa57-630b-4861-b058-cf58834340f0
2007-09-01 14:19:20 +00:00
giannozz 1eb2593ce8 added tests for variable-cell relaxation; tighter convergence threshold
for some tests to get less shaky results (especially for stress)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4193 c92efa57-630b-4861-b058-cf58834340f0
2007-08-31 09:54:41 +00:00
giannozz ba8f4ef5c8 1) incorrect deallocation of a pointer in variable-cell calculations
2) restart in parallel case was likely broken because unit 'iunres'
was not set to its correct value for all processors


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4192 c92efa57-630b-4861-b058-cf58834340f0
2007-08-31 08:19:18 +00:00
kkudin 1479303555 Added new input variables (iq1, iq2, iq3) to the PH code such that it
is now possible to run the PH code for just one k point out of the
full dispersion grid (specified by nq1, nq2, nq3). This way there is
no need to run PW with 'phonon' first for a non-Gamma k point, and
perhaps, there are some other positive (or negative?)  effects that I
am not aware of.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4191 c92efa57-630b-4861-b058-cf58834340f0
2007-08-29 18:55:40 +00:00
dalcorso 958e509fce Introduced two new variables in namelist test. lsdts(nc) is the lsd of
each configuration. Allows to make simultaneously spin-polarized and
spin-unpolarized tests.
frozen_core. If true the code make frozen-core transferability tests.
In the all-electron calculation the core wavefunctions of the first configuration are kept fixed.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4190 c92efa57-630b-4861-b058-cf58834340f0
2007-08-29 14:51:37 +00:00
dalcorso f50dda5e26 Missing routines in previous commit.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4189 c92efa57-630b-4861-b058-cf58834340f0
2007-08-29 09:59:07 +00:00
giannozz caf7b9a70e cp_fpmd: do not write info on "grid box" if absent, fixed an error message
with questionable spelling
fftdrv: use the same scatter algorithm as PWscf (what_scatter=1)
the previous default, what_scatter=0, did not allow nr3x to differ from nr3


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4188 c92efa57-630b-4861-b058-cf58834340f0
2007-08-29 09:37:52 +00:00
dalcorso bf06e0a5ed __OLD_NONCOLIN_GGA reintroduced as default.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4187 c92efa57-630b-4861-b058-cf58834340f0
2007-08-29 07:57:59 +00:00
dalcorso c8d5e50fd7 Added the calculation of the frozen-core energy.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4186 c92efa57-630b-4861-b058-cf58834340f0
2007-08-29 07:09:54 +00:00
ceresoli cb84f0dc10 GIPAW updated to comply with the new radial_grids module. (D.C.)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4185 c92efa57-630b-4861-b058-cf58834340f0
2007-08-28 13:07:34 +00:00
dalcorso b3d5bb38c5 To be fixed: if lpaw is true the decomposition of the total energy is not
calculated, so now it is not printed.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4184 c92efa57-630b-4861-b058-cf58834340f0
2007-08-26 08:49:37 +00:00
dalcorso 910da838e8 Small change. Use pi and fpi from constants module.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4183 c92efa57-630b-4861-b058-cf58834340f0
2007-08-26 08:44:07 +00:00
dalcorso 2f16a8495d Bug fix. Found by Ari Seitsonen.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4182 c92efa57-630b-4861-b058-cf58834340f0
2007-08-25 11:38:10 +00:00
dalcorso d70b46d8a9 Small change to previous check.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4181 c92efa57-630b-4861-b058-cf58834340f0
2007-08-25 08:18:41 +00:00
cavazzon bcd457dace - fix for scalar build in CP, a new variable "ortho_comm_id" was not initialized
properly


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4180 c92efa57-630b-4861-b058-cf58834340f0
2007-08-23 16:54:13 +00:00
dalcorso 23a4121478 Introduced a check to avoid two wavefunctions with the same n,l in
the test configuration.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4179 c92efa57-630b-4861-b058-cf58834340f0
2007-08-23 10:07:34 +00:00
dalcorso 4ebe7f0c1b Clean-up of the routines that calculate the total energy.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4178 c92efa57-630b-4861-b058-cf58834340f0
2007-08-22 17:06:24 +00:00
mostofi 075b5a2493 Exploit symmetry Mkb(m,n)=Mkb(n,m) when using gamma_only branch. AAM.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4177 c92efa57-630b-4861-b058-cf58834340f0
2007-08-22 14:33:45 +00:00
cavazzon 42de5b9020 - cleanups
- another large replicated array eliminated in uptadc
- better definition of distributed matrix leading dimension


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4176 c92efa57-630b-4861-b058-cf58834340f0
2007-08-22 10:25:23 +00:00
cavazzon 8d614f73a6 - cleanups
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4175 c92efa57-630b-4861-b058-cf58834340f0
2007-08-22 10:22:35 +00:00
degironc 0cf7254d4c updated wmass default values.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4174 c92efa57-630b-4861-b058-cf58834340f0
2007-08-21 04:59:26 +00:00
cavazzon b3ceea6176 - missing #endif
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4173 c92efa57-630b-4861-b058-cf58834340f0
2007-08-20 22:13:30 +00:00
cavazzon 1ac70c8ec1 - check for distpara with gamma_only removed
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4172 c92efa57-630b-4861-b058-cf58834340f0
2007-08-20 22:07:27 +00:00
cavazzon b266cbca4c - added a fully distributed memory pcegterg
its usage can be selected specifying
  diagonalization = 'david+distpara'


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4171 c92efa57-630b-4861-b058-cf58834340f0
2007-08-20 22:06:03 +00:00
cavazzon c573204d72 - added a fully distributed memory subroutine pcdiaghg
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4170 c92efa57-630b-4861-b058-cf58834340f0
2007-08-20 22:03:48 +00:00
cavazzon 6296514731 - cleanups
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4169 c92efa57-630b-4861-b058-cf58834340f0
2007-08-20 22:02:08 +00:00
cavazzon 459274f7d7 - small cleanups
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4168 c92efa57-630b-4861-b058-cf58834340f0
2007-08-20 22:01:04 +00:00
cavazzon 1fa62c8355 - changes required by cegterg matrixes parallelization
- cleanups


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4167 c92efa57-630b-4861-b058-cf58834340f0
2007-08-20 21:59:55 +00:00
cavazzon a2de3e8523 - more checks on dimensions.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4166 c92efa57-630b-4861-b058-cf58834340f0
2007-08-20 21:59:10 +00:00
cavazzon 8f0b5fc988 - changes required by cegterg matrixes parallelization
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4165 c92efa57-630b-4861-b058-cf58834340f0
2007-08-20 21:57:33 +00:00
dalcorso 492c3d8f9b Bug fix. Many of the ld1inc variables needed by newd_at.f90 had not been
passed.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4164 c92efa57-630b-4861-b058-cf58834340f0
2007-08-20 14:37:56 +00:00
dalcorso 414726156c In the atomic code, the conversion factor from Ry to eV can
be given in input. It can be used to compare with old papers.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4163 c92efa57-630b-4861-b058-cf58834340f0
2007-08-20 12:23:54 +00:00
dalcorso 2e3460bbee Clean up. More detailed error message.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4162 c92efa57-630b-4861-b058-cf58834340f0
2007-08-20 06:53:47 +00:00
mostofi 35695e0687 Added gamma_only variable to calls to Wannier90 library routines. AAM.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4161 c92efa57-630b-4861-b058-cf58834340f0
2007-08-19 17:36:08 +00:00
cavazzon 1b80ca7a2c - wrong leading dimension used for matrix blocks ( too large! )
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4160 c92efa57-630b-4861-b058-cf58834340f0
2007-08-19 16:20:30 +00:00
cavazzon 0d5a751800 - some compiler (like PGI) does not like unallocated variables
to be passed as dummy argument (I think this is a compiler bug).
  then allocate variable on all procs with size 1


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4159 c92efa57-630b-4861-b058-cf58834340f0
2007-08-19 14:32:33 +00:00
dalcorso 2779fc37c1 A tentative to improve the GGA in the noncollinear case.
The old GGA is still available compiling with the flag __OLD_NONCOLIN_GGA.
This routine is experimental.
(Thanks to G. Sclauzero for useful discussion).


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4158 c92efa57-630b-4861-b058-cf58834340f0
2007-08-19 13:40:53 +00:00
mostofi 0a1e2492a0 Reduce tolerance to which orthogonality of x-axis and z-axis is checked.
AAM.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4157 c92efa57-630b-4861-b058-cf58834340f0
2007-08-19 05:59:07 +00:00
cavazzon acf9de7bea - xlf compiler complains becose the module does not have
the save attribute:
"ld1inc.f90", line 8.0: 1513-191 (S) A variable declared in the scope of a module, grid, that is of a derived type with default initialization, must have the SAVE attribute.

???

I've added the save attribute, it does not hurt anyway.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4156 c92efa57-630b-4861-b058-cf58834340f0
2007-08-18 18:20:37 +00:00
cavazzon 8f0db9caab - fix for serial build
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4155 c92efa57-630b-4861-b058-cf58834340f0
2007-08-18 15:56:13 +00:00
cavazzon 790329ccd0 - new version of reghter ( preghter ) without global replicated
data. Matrixes are distributed across processors.
- to turn on the use of the new algorithm, a new value for
  input parameter "diagonalization", has been introduced:

diagonalization = 'david+distpara'

work like david but use fully distributed memory
iteration loop. Allocated memory scale down with the
number of procs. Procs involved in diagonalization can
be changed with input parameter "ortho_para".
On multi core/CPUs often it is convenient to let only
one core per CPU to work on linear algebra.

User can tune the number of core involved in diag. with
the keyword in electrons namelist:

ortho_para = NN

then the code will use the largest square smaller than NN,
since matrixes are always distributed on a suqre grid of procs.
Note that if NN < 2*nproc, then one proc every two is taken
for parellel diag. The same for NN < 4*proc, one every four
is taken. This is to minimize memory contention on multi core proc.
In example, if you run with 64procs on a 4core CPU cluster,
it may be convenient to specify:
ortho_para = 16
So that only one core per CPU is involved in diagonalization.
Further performance enhancements will be possible using
OpenMP BLAS inside regter/cegter/rdiaghg/cdiaghg (to be implemented)


for the time been, all this is only for gamma_only calculation,
ceghter will follow...


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4154 c92efa57-630b-4861-b058-cf58834340f0
2007-08-18 15:48:07 +00:00
cavazzon 32a9274c93 - new version of reghter ( preghter ) without global replicated
data. Matrixes are distributed across processors.
- to turn on the use of the new algorithm, a new value for
  input parameter "diagonalization", has been introduced:

diagonalization = 'david+distpara'

work like david but use fully distributed memory
iteration loop. Allocated memory scale down with the
number of procs. Procs involved in diagonalization can
be changed with input parameter "ortho_para".
On multi core/CPUs often it is convenient to let only
one core per CPU to work on linear algebra.

User can tune the number of core involved in diag. with
the keyword in electrons namelist:

ortho_para = NN

then the code will use the largest square smaller than NN,
since matrixes are always distributed on a suqre grid of procs.
Note that if NN < 2*nproc, then one proc every two is taken
for parellel diag. The same for NN < 4*proc, one every four
is taken. This is to minimize memory contention on multi core proc.
In example, if you run with 64procs on a 4core CPU cluster,
it may be convenient to specify:
ortho_para = 16
So that only one core per CPU is involved in diagonalization.
Further performance enhancements will be possible using
OpenMP BLAS inside regter/cegter/rdiaghg/cdiaghg (to be implemented)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4153 c92efa57-630b-4861-b058-cf58834340f0
2007-08-18 15:46:00 +00:00
cavazzon 0e720b84b1 - new version of reghter ( preghter ) without global replicated
data. Matrixes are distributed across processors.
- to turn on the use of the new algorithm, a new value for
  input parameter "diagonalization", has been introduced:

diagonalization = 'david+distpara'

work like david but use fully distributed memory
iteration loop. Allocated memory scale down with the
number of procs. Procs involved in diagonalization can
be changed with input parameter "ortho_para".
On multi core/CPUs often it is convenient to let only
one core per CPU to work on linear algebra.

User can tune the number of core involved in diag. with
the keyword in electrons namelist:

ortho_para = NN

then the code will use the largest square smaller than NN,
since matrixes are always distributed on a suqre grid of procs.
Note that if NN < 2*nproc, then one proc every two is taken
for parellel diag. The same for NN < 4*proc, one every four
is taken. This is to minimize memory contention on multi core proc.
In example, if you run with 64procs on a 4core CPU cluster,
it may be convenient to specify:
ortho_para = 16
So that only one core per CPU is involved in diagonalization.
Further performance enhancements will be possible using
OpenMP BLAS inside regter/cegter/rdiaghg/cdiaghg (to be implemented)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4152 c92efa57-630b-4861-b058-cf58834340f0
2007-08-18 15:45:43 +00:00
mostofi 32465f37d4 Modifications to make pw2wannier90 compatible with gamma_only branch of pw.
Arash Mostofi, Stefano de Gironcoli.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4151 c92efa57-630b-4861-b058-cf58834340f0
2007-08-18 14:24:52 +00:00
dalcorso ca9c3ef34a Added the possibility to deal with strongly diverging scattering
wavefunctions. (Really experimental, use with care)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4150 c92efa57-630b-4861-b058-cf58834340f0
2007-08-18 06:42:15 +00:00
dalcorso 6850e6091d In the lsda case write the up and down all-electron wavefunctions in two
separate files.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4149 c92efa57-630b-4861-b058-cf58834340f0
2007-08-18 06:34:03 +00:00