GithubHelp home page GithubHelp logo

gauravharsha / tfd-ccsd Goto Github PK

View Code? Open in Web Editor NEW
5.0 2.0 1.0 162 KB

Thermofield dynamics based finite temperature Coupled cluster code for a general ab-initio Hamiltonian

Fortran 49.05% Python 50.23% Shell 0.72%

tfd-ccsd's Introduction

tfd-ccsd

Thermofield dynmaics based coupled cluster with singles and doubles

Python package for computing grand-canonical ensemble properties of many-body fermionic systems at finite-temperatures using the CCSD approximation. The theory and equations are discussed in the following paper

Thermofield Theory for Finite-Temperature Coupled Cluster, G. Harsha, T. M. Henderson, and G. E. Scuseria, J. Chem. Theory Comput. 15, 6127-6136 (2019) arXiv

This code performs the imaginary time evolution in the interaction picture, i.e., using the covariant coupled cluster ansatz. A fixed-reference version can be formulated by tweaking the evolution equations here and there but is not explicitly included in this repository.

Requirements

The package requires Python 3.7 or higher. Computationally intensive modules and functions that drives the imaginary time and chemical potential evolution are written in Fortran. The equations were generated using a modified drudge class called ThermofieldDrudge. Drudge scripts are not included in this repository, but the interested user may check out the thermal-ci repository for an example.

Installation

If you already have the packages listed in requirements.txt, you can simply install this package by

python setup.py install

Usage

  1. Prepare the one- and two-electron integrals in the basis in which mean-field Hamiltonian is diagonal. We will also need these mean-field eigenvalues. In the current implementation, the thermal-ci package expects these integrals in the spin-orbital basis, stored as an HDF (.h5) file with the keys h1, eri and eigs respectively.

    h1 : 2D array of size (N,N)

    eri : 4D array of size (N,N,N,N)

    eigs : 1D array of size (N)

    The integrals can be generated using standard Quantum Chemistry packages such as pyscf. For example, for 2-site Hubbard model with U/t = 1, we can have a data file named hub_2s_u1_data.h5.

    Each of these objects in the HDF5 integrals file should have the same list of attributes.

  2. With the integrals' file ready, the details about the system and the thermal evolution needs to be specified in the Input file. As an example, see the the Input file in the scripts subdirectory.

  3. Scripts to perform the imaginary time evolution and compute internal energies within this thermal CCSD approximation are included in the scripts subdirectory.

    main_fixedN.py : Python script for imaginary time evolution using covariant CCSD while maintaining a fixed number of particles.

    main_fixedMu.py : Python script for imaginary time evolution using covariant CCSD for a set value of the chemical potential.

tfd-ccsd's People

Contributors

gauravharsha avatar

Stargazers

Songhao Bao avatar Prateek Vaish avatar  avatar Lei Wang avatar Tsung-Han Lee avatar

Watchers

James Cloos avatar Tsung-Han Lee avatar

Forkers

scuseriagroup

tfd-ccsd's Issues

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.