Commit Graph

25 Commits

Author SHA1 Message Date
degironc 4636bca635 KS_Solvers directory has been created with three subdirectories:
KS_Solvers/CG, KS_Solvers/Davidson, KS_Solvers/Davidson_RCI.
Two are currently used by QE, the third one implements the Davidson
diagonalization within the Reverse Communication Interface paradigm,
courtesy of Micael Oliveira.

KS_Solvers routines depend only on lower level libraries, notably UtilXlib, 
LAXlib, (SCA)LAPACK, and BLAS.

reorganization can be improved. For instance some duplicated routines like
cdiaghg and rdiaghg could/should be moved in LAXlib. This could reduce the need
to include  KS_Solvers directories in the link step of many codes.    

Minimal changes to calling sequence have been made, essentially just adding
h_psi,s_psi,g_psi and h_1psi,s_1psi routines names as arguments (with a
specific calling sequence ihardcode inside the routines that agree with PWSCF one). 
This could be avoided adopting the RCI paradigm.

Compiled in serial and parallel, 177/182 pw tests passed (3 that were failing 
even before on my laptop pw-berry, pw-langevin, pw-pawatom + 2 unknown==not tested), 
12 /17 cp tests passed (some o2-us-para-pbe-X fail but the same was for the 
original version)

I assume the modified calling procedure is working and the problem lies somewhere else.
 
Randomly tested some examples in pw, ph, pwcond and it seams to work.

Please report any problem.





git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13644 c92efa57-630b-4861-b058-cf58834340f0
2017-07-29 12:19:19 +00:00
degironc 7fd27ba0ad UtilXlib directory created to contain a library (libutil.a) for
basic operations: error handling, timing clocks, interfaces to basic mpi 
calls, find free units...
These routines are moved from Modules and dependencies to other modules
are removed. 

MANY files are updated to comply with the move.



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13629 c92efa57-630b-4861-b058-cf58834340f0
2017-07-26 11:15:20 +00:00
giannozz 7ce7d161bf Makefile simplification: TOPDIR is used to define the same LIBOBJS everywhere.
In case of trouble, see instruction in the make.inc file.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12840 c92efa57-630b-4861-b058-cf58834340f0
2016-08-25 19:27:31 +00:00
giannozz 02ce4df8d6 make.sys => make.inc. All other codes using make.sys should modify their build
mechanism accordingly.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12539 c92efa57-630b-4861-b058-cf58834340f0
2016-06-25 07:26:50 +00:00
puma 332867bbaf Oops
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12473 c92efa57-630b-4861-b058-cf58834340f0
2016-06-07 15:35:27 +00:00
puma d4bf8e349e Added support for SOC calulations
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12469 c92efa57-630b-4861-b058-cf58834340f0
2016-06-07 13:39:53 +00:00
giannozz df30a665aa Explicit preprocessing produces *_tmp.f90 files instead of *.F90 files, to
prevent trouble with OS-X. May or may not work (it won't unless configure
is updated: please somebody with v.2.63 of autoconf do it), may turn out to
be obsolete anyway.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12364 c92efa57-630b-4861-b058-cf58834340f0
2016-04-27 14:53:38 +00:00
giannozz 1fea499fae Since we are in the process of moving stuff around, I think it is a good
moment to get rid of flib/, whose usefulness is far from obvious. The content
of flib/ is now in Modules/. Many makefiles updated and little more. 

Packages using QE routines should just remove links to flib/flib.a.



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12072 c92efa57-630b-4861-b058-cf58834340f0
2016-01-26 12:51:02 +00:00
ccavazzoni 0ac39fc1d3 - again LAXlib
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12060 c92efa57-630b-4861-b058-cf58834340f0
2016-01-23 20:08:09 +00:00
ccavazzoni fdf7766648 - FFT Modules replaced by FFTXlib
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11857 c92efa57-630b-4861-b058-cf58834340f0
2015-11-21 10:37:48 +00:00
giannozz 16b632e877 GWW-specific real-space stuff (apparently never used) moved out of the
realus.f90 module into a GWW-specific module


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11469 c92efa57-630b-4861-b058-cf58834340f0
2015-04-06 20:34:45 +00:00
obm 83e85b38f4 Severe: There was a race condition between Modules/wannier_gw and GWW/pw4gww/wannier_gw. Intel compilers handled it internally so I didn't notice. Moral of the story: Always run a make clean before the commit; Always check with gnu compilers before comit.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10776 c92efa57-630b-4861-b058-cf58834340f0
2014-02-27 14:21:03 +00:00
giannozz 7c01062ba0 Final (?) set of changes to the build system, especially for Windows (Axel)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10590 c92efa57-630b-4861-b058-cf58834340f0
2013-11-07 21:06:06 +00:00
giannozz f254b4b392 More minor fixes from Axel for windows build
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10581 c92efa57-630b-4861-b058-cf58834340f0
2013-11-06 07:28:49 +00:00
giannozz e0086b6882 The IFLAGS variable is set in make.sys to a value that works if sources are
one directory down, not two directories down. Now it is explicitly set to
something (hopefully) appropriate everywhere. Note that include/f_defs.h 
is obsolete and shouldn't be included (it is still in GWW and TDDFPT).


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10446 c92efa57-630b-4861-b058-cf58834340f0
2013-08-26 16:36:27 +00:00
puma 8754daeaea Replacing old GWW code with new GWL one.
PU


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@10345 c92efa57-630b-4861-b058-cf58834340f0
2013-07-03 15:24:46 +00:00
marsamos 59d6818a9b PW/src PW/tools compiling makedeps updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@8335 c92efa57-630b-4861-b058-cf58834340f0
2011-12-14 17:33:33 +00:00
giannozz 473a19205a All references to EE/ subdirectory and to libraries in Multigrid/ removed.
Calls to variables and routines in EE/ commented, for the time being.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7226 c92efa57-630b-4861-b058-cf58834340f0
2010-11-18 15:49:00 +00:00
giannozz c22a10cc2f All makefiles simplified, make.depend updated, fixed an inconsistency in
XSpectra coming from recent changes


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6379 c92efa57-630b-4861-b058-cf58834340f0
2010-02-09 15:21:51 +00:00
giannozz 805b860d62 Merge of initial printout between CP and PW: CPV/environment.f90 moved
to Modules/environment.f90 and generalized to PW and other codes.
PW/startup.f90 is kept as a wraper for now. The initial message in CP
looks now like the one in PW (please check if it satisfactory). The
compilation date has disappeared from info printed by CP: was it useful?
Makefiles and make.depends updated. ld1 does not depend any longer upon
files in PW/ . Miscellaneous cleanup.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@6111 c92efa57-630b-4861-b058-cf58834340f0
2009-11-06 17:28:19 +00:00
marsamos b581992386 add coulomb_vcut in Modules part of GWW's Makefile. Small problem
fixed for compilation of produce_wannier_gamma with -DEXX


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5931 c92efa57-630b-4861-b058-cf58834340f0
2009-09-14 09:13:08 +00:00
degironc ea12898a5d first implementation of Martyna-Tuckerman method to decouple periodic
images in a cluster calculation.  Still to be tested in parallel, it
 has been tested for Gamma vs 0 0 0 and for nspin=1 and 2. Forces seem
 to be ok. In the few cases considere there is no significant increase
 of workload with respect to the periodic calculation.

 plot_io.f90 moved from PP to flib because it may be needed
 in PW/martyna_tuckeman.f90 for debugging and in this way circular
 references are avoided. It only USE low-level modules like io_global,
 kinds, and constants so it should be ok.

 Module ws_base.f90 added in Modules. It deals with basic operations
 associated to Wigner-Seitz cell. The implementation should be general;
 it has been tested for SC and FCC only.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5911 c92efa57-630b-4861-b058-cf58834340f0
2009-09-09 12:59:40 +00:00
giannozz a13cd1f18b Misplaced routines re-placed, Makefiles updated:
Modules/vxccg.f90 split into atomic/vxcgc.f90 and flib/radial_gradients.f90
Modules/metagga.f90 moved to flib/metagga.f90


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5884 c92efa57-630b-4861-b058-cf58834340f0
2009-09-04 13:40:13 +00:00
marsamos 0dd8260954 Change temporarly GWW Makefiles for IFLAGS stuff
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5841 c92efa57-630b-4861-b058-cf58834340f0
2009-08-07 14:05:54 +00:00
marsamos 3adcb6c382 pw4gww files from GWW added to the repository
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@5832 c92efa57-630b-4861-b058-cf58834340f0
2009-08-07 11:51:54 +00:00