Skip to content

Latest commit

 

History

57 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Schwinger Model Simulation

This repo simulates U(1) gauge theory on a 1+1 D lattice with 2 mass degenerate fermions.

The analysis code includes:

  • Automatic wick contractions
  • Distillation
  • GEVP
  • Theta term reweighting

Quick Start

See example.ipynb for how to construct arbitatry interpolator bases for GEVP and how to analyze configurations.

Map of the repo (in progress):

  • SchwingerModel.py: contains the gauge generation code
    • SchwingerModel class
      • parameters:
        • dimx, dimt: spacial and temporal extent of the lattice
        • metroSteps: the number of metropolis-hastings steps
        • beta: coupling constant, proportional to $e^{-2}$
        • fMass: mass of the fermion
        • aSpacing: relates to the spacing between the grid points
        • cgRtol: relative tolerance for the cg solves
        • numSubSteps: number of molecular dynamics steps for each HMC iteration
        • randSeed: random seed for numpy rng
        • tunneling: whether to propose changing the topological charge after each HMC iteration
  • analysis.py: contains some simple analysis functions, often superseeded elsewhere
    • plaqStats
      • returns the average and std. err. of the plaquette
    • correlStats
      • returns the correlator between two fermion bilinears of Gamma
      • can include the disconnected part
      • jacobi smearing can be added using the smearing argument along with kappa and smearingSteps
      • projection to definite momentum $k \in \mathbb{Z}$
    • effectiveMassStats
      • does the same thing as correlStats, but returns the effective mass instead
      • if data is noisy, then this works poorly because effective mass can become NaN in boostrap draws
    • effectiveMassProp
      • takes the output of correlStats and returns the effective mass, with errors propagated
      • used because of effectiveMassStats problems, but error bars are larger than they should be
    • numDensityStats
      • finds the expected value of the number density with errors given an chemical potential
      • numberDensity is found by reweighting the configutions that we generated with zero chemical potential
      • may not be correct for the theory we are trying to analyze (i.e. reweighting here might be wrong)
    • getCorrelation
      • used by correlStats to find the correlation function for one gauge configuration
    • get_integrated_autocorr_time_statistical
      • given a rho_bar and number of configurations find the corresponding integrated autocorrelation time
      • rho_bar can be generated by funcitons like getNumDensityRhoBar and getEffMassRhoBar

About

This repo simulates the N_f=2 Schwinger Model using pseudofermions. Distillation, GEVP, and algorithmic wick contractions are also included.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages