Copyright Ulf Ekström and contributors 2009-2018. See http://dftlibs.org/xcfun/ for more information. The documentation is available at https://xcfun.readthedocs.io
The main interface is in include/xcfun.h
(or fortran/xc_fun_module.f90
for
Fortran bindings).
XCFun is licensed under version 2.0 of the Mozilla Public License (MPLv2.0), see LICENSE.md.
Check that XC_MAX_ORDER
is defined to the highest order derivatives you need
(and not higher) in src/config.h
.
Warning: Using a too large value for XC_MAX_ORDER
makes compilation slow
and the generated code huge.
Edit the Makefile that matches your compiler (Makefile.gcc or Makefile.intel or ...) to set CXX (C++ compiler) and flags and run
$ make -f Makefile.gcc
(or using the corresponding Makefile) This will create the library file
lib/libxcfun.so
Edit the Makefile that matches your compiler (Makefile.gcc or Makefile.intel or
...) and add -DNDEBUG
to the compiler flags.
Add optimization compiler options. Make sure your compiler performs inlining
(-O3 with gcc).