Commit Graph

234 Commits

Author SHA1 Message Date
Andrea Ferretti 9e6b4d7415 Merge branch 'devel-upflib' of gitlab.com:max-centre/components/q-e into devel-upflib 2021-02-22 11:56:08 +01:00
Andrea Ferretti 7147add67a removal of uspp-gpum module. 2021-02-22 08:26:48 +01:00
Andrea Ferretti b45f9439ed upf_spinorb_gpum.f90 module made obsolete 2021-02-18 23:15:14 +01:00
Paolo Giannozzi c26fbbbf48 Let's see if this fixes CMake once again 2021-02-18 19:52:39 +00:00
Paolo Giannozzi f3ab093338 One more leftover deleted file 2021-02-18 17:19:24 +00:00
Paolo Giannozzi 8930961774 Forgot to remove deleted file 2021-02-18 17:08:04 +00:00
Paolo Giannozzi ce83a72816 Merge branch 'devel-upflib' of https://gitlab.com/max-centre/components/q-e into free_unit 2021-02-18 17:01:49 +00:00
Andrea Ferretti 9eb0babe91 allocations and handling of variables in uspp_data (with special focus on GPU logic) simplified 2021-02-18 17:20:37 +01:00
Paolo Giannozzi 4ee9c76cf3 Unused variables removed, uspp_gpu renamed uspp_gpum for uniformity 2021-02-18 13:38:49 +00:00
Paolo Giannozzi 703ef26cd1 upf_erf deleted and replaced by standard erf 2021-02-18 10:22:29 +00:00
Paolo Giannozzi 8dfb9111df Updated doc 2021-02-18 09:44:14 +00:00
Paolo Giannozzi 40a030ebb0 No need for a free_unit routine any longer 2021-02-18 09:08:47 +00:00
Andrea Ferretti 749499b12d init_us_2*f90 moved to upflib and called via a wrapper in PW/src.
Module recvec updated with gpu variables taken from recvec_gpu.
2021-02-17 19:56:30 +01:00
Andrea Ferretti f24ab5c10a splinelib_gpu removed (splint_eq_gpu moved as splint_eq in splinelib module) 2021-02-16 08:19:03 +01:00
Andrea Ferretti 0c5a5922d3 dependencies regenerated 2021-02-15 19:10:36 +01:00
Andrea Ferretti 58233c75e8 more on renaming us_gpum -> uspp_data_gpum 2021-02-15 19:07:53 +01:00
Andrea Ferretti 53b3a5c6ff us_gpum renamed to uspp_data_gpum (internal consistency) 2021-02-15 19:00:11 +01:00
Andrea Ferretti 3645861a13 compilation fixed 2021-02-15 18:48:15 +01:00
Andrea Ferretti 4c3ea7646f GPU variables moved ordinary modules 2021-02-15 18:34:07 +01:00
Andrea Ferretti d140ff04b5 updated 2021-02-15 18:33:52 +01:00
Andrea Ferretti f1f8371430 Merge branch 'devel-upflib' of gitlab.com:max-centre/components/q-e into devel-upflib 2021-02-15 10:12:55 +01:00
Andrea Ferretti 9a69f149b9 more files related to PP moved from PW/src to upflib 2021-02-15 10:09:20 +01:00
Paolo Giannozzi 4a337f742b Merge https://gitlab.com/QEF/q-e into devel-upflib 2021-02-15 08:47:55 +00:00
Andrea Ferretti 03c3c5209e housekeeping 2021-02-13 17:41:20 +01:00
Paolo Giannozzi 52b4bdbd4e Some compilers may write exceedingly long lines if an entire matrix is written
using free format. Some pseudopotential variables written in that way could thus
make an UPF file unreadable. Workaround: write one column at the time. Not nice
but at least it's readable. Noticed by Felix Goudreault, U. Montreal.
2021-02-10 22:05:28 +01:00
Paolo Giannozzi 995dea1f90 Oops again (cmake) 2021-02-09 08:28:55 +00:00
Paolo Giannozzi 76526538bb Interpolation of radial atomic wavefunction moved into subroutines
interpol_at_wfc.f90 and interpol_at_wfc_gpu.f90
2021-02-08 21:06:16 +00:00
Paolo Giannozzi c871456823 oops, CMake (more) broken (than usual) 2021-02-02 09:28:09 +00:00
Paolo Giannozzi a333ee8d0c Missing dependencies 2021-02-02 06:51:36 +00:00
Paolo Giannozzi 3e51878e87 Harmonization of modules upf_spinorb* in upflib after cpu-gpu merge 2021-02-01 21:54:09 +00:00
Paolo Giannozzi 1478cf4198 Merge https://gitlab.com/QEF/q-e into spinorb 2021-02-01 21:53:05 +00:00
Paolo Giannozzi 771b7da9f1 Cleanup of installation scripts and Makefiles 2021-01-29 15:59:09 +00:00
Paolo Giannozzi 2d3ea393db Dumb horrible bug in PAW relativistic calculations
In the new PP-reading code, tag name PP_AEWFC_REL.* was incorrectly written
as PP_AEWFC_rel, leading to aewfc_rel array not being read and to a small but
nonnegligible error in the results. Guess what? there isn't a single test with
relativistic PAW in the test-suite, that would have allowed to spot the error
at once. Some cleanup as well.

Fixes issue 277. Noticed by Minkyu Park (Univ. of Ulsan, Rep. of Korea)
2021-01-28 11:45:04 +00:00
Paolo Giannozzi 229be57edb Script for dependencies and make.depend updated 2021-01-23 22:32:58 +01:00
Paolo Giannozzi 69f3560fd0 Missing file added 2021-01-23 20:21:10 +00:00
Paolo Giannozzi 0a9f218755 Alignement to merged q-e and q-e-gpu sort of completed. Still some stuff to
move around but it seem to compile and run (for cpu: not sure about gpu)
2021-01-23 20:12:52 +00:00
Paolo Giannozzi 471da0ab46 Merge https://gitlab.com/QEF/q-e into devel-upflib 2021-01-23 19:28:44 +00:00
Daniele Cesarini d462b73a6a Fixed cmake files for cpu-gpu merge 2021-01-23 12:42:52 +01:00
Pietro Bonfa 0c285826d2 Merge branch 'develop' into syncqe8 2021-01-21 19:27:49 +01:00
Pietro d1ec367d9d Aligned gpu-develop branch with develop from QEF/q-e. 2021-01-19 22:16:25 +00:00
Paolo Giannozzi 671f25d895 Merge https://gitlab.com/QEF/q-e into devel-upflib 2021-01-19 17:44:14 +00:00
Paolo Giannozzi 3d7af97ec1 Take notice of what has happened in upflib 2021-01-19 14:20:43 +00:00
Daniele Cesarini 586f66aadf Introduce CUDA support in CMake with some refactoring. 2021-01-18 14:50:50 +00:00
Andrea Ferretti 1ed5e62959 init_at_1 moved to upflib (same strategy as for init_us_1). 2021-01-17 23:05:14 +01:00
Paolo Giannozzi 70208df25e CMake made, plus funny GWL error due to conflicting definitions of DP 2021-01-17 21:39:34 +00:00
Andrea Ferretti 504ce31a46 init_us_1 moved to upflib 2021-01-16 01:07:21 +01:00
Andrea Ferretti dd000d90c9 init_us_0.f90 and init_us_b0.f90 disentangled and moved to upflib. 2021-01-15 23:41:27 +01:00
Paolo Giannozzi fdbca7100b Missing # in #ifdef 2021-01-05 08:19:23 +00:00
Pietro Bonfa b0ef9261f0 Removed dependency from kinds and verbosity in modules for data duplication and suppressed debug messages from verbose output (only shown when compiling with _DEBUG flag) 2021-01-04 11:08:19 +01:00
Paolo Giannozzi 93ea75bbbc Removal of several annoying printouts 2021-01-01 21:01:38 +01:00
Paolo Giannozzi 9d4a18d5b2 Add some missing initailizations to upf% in converters 2020-12-22 12:09:55 +00:00
Paolo Giannozzi 47953f0be5 PP mixing code for VCA wasn't (yet) working (once again) 2020-12-17 07:38:13 +00:00
Paolo Giannozzi 2e9ac6b320 [skip-CI] Move or remove the few residual files in upftools/ 2020-12-15 09:57:37 +00:00
giannozz 20961fb9eb Merge branch 'defox_upf' into 'develop'
FoX-based code removed from upflib

See merge request QEF/q-e!1233
2020-12-08 09:29:09 +00:00
Lorenzo Paulatto (naquite) f634167b74 Added readtag_zt to interface 2020-12-08 09:09:07 +01:00
Lorenzo Paulatto (naquite) 5b88387c53 Added complex tensor i/o required by d3q 2020-12-08 08:53:04 +01:00
Paolo Giannozzi ac3c36a31c FoX-based code removed from upflib 2020-12-08 08:49:26 +01:00
Pietro Bonfa 4d484679ca Moved GPU version of ylmr to upflib where the CPU implementation is 2020-11-24 13:47:23 +01:00
Pietro Bonfa 9529540d8d Merge branch 'develop' into syncqe5 2020-11-24 13:44:01 +01:00
Daniele Cesarini b2a4a6b89f Fixed shared library compilation 2020-11-23 12:16:32 +01:00
Paolo Giannozzi 1f84b032e7 Forgot cMake ... 2020-11-22 14:19:05 +01:00
Paolo Giannozzi 15ef90850c Circular dependency solved by moving ylmr2.f90 from Modules to upflib/ 2020-11-22 12:59:30 +01:00
Pietro 499251fe25 In the HP postprocessing routine added some explanations
how to solve the problem of missing elements during the
reconstruction process of the response matrix chi.
2020-11-18 16:29:39 +00:00
Paolo Giannozzi a689add63a Some PP files do not have the mesh attribute in pp_r tag. Previously, this
went unnoticed because no message or error was issued in this case (mesh=0).
So, the small change of yesterday to deal with missing mesh_size in pp_header
was breaking a few tests using a pp file with missing mesh attribute...oh well.
2020-10-24 09:12:19 +02:00
Paolo Giannozzi a571b3e4d5 Allow some UPF sloppiness
Make the behavior of new UPF reading code more tolerant:
- If an incorrect number is found in an attribute, do not crash: issue a
  warning and set the attribute value as if the attribute was not found
- Do not check actual index vs the "index" attribute for v2 UPF files:
  the previous code didn't do that, I think,  didn't crash if index missing
2020-10-23 11:22:42 +00:00
Pietro Delugas 55f555af1e corrects wrong logic of commit f68fc798 2020-10-21 13:08:23 +02:00
Pietro Delugas f68fc79849 unread values from UPFv1 pseudos set to safe value 2020-10-19 11:55:46 +02:00
Pietro Bonfa 05c866e91f Merge branch 'develop' into syncqe2 2020-10-18 17:50:41 +02:00
Paolo Giannozzi 096feece44 No reason to keep obsolete and confusing FIXME messages 2020-10-12 21:33:29 +02:00
giannozz ab088df340 Merge branch 'fix_pp_schema_files' into 'develop'
qe_pp added number of gipaw orbitals to file.

See merge request QEF/q-e!1120
2020-10-12 15:45:50 +00:00
Pietro Delugas 7aab0f54a5 [CMake] adds forgotten targets in upflib directory 2020-10-09 11:50:46 +02:00
giannozz 5d42574c77 Merge branch 'python3' into 'develop'
Convert to Python3

See merge request QEF/q-e!1033
2020-10-07 18:53:59 +00:00
Pietro Bonfa 1a4df64ffe Merge branch 'develop' into syncqe 2020-10-04 16:33:16 +02:00
giannozz 88165692d1 script for dependencies and make.depend updated 2020-10-02 08:46:22 +02:00
Federico Ficarelli 6f520240a1 Add alias upflib -> QE::UPF 2020-09-29 18:11:33 +02:00
Pietro Delugas 65567619a1 adapting Cmakelist.txt files to recent changes
and adding more files.
upflib and libbeef added as directories for now
2020-09-29 18:11:33 +02:00
Daniele Cesarini cd4177a5e6 Replaced dgamma function with gamma because dgamma is only a GNU specific builtin 2020-09-29 18:11:32 +02:00
giannozz adcbab61e3 Unlikely principal quantum number in UPF v.1, plus misspell 2020-09-29 13:00:09 +02:00
Pietro Delugas a367fca243 qe_pp added number of gipaw orbitals to file.
two elements of the qe_pp schema were not written in the file.
2020-09-29 11:56:20 +02:00
Paolo Giannozzi 442c598514 Small upflib glitches: FoX no longer required, removed from Makefile;
upf_error was erroneous as well (didn't do anything due to bad IF)
2020-09-25 22:07:23 +02:00
Eisuke Kawashima 493d0e6340
Convert to Python3 and minor improvements 2020-09-23 23:50:24 +09:00
Pietro Bonfa 68477bc3d2 Merge branch 'develop' into gpu-develop 2020-09-16 09:51:07 +02:00
Paolo Giannozzi a8941e63a4 Compiler-dependent xml write problem
Writing a long vector with free format (*) may result in very long lines,
exceeding the current 1024 character limit for reading, set in xmltools.f90.
Out od the two possible workarounds: limit the number of data per write, or
use an explicit format, the latter was chosen. The formats used for write,
I18 for integers, es24.15 for reals, should guarantee no loss of precision.
Fixes issue #222
2020-09-14 08:06:01 +00:00
Paolo Giannozzi f90f4f7602 Dumb mistake in a recent commit, mysteriously not affecting Intel compiler 2020-09-11 07:56:41 +02:00
Paolo Giannozzi 159d7ebc6c Once again, trouble with broadcast of "rinner": a recent fix for new xml broke
upf v.1 case. Now rinner is always dimensioned as "nqlc", except when nbeta=1 .
2020-09-09 11:52:32 +02:00
Paolo Giannozzi 333bac9827 Added comment explaining why the array is set to zero and what should be done 2020-09-01 13:59:09 +00:00
Paolo Giannozzi db757fc720 Weird Q(r) roblems
Array qfuncl must be explicitly set to zero before reading, in order to
prevent weird problems in real-space treatment of augmentation problems
(coming from the presence, with some compilers, of nonzero numbers).
This is not needed for array qfunc, but it is done anyway for symmetry.
2020-09-01 13:40:07 +00:00
Paolo Giannozzi d5c91fbaca Pseudopotential file wasn't closed after an unsuccesfull attempt to read,
leading to an error when debug flags are activated
2020-09-01 08:34:05 +00:00
Paolo Giannozzi fa701d1cdc [skip-CI] Remove debug printout 2020-08-31 17:41:31 +00:00
Paolo Giannozzi fd5f745ebe FoX is no longer used to read and write pseudopotential files, unless
-D__use_fox is defined. The old code is still there and will be removed
only when the new code is more tested
2020-08-31 16:46:18 +00:00
Paolo Giannozzi 5c12d6c7ed Improved handling of an error case, improved printout of debug information 2020-08-25 18:00:20 +02:00
Paolo Giannozzi 01b6d7a807 Workaround to enable the possibility to open another xml file while one is
already opened. I do not see any good reason for this but it seems to be the
simpler way to deal with the obscure I/O pattern of phonon and epw.
2020-08-12 10:50:49 +02:00
Paolo Giannozzi b09a8e4f38 version.h renamed qe_version.h to prevent conflicts with other software
packages: version.h is too "generic"
2020-08-12 09:19:29 +02:00
Pietro Bonfa b974b6dae4 Merge branch 'develop' into gpu-develop 2020-08-04 08:27:59 +02:00
Pietro Delugas f33b123313 Revert "Add upf_msg to upflib and "
This reverts commit faa3dc58086c7e33b1f45dda69abe9444fb0b33b.
2020-08-03 11:23:33 +00:00
Pietro Bonfa af515e4108 Merge branch 'develop' into gpu-develop 2020-07-15 14:47:33 +02:00
Paolo Giannozzi 11b30f49d7 Module modes brought back to where it belong. Dependencies updated 2020-07-15 07:27:17 +00:00
Pietro Bonfa 4e6cb3860c Merge branch 'develop' into gpu-develop
(force_hub_gpu still to be aligned)
2020-07-09 15:19:05 +02:00
Paolo Giannozzi 8a3e92febe Improvements to xml toolkit:
- can read tags not in order, although only in some specific cases (luckily
  including those PP files that do have some tags not in the usual order)
- writes complex variables as two reals, not in fortran free format:
  it makes reading data from other languages (e.g., python) easy
2020-07-06 12:51:40 +02:00
Pietro Bonfa 9645be8c42 Merge branch 'develop' into gpu-develop 2020-06-28 18:07:20 +02:00
Paolo Giannozzi a72b129b2a Simplify the xml output of atomic projections produced by projwfc.x 2020-06-24 13:29:48 +00:00
Pietro Bonfa 4ad10deccf Merge branch 'develop' into gpu-develop 2020-06-23 23:39:19 +02:00
Paolo Giannozzi bdb5330895 Pseudopotential converters reverted to use FoX for reading PPs while waiting
for more extensive testing
2020-06-16 20:13:24 +00:00
Paolo Giannozzi 5de7456585 Fixed "PAW as GIPAW" case, whatever it means - All PW tests passed 2020-06-10 16:51:09 +02:00
Paolo Giannozzi 2c11837478 Missing initialization of two "upf" variables (not read from pp file) 2020-06-10 12:34:04 +02:00
Paolo Giannozzi f0ebe9549a Spin-orbit case for v.2 UPF fixed (maybe) 2020-06-10 10:07:05 +02:00
Paolo Giannozzi 7eb44391b7 A few pieces were missing when reading PAW pseudopotentials 2020-06-09 23:06:23 +02:00
Paolo Giannozzi c3215ed09b "Protect" strings from troublesome characters 2020-06-05 17:35:34 +02:00
Paolo Giannozzi 436a7b6ef7 Better treatment for attributes, less susceptible to run into trouble
with attributes containing single quotes into double quotes, or vice versa
2020-06-05 14:39:08 +00:00
Paolo Giannozzi 01eb8dc1c4 Miscellaneous small glitches in new pseudopotential I/O 2020-06-05 13:44:25 +00:00
Paolo Giannozzi e1a477ad6f Treatment of attributes simplified 2020-06-05 10:43:46 +02:00
Paolo Giannozzi b50ec06fcb Treatment of attributes simplified and made similar for read and write 2020-06-05 08:33:48 +02:00
Paolo Giannozzi b064c0ae9c First not completely wrong UPF reading without FoX 2020-06-03 22:40:27 +02:00
Paolo Giannozzi 1b2aef5834 Some more steps towards a correct reading of UPF files 2020-06-03 17:27:38 +02:00
Paolo Giannozzi af71552ec4 WIP: FoX replacement for pseudo-lib 2020-06-03 12:54:30 +02:00
Pietro Bonfa cdd440a230 Merge branch 'develop' into gpu-develop 2020-05-28 15:19:12 +02:00
fabrizio22 2a29f075c4 additional argument removed in dvloc_ gpu routines 2020-05-26 17:12:57 +02:00
Paolo Giannozzi fd27baa667 Small correction to pseudopotential converters 2020-05-04 17:28:10 +02:00
Pietro Bonfa 32d7b76240 Fixed make dependencies 2020-05-04 10:00:05 +02:00
Paolo Giannozzi 4fdcc195f4 [skip-CI] Small update, just to prompt buildbot to rebuild everything! 2020-05-03 22:35:19 +02:00
Pietro Bonfa 51119b3bca Fix compilation of stress and upflib 2020-05-03 21:07:03 +02:00
fabrizio22 9630bd028a stress local 2020-05-02 17:10:32 +02:00
Paolo Giannozzi 0db76c8efe More missing initializations in old formats, leading to strange errors 2020-05-02 13:58:25 +00:00
Paolo Giannozzi cd7b4b3adf Unused routines removed
It sees to me that the radial grid is quite useless except for the atomic code
and maybe PAW: the rest of QE may use only the grid in upf% and variable "msh"
2020-05-02 09:18:00 +02:00
Paolo Giannozzi 0329ffafe1 Nonlocal UPF problem
Uninitialized variable when old PP formats are read was leading to a segfault
in parallel execution. It had gone unnoticed until now because upf% was a
pointer and was nullified at the beginning. Happens only on compilers that do
not set uninitialized logical variables to F (e.g., intel, but not gfortran)
2020-05-02 09:13:00 +02:00
giannozz b8a3c2c4c0 Merge branch 'read_upf_simplify' into 'develop'
POINTER => ALLOCATABLE

See merge request QEF/q-e!918
2020-05-01 19:08:23 +00:00
Paolo Giannozzi ff817b34f1 read_upf_v1 should always close the opened file on output 2020-05-01 10:19:29 +02:00
Paolo Giannozzi 6edef47848 POINTER => ALLOCATABLE
The old restriction on allocatable arrays in derived type no longer applies,
so all pointers in the derived-type upf variables are converted to allocatable
2020-04-30 15:43:04 +00:00
Paolo Giannozzi 2f349c1726 Some simplifications
"read_upf" replaced by "read_upf_new" that reads only upf v.2 and later;
"read_upf_v1" opens the file internally, removed useless optional argument.
2020-04-30 13:36:51 +00:00
Paolo Giannozzi cc33771b46 Minor glitches
1. Some upf variables, unused with old formats, explicitly set to false when old formats are read
2. Leftover debug printout removed
3. Test updated to prevent yet another bogus error in test-suite
2020-04-30 07:10:37 +00:00
Pietro Bonfa 660b973a69 Merge branch 'develop' into gpu-develop (first attempt) 2020-04-29 18:54:24 +02:00
Paolo Giannozzi 2b2f7a9906 There was a radial grid in upf%, an additional one with more variables (of
questionable usefulness) in upf%grid%, and finally another one in module atom,
pointing to the former, or vice versa. The latter was set when the pseudo file
were read. I don't think this makes sense, so I removed upf%grid and set up the
grid in module atom after the upf variable is read.
BEWARE: not sure I correctly decyphered the (il)logic of grids in atomic/src/.
Additionally: fixed a few more glitches in the broadcast of upf%.
2020-04-28 08:15:50 +00:00
Paolo Giannozzi 3a5f2a8b1f A few variables not read from upf v.1 format were leading to obscure crashes
when the upf variable was broadcast
2020-04-27 15:03:58 +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