Program AHB1 |
How to run the program AHB1 The dimensionality and the lattice size are determined at compile-time by the parameters dd (number of dimensions) and nx (system length) in the include-file 'ahb1.h'. In addition, an integer bm should be set to the highest inverse temperature J/T at which simulations are to be carried out. At run-time, random number seeds are read from a file 'rand.in', which should contain 4 integers written on four separate lines. Other input data are read from a file 'read.in', which should contain a single line as follows: dd,nx,beta,nr,mstp,in,istp dd = dimensionality (1,2, or 3) (must be same as dd in ahb1.h) nx = linear system size (must be same as nx in ahb1.h) beta = inverse temperature J/T (maxmimum is approximately bm in ahb1.h) nr = number of bin averages to calculate mstp = number of Monte Carlo steps per bin in = 0 to start from scratch, 1 to start from saved configuration istp = number of Monte Carlo steps for equilibration In the case in=0, the simulation starts from scratch, i.e., a random spin configuration and a short "empty" operator list. The simulation should then be equilibrated by using istp > 0. After equilibration and after each completed bin the current configuration is written to a file 'conf'. A simulation can be started from an old conf-file by using in=1. If the old configuration was generated at the same beta, it should already be equilibrated an istp=0 can be used. If it was generated at a higher temperature (lower beta) some equilibration steps should be carried out. A configuration generated at a higher beta should not be used as a starting configuration, since it has a larger truncation L than will be needed and L can only be increased by the program. The program writes progress reports to a log-file 'log.txt'. During equilibration, the current value of the truncation L is written after each 1/10 of the total number of eqilibration steps. Certain error messages are also written to this file (e.g., if a too high beta is used, so that the number of operators exceeds the maximum number determined by bm in 'ahb1.h'). After each completed bin, the accumulated bin-averages of physical quantities are written to the files 'len.dat' and 'mag.dat'. The bin avarages are processed by a separate program, AHB1RES, which writes the calculated expectation values and statistical errors (one standard deviation of the averages) to standard output. Example run A 2D lattice with 8*8 sites at maximum beta=32 is specified in the file 'ahb1.h' as follows:
With the following input data:
Note that the error bar of the specific heat is very large. In practice, a useful specific heat estimate can only be obtained at relatively high temperatures. At beta=32 used in this simulation, the 8*8 system is close to its singlet ground state, and therefore the uniform susceptibility is very small. The CPU time for this simulation was 8 minutes 40 seconds on a PIII running at 866 Mhz.
|