Giter VIP home page Giter VIP logo

fcdmft's Introduction

fcdmft

Ab initio full cell dynamical mean-field theory (DMFT) and GW+DMFT for solids based on PySCF

Authors: Tianyu Zhu ([email protected]), Huanchen Zhai, Zhihao Cui, Linqing Peng, Garnet Chan

Installation

Features

  • Full cell G0W0+DMFT and HF+DMFT (mixed MPI and OpenMP parallelization)

  • Hamiltonian-based impurity solvers

    • Coupled-cluster Green's function
    • Quantum chemistry dynamical DMRG (from block2)
    • DMRG-MRCI Green's function (from block2)
    • FCI/ED Green's function (from CheMPS2, for test only)
  • Molecular and periodic G0W0

  • Molecular and periodic RPA

  • CAS-CI treatment of the impurity problem

QuickStart

You can find Python scripts for running DMFT calculations in /fcdmft/examples. For example, in /fcdmft/examples/Si, the steps to run a full cell GW+DMFT calculation are:

  1. Perform DFT and GW calculations by running si_gw.py (Note: For large systems, GW should be performed separately using multiple nodes, i.e. MPI, see /fcdmft/examples/NiO);

  2. Derive impurity Hamiltonian and GW double counting term by running si_set_ham.py;

  3. Perform GW+DMFT calculation by running run_dmft.py (serial or MPI/OpenMP). All DMFT parameters should be set in run_dmft.py. In this example, CCSD-GF is used as impurity solver. See run_dmft for sample Slurm submission script.

  4. (Optional) One may use a CAS-CI treatment when solving the impurity problem. See CAS-CCSD/run_dmft.py for setting CAS-related parameters.

References

Please cite the following papers in publications utilizing the fcdmft package:

  • T. Zhu and G. K.-L. Chan, Phys. Rev. X 11, 021006 (2021)

  • T. Zhu, Z.-H. Cui, and G. K.-L. Chan, J. Chem. Theory Comput. 16, 141-153 (2020)

  • T. Zhu, C. A. Jimenez-Hoyos, J. McClain, T. C. Berkelbach, and G. K.-L. Chan, Phys. Rev. B 100, 115154 (2019)

Cite the following paper if GW code is used:

  • T. Zhu and G. K.-L. Chan, J. Chem. Theory Comput. 17, 727-741 (2021)

Cite the following paper if libdmet package is used:

  • Z.-H. Cui, T. Zhu, and G. K.-L. Chan, J. Chem. Theory Comput. 16, 119-129 (2020)

fcdmft's People

Contributors

zhutianyu1991 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fcdmft's Issues

issue with DMRG as the solver

First of all, I would like to thank the developers for making this piece of code open.

I was trying to run the NiO example using DMRG as the solver (from block2). It seems like there is a memory allocation bug in the FCIDUMP routine in block2 as I come across the following Assertion error:

Traceback (most recent call last):
File "run_dmft.py", line 387, in
dmft_abinitio()
File "run_dmft.py", line 309, in dmft_abinitio
mydmft.kernel(mu0=mu, wl=wl0, wh=wh0, delta=delta, occupancy=nelectron, opt_mu=opt_mu)
File "/home/katukuri/Codes/DMET/fcdmft/fcdmft/dmft/gwdmft.py", line 1270, in kernel
conv_tol=conv_tol, opt_mu=opt_mu, dump_chk=dump_chk)
File "/home/katukuri/Codes/DMET/fcdmft/fcdmft/dmft/gwdmft.py", line 275, in kernel
gf_imp = dmft.get_gf_imp(freqs, delta)
File "/home/katukuri/Codes/DMET/fcdmft/fcdmft/dmft/gwdmft.py", line 1361, in get_gf_imp
extra_delta=extra_delta, load_cas=self.load_cas, thresh2=self.thresh2)
File "/home/katukuri/Codes/DMET/fcdmft/fcdmft/dmft/dmft_solver.py", line 1191, in udmrg_gf
verbose=dmrg_verbose, mo_basis=False, ignore_ecore=False, n_off_diag_cg=n_off_diag_cg, mpi=True)
File "/home/katukuri/Codes/DMET/fcdmft/fcdmft/solver/gfdmrg_sz.py", line 1369, in dmrg_mo_gf
save_fcidump=save_fd)
File "/home/katukuri/Codes/DMET/fcdmft/fcdmft/solver/gfdmrg_sz.py", line 253, in init_hamiltonian
assert abs(xh1e[i, j] - xh1e[j, i]) < tol
AssertionError
python: /home/katukuri/Codes/AMD/block2-preview/src/instantiation/core/../../core/integral.hpp:1413: void block2::FCIDUMP::deallocate() [with FL = double]: Assertion 'total_memory != 0' failed.
[alnode258:216761] *** Process received signal ***
[alnode258:216761] Signal: Aborted (6)
[alnode258:216761] Signal code: (-6)
[alnode258:216761] [ 0] /lib64/libpthread.so.0(+0x132d0)[0x7fe86794b2d0]
[alnode258:216761] [ 1] /lib64/libc.so.6(gsignal+0x110)[0x7fe8675b6420]
[alnode258:216761] [ 2] /lib64/libc.so.6(abort+0x151)[0x7fe8675b7a01]
[alnode258:216761] [ 3] /lib64/libc.so.6(+0x31a1a)[0x7fe8675aea1a]
[alnode258:216761] [ 4] /lib64/libc.so.6(+0x31a92)[0x7fe8675aea92]

Am I missing something or is there a bug in assigning the memory.

Thanks for looking into it.

Regards
Vamshi

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.