~albertog/siesta/4.1-xc

Viewing all changes in revision 1051.

  • Committer: Alberto Garcia
  • Date: 2018-12-18 11:38:26 UTC
  • Revision ID: albertog@icmab.es-20181218113826-q1nw0qwlc5smc0xe
Simplify the choice between SiestaXC and BSC's versions of cellxc  

The BSC_CELLXC preprocessor blocks have been removed and replaced
by conditional blocks which can be selected at runtime.

The user can control which version of cellxc is used by means of the
fdf logical variable:
  
     XC.Use.BSC.CellXC  (T/F)  

which is 'false' by default, thus using SiestaXC's cellxc.

The BSC version might be slightly better for GGA operations, and the
SiestaXC version must of course be used when dealing with van der Waals
density functionals.

NOTES:
  
* BSC's version of cellxc now uses ldaxc, ggaxc, and setxc/getxc from
  SiestaXC. This enhances its functionality (more functionals) and
  saves on duplicated code. The old 'xc.f' file has been removed.
  
* In 'meshsubs', 'distriphionmesh' now accepts an extra argument to
  flag the need for stencil initilization.
  
* In 'forhar', a number of 'reord' operations towards 'sequential'
  fine-point ordering (which were compiled-in only for the new
  interface) have been removed, as all the arrays involved are already
  in 'sequential' form.
  
  Tests show that these changes do not seem to affect the results, however.
  
  The 'forhar' interface uses the 'ntm' argument in all cases, to simplify
  the code.

* Removed bogus incompatibility check in ldau.F

expand all expand all

Show diffs side-by-side

added added

removed removed

Lines of Context: