Commit Graph

2867 Commits

Author SHA1 Message Date
Leonid Kahle c3a34ea7dc This commit resolves #128 by implementing the stochastic-velocity rescaling (SVR) thermostat into the dynamics module of PW.
Additions have been made to PW/src/dynamics_module.f90, and to PW/src/input.f90 to allow for options svr (or SVR, or Svr) as ion_temperature (IONS card).
Furthermore, 2 functions were added to Modules/random_numbers.f90: the first function to calculate \sum_i R^2, where R is drawn from the normal distribution,
the second to draw a gamma-distributed random number.
No previous code was touched in this commit, only new functions and cases added.
I updated changelog and documentation.

TODO: future issue and commit, if needed, to implementent SVR to fcp.f90 and vcsmd.f90. Both should be fairly straightforward!
2019-09-10 17:27:58 +01:00
Paolo Giannozzi 3655553c9c Minor changes
1. parallelization on atoms in DFT-D2 made uniform with other cases
2. phonon check added: gamma_gama tricks and el-ph are incompatible
3. cleaning shell cleaned up
2019-09-10 17:27:58 +01:00
giannozz 04dc9c89a7 Harmless bug in xsf files
BEGIN_ was missing (but xcrysden wasn't complaining) - Courtesy Felix Mayr
2019-09-10 17:27:58 +01:00
giannozz e205f0bc76 Axis for case ibrav=-13 aligned to what is typically found in the literature 2019-09-10 16:31:31 +01:00
fabrizio22 99a963060d PHonon with GGA-libxc included 2019-09-10 16:31:31 +01:00
fabrizio22 9988892143 Some fixes for PHonon with LDA-libxc 2019-09-10 16:31:31 +01:00
Paolo Giannozzi df91209723 Function "restart_dir", with obvious meaning, used everywhere in CP.
Added a new function "xmlfile" with equally obvious meaning.
2019-08-19 21:59:26 +02:00
Paolo Giannozzi 01c759e5ab Routine pw_read_schema, reading the xml file, moved to qexsd_module with new
name qexsd_readschema. Still not working for CP: it requires a way to read
CP-specific stuff without introducing CP-specific variables. Note: the routine
is now a function returning an error code (-1: no input, 0: all right, 1: no
file, 2-4: error reading general, parallel, output objects) that must be tested
in the calling program.
2019-08-13 11:48:51 +02:00
Paolo Giannozzi 587b2f5dc7 Some more xml cleanup
Definition of xml input object moved into module qexsd_input
2019-08-12 15:17:25 +02:00
Paolo Giannozzi 9a3e1dc7b1 More I/O cleanup (or messup)
Routines filling xml objects: qexsd_init_*, with QE variables passed as
arguments, taken out from qexsd_module and moved to a separate qexsd_init
module in file Modules/qexsd_init.f90. In the process, some unused variables
have been removed and make.depend updated.
No true changes and no side effect expected, just some re-ordering.
There are still some qexsd_init_* routines that either follow a different
logic, or that are called inside routines in qexsd_module (notably: general,
parallel, timing info, MD steps) that write the xml file, or that contain
references to QE modules. These will be fixed sooner or later.
2019-08-12 12:39:12 +02:00
Paolo Giannozzi 60ca6eff36 Some more xml cleanup: routines writing the xml file collected into the
same region of code; comments better explaining what is going on
2019-08-10 15:10:21 +02:00
Paolo Giannozzi ea0d58461b XML and FoX cleanup and simplification
No need to set a unit for I/O
2019-08-10 09:33:39 +02:00
giannozz c6809afe14 Merge branch 'xdmdynmat' into 'develop'
XDM contribution to the dynamical matrix in ph.x

See merge request QEF/q-e!553
2019-08-09 06:22:47 +00: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
Alberto Otero de la Roza 43359b6fab merge with upstream/develop and resolve conflicts; warn instead of crash if vdw_corr not known 2019-08-07 12:08:26 +02:00
Paolo Giannozzi deaf26f62e Bug in at2celldm for ibrav=91 spotted by Tone 2019-08-05 19:44:25 +02:00
Paolo Giannozzi 95681ee19e Misc fixes:
- some compilers don't like to pass pointers that are neither set nor explicitly nullified
- configure updated to reflect the latest changes
2019-08-03 08:37:46 +02:00
giannozz 158b310e64 Merge branch 'smallfix' into 'develop'
A small fix for enforced input_dft

See merge request QEF/q-e!547
2019-08-02 18:28:43 +00:00
Pietro Delugas 2b61bc1bbc fixing printout of ibrav in xml data file
* The printout of ibrav in xml data file could be wrong if the
initializing routine had to be called multiple times because of the
missed  iinitialization of optional pointers to NULL pointer.

* to describe cases with  ibrav < 0 the  new boolean attribute
  use_alternative_axes has been  added to the atomic_structure element
  in the xml schema, ibrav < 0 corresponds to bravais_index = abs(ibrav)
  and use_alternative_axes = .true.

* more pointers to optional arguments are now initialized run time for
  the same reason
2019-08-02 18:20:53 +00:00
Fabrizio Ferrari 120b6c9935 A small fix for enforced input_dft 2019-07-30 09:26:55 +00:00
fabrizio22 63a9bc6636 Initialization of energy and potential in xc_drivers added 2019-07-17 17:50:12 +02:00
Paolo Giannozzi efb97211c4 Unexpected side effects of removal of "input_parameters" in phonon:
it is used in an obscure and nonlocal way. Reverted for the time being.
Some more cleanupo here and there
2019-07-17 16:55:45 +02:00
Paolo Giannozzi ac9d5fb79a Workaround for bogus and not-so-bogus out-of-bound errors in function
"matching". Not sure the fix is right, but it looks less wrong than before
2019-07-16 16:52:43 +00:00
Paolo Giannozzi 3143fe1f3f Missing initialization of arrays used in computation of dV_xc/d\rho might
cause strange crashes in spin-polarized phonon calculations.
In spite of a recent extensive review, the phonon makefile did not have all
needed dependencies in place: changes to Modules/ were ignored by "make ph"
2019-07-16 16:48:55 +00:00
giannozz 5787b68afd More input_paraneters removal 2019-07-15 18:29:50 +02:00
Paolo Giannozzi e76af65d83 Cleanup
Both "printable" and "writable to xml" versions of the "smearing"
variable are computed in the same place (set_occupancies.f90)
2019-07-15 16:44:19 +02:00
Paolo Giannozzi 7884c7a8f1 Fixed dumb mistake in yesterday's commit that was breaking (once again)
the buildbot for all cases with smearing. Setup of spin variables moved
to a single place
2019-07-15 08:22:15 +02:00
Paolo Giannozzi 1c10775112 Better to be on the safe side 2019-07-14 07:45:37 +02:00
Paolo Giannozzi 0bd3bd57a8 Forgotten setting of a character variable broke the buildbot 2019-07-14 07:41:13 +02:00
Paolo Giannozzi 4273380104 Final (?) step of xml I/O cleanup
Copy of the xml tags into QE variables is now performed by same routines
in qexsd_copy for both PW and CP. Initialization of occupations is done
in new routine "set_occupations" both when reading from file and when
starting from input data.
2019-07-13 08:57:45 +02:00
Paolo Giannozzi e1f2c84ea1 More I/O cleanup: occupancies 2019-07-12 21:37:26 +02:00
Paolo Giannozzi a4e833eb7f More I/O cleanup: fermi energy 2019-07-12 11:35:04 +02:00
Paolo Giannozzi 2207c16db9 More I/O cleanup: starting k-points 2019-07-11 22:32:55 +02:00
Paolo Giannozzi 16757dd674 More I/O cleanup
k-points are read together with weights
2019-07-11 14:28:32 +02:00
Paolo Giannozzi 289dae0057 New-style array passed as old-style was giving a segfault on Intel 12:
converted new routine to new style arrays
2019-07-11 13:03:48 +02:00
Paolo Giannozzi 5d91f395e9 Some more I/O cleanup 2019-07-10 13:49:28 +02:00
Fabrizio Ferrari 9e470570ec Another fix for openMP variables in lda drivers 2019-07-02 11:43:55 +00:00
fabrizio22 72a24c4142 Minor fixes in Modules/funct.f90 2019-07-01 17:28:05 +02:00
fabrizio22 d8b7e06c90 Aligned with develop 2019-07-01 17:24:18 +02:00
giannozz b764957b99 Merge branch 'myqe' into 'develop'
More I/O cleanup

See merge request QEF/q-e!513
2019-06-30 16:11:31 +00:00
Paolo Giannozzi 10a31a51c9 More I/O cleanup: no need any longer to read dimensions first, allocate
and read arrays later.
2019-06-29 08:25:51 +02:00
Fabrizio Ferrari 35ebaff0c8 Two fixes in openMP variables 2019-06-28 15:08:36 +00:00
giannozz b464b303ca Merge branch 'myqe' into 'develop'
Yet another small step towards XML I/O cleanup

See merge request QEF/q-e!509
2019-06-27 19:17:28 +00:00
Paolo Giannozzi d02de70a26 Yet another small step towards XML I/O cleanup: reading of band
structure in PW merged with available module routine; removal of
some replicated (and in one case, wrong) reading
2019-06-26 19:46:48 +02:00
fabrizio22 d7912f50cc A small fix for the dft index check 2019-06-26 17:57:18 +02:00
fabrizio22 686dd6cf6c benchmark_libxc updated and a few fixes 2019-06-26 17:43:00 +02:00
fabrizio22 91c8ec1c4f some minor adjustments 2019-06-25 18:14:49 +02:00
fabrizio22 48ef4e0f01 init_xc removed and some clean-up 2019-06-25 14:44:26 +02:00
fabrizio22 4a8bd335b5 metaGGA vectorized and libxc incorporated 2019-06-24 13:42:51 +02:00
fabrizio22 bbe61c6a12 A fix for libxc EXCHANGE+CORRELATION functionals 2019-06-24 09:15:00 +02:00