/Lattice-Liouville

Primary LanguageC++MIT LicenseMIT

Lattice-Liouville

The code generates a discrete Gaussian free field on a periodic square lattice. From this field a discrete Liouville measure can be constructed, using a regularization method if desired. Geodesic distances can be computed w.r.t. the Liouville measure using either a simple Dijkstra algorithm or a Fast Marching solution to the Eikonal equation.

For more information check:

Pre-requisites

To compile with g++ on linux:

g++ shortest_cycle.cpp liouville.cpp fftw++.cc -lfftw3 -o CYCLE

Usage

When running ./CYCLE a several of inputs are requested. All inputs can also be given as command line arguments. For example:

width = 512           // 512 x 512 lattice
gamma = 1.412         // scaling exponent 
averaging method (0=BOX_DIVISION,1=BOX_AVERAGING,2=DISK_AVERAGING,3=DISK_DIFFUSION) = 2
delta min = 0.0001    // perform measurements for values delta = 0.0001, 0.0002, ..., 0.0064
delta max = 0.0064
delta factor = 2.0
normalize volume (1=yes,0=no) = 0 
measurements per delta per output = 50   // determines how often the program writes its output
output path = output                     // puts the data in folder ./output/

License

This source code may be reused without limitations according to the MIT license. If you use this code in your scientific publication, please cite the accompanying paper:

J. Ambjorn, T. Budd, Geodesic distances in quantum Liouville gravity, preprint, arXiv:1405.3424