fkmc

๐ŸŽฒโ›“๐Ÿ‘‰๐Ÿงช Markov Chain Monte Carlo on the Falikov-Kimball model.

https://github.com/tomhodson/fkmc

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • โœ“
    CITATION.cff file
    Found CITATION.cff file
  • โœ“
    codemeta.json file
    Found codemeta.json file
  • โœ“
    .zenodo.json file
    Found .zenodo.json file
  • โœ“
    DOI references
    Found 1 DOI reference(s) in README
  • โœ“
    Academic publication links
    Links to: arxiv.org, aps.org, zenodo.org
  • โ—‹
    Academic email domains
  • โ—‹
    Institutional organization owner
  • โ—‹
    JOSS paper metadata
  • โ—‹
    Scientific vocabulary similarity
    Low similarity (12.1%) to scientific vocabulary

Keywords

monte-carlo quantum-computing quantum-mechanics tight-binding
Last synced: 6 months ago · JSON representation ·

Repository

๐ŸŽฒโ›“๐Ÿ‘‰๐Ÿงช Markov Chain Monte Carlo on the Falikov-Kimball model.

Basic Info
  • Host: GitHub
  • Owner: TomHodson
  • Language: Jupyter Notebook
  • Default Branch: master
  • Homepage:
  • Size: 44.6 MB
Statistics
  • Stars: 0
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 3
Topics
monte-carlo quantum-computing quantum-mechanics tight-binding
Created almost 7 years ago · Last pushed almost 4 years ago
Metadata Files
Readme Citation

README.md

๐ŸŽฒโ›“๐Ÿ‘‰๐Ÿงช Markov Chain Montecarlo for Quantum Tight Binding Models with Classical Sectors.

Wanna draw thermal samples? Does your Hilbert space have untapped classical subsectors? Then you've come to the right place!

This repo contains code to perform Markov Chain Monte Carlo over the Falikov-Kimball model for the publication "One-dimensional long-range Falikov-Kimball model: Thermal phase transition and disorder-free localization" available in PRB or on the arXiv. I provide the code here as a record of what was done, it's likely not reproducable without extra help but if you wish to know more please get in touch.


Applicability and Optimisations

The code exploits two special properties of this model and would work well on other models with either property:

  1. The model contains a classical degree of freedom (in this case Si) and a quantum degree of freedom (ci) such that when the classical degree of freedom is fixed the model is quadratic in c_i or otherwise easy to solve.
  2. The model contains entirely classical terms like Jij Si S_j

Property 1 allows the MCMC to define a walk over the classical states of the system and solve the quantum system at each point, effectively factoring the classical subspace out of the full Hilbert space.


Property 2 allows for an optimisation where the standard Metropolis-Hastings alogorithm is modified to compute the classical terms first, perform a probabalistic accept/reject step, and only on acceptance compute the quantum terms, saving upto 90% computation time in our model.

Also includes code for submission to cluster systems (PBS and SLURM) and analysis of the results, such as computing energy-resolved Inverse Participation Ratios.


A phase diagram for the above model showing the Charge Denisity Wave phase where the spins order antiferromagnetically, the gapped Mott Insulator phase and the gapless Anderson Insulator phase.


Installation and Use

  1. Clone the repo sh git clone https://github.com/TomHodson/FKMC cd FKMC
  2. setup an environment using conda or venv sh conda env create -f environment.yml conda activate FKMC or sh python3 -m venv .venv source .venv/bin/activate # or `.venv\Scripts\activate.bat` if you're using Windows python -m pip install -U pip python -m pip install -U -r requirements.txt 1. Install the FKMC package sh pip install --editable .

  3. (Optional) Install a git filter to prevent cell output from showing up underversion control ssh nbstripout --install

Use

A typical use would be to: 1. Create a notebook for a simulation e.g batchscripts/gapopeningU-5logarithmic.ipynb 1. Submit that simulation to the cluster using the helper script at batchscripts/submit.py This would likely require modification for other cluster setups. The script will create a directory for the simulation at ~/HPCdata with subdirectories containing the logs and data. e.g sh ./batchscripts/submit.py

Owner

  • Name: Tom
  • Login: TomHodson
  • Kind: user
  • Location: London, UK
  • Company: @ecmwf

Programmer @ecmwf | Maker | Baker https://thomashodson.com

Citation (CITATION.cff)

# YAML 1.2
---
abstract: "Software to perform Markov Chain Monte Carlo over the Falikov-Kimball model for the publication \"One-dimensional long-range Falikov-Kimball model: Thermal phase transition and disorder-free localization\" available in PRB or on the arXiv."
authors: 
  - affiliation: "Imperial College London"
    family-names: Hodson
    given-names: Thomas
    orcid: "https://orcid.org/0000-0002-4121-4772"
cff-version: "1.1.0"
date-released: "2021-03-19"
doi: "10.5281/zenodo.4593904"
identifiers: 
  - description: The archived snapshot of the first release of the software.
    type: doi
    value: "10.5281/zenodo.4620805"
keywords: 
  - MCMC
  - Quantum
license: "CC-BY-NC-4.0"
message: "If you use this software, please cite both the article from preferred-citation and the software itself."
repository-code: "https://github.com/TomHodson/FKMC"
title: "FKMC: MCMC for quantum systems with classical subsystems"
version: "1.0"
preferred-citation:
  authors:
    - family-names: Hodson
      given-names: Thomas
    - family-names: Willsher
      given-names: Josef
    - family-names: Knolle
      given-names: Johannes
  title: "One-dimensional long-range Falikov-Kimball model: Thermal phase transition and disorder-free localization"
  type: article
  year: 2021
...

GitHub Events

Total
Last Year

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

environment.yml conda
  • cachetools
  • conda
  • ipykernel
  • matplotlib
  • munch
  • nbstripout
  • numpy
  • python 3.7.*
  • scipy
  • termcolor
requirements.txt pypi
  • cachetools *
  • matplotlib *
  • munch *
  • nbstripout *
  • numpy *
  • python =3.7
  • scipy *
  • termcolor *