opendf
opendf copied to clipboard
Condensed matter physics, strong correlations, dual fermions
Overview
opendf is a condensed matter physics code that solves strongly correlated lattice problems (i.e. Hubbard model) in finite dimensions using dual fermion method. It requires an input of local Green's functions, hybridization functions and vertex functions that can be obtained either by DMFT or using exact diagonalization (see, for example, https://github.com/aeantipov/pomerol).
An example of exact diagonalization input data for one Hubbard atom is generated by scripts/gen_data_atomic.py.
Installation
Mac (using homebrew)
brew tap aeantipov/aeantipov
brew install opendf
Source installation
The installation is standard cmake-based. 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. makemake test(optional)make install
Usage
hub_df_cubicNd --help
Dependencies:
- 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.
License
GPLv2.
Academic usage.
Please cite AE Antipov, JPF LeBlanc, E Gull, Physics Procedia 68 (C), 43-51 (2015). DOI : 10.1016/j.phpro.2015.07.107.
Copyright
Andrey E. Antipov, (Andrey.E.Antipov[at]gmail[dot]com), 2015-present.