opendf - a code to evaluate dual fermion (DF) diagrams to solve strongly correlated lattice problems on the lattice (a.k.a. Hubbard model at finite dimensions). It works with a conjuction with DMFT or any other method that produces input for DF calculations : local Green's functions, hybridization functions and vertex functions.
An example of input data is provided with unhybridized atomic limic data, generated by `tools/generate_atomic.cpp'.
The installation is a standard cmake-based procedure. To compile (on POSIX os):
- make some temporary directory, change to that directory and run :
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${PATH_TO_INSTALL_LOCATION} ${PATH_TO_CODE}
. - customize cmake options, if some dependencies are not found (see description below or run ccmake for experts). By default testing is enabled: it can be disabled with
-DTesting=OFF
. make
make test
(optional)make install
- c++11 - compatible c++ compiler
- cmake
- eigen3 (header-only) : http://eigen.tuxfamily.org/. CMake option:
-DEIGEN3_INCLUDE_DIR=path_to_eigen3_headers
. - fftw. Cmake option :
-DFFTW_ROOT=path_to_fftw_prefix
(that is before include or lib). - gftools (header-only; https://github.com/aeantipov/gftools; fetched automatically during build). Optionally can be fetched, installed and the location given by
-DGFTOOLS_INCLUDE_DIR
. - ALPSCore : http://alpscore.org/. CMake option :
-DALPS_ROOT=path_to_alpscore_prefix
. The following alpscore dependencies are required:- Boost. Cmake option :
-DBOOST_ROOT=path_to_boost_prefix
. - MPI
- HDF5 . Cmake option :
-DHDF5_ROOT=path_to_hdf5_prefix
. - gtest for testing
- Doxygen (optional)
- Boost. Cmake option :
NB: Since c++11 support is required for the code to work, c++ dependencies (in particular, alpscore and boost) are required to be compiled in c++11 mode.
GPLv2.
Please provide a citation.
Andrey E. Antipov, (Andrey.E.Antipov[at]gmail[dot]com), 2015