Giter Club home page Giter Club logo

pympdqmc's Introduction

PyMPDQMC

A python module for wrapping the example 'ggeom' executable of the quest DQMC (Determinant Quantum Monte Carlo) simulator. It allows to run different temperature calculations in parallel by automatically submitting it through an sbatch script on a cluster. Before the actual simulation is executed, a pre-processing can be performed, and also input parameters can be changed on the fly. The current implemented pre-processing is "calcmu", which calculates the chemical potential for a given filling. This is relevant for non particle hole symmetric systems.

Usage

The package comes with an 'mpdqmc.py' script which needs as argument an input file. An example input file is given below. The input file uses the yaml syntax.

#number of processes per node
#NOT supported at the moment
np: 6

#beta range configuration
# mandatory
beta:
 logscale: true
 start: 0.001
 end: 100
 steps: 20

#pre-processing
#calculate mu for a given rho
#before simulation
# optional
calcmu:
 mu_start: -2.0
 mu_end: 2.0
 rho: 1.0
 epsilon: 1e-6
 #parameters for calcmu
 params:
  nwarm:
   value: 100
   type: int
  npass:
   value: 400
   type: int

#file prefix this simulation should use
#(all input and output files are assigned
#with this prefix)
# mandatory
prefix: kagome.5x5-U1.

#the maximum dtau value the simulation
#should use. This is important for the
#error (O(dtau^2))
# optional
# default: 0.1
dtaumax: 0.1

#template input file from which all
#simulations are derived if no
#${indir}/${prefix}${beta}.in is given
# mandatory
input: kagome.5x5.in

#the directory in which all logfiles are
#stored. Currently the submission script
#is in charge of logging, which means that
#the output should be pipped into the
#${log} variable
# optional
# default: .
logdir: log

#directory where the input files are stored
#or loaded from
# optional
# default: .
indir: in

#directory where the input files are stored
#before any pre-processing was performed.
#Currently the only pre-processing step is
#calcmu.
# optional
# default: .
predir: pre

#the script which is used for submitting the
#jobs. The current supported grid scheduler is
#sun grid engine (qsub). The script gets the
#variables ${casedir} (root directory of the
#simulations), ${log} (path to logfile) and
#${beta} (temperature)
# mandatory
subscript: sub.qsub

Installation

To install PyMPDQMC on your system be sure you have the following requirements

  • cmake >= 3.1
  • python2
  • f2py and f90wrap
  • linear algebra library MKL or blas
  • OpenMP
  • c++ and fortran compiler

The scripts itself uses some python module which should be installed automatically. Make sure you have permissions for that. A way to install it is

mkdir build
cd build
cmake ..
make
make install

pympdqmc's People

Contributors

ksteiner92 avatar

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.