Commit Graph

295 Commits

Author SHA1 Message Date
sbraccia ebaf17e04f Added keyword (assume_isolated) to enable the direct calculation of Makov-Payne
correction to the total energy at the end of a self-consistency. An estimate of
the vacuum level is also calculated so that eigenvalues can be properly aligned.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3842 c92efa57-630b-4861-b058-cf58834340f0
2007-03-12 13:50:45 +00:00
giannozz 78b2711efa Velocity rescaling cleanup. There are different keywords for different
kinds of rescaling. The plain 'rescaling' is performed  whenever the
difference between the actual and target T exceeds a given value (tolp).
This is the same for all cases: CP and PW, both fixed- and variable-cell
MD. The previous rescalings of PW get different names:
rescale-v, rescale-T, reduce-T (suggestions for better names are welcome).
The usage of 'tolp' in variable-cell MD is changed and aligned to the
definition used in fixed-cell MD and in CP. Documentation corrected and
updated. Note that the 'langevin' thermostat mentioned in the code is
still undocumented and maybe not implemented.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3837 c92efa57-630b-4861-b058-cf58834340f0
2007-03-05 10:38:15 +00:00
giannozz 72f7024581 Added yet another velocity rescaling, following a recipes by
Berendsen et al (see Eq. 7.59 of Allen-Tildesley):
ion_temperature='berendsen' + yet another input parameter t_rise (in ps)
Fixed (I think) another case of rescaling (delta T > 0)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3828 c92efa57-630b-4861-b058-cf58834340f0
2007-02-28 18:26:11 +00:00
cavazzon 2627a2a3fb - new module that will be used to dump the input
parameters and input layout to an XML file.
  This is useful for building interfaces (especially web-based) to QE


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3816 c92efa57-630b-4861-b058-cf58834340f0
2007-02-26 14:40:33 +00:00
dalcorso e59a041ceb Introduced a new input variable lkpoint_dir. If .false. it does not open
a new directory for each k point.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3793 c92efa57-630b-4861-b058-cf58834340f0
2007-02-19 09:21:42 +00:00
giannozz 8ff3787b51 Dependencies + minor things updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3786 c92efa57-630b-4861-b058-cf58834340f0
2007-02-15 11:53:18 +00:00
ceresoli 21f7d5ebca Splines are disabled by default, but now they are
compiled in. Set spline_ps = .true. in the &system namelist.
(D.C.)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3717 c92efa57-630b-4861-b058-cf58834340f0
2007-01-25 11:42:52 +00:00
cavazzon ee32ea67bb - clean ups, unused old FPMD subroutines and variables removed
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3634 c92efa57-630b-4861-b058-cf58834340f0
2006-12-31 11:05:37 +00:00
umari f603c8c3ed Infamous l_blocking and n_blocking varibales eliminated
P.U.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3631 c92efa57-630b-4861-b058-cf58834340f0
2006-12-30 15:46:11 +00:00
cavazzon d6ab931cd2 - new input keyword: ortho_para
to suggest the number of processors to be used in lambda matrix
  decomposition


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3628 c92efa57-630b-4861-b058-cf58834340f0
2006-12-22 16:50:40 +00:00
cavazzon 80bd402965 - LDA plus U added to CP 3.2,
potentials and energy is ok, on the forces there is still
  some small problems. Further clean ups required.
  Contributed by
  Patrick Sit


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3605 c92efa57-630b-4861-b058-cf58834340f0
2006-12-15 17:58:58 +00:00
giannozz 3a98e2d9d4 More patches from Axel:
- correct an unquoted string (iosys) in PW/input.f90:483
(this was the cause of tonight compilation failere)
- correct a few incorrect format strings
- make more use of the constants module and thus
  provide more consistent units. NOTE, this has some
  numerical changes in the outputs, as in some places
  rather low precision and inconsistent numbers were
  used for unit conversion.
- convert all(?) single precision constants to double
  using the attached little perl program.
  exceptions: efermi.f90 (as it is supposed to be rewritten
  anyways), plotbands.f90 (it uses single precision everywhere,
  which may result in saving a significant amount of memory,
  so i converted the two double precision constants to single).
Unused routine 'set_fft_grid' removed


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3602 c92efa57-630b-4861-b058-cf58834340f0
2006-12-14 08:53:47 +00:00
giannozz 86fd46c179 Variables for pressure are always initialized
Some cleanup of input_parameters


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3600 c92efa57-630b-4861-b058-cf58834340f0
2006-12-13 08:50:19 +00:00
giannozz 783c0d42e1 Variables read in module pres_ai_mod have been added to input_parameters:
the data is read into input_parameters and copied to module pres_ai_mod,
like for all the other input variables. This allows a better separation
between reading and initialization phases, removes many dependencies upon
upon pres_ai_mod. Module pres_ai_mod moved to CPV where it belongs.
Makefiles and dependency files updated. UNTESTED: it may or may not work..


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3597 c92efa57-630b-4861-b058-cf58834340f0
2006-12-12 15:35:11 +00:00
giannozz 19aaac89fa More miscellanous cleanup from Axel:
- disable locales via use of LC_ALL=C in all shell scripts
   (which will hopefully make sorted lists more consistent
    between people running with different locales).
 - remove redundant files from PW, NMR_new, VdW, VIB;
   rename subroutines if their functionality is noI
   unchanged from the original source it was taken from.
 - corresponding updates to Makefiles and dependencies.
 - whitespace cleanups (eleminate remaining tabs).
 - a few more float->DBLE


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3596 c92efa57-630b-4861-b058-cf58834340f0
2006-12-12 11:02:09 +00:00
sbraccia f4171e694c Few improvments of image parallelization algorithm for NEB and SMD (both potential
energy and free-energy calculations): now it works for local file-systems also.
Variables names conflicting with  fortran keywords (target) have been changed.
Clean-up of meta-dynamics code.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3592 c92efa57-630b-4861-b058-cf58834340f0
2006-12-11 14:51:54 +00:00
giannozz d4da64ec0c More cleanup from Axel:
- workaround for gfortran (it is sort of working)
- single precision constants promoted to double precision
- dfloat-> DBLE
- DIMAG ->AIMAG
- DCMPLX->CMPLX
Note that ALL calls to dfloat, dimag, dcmplx have been added recently,
since I removed all of them no more than a few months ago


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3586 c92efa57-630b-4861-b058-cf58834340f0
2006-12-02 17:58:50 +00:00
giannozz 6e55c387ee Axel's patch: removal of unused variables, replacement of variable "index"
with a less dangerous "idx" ("index" is an intrinsic: some compilers may
complain, or even do strange things)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3574 c92efa57-630b-4861-b058-cf58834340f0
2006-11-27 15:06:51 +00:00
cococ 0ac9a76b68 These modifications are part of the implementation of the finite pressure and
surface tension calculations for isolated systems
----------------------------------------------------------------------
Modified Files:
	Makefile control_flags.f90 input_parameters.f90 make.depend
	read_namelists.f90
Added Files:
	pres_ai_mod.f90
----------------------------------------------------------------------


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3552 c92efa57-630b-4861-b058-cf58834340f0
2006-11-20 20:11:43 +00:00
sbraccia 7ea50d8ea2 Input variable tqr meved from control namelist to electrons namelist.
Some clean-up of realus module (many unused variables removed). Introduced a
less rough estimate for the sizes of the buffers. Size of the array qsave
reduced to the very minimum in order to save memory. C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3395 c92efa57-630b-4861-b058-cf58834340f0
2006-09-15 18:35:28 +00:00
umari 3fba1e2cc6 Two new parameters for ensemble DFT
in order to keep fixed the lowest states
P.U.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3389 c92efa57-630b-4861-b058-cf58834340f0
2006-09-14 16:20:46 +00:00
sbraccia 5116aacd55 Clean-up of routines used for meta-dynamics and for the calculation of
free-energy barriers. C.S.


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


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3326 c92efa57-630b-4861-b058-cf58834340f0
2006-08-12 12:27:56 +00:00
cavazzon c6abb92ea4 - new verbosity option: verbosity = 'default+projwfc'
to enable the printing of wave functions projections
  on atomic states.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3324 c92efa57-630b-4861-b058-cf58834340f0
2006-08-11 15:39:37 +00:00
cavazzon 7601c0b617 - more subroutines taken out from modules
- enhanced restart procedure, with disk_io='high'
  more stuff is saved to restart dir, this is required
  for post-processing and pw.x codes.
- wave functions are read following the iotk link, without
  explicitly open the file, this increases the possibility
  for interoperability and backward compatibility.
- added input parameter saverho (to control the saving of charge density),
  disk_io has a more general meaning
- merging of the subroutine that computes dekin stress component
- atomic wave function occupations factors ( "oc" ) now
  are copied to internal "atom" module.
- various cleanups


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3322 c92efa57-630b-4861-b058-cf58834340f0
2006-08-11 08:29:52 +00:00
kkudin a914e9ea61 Added a new thermostat type (nhptyp=3) with a control array 'nhgrp',
allowing fine control over how thermostats are assigned to atoms
 Kostya


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3226 c92efa57-630b-4861-b058-cf58834340f0
2006-06-29 22:43:58 +00:00
cavazzon 9ec273c46c - removed unused variables
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3206 c92efa57-630b-4861-b058-cf58834340f0
2006-06-26 07:43:12 +00:00
sbraccia ffce03b472 Added a new constraint type (bennett projection). Code provided by Guido Roma.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3191 c92efa57-630b-4861-b058-cf58834340f0
2006-06-22 13:15:32 +00:00
sbraccia a3cebe7831 Cleanup. C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3187 c92efa57-630b-4861-b058-cf58834340f0
2006-06-18 20:38:42 +00:00
sbraccia b236c0cc47 Added a logical flag (remove_rigid_rot) used to remove the total torque acting
on the system (useful to simulate an isolated system). Documentation updated.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3180 c92efa57-630b-4861-b058-cf58834340f0
2006-06-15 14:27:14 +00:00
sbraccia 3b9472b1a9 Fixed two bugs (one related to the removal of the prefix.md file, the other to
the extrapolation of the charge) in the restart procedure of a MD run.
Added a control flag in the restart file used to verify if the file contains
consistent information that can be used for post-processing.
Cleanup of unused features and variables.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3163 c92efa57-630b-4861-b058-cf58834340f0
2006-06-07 02:01:57 +00:00
cavazzon c021112ee3 - Cray XD1 workaround for large communication
- BGL porting of CP almost complete. New command
  line argument "-ntask_groups" to specify the
  number of task group used in parallelization.
  to generate an executable with BGL extensions,
  in the file make.sys the macro __BGL should
  be specified.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3069 c92efa57-630b-4861-b058-cf58834340f0
2006-05-03 14:19:57 +00:00
sbraccia c6d1a11311 Added a specific card to set the collective variables used in meta-dynamics.
This allowes for the possibility of setting constraints that are not collective
variables. Example and documentation updated.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3059 c92efa57-630b-4861-b058-cf58834340f0
2006-05-01 01:07:57 +00:00
sbraccia ea0935fb5f Fixed a bug in the definition of the diagonalization thresholds for empty
states. This bug (introduced at the end of May 2005) was responsible for
somehow wrong results in the case of calculations with many k-points.
Cleanup of diagonalization thresholds: wg_set variable removed and btype array
is now set in sum_band.
Added a logical input variable (diago_full_acc) to decide if the empty states
(defined as states with occupation < 1%) have to be converged at full accuracy
or not. Defaul is .FALSE. (I am not sure this is the best choice, comments
appreciated).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3040 c92efa57-630b-4861-b058-cf58834340f0
2006-04-24 17:32:08 +00:00
sbraccia 463d1d0f03 Cleanup of NEB code. Climbing image implemented also for the string method.
Mariginal improvement of the broyden optimisation algorithm. The reference
output of example17 not yet regenerated.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3033 c92efa57-630b-4861-b058-cf58834340f0
2006-04-21 03:44:20 +00:00
giannozz fc3228722f - RRKJ PP in old format: flagging wavefunctions with zero occupancies
as unbound (negative occupancy) had disappeared but it is still needed
  to prevent strange errors
- minor cleanup


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3007 c92efa57-630b-4861-b058-cf58834340f0
2006-04-07 10:39:39 +00:00
cavazzon de345b52c3 - important bug fix, core correction in CP was not properly set,
the bug was introduced with the reorganization of the fft.
- NEB working with CP/FPMD (new calculation fpmd-neb added to check
  all the scf engines)
- Clean-ups


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2993 c92efa57-630b-4861-b058-cf58834340f0
2006-04-02 21:29:28 +00:00
sbraccia b7bd2b52ad Fixed bugs in the allocation of neb/string input arrays. Cleanup of unused
parameters. C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2990 c92efa57-630b-4861-b058-cf58834340f0
2006-04-02 00:28:20 +00:00
sbraccia 1572664412 Fixed a bug in the PLOT_WANNIER card. Dynamical allocation of input arrays for
neb and constraints moved into the appropriate routine.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2984 c92efa57-630b-4861-b058-cf58834340f0
2006-03-31 16:00:17 +00:00
giannozz 052216b669 More static allocations replaced by dynamic ones (nbndxx)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2975 c92efa57-630b-4861-b058-cf58834340f0
2006-03-28 19:43:35 +00:00
sbraccia 9a2dc6cddf Added an input variable to refold the ionic coordinates into the supercell at
each step. Fixed a serious bug in overdamped Langevin dynamics.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2967 c92efa57-630b-4861-b058-cf58834340f0
2006-03-27 21:40:10 +00:00
cavazzon e92ac1f08a - static array substituted with dynamic array, to reduce
memory requirements


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2951 c92efa57-630b-4861-b058-cf58834340f0
2006-03-23 18:00:12 +00:00
cavazzon dd93c6ad14 - group communicator variable substituted with intra_image_comm,
first step needed to parallelize neb over images also for CP.
  Next we need to add the right communicator to all communications
- subroutine reduce substituted everywhere with mp_sum
- mp_sum for array with 4dims added in mp.f90
- workaround for xlf compiler, it has problems compiling file with
  initialization of large array in the definition line,
  see Modules/input_parameters.f90 , initialization moved to
  Modules/read_cards.f90 .


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2946 c92efa57-630b-4861-b058-cf58834340f0
2006-03-23 09:19:43 +00:00
giannozz ca10d9a79f calculation='bands' introduced (but not finished)
leftover stuff from calculation='raman' removed


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2932 c92efa57-630b-4861-b058-cf58834340f0
2006-03-20 22:44:35 +00:00
sbraccia da14a044fe Cleanup of NEB related stuff: unused variables and algorithms have been
removed. C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2858 c92efa57-630b-4861-b058-cf58834340f0
2006-03-01 19:57:03 +00:00
degironc 5298324b44 EXX: improved treatrmet of q+G=0 term
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2789 c92efa57-630b-4861-b058-cf58834340f0
2006-02-08 15:46:21 +00:00
umari 8418ec37e4 Added new paremeters for second Berry's phase electric field
(it's for Raman calculations)

P.U.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2754 c92efa57-630b-4861-b058-cf58834340f0
2006-02-01 17:57:32 +00:00
sbraccia 07fe6e0fa4 New denomination of constraint types (now an identification string is used instead of
an index). Removed the two cases constrained_verlet and constrained_damp: a constrained
dynamics is automatically done if the CONSTRAINTS card is present. Added a keyword to
monitor the value of the constraints during the simulation. In this case the constraints are
not imposed.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2740 c92efa57-630b-4861-b058-cf58834340f0
2006-01-28 22:35:48 +00:00
sbraccia 0155b790f7 Added an input variable to specify the convergence threshold for variable-cell relaxations.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2729 c92efa57-630b-4861-b058-cf58834340f0
2006-01-25 13:33:56 +00:00
silviu 8d7ea2691d Input to cp was updated to include variable tot_magnetization, as an
alternative way of specifying the spin state. [silviu]


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2672 c92efa57-630b-4861-b058-cf58834340f0
2005-12-31 23:41:08 +00:00
giannozz 895a81b518 Electron-phonon calculation using Malgorzata's technique
Still preliminary and undocumented


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2652 c92efa57-630b-4861-b058-cf58834340f0
2005-12-28 10:42:31 +00:00
sbraccia f62c84b580 Constraint on torsional angles implemented. Constraint on planar angle extended to work
also in the case of linear angles (180 degrees). General cleanup.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2634 c92efa57-630b-4861-b058-cf58834340f0
2005-12-21 20:26:08 +00:00
degironc a907073891 EXX should now work in parallel also for (nqx1,nqx2,nqx3) /= (1,1,1)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2607 c92efa57-630b-4861-b058-cf58834340f0
2005-12-19 13:00:38 +00:00
silviu 69a8cb0fa5 Added input variable to namelist SYSTEM: multiplicity. It is redundent in
principle since the same information can be specified with nelup and neldw.
However in systems containing many atoms of various kinds it can help reduce
human errors. If unspecified, this parameter is ignored. [silviu]


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2578 c92efa57-630b-4861-b058-cf58834340f0
2005-12-12 08:03:28 +00:00
silviu aba8a4d2da Added an input variable to SYSTEM namelist: tot_charge. The same information
could also be specified with a proper choise of nelec. The later option however
is more sensitive to human errors, especially when working on large systems
containing diverse elements (or when working in the middle of the night...) [silviu]


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2577 c92efa57-630b-4861-b058-cf58834340f0
2005-12-12 00:17:09 +00:00
sbraccia bd5151b0a9 Extensive clean-up and reorganisation of meta-dynamics. The algorithm
implemented is the one described in PRL 92, 17061 (2004) and, at present, only
works at zero temperature.
The restart files are now written in xml format and are saved ina sub-directory
of the main "save" directory.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2562 c92efa57-630b-4861-b058-cf58834340f0
2005-12-07 04:22:30 +00:00
cavazzon 721359a455 - some updates about SIC for fpmd calculations
contributed by F.Baletto


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2559 c92efa57-630b-4861-b058-cf58834340f0
2005-12-06 14:55:23 +00:00
degironc c8653b45fe PWscf: defining variable tqr=.true. in system namelist, Augmentations
charges are computed in real space only in spheres around the atoms and
these patches are added to rho on the dense fft grid.

Affected routines: addusdens and newd.

Should scale linearly with system size, as opposed to the quadratic
scaling of the G-space implentation.

Experimental version:
 - no forces nor stress yet.
 - parallel version to be tested
 - not to mention phonon and the other codes ...

DISCLAIMER

There are accuracy issues to be understood better, we may need properly
modifies pseudopotentials in order to avoid (or reduce) errors when
ecutrho is still insufficient to describe all Fourier components of the
augmentation charge.
In this case (that is nearly always) also the usal G-space has errors
(negative charges for molecules and surfaces, for instance) but they are
usually small and we are used to live with them.
Some experience is needed to understand the relevance of the error related
to R-space augmentation charges.
CP has R-space augmentation with small-boxes.
They also produce some different, usually small, errors.
I think (I may be wrong) this is the origin of the fact that sometime PWscf
and CP total energies are not exactly the same.

SdG and Antonio Suriano


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2531 c92efa57-630b-4861-b058-cf58834340f0
2005-11-30 15:49:59 +00:00
degironc c209f8233b Modules/functionals.f90 modified.
The idea is that module funct contains data defining the DFT functional in use
and a number of functions and subroutines to manage them.
Data are PRIVATE and are (shuold be) accessed and set only by function calls.
Basic drivers to compute XC quantities are also included.

It should be the main place where definitions for and calculation of xc
functionals are centralized.

In CPV printout [A.U.] replaced by [HARTREE A.U.] in many places.

stefano


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2411 c92efa57-630b-4861-b058-cf58834340f0
2005-11-02 15:42:06 +00:00
umari c299732584 Changed nberrycic --> nberrycyc
P.U.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2370 c92efa57-630b-4861-b058-cf58834340f0
2005-10-25 23:11:53 +00:00
umari 28548c7288 Set default value of n_inner from 0 to 2
P.U.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2343 c92efa57-630b-4861-b058-cf58834340f0
2005-10-21 22:57:21 +00:00
kkudin 9e74e9e881 Renamed input 'nodedir' to 'wfcdir'
Fixed cases that do not know about 'wfcdir'
 Kostya


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2324 c92efa57-630b-4861-b058-cf58834340f0
2005-10-20 20:35:52 +00:00
sbraccia ba4d2bef4b Several bug-fix and clean-up.
NEB: removed unused variables; removed allocatable input arrays from input_parameters (to be
consistent with the rest of the input stuff) and replaced by static arrays.
XML: unit 99 used to read/write wfc's replaced by a call to iotk_free_unit.
constraints: the static array "fion" is passed as an array-section to constraint subroutines.
metadyn: fe_step must be defined as an array of "time-steps" (one for each deg-of-freedom).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2322 c92efa57-630b-4861-b058-cf58834340f0
2005-10-20 15:22:12 +00:00
kkudin 9ad446ea9e Added an input variable to PWSCF called 'nodedir'
If absent, it defaults to 'outdir'
Whatever files opened in openfil.f90 will be opened in 'nodedir' (wfc, igk, ...)
Everything else is unaffected
The idea is to make it easier to store large *.wfc files on nodes while keeping
the other files in a central location
The patch is minimally intrusive and only replaces temporarily a variable
in openfil.f90 ( this is an ugly but "clean" hack for now )
Please test if it does what is claimed
 Kostya


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2305 c92efa57-630b-4861-b058-cf58834340f0
2005-10-19 00:54:48 +00:00
cavazzon df5e388d3c - fixed a problem with the charge written in restart dir, since
vofrho overwrites rhor, what was written in the restart was the
  potential and not the charge density.
- clean-up in input_parameters and INPUT_CP doc


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2248 c92efa57-630b-4861-b058-cf58834340f0
2005-10-01 16:04:41 +00:00
sbraccia e567949e11 GUI and documentation updated to reflect the new input.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2201 c92efa57-630b-4861-b058-cf58834340f0
2005-09-20 20:54:31 +00:00
sbraccia 5e399e3a0b First experimental version of the Laio-Parrinello metadynamics. This implementation
is compatible with both PWscf and CP. Examples and documentation will follow.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2199 c92efa57-630b-4861-b058-cf58834340f0
2005-09-20 15:17:18 +00:00
cavazzon 41c665b82b - Executable fpmd.x no more built, new calculation "fpmd" added, to
execute cp.x with fpmd flavour
 - stress for LSD calculation fixed ( but more test required )


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2190 c92efa57-630b-4861-b058-cf58834340f0
2005-09-18 23:49:24 +00:00
sbraccia 4e29b12a08 Fixed some errors in the BFGS relaxations that were mkaing the algorithm to
fail for some nasty system.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2185 c92efa57-630b-4861-b058-cf58834340f0
2005-09-17 02:14:39 +00:00
cavazzon f042695867 - added input parameter "refg" in the control namelist to set the
accurancy of the pseudopotential table for CP/FPMD (default values = 0.05Ryd)
  mmx now is calculated depending on refg and ecutrho


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2155 c92efa57-630b-4861-b058-cf58834340f0
2005-09-06 09:27:34 +00:00
giannozz f533b052d5 dbl => DP (defined as previously dbl was)
syntax for declarations: real(DP), without "kind="


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2135 c92efa57-630b-4861-b058-cf58834340f0
2005-08-28 14:09:42 +00:00
sbraccia 39aa8f58be Dynamics with wannier functions: variables wf_dt and wfdt unified. Added a check on
the input value of calwf.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2119 c92efa57-630b-4861-b058-cf58834340f0
2005-08-23 18:42:25 +00:00
cavazzon 260828432d - FPMD: pseudopotential variable wsg, wnl, fnl substituted with
dion, beta, bec everyware.
- subroutines formfn, compute_beta, nlsm1, nlsm2, ecc ... now are common
  between FPMD and CPV, a lot of clean ups!
- Changes in stdout: relevant physical quantities ( positions velocities an cell )
  are now printed with the seme format of the corresponding input card,
  like in PW, as was suggested by SdG.
- exemple23 updated to reflect the new input namelist "wannier"
- Subroutine init_run now is used in FPMD too.
- WARNING in the stress computed with CP, for a pseudo with core-corrections,
  a contribution is missing! Not yet fixed, I need to talk with PG for the
  box staff.
- WARNING the examples reference are not updated, I'm on the IBM sp, and
  I prefer to update them from a linux machine.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2110 c92efa57-630b-4861-b058-cf58834340f0
2005-08-22 14:14:13 +00:00
umari adcdcdc601 added support for electric field
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2099 c92efa57-630b-4861-b058-cf58834340f0
2005-08-16 12:56:49 +00:00
giannozz f380d259a0 Default value for max_second increased to 1d7, i.e. 115 days
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2061 c92efa57-630b-4861-b058-cf58834340f0
2005-07-29 16:33:08 +00:00
cavazzon 59b4f60f8b - FPMD/CP variable "nbnd" and "nelec" are computed automatically if
not specified in the input, like in PW
- FPMD/CP directory for restart file now could be specified with
  the input parameter "scradir" in the control namelist
- FPMD: NEB is working again!


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2051 c92efa57-630b-4861-b058-cf58834340f0
2005-07-27 16:09:03 +00:00
kkudin 930619e2b2 by Kostya
This patch adds "massive" Nose-Hoover chains for ions (i.e. each ion
can have a separate NH chain attached to it)
Some fixes are still needed in different places:
-the information on the number of NH chains [nhpdim] needs to be
saved and read from the restart file (not done now)
-the NH velocities also need to be all saved [nhpdim*nhpcl]
-an input option needs to be added to zero out the NH velocities during
a restart in order to permit "on the fly" thermostat changes
-deallocation of the module variables gives glibc error with IFC 8.0 & 8.1 in
cpr.f90


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1998 c92efa57-630b-4861-b058-cf58834340f0
2005-07-05 21:02:48 +00:00
degironc 4fc2b86181 some bugs in EXX corrected
SdG


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1996 c92efa57-630b-4861-b058-cf58834340f0
2005-07-04 10:57:49 +00:00
sbraccia eaa2293534 Added a card for plotting wannier functions (and related stuff).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1991 c92efa57-630b-4861-b058-cf58834340f0
2005-07-01 20:39:45 +00:00
sbraccia 2d5fa8a23e Added a namelist for cp-dynamics with wannier functions (and related stuff).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1990 c92efa57-630b-4861-b058-cf58834340f0
2005-07-01 14:26:10 +00:00
degironc 03592615e1 more EXX experimental stuff
stefano


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1978 c92efa57-630b-4861-b058-cf58834340f0
2005-06-27 13:11:33 +00:00
sbraccia 65922c19c0 Added variables for dynamics in the coarse-grained phase-space (metadynamics)
defined by the constraints that can be set with the appropriate card.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1918 c92efa57-630b-4861-b058-cf58834340f0
2005-05-26 22:42:05 +00:00
sbraccia 985a4ee612 Fixed some bugs for the constraint on fixed coordination. Doc updated.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1847 c92efa57-630b-4861-b058-cf58834340f0
2005-05-04 14:12:06 +00:00
sbraccia d3ee389928 Added the possibility of performing constrained dynamics in the cp code. Constraints on planar angles are implemented in
both pwscf and cp. Both the constraints can be set in the input, with the option of specifying the target.
The electronic step of the cp dynamics has been moved from cpr.f90 to the new subroutine move_electrons.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1837 c92efa57-630b-4861-b058-cf58834340f0
2005-04-28 23:30:51 +00:00
sbraccia 17ab30a094 Added the possibility of using mass weighted coordinates. Other minor fixes.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1834 c92efa57-630b-4861-b058-cf58834340f0
2005-04-27 21:48:39 +00:00
sbraccia 3093b314e1 BFGS: the initial step is reduced when the forces are smaller than a given threshold.
The linear scaling algorithm has been removed (never used and bad performance) allowing for
a considerable clean up of the module.
A new Pulay mixing has been added on top of the BFGS scheme which improves (sometimes considerably)
the performace of the relaxation (similar to the GDIIS). It is activated by setting bfgs_ndim (default is 1
which corresponds to no Pulay mixing). The algorithm has to be tested against difficoult problems.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1823 c92efa57-630b-4861-b058-cf58834340f0
2005-04-20 23:43:15 +00:00
sbraccia 5ce7ef07c0 NEB and STRING dynamics reorganised. Added a new module containing the routines used for the reparametrisations.
Added the possibility of doing the string dynamics in real space (the original recipe).
The Fourier representation of the path is switched on by setting the logical input variable "use_fourier".
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1810 c92efa57-630b-4861-b058-cf58834340f0
2005-04-16 17:07:39 +00:00
cavazzon b8a7f0bd86 - FPMD/CP90 ionic and electronic nose' thermostat merged
- clean-up


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1763 c92efa57-630b-4861-b058-cf58834340f0
2005-03-26 15:29:07 +00:00
degironc 002bb2ae2b Input variables for imposing constraints on local and global magnetic
moments have been changes

i_cons, mcons have been removed from input (still there in the code)

added variables:
constrained_magnetization='none','atomic','atomic direction','total'
fixed_magnetization(3) (value of the total magnetization to be fixed)
B_field are introduced (if non zero is the value of the added magnetic field)

for 'atomic' or 'atomic direction' constraint the input magnetization
as defined by starting_magnetization, angle1, angle2 or the cosine of angle1
is used to define the constraint.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1747 c92efa57-630b-4861-b058-cf58834340f0
2005-03-23 17:20:26 +00:00
cavazzon bd437a16d3 - Nose' chain from K.Kudin added to CVS
TO BE CHECKED!!
- iotk_multitype_integer splitted into two files to
  workaround compiler problem (IBM xlf) with small simbol stack
- new module with SIC variables


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1712 c92efa57-630b-4861-b058-cf58834340f0
2005-03-15 14:35:47 +00:00
sbraccia e3510cf3dc NEB and Fourier String dynamics: the quasi-Newton Broyden's second method has
been fully implemented: it is ~2 times faster than the quick-min optimisation scheme.
It does not make use of the input step ds (the step is automatically upgraded as in the
BFGS method). Still to be tested on difficoult cases (I ask some help from those
who have encountered convergence problems with the previous versions of NEB). C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1668 c92efa57-630b-4861-b058-cf58834340f0
2005-02-25 14:51:41 +00:00
giannozz 997af7d825 Since atm is character(len=3) there is no reason to have atom_label defined
as character(len=4). If there is some reason, please define both atm and
atom_label as character(len=4)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1661 c92efa57-630b-4861-b058-cf58834340f0
2005-02-24 16:57:41 +00:00
sbraccia 198649869c Fixed other problems related to the image-parallelisation of NEB and SMD.
Documentation updated.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1616 c92efa57-630b-4861-b058-cf58834340f0
2005-02-06 11:04:03 +00:00
sbraccia 7b022ce276 Order in wavefunctions extrapolation made independent from the order in potential extrapolation.
The input keyword "potential_extrapolation" has been substituted by two separate keywords "pot_extrapolation" and "wfc_extrapolation".
Default values are still 'atomic' for the former and 'none' for the latter. Documentation updated.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1551 c92efa57-630b-4861-b058-cf58834340f0
2005-01-10 06:56:14 +00:00
cavazzon 56322ee7d7 - added ensemble dft
- added ensemble dft / conjugate gradient / electric field
  from Paolo Umari / Marzari code
- NOT YET TESTED!!


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1524 c92efa57-630b-4861-b058-cf58834340f0
2004-12-21 15:48:19 +00:00
sbraccia 0c82a0b539 Cleanup of the pwscf molecular dynamics stuff. Velocity rescaling fully implemented.
Documentation updated. Unused variables and routines removed.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1483 c92efa57-630b-4861-b058-cf58834340f0
2004-11-26 16:49:02 +00:00
sbraccia 01023df017 path optimization:
1) cleanup of the output format (more informative)
   2) some cleanup of internal routines
   3) added a couple of input variables and changed the default value
      of ds from 1.5 to 1.0.
BFGS optimization:
   1) implemented a mixed BFGS + Murtag-Sargent update of the inverse
      hessian which is generally faster than the pure BFGS
   2) trust_radius_max increased to 0.8 bohr
   3) some cleanup of internal routines
(C.S.)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1414 c92efa57-630b-4861-b058-cf58834340f0
2004-11-03 09:53:12 +00:00
sbraccia 3fd1e87edd Several improvements of the string dynamics.
Added a use_multistep input variable that allows fourier modes to be gradually included.
Added a langevin opt_scheme in which the string performs a langevin dynamics in the path space.
In the langevin scheme a canonical sampling of the initial and final configurations can also be done "on the fly" setting first_last_opt=.TRUE..
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1373 c92efa57-630b-4861-b058-cf58834340f0
2004-10-13 08:18:15 +00:00
sbraccia f50f901233 path optimizations: added the possibility to write the prefix.save file (logical varible write_save) relative to each
image (needed for post-processing). C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1290 c92efa57-630b-4861-b058-cf58834340f0
2004-09-15 12:35:54 +00:00
cavazzon 5e5b2e6139 - same cell dynamics subroutines used in CP and FPMD
- input pressure in GPa ( both code )
- Output stress in GPa ( both code )
- Output layout made more similar:
  energies, positions, forces, cell
  displayed in the same way
- Zero velocities after a restart implemented in CP
- Nose and damped dynamics for cell implemented
  in FPMD like in CP
carlo


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1260 c92efa57-630b-4861-b058-cf58834340f0
2004-09-13 08:49:06 +00:00
cavazzon 1be2feeb88 - more mergings between CP and FPMD
- initialization (both code uses the same ggen)
- now FPMD initializes the small-boxes too (required for untrasoft pseudo)
- print out


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1186 c92efa57-630b-4861-b058-cf58834340f0
2004-08-27 10:20:42 +00:00
sbraccia 71f59fbcb2 NEB code reorganization. All the routines involved in "path" optimization
are grouped into modules starting with "path_". The output has been slightly
restyled. In the pwscf code (only) has been implemented a version of the string
method (calculation='smd') in which the path is represented in Fourier components
and the optimization procedure is done on these components (still to be
optimized, but working).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1119 c92efa57-630b-4861-b058-cf58834340f0
2004-08-18 15:53:01 +00:00
sbraccia 7c7c95035e Removed input variable VEC_scheme (no longer used).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1089 c92efa57-630b-4861-b058-cf58834340f0
2004-07-21 08:02:46 +00:00
cavazzon e163a007ef - further merging of low level subroutine between FPMD and CP
( cell_move in Module/cell_base.f90 )
- More input parameters check in Module/read_namelists
- For CP, restart file is saved in working directory like in FPMD
  and not in output_dir where MD data are saved, this is because
  usually one keep MD trajectories in home dir.
- added pseudopotential for wannier dynamics example
- added Wannier postprocessing (from Manu Sharma )
- fixed a small bug for FPMD and 'diis' electron dynamics


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1083 c92efa57-630b-4861-b058-cf58834340f0
2004-07-19 17:19:16 +00:00
ballabio 3997b10176 small bugfix [Gerardo]
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1048 c92efa57-630b-4861-b058-cf58834340f0
2004-07-06 16:42:14 +00:00
cavazzon 9102734252 - some elimination of duplicated code
- new subroutines for CP with Wannier Functions
  as implemented by Manu Sharma
  (not yet tested)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1047 c92efa57-630b-4861-b058-cf58834340f0
2004-07-06 15:21:25 +00:00
sbraccia e66dbb9524 Cleanup: removed unused variables.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1040 c92efa57-630b-4861-b058-cf58834340f0
2004-07-05 06:50:22 +00:00
deinzer b36b5527d0 Cleanup: 'dispersion' removed from PW, is now entirely in PH
module disp moved from pwcom to phcom
         variable nqx changed to nqmax


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1032 c92efa57-630b-4861-b058-cf58834340f0
2004-06-30 17:56:05 +00:00
cavazzon 8bc397b888 added new input variables for string dynamics in CP code,
as implemented by Yosuke Kanai


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1021 c92efa57-630b-4861-b058-cf58834340f0
2004-06-28 17:42:18 +00:00
sbraccia f9ac58b70f diis_module.f90 recoded.
The following variant of the DIIS Residual Minimization Method, based
on three steps, has been implemented :
1) At the first "scf" step of the first "ionic" step, the diagonalization
   starts with an initialization procedure. Two (or more) sweeps on all
   the bands are performed. A sweep consists in two (or more if required)
   unconstrained trial steps (steepest descent steps) followed by a
   subspace rotation. If convergence is not achieved in this phase a
   final trial step is done.
   In all the other cases the initialization procedure consists in a
   subspace rotation followed by a trial step.
2) Diagonalization based on the DIIS algorithm is performed on the lowest
   ( nbnd - 2 ) bands. Orthogonalization of the eigenvectors is done at
   each step. The possibility of orthogonalizing a given band only to
   those inside an energy window is also implemented.
3) The topmost two bands are converged using a standard
   conjugate-gradient procedure. This ensures that eventual holes
   left by the DIIS algorithm can be identified and filled.
   If two holes have been found this procedure is repeated on the
   topmost two bands (previously optimized with the DIIS algorithm).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1014 c92efa57-630b-4861-b058-cf58834340f0
2004-06-26 16:48:36 +00:00
deinzer 595bda9fe8 First step to calculate all dyn. matrices needed for the entire dispersion
in one step with pw.
A new calculation is possible called 'dispersion'
in the phonon card new input parameters are:
nq1, nq2, nq3 : number of q points in the direction
tr2_ph : threshold for the phonon calculation (see also INPUT_PH)
Therefore tr2_ph has been moved from phcom.f90 to Module disp in pwcom.f90
UP TO NOW ONLY THE Q POINTS FOR THE DYN. MATRICES ARE CALCULATED AND PRINTED.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@944 c92efa57-630b-4861-b058-cf58834340f0
2004-06-08 16:20:41 +00:00
giannozz 47c5de62f8 More USPP_related variables moved to Modules/uspp.f90
Note that lqx => lmaxq for consistency with other names
(those ending in x are static dimensioning)
Beware unexpected side effects (PG)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@933 c92efa57-630b-4861-b058-cf58834340f0
2004-05-31 17:55:33 +00:00
sbraccia 788675ad30 NEB: added the possibility of specifying one or several intermediate images in the input file (see INPUT_PW). Back-compatible with the old input files.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@927 c92efa57-630b-4861-b058-cf58834340f0
2004-05-28 15:45:19 +00:00
deinzer f1874de924 Changes in pw to calculate the Raman tensor via the 2n+1 theorem.
A new calculation called 'raman' is now available.
For each k point additional points at k+b will be generated and a nscf
calculation will be performed.
The b vectors are small vectors either in cartesian coordinates or along the
direction along to the nearest neighbours.
A new input card named raman is introduced.
New variables:
b_length:  the length of the b vectors
lcart:     if .true. cartesian direction (default)
           if .false. in direction to the nearest neighbours


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@911 c92efa57-630b-4861-b058-cf58834340f0
2004-05-25 14:22:43 +00:00
sbraccia 631753cfaa oops ...
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@855 c92efa57-630b-4861-b058-cf58834340f0
2004-05-05 12:32:18 +00:00
sbraccia c0610fcce7 Variable reset_vel was not declared in input_parameters.
Some cleanup of the neb-driver for all the codes.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@854 c92efa57-630b-4861-b058-cf58834340f0
2004-05-05 12:22:19 +00:00
sbraccia c11e17e4ed Fixed an error in my last commit.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@848 c92efa57-630b-4861-b058-cf58834340f0
2004-05-03 11:14:22 +00:00
sbraccia e4c70c0af2 NEB: 1) a backup copy of the restart file is written at each iteration on the scratch
directory.
     2) velocities can be reset (reset_vel keyword) when restarting from file.
Cleanup of bfgs stuff.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@847 c92efa57-630b-4861-b058-cf58834340f0
2004-05-03 08:48:48 +00:00
dalcorso 40bbe919a3 Reading of a spin-orbit (UPF?) pseudopotential written by the atomic code.
Added the variable lspinorb in input.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@841 c92efa57-630b-4861-b058-cf58834340f0
2004-04-30 13:16:03 +00:00
cavazzon 8f259a07ce - Changes in FPMD required by SIC implementation
- simplified ionic positions management in FPMD ( many staff moved to
  Modules/ions_base.f90
- sort_gvec.f90 ( a part of ggen common to FPMD and CP )


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@794 c92efa57-630b-4861-b058-cf58834340f0
2004-04-13 22:30:02 +00:00
giannozz e277741dc8 First steps in USPP merge between CP and PW:
PW: nqfm => nqfx, some us variables and aainit moved to Modules/uspp.f90 (new)
CP: lx, lqx => lqmax, lix => lmaxx+1, variables moved, aainit not yet merged
invmat moved to flib/ and merged with invmat3 of CP/FPMD,
rndm and ylmr2 moved to flib/ in rranf.f90


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@793 c92efa57-630b-4861-b058-cf58834340f0
2004-04-13 21:49:51 +00:00
degironc 3deee25b0d 2 Apr 2004 A new (experimental) feature is added to LDA+U method.
The +U part of the functional can be built using
              for the projection on localized orbitals some simple
              Wannier functions generated by the post-processing
              code poormanwannier.f90 (pmw.x) from the LDA band
              structure. (SdG)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@764 c92efa57-630b-4861-b058-cf58834340f0
2004-04-02 16:05:17 +00:00
cavazzon a3e02b9d06 Self interaction correction (SIC)
tentatively added to FPMD,
work still in progress


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@758 c92efa57-630b-4861-b058-cf58834340f0
2004-04-01 16:30:59 +00:00
cavazzon 9b67f06d87 - date_and_tim moved to flib and used by all code,
- cleanup in clib
- tictac substituted by start_clock/stop_clock
- other cleanup


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@751 c92efa57-630b-4861-b058-cf58834340f0
2004-03-28 21:36:28 +00:00
cavazzon dabaf5d817 celldm/alat/at input parameters in FPMD/CPV read
and set as in PW .


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@748 c92efa57-630b-4861-b058-cf58834340f0
2004-03-27 14:15:43 +00:00
sbraccia 0224c2a9ad wfc-extrapolation extended to all "relax" algorithms.
Molecular Dynamics based algorithm partially rewritten:
both standard and damped MD are performed with the velocity Verlet
scheme (with or without constrains).
Renata's subroutines are used only in the framework of variable
cell.
constrain.f90 file is no longer needed: cnstrains are set in the
input file (see CONSTRAINTS CARD) with the same input format used
in FPMD. An arbitrary number of constrains can be set.
In the case of constrained relaxation the damped MD
algorithm is used instead of BFGS.
When restart_mode = "from_scratch" many reastr files are removed
from the scratch directory.
Several other modifications here and there. (C.S.)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@675 c92efa57-630b-4861-b058-cf58834340f0
2004-02-26 11:50:36 +00:00
degironc ce9d9804c9 14 feb 2004 LDA+U: variable starting_ns_eigenvalue has been added in
order to allow to specify how to fill starting ns occupation
             matrices. Useful when the default choice take the wrong
             (or not desired) path.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@598 c92efa57-630b-4861-b058-cf58834340f0
2004-02-14 08:39:34 +00:00
sbraccia 4367d42d15 The new bfgs minimization scheme is now the default.
To use the old scheme the keyword ion_dynamics must be set to "old-bfgs".
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@576 c92efa57-630b-4861-b058-cf58834340f0
2004-02-09 11:15:33 +00:00
giannozz 0b1a5c9fd8 Extensive module cleanup: DP moved from wrong place (parameters) to the
correct place (kinds); module "varie" replaced by "control_flags" (not
yet in pwcom, though) - many many files changed.
64-bit cpus (Opteron, maybe Itanium) should now work if __LINUX64 is defined


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@513 c92efa57-630b-4861-b058-cf58834340f0
2004-01-23 15:08:03 +00:00
sbraccia b59ad69456 Again some problems with ethr: the diagonalization threshold can now be read by the input file (diago_thr_init).
This value of ethr is overwritten (with a warning message) in the case of a phonon calculation (lphonon flag added). If diago_thr_init is not specified in the input file it is automatically set in setup.f90 (for example in the case of a nscf calculation ethr = tr2 / nelec).
I hope this policy is appropriate for all kind of calculations.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@511 c92efa57-630b-4861-b058-cf58834340f0
2004-01-23 09:50:00 +00:00
giannozz 5a8c4a05dc Tabs removed (again)
NEB/ removed from makedeps.sh
plotrho: added possibility to have contour lines of various type
A few undefined variables defined (again)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@465 c92efa57-630b-4861-b058-cf58834340f0
2004-01-05 18:11:01 +00:00
sbraccia 2f4d7baded PW, Gamma and NEB are now unified.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@449 c92efa57-630b-4861-b058-cf58834340f0
2003-12-10 14:57:07 +00:00
sbraccia 9bde3085bb Several bugs fixed in neb (CI_scheme = 'manual') and in the way c_mkdir was called.
Cleanup of bfgs_module.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@445 c92efa57-630b-4861-b058-cf58834340f0
2003-12-06 10:32:04 +00:00
sbraccia e219eeea88 General cleanup of pwneb code. Some unused features removed.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@441 c92efa57-630b-4861-b058-cf58834340f0
2003-12-03 10:29:12 +00:00
sbraccia 8be0d235f7 CI_scheme = 'manual' implemented (an option for neb calculations).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@429 c92efa57-630b-4861-b058-cf58834340f0
2003-11-24 15:24:07 +00:00
giannozz 37d70e62b2 Fixed bug if Gamma+doublegrid
Misc cleanup (tabulators), doc. update


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@425 c92efa57-630b-4861-b058-cf58834340f0
2003-11-21 15:20:29 +00:00
sbraccia 4de0beae5b Added support for neb code. C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@400 c92efa57-630b-4861-b058-cf58834340f0
2003-11-17 11:52:06 +00:00
moscac 59cf4dd721 non collinear variables put into Modules
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@360 c92efa57-630b-4861-b058-cf58834340f0
2003-10-30 13:58:42 +00:00
fabris afa4cbf4ac *** empty log message ***
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@298 c92efa57-630b-4861-b058-cf58834340f0
2003-09-02 12:44:56 +00:00
cavazzon 0afcf95c6f io_base logic simplified even more,
variable wf_collect added to the control namelist.
This logical variable will be used in pw to
collect wave funcions at the end of a parallel run.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@295 c92efa57-630b-4861-b058-cf58834340f0
2003-09-02 09:16:09 +00:00
cavazzon a042e7a1f5 - io_base logic simplified
- substitution of USE ... with USE ... ONLY ...
- directories and filenames moved to io_files,
  common to all codes
- clean up in control_flags


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@290 c92efa57-630b-4861-b058-cf58834340f0
2003-08-24 22:25:53 +00:00
giannozz 7c657dc0ff punch_band.f90 works in parallel. Misc cleanup. "aceived" => "achieved"
nelec, nelup, neldw may be real (PW only: CP, FPMD to be verified)


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@284 c92efa57-630b-4861-b058-cf58834340f0
2003-08-20 16:16:26 +00:00
cavazzon da47185a66 All namelists and cards moved to Modules/input_parameters.f90 .
From now on, all new input variables should be added
  to this module, and then copied to the code internal
  variables in the input.f90 subroutine
The namelists and cards parsers are in :
  Modules/read_namelists.f90 and Modules/read_cards.f90

files input_parameters.f90 read_namelists.f90 read_cards.f90
are shared by all codes, while each code has its own version
of input.f90 ( used to copy input values into internals variables ).

EXAMPLE:
 suppose you need to add a new input variable called "pippo"
 to the namelist control, then:

1) add pippo to the input_parameters.f90 file containing the
   namelist control

   INTEGER :: pippo = 0
   NAMELIST / control / ....., pippo

   remember: always set an initialization value!

2) add pippo to the control_default subroutine
   ( cantained in module  read_namelists.f90 )

   subroutine control_default( prog )
     ...
     IF( prog == 'PW' ) pippo = 10
     ...
   end subroutine

   this routine set the default value for pippo,
   that could vary with the code

3) add pippo to the control_bcast subroutine
   ( cantained in module  read_namelists.f90 )

   subroutine control_bcast( )
     ...
     call mp_bcast( pippo )
     ...
   end subroutine


4) add pippo to the control_checkin subroutine
   ( cantained in module  read_namelists.f90 )

   subroutine control_checking( prog )
     ...
     IF( pippo < 0 ) &
       CALL error(' control_checkin ',' variable pippo less than 0 ', 1 )
     ...
   end subroutine

5) Copy the value of pippo in the code internal variables
   ( file input.f90 )

   subroutine iosys()
     use input_parameters, only: ...., pippo
     use pwcom, only: ....., myvar
     ...
     call read_namelists( 'PW' )
     ...
     myvar =  pippo
     ...
   end subroutine


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@282 c92efa57-630b-4861-b058-cf58834340f0
2003-07-31 13:24:20 +00:00
cavazzon 21473c7a29 FPMD:
PRIVATE keyword added to all FPMD source files,
variables that have to be known outside the module
are explicitly declared as PUBLIC
CPV:
now CP uses the same input parser as FPMD


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@267 c92efa57-630b-4861-b058-cf58834340f0
2003-07-21 15:59:32 +00:00
cavazzon 6ca8b2ce58 more merging, "only" keyword added to many "use"
io_base: strings with the name of the data sections added to the
restart file, this will allow R/W of data sections in any order


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@257 c92efa57-630b-4861-b058-cf58834340f0
2003-07-06 21:47:17 +00:00